# Matrix-Math©

## A Simple, Fast, and Versatile Matrix Algebra Tool

**Matrix-Math© is a free matrix mathematics tool**
written with special attention to ease-of-use, flexability, and versatility,
and yet having speed,
power, and a wealth of advanced features. It reads a plain
text notebook to perform any sequence of matrix, vector, number and scalar
operations and writes the input and results to a plain text output notebook.
Notebooks contain the user's descriptive and explanatory information
interspersed with the commands that perform the calculations. The
command expressions follow common math syntax for the operations
they perform, making
them quickly learned with little effort. Commands handle all eligible
types of variables appropriately and interchangeably.
just as normal math expressions do,
eliminating another learning hurdle. Notebooks are free
format, allowing a project to be structured any way desired, and eliminating
another learning hurdle. These
features make Matrix-Math ideal for students, new and occasional users,
and course
instructors. In addition its speed of operation and advanced physics
and Lie group representations-oriented features make it suitable for
advanced math and physics workers and researchers.

**Download ** the
zip file and unzip it to install it. It's entirely self-contained, requiring
only a basic MSWindows host computer.
In a command window in the new unzipped 'Matrix-Math' folder run Matrix-Math
by typing:

matrix-math HOW_TO_USE_IT.nbk 1Examples of the most useful Matrix-Math commands and notes about them print immediately to the screen and in the output notebook HOW_TO_USE_IT.nbo that is written when the run finishes. A version can also be provided for Linux and possibly MacOS if there is enough interest. Send a support request for this or any other reason via the 'message us' button on the support page .

**This tool overlaps** in some areas of matrix math with some well-known
computer algebra systems. It differs from the high-end ones by being
free, by the simplicity and generality of its expressons, by its flexible
formatting,
and by its special features. It differs from the free ones
by being much lighter weight and faster, by its simpler, more general syntax
and flexible formatting, and by its wider range of matrix operations.

**The output notebook ** follows the order of the input
notebook. Results of the command operations appear where they occur,
along with any text provided, making for a convenient automatic
record of the reasoning, logic and sequence of steps of a matrix project
of any magnitude. Output notebooks are ideal for capturing and submitting
course work and problem sets involving matrices as well as for
documenting more advanced investigations.
Input notebooks are written with any plain text
Unicode UTF-8-enabled text editor and given the .nbk extension.
Each notebook run normally completes in a few seconds or less,
so developing a notebook solution is essentially interactive. Extensive
error trapping and reporting and a debug output option are provided for
quick, easy troubleshooting.

**Integers, decimals, and floating point numbers** are currently
accepted. Results are given to the full single-precision
capability of the host computer, in integer, decimal or floating point
format, as appropriate.
The next release will add rational numbers in fractional notation,
irrational symbols such as
Pi, square root, and others, complex numbers, and abstract symbols
(e.g. x, y, z, a, b, c)
as scalar and matrix and vector element entries.
Default Lie group and Lie algebra matrices of interest in physics are planned.
This tool does not provide nor plan for graphing nor emphasize solving
linear equations since those features are readily available elsewhere.

- All operations to be performed are enclosed in a pair of angle
brackets thus:
<< A = B * C >>

- Identifiers (variable names), equal signs and operators in those expressions are separated by one or more spaces.
- Names may be up to 251 characters long and use only alphanumeric and '_' characters.
- All other text in the input notebook is passed thru as-is to the output notebook.
- Define a matrix:
<< A = 1.0 .2 .03 4 .4e5 0.6 7. 1E-8 9 >>

- Define a matrix with a leading coefficient:
<< B = 5 * 1 2 3 4 5 6 7 8 9 >>

- Determinant of a defined matrix:
<< C = det B >>

- Define a left-diagonal matrix:
<< D = diag 1 2 3 4 5 >>

- Other operations on matrices, vectors and scalars include multiply, add, subtract, inverse, transpose, adjoint, integer power, compare, trace, direct sum, tensor product, commutators and anti-commutators, along with a right-multiply version of these where different.
- Rectangular matrices are handled where applicable.
- Eigenvalues, IRR's of some Lie algebras and their groups and structure constants, are planned.
- Differentiation of Lie group matrices and some related aspects of diffential geometry and topological groups may be added in the future.
- Complete documentation is provided in the zip file.

**Syntax Overview:**

**Please let us know how it works
(or doesn't) for you!**

Cite it in your research results, courses or texts as
**Matrix-Math©**, matrix-math.net, *Nova Software, Inc.*, 2021