I'm trying to use the "Eigenvalues/Vectors of 3rd-Order for the HP-41C/CV/CX" program but get a "divide by zero" error. It looks like the program called “A” sets up matrix "A" so I enter each element, followed with R/S. How is vector "V" entered? Anyone have experience using this program?

Thanks.

Tony Duell sent me this explanation via mail:

Quote:

It's actually a translation (by HP) of an HP67 program in that machine's High Level Math Solution Book. And that explains a few things...
You start by storing the 9 values of the matrix in column order in

register 01 to 09. You do this by hand, the program doesn't store them. When I say 'column order; I mean that registers 01-03 are the first column of the matrix, 04-06 are the second column, and 07-09 are the third column.

Executing from label A (which can be done by pressing the Sigma+ key in USER mode if you have nothing else assigned there, of course) will display the 9 values in the matrix so you can check they are correct.

You then store you initial guess for the eigenvector in registers 20-22. You may wonder why those. Well, on the HP67, those are called A-C. Again, you have to do this by hand.

Then XEQ "EVV". The program should then display the first eigenvalue followed by the first eigenvector, then the second eigenvalue, second eigenvector, third eigenvalue, thrid eigenvector, a total of 12 numbers. Since it came from the (numeric-only) HP67, there's no labelling of these values....

Alternatives to that program are available in the SandMath Module:

EV3X3 - for 3x3 matrices, and

CHRPOL - for nxn case, and

EIGEN - using the Advantage's SOLVE

Data entry is assisted by the program, no issues there.

See also the articles section of this museum site if you're interested.

*Edited: 6 Feb 2011, 2:42 a.m. *