Multiply Matrices Graphing Calculator

Since the introduction of the legendary HP-15C, high-end electronic pocket calculators have had the capability to do matrix arithmetic, making them useful tools for computing eigenvalues and eigenvectors, solving linear systems, rotating vectors, and implementing the many algorithms that can be put into the form of a sequence of linear operations.  Most graphing calculators, including those of the TI-89, HP-48, TI-82, and TI-85 series calculators, have this capability, which is at least as appealing and powerful a feature as graphical display.

Every common graphics calculator makes use of an overloaded multiplication operator; the same button is used to multiply two matrices on the stack and two numbers on the HP-48 series, and on the TI calculators the same asterisk (*) operator multiplies both matrices and numbers.  In most cases, with the exception of the early TI-81, the manner in which matrices are entered is uniform, similar to the pattern established by MATLAB, but without use of the semicolon, and with a few machine-specific quirks as explained below.

• TI-82 series calculators, including the TI-83 and TI-84 •

These are the most common graphing calculators, although neither the best nor the best for the money, so they will be covered first.  Matrices can either be entered using the matrix editor application (inherited from the TI-81!) accessed by pressing 2nd, MATRX and selecting “edit”, or at the command line using square brackets.  Enclose the entire matrix in a pair of brackets, enclose each row in a pair of brackets, and separate the individual entries using commas.    For example, [[1,0][0,1]] is the identity matrix.  Matrices can either be used as entered or stored and accessed by reference.  As is the case for lists, matrices are given pre-determined variable names [A]-[J], all accessed from the “Names” portion of the 2nd, MATRX menu.  To store a matrix from the command line, use the standard “STO” arrow operator, e.g. [[2,3][4,5]]→[A].

Multiplication can be done on either explicitly input or stored matrices, following the common left-to-right order.  (Inner matrix dimensions must agree.)  For example, [A]*[B] returns the product of [A][B].

• HP-48 series calculators, including the HP-49 and HP-50 •

Matrix entry is exactly as on the TI-82 series: enclose the entire matrix in a pair of brackets (accessed by pressing the [ ] key) and enclose each row of the matrix in a pair of brackets.  When using the RPN stack-based interface, push the left matrix in the multiplication onto the stack first, followed by the right matrix.  That is, if interested in the product AB, input A, then input B, then press *.  In algebraic mode on the HP-49 and HP-50, use the * operator.

• TI-85 series calculators •

On the TI-85 and TI-86, matrix syntax is identical to the TI-82 series.  However, matrices may now be given any name the user or programmer wishes them to have.

• TI-89 and TI-92, (including the Voyage 200) •

Syntax on the TI-92 series calculators, which run a ROM verison of the Derive CAS, is even more MATLAB-like than the non-CAS TI calculators and the HP-48 series.  Matrices are once again multiplied using the * operator, and can be entered just like TI-82 matrices, but they can also be entered in a single set of square brackets, using commas to separate row elements and the semicolon to separate rows.  For example, [1,0;0,1], and [[1,0][0,1]] are both the identity matrix.

• The Casio fx9860g •

Matrix syntax is exactly the same as on the TI-82 series, and as on that calculator, matrix variables are special tokens “Mat A”-“Mat Z” that must be accessed through the matrix menu.

• TI-81 •

The TI-81 was discontinued long ago, but there are enough of them serving as hand-me-downs, classroom spares, and inexpensive secondhand devices that it’s worth noting their peculiarities.

Matrix multiplication is exactly the same as on the TI-82, but the TI-81 features no way of inputting an entire matrix from the command line.  Either use the editor, or set the matrix dimension manually and access the individual elements.  2→[A](1,2) stores the number 2 to the first row, second column element of A.  There are 3 matrix tokens, [A], [B], and [C] available for storage, and each matrix is limited to 10 rows and 10 columns.  Although insufficient for serious number-crunching, this is enough to perform many simple tasks including solution of linear systems of up to 10 equations.