Hex
1.0
Hydrogen-electron collision solver
|
LU factorization object. More...
#include <matrix.h>
Public Member Functions | |
LUft () | |
Default constructor. More... | |
LUft (LUft const &lu) | |
Copy constructor. More... | |
LUft (LUft &&lu) | |
Move constructor. More... | |
LUft (const CsrMatrix *matrix, void *numeric) | |
Initialize the structure using the matrix and its numeric decomposition. More... | |
~LUft () | |
Destructor. More... | |
void | transfer (LUft &&lu) |
Transfer data from another factorization object. More... | |
size_t | size () const |
Size of the numerical data. More... | |
rArray const & | info () const |
Get info array. More... | |
void | link (std::string name) |
Link to a disk file. More... | |
void | save (std::string name) const |
Save Numeric object to a disk file. More... | |
void | save () const |
void | drop () |
Free memory. More... | |
cArray | solve (const cArrayView b, unsigned eqs=1) const |
Solve equations. More... | |
void | solve (const cArrayView b, cArrayView x, int eqs=1) const |
void | load (std::string name) |
Load Numeric object from a disk file. More... | |
void | load () |
This class is returned by the function CsrMatrix::factorize() and it provides some functions that can be used when solving equations with that LU factorization. Also, it is possible to store the decomposition to disk (link,save), destro the data (drop) and load later when needed (load). The most important function is "solve".
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Release memory occupied by the LU-factorization numeric object.
|
inline |
Get UMFPACK "info" array.
|
inline |
|
inline |
The expected format is the format of umfpack_zl_save_numeric.
|
inline |
|
inline |
Stores the LU-factorization data in the native UMFPACK format to a disk file.
|
inline |
|
inline |
Return the number of bytes occupied by the stored elements of the LU-factorization. This doesn't contain any other structural data.
|
inline |
The parameter "b" is assumed to contain several right hand side vectors (their count is supplied as the optional parameter "eqs"). The results are stored in "x", which has the same size as "b".
|
inline |
|
inline |
Move contents of another LUft object to this one. If there are already some data in this object, delete them.