Skip to main content
added 13 characters in body
Source Link

I don't frequent this community, so please give criticism if this is a poor question.

I am trying to make a tool which generates a small (say, $4\times 4$) matrix with integer entries, which has a "nice" Jordan normal form — i.e., one that can be computed by hand. The purpose is for manual practice.

Here is what I have:

  A := RandomInteger[{-1, 1}, {4, 4}] (*This generates a random 4×4 matrix*)
  Dynamic[MatrixForm[A]] (*This is the random matrix*)
  Dynamic[MatrixForm[Part[JordanDecomposition[A], 2]]] (*Here is its Jordan Normal form*)

As it is, about $1$ in $10$ of these matrices has relatively nice Jordan Normal form, and that is with random entries of $-1,0$$-1,\,0$, and $1$. Complex eigenvalues are fine, but obviously eigenvalues like Root[#^4 -#^2+3 #+2&#^2 + 3 # + 2 &, 1] are intractable.

The easiest solution here would be to somehow loop the random generator until the entries in the final output are rational complex numbers. I have tried and failed to use conditional statements to achieve this, so any help would be appreciated.

I don't frequent this community so please give criticism if this is a poor question.

I am trying to make a tool which generates a small (say, $4\times 4$) matrix with integer entries which has a "nice" Jordan normal form — i.e., one that can be computed by hand. The purpose is for manual practice.

Here is what I have:

  A := RandomInteger[{-1, 1}, {4, 4}] (*This generates a random 4×4 matrix*)
  Dynamic[MatrixForm[A]](*This is the random matrix*)
  Dynamic[MatrixForm[Part[JordanDecomposition[A], 2]]](*Here is its Jordan Normal form*)

As it is, about $1$ in $10$ of these matrices has relatively nice Jordan Normal form, and that is with random entries of $-1,0$, and $1$. Complex eigenvalues are fine, but obviously eigenvalues like Root[#^4-#^2+3 #+2&, 1] are intractable.

The easiest solution here would be to somehow loop the random generator until the entries in the final output are rational complex numbers. I have tried and failed to use conditional statements to achieve this, so any help would be appreciated.

I don't frequent this community, so please give criticism if this is a poor question.

I am trying to make a tool which generates a small (say, $4\times 4$) matrix with integer entries, which has a "nice" Jordan normal form — i.e., one that can be computed by hand. The purpose is for manual practice.

Here is what I have:

  A := RandomInteger[{-1, 1}, {4, 4}] (*This generates a random 4×4 matrix*)
  Dynamic[MatrixForm[A]] (*This is the random matrix*)
  Dynamic[MatrixForm[Part[JordanDecomposition[A], 2]]] (*Here is its Jordan Normal form*)

As it is, about $1$ in $10$ of these matrices has relatively nice Jordan Normal form, and that is with random entries of $-1,\,0$, and $1$. Complex eigenvalues are fine, but obviously eigenvalues like Root[#^4 - #^2 + 3 # + 2 &, 1] are intractable.

The easiest solution here would be to somehow loop the random generator until the entries in the final output are rational complex numbers. I have tried and failed to use conditional statements to achieve this, so any help would be appreciated.

Tweeted twitter.com/StackMma/status/1067115964637036545
added 7 characters in body
Source Link

I don't frequent this community so please give criticism if this is a poor question.

I am trying to make a tool which generates a small (say, 4x4$4\times 4$) matrix with integer entries which has a "nice" Jordan normal form — i.e., one that can be computed by hand. The purpose is for manual practice.

Here is what I have:

  A := RandomInteger[{-1, 1}, {4, 4}] (*This generates a random 4x44×4 matrix*)
  Dynamic[MatrixForm[A]](*This is the random matrix*)
  Dynamic[MatrixForm[Part[JordanDecomposition[A], 2]]](*Here is its Jordan Normal form*)

As it is, about $1$ in $10$ of these matrices has relatively nice Jordan Normal form, and that is with random entries of $-1,0$, and $1$. Complex eigenvalues are fine, but obviously eigenvalues like Root[#^4-#^2+3 #+2&, 1] are intractable.

The easiest solution here would be to somehow loop the random generator until the entries in the final output are rational complex numbers. I have tried and failed to use conditional statements to achieve this, so any help would be appreciated.

I don't frequent this community so please give criticism if this is a poor question.

I am trying to make a tool which generates a small (say, 4x4) matrix with integer entries which has a "nice" Jordan normal form — i.e., one that can be computed by hand. The purpose is for manual practice.

Here is what I have:

  A := RandomInteger[{-1, 1}, {4, 4}](*This generates a random 4x4 matrix*)
  Dynamic[MatrixForm[A]](*This is the random matrix*)
  Dynamic[MatrixForm[Part[JordanDecomposition[A], 2]]](*Here is its Jordan Normal form*)

As it is, about $1$ in $10$ of these matrices has relatively nice Jordan Normal form, and that is with random entries of $-1,0$, and $1$. Complex eigenvalues are fine, but obviously eigenvalues like Root[#^4-#^2+3 #+2&, 1] are intractable.

The easiest solution here would be to somehow loop the random generator until the entries in the final output are rational complex numbers. I have tried and failed to use conditional statements to achieve this, so any help would be appreciated.

I don't frequent this community so please give criticism if this is a poor question.

I am trying to make a tool which generates a small (say, $4\times 4$) matrix with integer entries which has a "nice" Jordan normal form — i.e., one that can be computed by hand. The purpose is for manual practice.

Here is what I have:

  A := RandomInteger[{-1, 1}, {4, 4}] (*This generates a random 4×4 matrix*)
  Dynamic[MatrixForm[A]](*This is the random matrix*)
  Dynamic[MatrixForm[Part[JordanDecomposition[A], 2]]](*Here is its Jordan Normal form*)

As it is, about $1$ in $10$ of these matrices has relatively nice Jordan Normal form, and that is with random entries of $-1,0$, and $1$. Complex eigenvalues are fine, but obviously eigenvalues like Root[#^4-#^2+3 #+2&, 1] are intractable.

The easiest solution here would be to somehow loop the random generator until the entries in the final output are rational complex numbers. I have tried and failed to use conditional statements to achieve this, so any help would be appreciated.

Use code blocks instead of latex/code mixture
Source Link
Carl Woll
  • 131.7k
  • 6
  • 246
  • 359

I don't frequent this community so please give criticism if this is a poor question.

I am trying to make a tool which generates a small (say, 4x4) matrix with integer entries which has a "nice" Jordan normal form — i.e., one that can be computed by hand. The purpose is for manual practice.

Here is what I have:

  A := RandomInteger[{-1, 1}, {4, 4}](*This generates a random 4x4 matrix*)
  Dynamic[MatrixForm[A]](*This is the random matrix*)
  Dynamic[MatrixForm[Part[JordanDecomposition[A], 2]]](*Here is its Jordan Normal form*)

As it is, about $1$ in $10$ of these matrices has relatively nice Jordan Normal form, and that is with random entries of $-1,0$, and $1$. Complex eigenvalues are fine, but obviously eigenvalues like $\text{Root}\left[\text{$\#$1}^4-\text{$\#$1}^2+3 \text{$\#$1}+2\&,1\right]$Root[#^4-#^2+3 #+2&, 1] are intractable.

The easiest solution here would be to somehow loop the random generator until the entries in the final output are rational complex numbers. I have tried and failed to use conditional statements to achieve this, so any help would be appreciated.

I don't frequent this community so please give criticism if this is a poor question.

I am trying to make a tool which generates a small (say, 4x4) matrix with integer entries which has a "nice" Jordan normal form — i.e., one that can be computed by hand. The purpose is for manual practice.

Here is what I have:

  A := RandomInteger[{-1, 1}, {4, 4}](*This generates a random 4x4 matrix*)
  Dynamic[MatrixForm[A]](*This is the random matrix*)
  Dynamic[MatrixForm[Part[JordanDecomposition[A], 2]]](*Here is its Jordan Normal form*)

As it is, about $1$ in $10$ of these matrices has relatively nice Jordan Normal form, and that is with random entries of $-1,0$, and $1$. Complex eigenvalues are fine, but obviously eigenvalues like $\text{Root}\left[\text{$\#$1}^4-\text{$\#$1}^2+3 \text{$\#$1}+2\&,1\right]$ are intractable.

The easiest solution here would be to somehow loop the random generator until the entries in the final output are rational complex numbers. I have tried and failed to use conditional statements to achieve this, so any help would be appreciated.

I don't frequent this community so please give criticism if this is a poor question.

I am trying to make a tool which generates a small (say, 4x4) matrix with integer entries which has a "nice" Jordan normal form — i.e., one that can be computed by hand. The purpose is for manual practice.

Here is what I have:

  A := RandomInteger[{-1, 1}, {4, 4}](*This generates a random 4x4 matrix*)
  Dynamic[MatrixForm[A]](*This is the random matrix*)
  Dynamic[MatrixForm[Part[JordanDecomposition[A], 2]]](*Here is its Jordan Normal form*)

As it is, about $1$ in $10$ of these matrices has relatively nice Jordan Normal form, and that is with random entries of $-1,0$, and $1$. Complex eigenvalues are fine, but obviously eigenvalues like Root[#^4-#^2+3 #+2&, 1] are intractable.

The easiest solution here would be to somehow loop the random generator until the entries in the final output are rational complex numbers. I have tried and failed to use conditional statements to achieve this, so any help would be appreciated.

Source Link
pancini
  • 223
  • 2
  • 6
Loading