umf
input parametersFor a square matrix A and a column vector b, the
umf
functions find the solution x to the matrix equation
M x = b, where M is either A, the
transpose of A, or its conjugate transpose. As noted above, the
choice is determined by whether the the function name is of the form
*_a_
*, *_t_
*, or *_c_
* respectively.
The argument to any of these functions is a pair
(
A,
b)
, where A represents the matrix
mentioned above and b represents the column vector.
The parameter b is required to be a list of numbers whose length
matches the number of rows in the matrix. The numbers are either real
numbers for the di_
* functions (math), or complex
for the zi_
* functions (complex).
There is a choice of representations for the parameter A,
depending on whether the function being called is one of the *_trp
functions or one of the *_col
functions.
For the *_trp
functions, A is represented as a non-empty
list of triples <((
i,
j),
v)...>
, where each
item of the list corresponds to a non-zero entry in the matrix.
di_
*_trp
functions or a
complex number for the zi_
*_trp
functions.
For the *_col
functions, the representation of A is more
complicated but has a slight advantage in memory usage. It may also
have an advantage in speed unless more time is wasted on the virtual
side transforming a matrix to this representation than it saves.
In this case, A is represented by a triple of the form
((
p,
i),
v)
. The parameters p and i
are lists of natural numbers. The parameter v is a list of real
numbers for the di_
*_col
functions and complex numbers
for the zi_
*_col
functions. They have the following
interpretations.
The first item of p is always zero. Further explanation of this
format in terms of an array representation can be found in the file
UMFPACK_UserGuide.pdf, available from the umf
library
home page at http://www.cise.ufl.edu/research/sparse/SuiteSparse/current/SuiteSparse/.