Skip to main content
deleted 269 characters in body; edited title
Source Link
rm -rf
  • 89.3k
  • 21
  • 297
  • 479

Trying to simplify Root[]Root expressions from Eigenvalues[]the output of Eigenvalues

matrixA=({
        {\[Alpha]α, \[Beta]β, 0, 0, 0, 0, \[Beta]β, 0, 0, \[Beta]β},
        {\[Beta]β, \[Alpha]α, \[Beta]β, 0, 0, 0, 0, 0, 0, 0},
        {0, \[Beta]β, \[Alpha]α, \[Beta]β, 0, 0, 0, 0, 0, 0},
        {0, 0, \[Beta]β, \[Alpha]α, \[Beta]β, 0, 0, 0, 0, 0},
        {0, 0, 0, \[Beta]β, \[Alpha]α, \[Beta]β, 0, 0, 0, 0},
        {0, 0, 0, 0, \[Beta]β, \[Alpha]α, \[Beta]β, 0, 0, 0},
        {\[Beta]β, 0, 0, 0, 0, \[Beta]β, \[Alpha]α, \[Beta]β, 0, 0},
        {0, 0, 0, 0, 0, 0, \[Beta]β, \[Alpha]α, \[Beta]β, 0},
        {0, 0, 0, 0, 0, 0, 0, \[Beta]β, \[Alpha]α, \[Beta]β},
        {\[Beta]β, 0, 0, 0, 0, 0, 0, 0, \[Beta]β, \[Alpha]α}
        })

Can anyone point out a way to get expressions for the matrixAmatrixA as simple as for matrixBmatrixB?

And yes, the desired simple answers for matrixAmatrixA do exist, I can get them with other programs, but I want to use Mathematica!

 

EDIT: II should add that I already have already used $Assumptions=\[Alpha]<0$Assumptions = α<0 && \[Beta]β <0 at the top of my worksheet.

matrixB=({
        {\[Alpha]α, \[Beta]β, 0, 0, 0, 0, 0, 0, 0, \[Beta]β},
        {\[Beta]β, \[Alpha]α, \[Beta]β, 0, 0, 0, 0, 0, 0, 0},
        {0, \[Beta]β, \[Alpha]α, \[Beta]β, 0, 0, 0, \[Beta]β, 0, 0},
        {0, 0, \[Beta]β, \[Alpha]α, \[Beta]β, 0, 0, 0, 0, 0},
        {0, 0, 0, \[Beta]β, \[Alpha]α, \[Beta]β, 0, 0, 0, 0},
        {0, 0, 0, 0, \[Beta]β, \[Alpha]α, \[Beta]β, 0, 0, 0},
        {0, 0, 0, 0, 0, \[Beta]β, \[Alpha]α, \[Beta]β, 0, 0},
        {0, 0, \[Beta]β, 0, 0, 0, \[Beta]β, \[Alpha]α, \[Beta]β, 0},
        {0, 0, 0, 0, 0, 0, 0, \[Beta]β, \[Alpha]α, \[Beta]β},
        {\[Beta]β, 0, 0, 0, 0, 0, 0, 0, \[Beta]β, \[Alpha]α}
        })

Trying to simplify Root[] expressions from Eigenvalues[] output

matrixA=({
  {\[Alpha], \[Beta], 0, 0, 0, 0, \[Beta], 0, 0, \[Beta]},
  {\[Beta], \[Alpha], \[Beta], 0, 0, 0, 0, 0, 0, 0},
  {0, \[Beta], \[Alpha], \[Beta], 0, 0, 0, 0, 0, 0},
  {0, 0, \[Beta], \[Alpha], \[Beta], 0, 0, 0, 0, 0},
  {0, 0, 0, \[Beta], \[Alpha], \[Beta], 0, 0, 0, 0},
  {0, 0, 0, 0, \[Beta], \[Alpha], \[Beta], 0, 0, 0},
  {\[Beta], 0, 0, 0, 0, \[Beta], \[Alpha], \[Beta], 0, 0},
  {0, 0, 0, 0, 0, 0, \[Beta], \[Alpha], \[Beta], 0},
  {0, 0, 0, 0, 0, 0, 0, \[Beta], \[Alpha], \[Beta]},
  {\[Beta], 0, 0, 0, 0, 0, 0, 0, \[Beta], \[Alpha]}
 })

Can anyone point out a way to get expressions for the matrixA as simple as for matrixB?

And yes, the desired simple answers for matrixA do exist, I can get them with other programs, but I want to use Mathematica!

EDIT: I should add that I already have already used $Assumptions=\[Alpha]<0 && \[Beta] <0 at the top of my worksheet.

matrixB=({
  {\[Alpha], \[Beta], 0, 0, 0, 0, 0, 0, 0, \[Beta]},
  {\[Beta], \[Alpha], \[Beta], 0, 0, 0, 0, 0, 0, 0},
  {0, \[Beta], \[Alpha], \[Beta], 0, 0, 0, \[Beta], 0, 0},
  {0, 0, \[Beta], \[Alpha], \[Beta], 0, 0, 0, 0, 0},
  {0, 0, 0, \[Beta], \[Alpha], \[Beta], 0, 0, 0, 0},
  {0, 0, 0, 0, \[Beta], \[Alpha], \[Beta], 0, 0, 0},
  {0, 0, 0, 0, 0, \[Beta], \[Alpha], \[Beta], 0, 0},
  {0, 0, \[Beta], 0, 0, 0, \[Beta], \[Alpha], \[Beta], 0},
  {0, 0, 0, 0, 0, 0, 0, \[Beta], \[Alpha], \[Beta]},
  {\[Beta], 0, 0, 0, 0, 0, 0, 0, \[Beta], \[Alpha]}
 })

Trying to simplify Root expressions from the output of Eigenvalues

matrixA={
        {α, β, 0, 0, 0, 0, β, 0, 0, β},
        {β, α, β, 0, 0, 0, 0, 0, 0, 0},
        {0, β, α, β, 0, 0, 0, 0, 0, 0},
        {0, 0, β, α, β, 0, 0, 0, 0, 0},
        {0, 0, 0, β, α, β, 0, 0, 0, 0},
        {0, 0, 0, 0, β, α, β, 0, 0, 0},
        {β, 0, 0, 0, 0, β, α, β, 0, 0},
        {0, 0, 0, 0, 0, 0, β, α, β, 0},
        {0, 0, 0, 0, 0, 0, 0, β, α, β},
        {β, 0, 0, 0, 0, 0, 0, 0, β, α}
        }

Can anyone point out a way to get expressions for the matrixA as simple as for matrixB?

And yes, the desired simple answers for matrixA do exist, I can get them with other programs, but I want to use Mathematica!

 

I should add that I already have already used $Assumptions = α<0 && β <0 at the top of my worksheet.

matrixB={
        {α, β, 0, 0, 0, 0, 0, 0, 0, β},
        {β, α, β, 0, 0, 0, 0, 0, 0, 0},
        {0, β, α, β, 0, 0, 0, β, 0, 0},
        {0, 0, β, α, β, 0, 0, 0, 0, 0},
        {0, 0, 0, β, α, β, 0, 0, 0, 0},
        {0, 0, 0, 0, β, α, β, 0, 0, 0},
        {0, 0, 0, 0, 0, β, α, β, 0, 0},
        {0, 0, β, 0, 0, 0, β, α, β, 0},
        {0, 0, 0, 0, 0, 0, 0, β, α, β},
        {β, 0, 0, 0, 0, 0, 0, 0, β, α}
        }
(added an assumption line which may be useful to state explicitly)
Source Link

EDIT: I should add that I already have already used $Assumptions=\[Alpha]<0 && \[Beta] <0 at the top of my worksheet.

EDIT: I should add that I already have already used $Assumptions=\[Alpha]<0 && \[Beta] <0 at the top of my worksheet.

Tweeted twitter.com/#!/StackMma/status/176457779932958720
Source Link

Trying to simplify Root[] expressions from Eigenvalues[] output

I am trying to calculate eigenvalues of a sparse matrix with only two distinct non-zero elements, here Alpha and Beta, which are both negative reals. Mathematica returns some complex expressions with Root[] values when using the Eigenvalues[] command on the following matrixA:

In all cases the matrices are symmetric and real and hence have real eigenvalues.

matrixA=({
  {\[Alpha], \[Beta], 0, 0, 0, 0, \[Beta], 0, 0, \[Beta]},
  {\[Beta], \[Alpha], \[Beta], 0, 0, 0, 0, 0, 0, 0},
  {0, \[Beta], \[Alpha], \[Beta], 0, 0, 0, 0, 0, 0},
  {0, 0, \[Beta], \[Alpha], \[Beta], 0, 0, 0, 0, 0},
  {0, 0, 0, \[Beta], \[Alpha], \[Beta], 0, 0, 0, 0},
  {0, 0, 0, 0, \[Beta], \[Alpha], \[Beta], 0, 0, 0},
  {\[Beta], 0, 0, 0, 0, \[Beta], \[Alpha], \[Beta], 0, 0},
  {0, 0, 0, 0, 0, 0, \[Beta], \[Alpha], \[Beta], 0},
  {0, 0, 0, 0, 0, 0, 0, \[Beta], \[Alpha], \[Beta]},
  {\[Beta], 0, 0, 0, 0, 0, 0, 0, \[Beta], \[Alpha]}
 })

For comparison, with all the other similar matrices I've tried (see below e.g. matrixB) Mathematica will put out simple decimal approximations (using Eigenvalues[matrixB] // N // Simplify)

Can anyone point out a way to get expressions for the matrixA as simple as for matrixB?

And yes, the desired simple answers for matrixA do exist, I can get them with other programs, but I want to use Mathematica!

matrixB=({
  {\[Alpha], \[Beta], 0, 0, 0, 0, 0, 0, 0, \[Beta]},
  {\[Beta], \[Alpha], \[Beta], 0, 0, 0, 0, 0, 0, 0},
  {0, \[Beta], \[Alpha], \[Beta], 0, 0, 0, \[Beta], 0, 0},
  {0, 0, \[Beta], \[Alpha], \[Beta], 0, 0, 0, 0, 0},
  {0, 0, 0, \[Beta], \[Alpha], \[Beta], 0, 0, 0, 0},
  {0, 0, 0, 0, \[Beta], \[Alpha], \[Beta], 0, 0, 0},
  {0, 0, 0, 0, 0, \[Beta], \[Alpha], \[Beta], 0, 0},
  {0, 0, \[Beta], 0, 0, 0, \[Beta], \[Alpha], \[Beta], 0},
  {0, 0, 0, 0, 0, 0, 0, \[Beta], \[Alpha], \[Beta]},
  {\[Beta], 0, 0, 0, 0, 0, 0, 0, \[Beta], \[Alpha]}
 })