next | previous | forward | backward | up | top | index | toc | home

MutableMatrix -- the class of all mutable matrices

Description

A mutable matrix in Macaulay2 is a rectangular array of elements of a specific ring, whose entries can be modified.

A mutable matrix is different from a Matrix in that a matrix contains degree information for the target and source of the matrix, while a mutable matrix has no such information. Also, more operations are provided for matrices.

For an overview of mutable matrices, see mutable matrices.

Mutable matrices can either be encoded in a sparse manner (the matrix only encodes the non-zero elements), or in a dense manner (all elements are stored -- even zeros). The distinction is an option to several of the routines which create mutable matrices (mutableMatrix, mutableZero, mutableIdentity). Certain operations on (dense) matrices over RR or CC (e.g., eigenvalues, eigenvectors, LU decomposition, SVD decomposition, and solving) are performed using the lapack library.

row and column operations

matrix arithmetic

Many matrix arithmetic routines are only available for immutabie matrices, not mutable matrices. It is necessary to use matrix to make an immutable matrix first.

Methods that use an object of class MutableMatrix :

For the programmer

The object MutableMatrix is a type, with ancestor classes HashTable < Thing.