Installation

To use this package, copy all of the files in the ./src/ directory to your .maxima/ directory, or other directory in Maxima’s search path. For unix/linux, there is a script ./install.sh that does this for you.

Using qinf

At the Maxima prompt give the following command.

load(“qinf.mac”);

If you aren’t sure about the Maxima search path, you could replace this last load command with the menus in wxMaxima:

File–>Load Package

and select qinf.mac from the directory you saved it to.

LikeLike

]]>LikeLike

]]>LikeLike

]]>LikeLike

]]>In my work I need to provide the easiest possible installation for my undergraduate students. About half run mac os and half run windows.

I hope to avoid taking the mac users down the path to homebrew or macports, but rather provide precompiled install packages.

Do you have any experience making such install installation packages with Homebrew?

LikeLike

]]>LikeLike

]]>LikeLike

]]>For a matrix like you describe, I think you could use the lines below

I know they look awful and don’t really fit the description of “quick one-liner”

eigdiag(v):=apply(‘diag_matrix,flatten(makelist(makelist(part(v,1,1,j),i,1,part(v,1,2,j)),j,1,length(part(v,1,1)))));

and

eigU(v):=transpose(apply(‘matrix,makelist(makelist(flatten(part(v,2))[i],i,lsum(i,i,part(v,1,2))*j+1,lsum(i,i,part(v,1,2))*j+lsum(i,i,part(v,1,2))),j,0,lsum(i,i,part(v,1,2))-1)));

These aren’t entirely general either—

This fails in the event that maxima can’t find the eigenvectors, as with

A:matrix([3,6,9],

[2,4,5],

[3,2,1]);

and also fails in the case of a jordan block where there isn’t a full set of eigenvectors

A:matrix([1,1],[0,1])

LikeLike

]]>Thanks for the post describing how to use Maxima’s eigenvector and value functions. Unfortunately, there’s still a subtlety in Maxima’s output format that causes the macros you gave above to fail – that is, when Maxima returns vectors that have multiplicities greater than 1.

For example, consider the matrix:

M : matrix (

[1, kb, 0, 0],

[ka, 1, 0, 0],

[0, kb * (1 – kb), 1, 0],

[ka * (1 – ka), 0, 0, 1]

);

Maxima returns three eigenvalues for this matrix and lists the last as having two multiplicities. This breaks your macro.

Do you have any alternate versions that support multiplicities?

Thanks,

Larry

LikeLike

]]>LikeLike

]]>