OOFEM  2.4 OOFEM.org - Object Oriented Finite Element Solver
oofem::FloatMatrix Class Reference

Implementation of matrix containing floating point numbers. More...

#include <floatmatrix.h>

## Public Member Functions

FloatMatrix (int n, int m)
Creates matrix of given size. More...

FloatMatrix ()
Creates zero sized matrix. More...

FloatMatrix (const FloatArray &vector, bool transpose=false)
Constructor. More...

FloatMatrix (const FloatMatrix &mat)
Copy constructor. More...

FloatMatrix (FloatMatrix &&mat)
Copy constructor. More...

FloatMatrix (std::initializer_list< std::initializer_list< double > >mat)
Initializer list constructor. More...

FloatMatrixoperator= (std::initializer_list< std::initializer_list< double > >mat)
Assignment operator. More...

FloatMatrixoperator= (std::initializer_list< FloatArray >mat)
Assignment operator. More...

FloatMatrixoperator= (const FloatMatrix &mat)

FloatMatrixoperator= (FloatMatrix &&mat)

~FloatMatrix ()
Destructor. More...

void checkBounds (int i, int j) const
Checks size of receiver towards requested bounds. More...

int giveNumberOfRows () const
Returns number of rows of receiver. More...

int giveNumberOfColumns () const
Returns number of columns of receiver. More...

bool isSquare () const
Returns nonzero if receiver is square matrix. More...

bool isNotEmpty () const
Tests for empty matrix. More...

bool isFinite () const
Returns true if no element is NAN or infinite. More...

double at (int i, int j) const
Coefficient access function. More...

double & at (int i, int j)
Coefficient access function. More...

double & operator() (int i, int j)
Coefficient access function. More...

double operator() (int i, int j) const
Coefficient access function. More...

void assemble (const FloatMatrix &src, const IntArray &loc)
Assembles the contribution using localization array into receiver. More...

void assemble (const FloatMatrix &src, const IntArray &rowind, const IntArray &colind)
Assembles the contribution using localization array into receiver. More...

void assemble (const FloatMatrix &src, const int *rowind, const int *colind)
Assembles the contribution using localization array into receiver. More...

double computeFrobeniusNorm () const
Computes the Frobenius norm of the receiver. More...

double computeNorm (char p) const
Computes the operator norm of the receiver. More...

double computeReciprocalCondition (char p= '1') const
Computes the conditioning of the receiver. More...

void beDiagonal (const FloatArray &diag)
Modifies receiver to be a diagonal matrix with the components specified in diag. More...

double giveTrace () const
Returns the trace of the receiver. More...

double giveDeterminant () const
Returns the trace (sum of diagonal components) of the receiver. More...

void zero ()
Zeroes all coefficient of receiver. More...

void beUnitMatrix ()
Sets receiver to unity matrix. More...

void bePinvID ()
Sets receiver to the inverse of scaling matrix P multiplied by the deviatoric projector ID. More...

void beTranspositionOf (const FloatMatrix &src)
Assigns to the receiver the transposition of parameter. More...

void beProductOf (const FloatMatrix &a, const FloatMatrix &b)
Assigns to the receiver product of . More...

void addProductOf (const FloatMatrix &a, const FloatMatrix &b)

void addTProductOf (const FloatMatrix &a, const FloatMatrix &b)

void beTProductOf (const FloatMatrix &a, const FloatMatrix &b)
Assigns to the receiver product of . More...

void beProductTOf (const FloatMatrix &a, const FloatMatrix &b)
Assigns to the receiver product of . More...

void beDyadicProductOf (const FloatArray &vec1, const FloatArray &vec2)

void beNMatrixOf (const FloatArray &n, int nsd)
Assigns the receiver to be a repeated diagonal matrix. More...

void beLocalCoordSys (const FloatArray &normal)
Makes receiver the local coordinate for the given normal. More...

void setSubMatrix (const FloatMatrix &src, int sr, int sc)

void setTSubMatrix (const FloatMatrix &src, int sr, int sc)

void beSubMatrixOf (const FloatMatrix &src, int topRow, int bottomRow, int topCol, int bottomCol)
Assigns to the receiver the sub-matrix of another matrix. More...

void beSubMatrixOf (const FloatMatrix &src, const IntArray &indxRow, const IntArray &indxCol)
Modifies receiver to be a sub-matrix of another matrix. More...

void addSubVectorRow (const FloatArray &src, int sr, int sc)

void addSubVectorCol (const FloatArray &src, int sr, int sc)

void copySubVectorRow (const FloatArray &src, int sr, int sc)
Copy (set) given vector to receiver row sr, starting at column sc. More...

void setColumn (const FloatArray &src, int c)
Sets the values of the matrix in specified column. More...

void copyColumn (FloatArray &dest, int c) const
Fetches the values from the specified column. More...

void beInverseOf (const FloatMatrix &src)
Modifies receiver to become inverse of given parameter. More...

bool solveForRhs (const FloatArray &b, FloatArray &answer, bool transpose=false)
Solves the system of linear equations . More...

void solveForRhs (const FloatMatrix &B, FloatMatrix &answer, bool transpose=false)
Solves the system of linear equations . More...

void plusProductSymmUpper (const FloatMatrix &a, const FloatMatrix &b, double dV)

void plusDyadSymmUpper (const FloatArray &a, double dV)

void plusProductUnsym (const FloatMatrix &a, const FloatMatrix &b, double dV)

void plusDyadUnsym (const FloatArray &a, const FloatArray &b, double dV)

void add (double s, const FloatMatrix &a)

void subtract (const FloatMatrix &a)
Subtracts matrix from the receiver. More...

void times (double f)
Multiplies receiver by factor f. More...

void negated ()
Changes sign of receiver values. More...

void initFromVector (const FloatArray &vector, bool transposed)
Assigns to receiver one column or one row matrix containing vector. More...

void symmetrized ()
Initializes the lower half of the receiver according to the upper half. More...

void rotatedWith (const FloatMatrix &r, char mode= 'n')
Returns the receiver 'a' transformed using give transformation matrix r. More...

void resize (int rows, int cols)
Checks size of receiver towards requested bounds. More...

void resizeWithData (int, int)
Checks size of receiver towards requested bounds. More...

void hardResize (int r, int c)
Resizing that enforces reallocation of memory. More...

void clear ()
Sets size of receiver to be an empty matrix. It will have zero rows and zero columns size. More...

bool jaco_ (FloatArray &eval, FloatMatrix &v, int nf)
Computes eigenvalues and eigenvectors of receiver (must be symmetric) The receiver is preserved. More...

void printYourself () const
Prints matrix to stdout. Useful for debugging. More...

void printYourself (const std::string &name) const
Print receiver on stdout with custom name. More...

void printYourselfToFile (const std::string filename, const bool showDimensions=true) const
Print matrix to file. More...

void pY () const
Higher accuracy than printYourself. More...

void writeCSV (const std::string &name) const
Writes receiver as CSV (comma seperated values) More...

const double * givePointer () const
Exposes the internal values of the matrix. More...

double * givePointer ()

void beMatrixFormOfStress (const FloatArray &aArray)
Reciever will be a 3x3 matrix formed from a vector with either 9 or 6 components. More...

void beMatrixForm (const FloatArray &aArray)

void changeComponentOrder ()
Swaps the indices in the 6x6 matrix such that it converts between OOFEM's and Abaqus' way of writing matrices. More...

contextIOResultType storeYourself (DataStream &stream) const

contextIOResultType restoreYourself (DataStream &stream)

int givePackSize (DataStream &buff) const

## Protected Attributes

int nRows
Number of rows. More...

int nColumns
Number of columns. More...

std::vector< double > values
Values of matrix stored column wise. More...

## Friends

std::ostream & operator<< (std::ostream &out, const FloatMatrix &r)

## Detailed Description

Implementation of matrix containing floating point numbers.

FloatMatrix can grow and shrink to requested size if required. Implementation includes many computing and manipulation methods. Rows and Columns are indexed starting from 1.

The matrix stores its nRows*nColumns coefficients in 'values'. The coefficients are stored column by column, like in Fortran.

• Storing and retrieving a coefficient (method 'at') ;
• Performing standard operations : addition, multiplication, transposition, inversion, lumping, rotation, etc ;
• Introduced allocatedSize variable to allow dynamic rescaling of matrix size possibly without memory reallocation. At startup matrix occupies space given by allocatedSpace = nRows*nColums. Then there can be further request for resizing matrix to smaller dimension then we only change nRows and nColumns variables , but allocatedSize variable remain untouched - expecting possible matrix grow and then re-using previously allocated space. If further request for growing then is necessary memory reallocation. This process is controlled in resize member function.

Definition at line 94 of file floatmatrix.h.

## Constructor & Destructor Documentation

 oofem::FloatMatrix::FloatMatrix ( int n, int m )
inline

Creates matrix of given size.

Parameters
 n Number of rows. m Requested number of columns.

Definition at line 110 of file floatmatrix.h.

 oofem::FloatMatrix::FloatMatrix ( )
inline

Creates zero sized matrix.

Definition at line 112 of file floatmatrix.h.

 oofem::FloatMatrix::FloatMatrix ( const FloatArray & vector, bool transpose = false )

Constructor.

Creates float matrix from float vector. Vector may be stored row wise or column wise, depending on second parameter.

Parameters
 vector Float vector from which matrix is constructed transpose If false (default) then a matrix of size (vector->giveSize(),1) will be created and initialized, if true then a matrix of size (1,vector->giveSize()) will be created.

Definition at line 113 of file floatmatrix.C.

References oofem::FloatArray::giveSize(), nColumns, nRows, oofem::FloatArray::values, and values.

 oofem::FloatMatrix::FloatMatrix ( const FloatMatrix & mat )
inline

Copy constructor.

Definition at line 123 of file floatmatrix.h.

 oofem::FloatMatrix::FloatMatrix ( FloatMatrix && mat )
inline

Copy constructor.

Definition at line 125 of file floatmatrix.h.

 oofem::FloatMatrix::FloatMatrix ( std::initializer_list< std::initializer_list< double > > mat )

Initializer list constructor.

Definition at line 131 of file floatmatrix.C.

References nRows, OOFEM_ERROR, RESIZE, and values.

 oofem::FloatMatrix::~FloatMatrix ( )
inline

Destructor.

Definition at line 146 of file floatmatrix.h.

## Member Function Documentation

 void oofem::FloatMatrix::add ( double s, const FloatMatrix & a )

Parameters
 s Scaling factor. a Matrix to be added.

Definition at line 1054 of file floatmatrix.C.

References givePointer(), isNotEmpty(), nColumns, nRows, OOFEM_ERROR, operator=(), times(), and values.

 void oofem::FloatMatrix::addProductOf ( const FloatMatrix & a, const FloatMatrix & b )

Definition at line 427 of file floatmatrix.C.

References at(), givePointer(), nColumns, nRows, and OOFEM_ERROR.

Referenced by oofem::Shell7BaseXFEM::discComputeStiffness().

 void oofem::FloatMatrix::addSubVectorCol ( const FloatArray & src, int sr, int sc )

Parameters
 src Source matrix. sr Starting row position. sc Starting column position.

Definition at line 627 of file floatmatrix.C.

 void oofem::FloatMatrix::addSubVectorRow ( const FloatArray & src, int sr, int sc )

Parameters
 src Source matrix. sr Starting row position. sc Starting column position.

Definition at line 607 of file floatmatrix.C.

 void oofem::FloatMatrix::addTProductOf ( const FloatMatrix & a, const FloatMatrix & b )

Definition at line 459 of file floatmatrix.C.

References at(), givePointer(), nColumns, nRows, and OOFEM_ERROR.

 void oofem::FloatMatrix::assemble ( const FloatMatrix & src, const IntArray & rowind, const IntArray & colind )

Assembles the contribution using localization array into receiver.

The receiver must have dimensions large enough to localize contribution.

Parameters
 src Source to be assembled. rowind Row localization indices. colind Column localization indices.

Definition at line 277 of file floatmatrix.C.

 void oofem::FloatMatrix::assemble ( const FloatMatrix & src, const int * rowind, const int * colind )

Assembles the contribution using localization array into receiver.

The receiver must have dimensions large enough to localize contribution.

Parameters
 src Source to be assembled. rowind Row localization indices. colind Column localization indices.

Definition at line 305 of file floatmatrix.C.

References at(), giveNumberOfColumns(), and giveNumberOfRows().

 double& oofem::FloatMatrix::at ( int i, int j )
inline

Coefficient access function.

Returns value of coefficient at given position of the receiver. Implements 1-based indexing.

Parameters
 i Row position of coefficient. j Column position of coefficient.

Definition at line 187 of file floatmatrix.h.

 void oofem::FloatMatrix::beDiagonal ( const FloatArray & diag )

Modifies receiver to be a diagonal matrix with the components specified in diag.

Returns

Definition at line 1433 of file floatmatrix.C.

References oofem::FloatArray::giveSize(), and resize().

 void oofem::FloatMatrix::beDyadicProductOf ( const FloatArray & vec1, const FloatArray & vec2 )
 void oofem::FloatMatrix::beLocalCoordSys ( const FloatArray & normal )

Makes receiver the local coordinate for the given normal.

Implemented for 2D and 3D.

Parameters
 normal Normal (normalized).

Definition at line 515 of file floatmatrix.C.

 void oofem::FloatMatrix::beMatrixFormOfStress ( const FloatArray & aArray )

Reciever will be a 3x3 matrix formed from a vector with either 9 or 6 components.

Order of matrix components in vector: 11, 22, 33, 23, 13, 12, 32, 31, 21 If size(aArray) = 6, a symmetric matrix will be created.

Parameters
 aArray Array to transform.

Definition at line 1774 of file floatmatrix.C.

 void oofem::FloatMatrix::beNMatrixOf ( const FloatArray & n, int nsd )
 void oofem::FloatMatrix::bePinvID ( )

Sets receiver to the inverse of scaling matrix P multiplied by the deviatoric projector ID.

Definition at line 1347 of file floatmatrix.C.

References resize(), and values.

 void oofem::FloatMatrix::beProductTOf ( const FloatMatrix & a, const FloatMatrix & b )
 void oofem::FloatMatrix::beSubMatrixOf ( const FloatMatrix & src, int topRow, int bottomRow, int topCol, int bottomCol )

Assigns to the receiver the sub-matrix of another matrix.

Parameters
 src Matrix from which sub-matrix is taken topRow Index of top row, where sub matrix row index starts bottomRow Index of bottom row, where sub matrix ends (including this row). topCol Index of top column of sub-matrix. bottomCol index of bottom column of sub-matrix.

Definition at line 962 of file floatmatrix.C.

References at(), nColumns, nRows, OOFEM_ERROR, and resize().

 void oofem::FloatMatrix::beSubMatrixOf ( const FloatMatrix & src, const IntArray & indxRow, const IntArray & indxCol )

Modifies receiver to be a sub-matrix of another matrix.

Parameters
 src Matrix from which sub-matrix is taken indxRow Array of the row indices to be extracted indxCol Array of the column indices to be extracted

Definition at line 998 of file floatmatrix.C.

 void oofem::FloatMatrix::changeComponentOrder ( )

Swaps the indices in the 6x6 matrix such that it converts between OOFEM's and Abaqus' way of writing matrices.

Currently used to convert the 6x6 Jacobian from Abaqus UMAT to OOFEM.

Definition at line 1691 of file floatmatrix.C.

References at(), nColumns, and nRows.

 void oofem::FloatMatrix::checkBounds ( int i, int j ) const

Checks size of receiver towards requested bounds.

Current implementation will call exit(1), if positions are outside bounds.

Parameters
 i Required number of rows. j Required number of columns.

Definition at line 189 of file floatmatrix.C.

References nColumns, nRows, and OOFEM_ERROR.

Referenced by isFinite().

 double oofem::FloatMatrix::computeFrobeniusNorm ( ) const

Computes the Frobenius norm of the receiver.

The Frobenius norm is defined as the square root of the sum of the absolute squares of its elements.

Returns
Frobenius norm.

Definition at line 1613 of file floatmatrix.C.

References values.

 double oofem::FloatMatrix::computeNorm ( char p ) const

Computes the operator norm of the receiver.

Parameters
 p Norm type, '1' for 1 norm, '2' for 2 norm.
Returns
Todo:
Use this when obtaining eigen values is implemented.

Definition at line 1618 of file floatmatrix.C.

Referenced by computeReciprocalCondition().

 double oofem::FloatMatrix::computeReciprocalCondition ( char p = '1' ) const

Computes the conditioning of the receiver.

From 0 to 1, where 0 is singular and 1 best. The receiver must be square. Works identically as MATLAB/Octaves rcond().

Parameters
 p Norm type, '1' for 1 norm, '2' for 2 norm.
Returns

Definition at line 1737 of file floatmatrix.C.

Referenced by oofem::MeshQualityErrorEstimator::computeJacobianError().

 void oofem::FloatMatrix::copyColumn ( FloatArray & dest, int c ) const

Fetches the values from the specified column.

Output array is resized to fit column.

Parameters
 dest Array to copy values to. c Column to copy.

Definition at line 662 of file floatmatrix.C.

 void oofem::FloatMatrix::copySubVectorRow ( const FloatArray & src, int sr, int sc )

Copy (set) given vector to receiver row sr, starting at column sc.

Parameters
 src Source matrix. sr Starting row position. sc Starting column position.

Definition at line 677 of file floatmatrix.C.

Referenced by oofem::DofManager::computeM2LTransformation().

 int oofem::FloatMatrix::givePackSize ( DataStream & buff ) const

Definition at line 1905 of file floatmatrix.C.

Referenced by oofem::MDM::estimatePackSize().

 const double* oofem::FloatMatrix::givePointer ( ) const
inline

Exposes the internal values of the matrix.

Should typically not be used outside of matrix classes.

Returns
Pointer to the values of the matrix.

Definition at line 558 of file floatmatrix.h.

 double* oofem::FloatMatrix::givePointer ( )
inline

Definition at line 559 of file floatmatrix.h.

References oofem::operator<<().

 double oofem::FloatMatrix::giveTrace ( ) const

Returns the trace of the receiver.

The receiver should be a square matrix.

Returns

Definition at line 1443 of file floatmatrix.C.

References isSquare(), nColumns, nRows, OOFEM_ERROR, and values.

 void oofem::FloatMatrix::hardResize ( int r, int c )

Resizing that enforces reallocation of memory.

Data is zeroed.

Parameters
 r Number of rows. c Number of columns.

Definition at line 1396 of file floatmatrix.C.

References nColumns, nRows, and values.

 void oofem::FloatMatrix::initFromVector ( const FloatArray & vector, bool transposed )

Assigns to receiver one column or one row matrix containing vector.

Parameters
 vector Source vector. transposed If false then (vector->giveSize(),1) FloatMatrix is assigned else (1,vector->giveSize()) FloatMatrix is assigned.

Definition at line 1308 of file floatmatrix.C.

References oofem::FloatArray::giveSize(), nColumns, nRows, oofem::FloatArray::values, and values.

Referenced by oofem::PlasticMaterial::giveRealStressVector().

 bool oofem::FloatMatrix::isFinite ( ) const

Returns true if no element is NAN or infinite.

Definition at line 209 of file floatmatrix.C.

References at(), checkBounds(), nRows, operator()(), and values.

Referenced by oofem::LSPrimaryVariableMapper::mapPrimaryVariables().

 bool oofem::FloatMatrix::isSquare ( ) const
inline

Returns nonzero if receiver is square matrix.

Definition at line 160 of file floatmatrix.h.

 bool oofem::FloatMatrix::jaco_ ( FloatArray & eval, FloatMatrix & v, int nf )

Computes eigenvalues and eigenvectors of receiver (must be symmetric) The receiver is preserved.

Parameters
 eval Requested eigenvalues. v Requested eigenvectors (stored colum wise). nf Number of significant figures.
Returns
True if ok,otherwise false.

Definition at line 1912 of file floatmatrix.C.

 double& oofem::FloatMatrix::operator() ( int i, int j )
inline

Coefficient access function.

Returns l-value of coefficient at given position of the receiver. Implements 0-based indexing.

Parameters
 i Row position of coefficient. j Column position of coefficient.

Definition at line 199 of file floatmatrix.h.

Referenced by isFinite().

 double oofem::FloatMatrix::operator() ( int i, int j ) const
inline

Coefficient access function.

Implements 0-based indexing.

Parameters
 i Row position of coefficient. j Column position of coefficient.

Definition at line 209 of file floatmatrix.h.

 FloatMatrix & oofem::FloatMatrix::operator= ( std::initializer_list< std::initializer_list< double > > mat )

Assignment operator.

Definition at line 149 of file floatmatrix.C.

References nRows, OOFEM_ERROR, RESIZE, and values.

 FloatMatrix & oofem::FloatMatrix::operator= ( std::initializer_list< FloatArray > mat )

Assignment operator.

Definition at line 169 of file floatmatrix.C.

References nRows, OOFEM_ERROR, RESIZE, and values.

 FloatMatrix& oofem::FloatMatrix::operator= ( const FloatMatrix & mat )
inline

Definition at line 133 of file floatmatrix.h.

References nColumns, nRows, and values.

 FloatMatrix& oofem::FloatMatrix::operator= ( FloatMatrix && mat )
inline

Definition at line 139 of file floatmatrix.h.

 void oofem::FloatMatrix::plusDyadSymmUpper ( const FloatArray & a, double dV )

If the receiver has zero size, it is expanded. Computes only the upper half of receiver.

Parameters
 a Array a in equation. dV Scaling factor.

Definition at line 756 of file floatmatrix.C.

 void oofem::FloatMatrix::plusDyadUnsym ( const FloatArray & a, const FloatArray & b, double dV )
 void oofem::FloatMatrix::plusProductSymmUpper ( const FloatMatrix & a, const FloatMatrix & b, double dV )
 void oofem::FloatMatrix::printYourself ( ) const

Prints matrix to stdout. Useful for debugging.

Definition at line 1458 of file floatmatrix.C.

References at(), nColumns, and nRows.

 void oofem::FloatMatrix::printYourself ( const std::string & name ) const

Print receiver on stdout with custom name.

Parameters
 name Display name of reciever.

Definition at line 1499 of file floatmatrix.C.

References at(), nColumns, and nRows.

 void oofem::FloatMatrix::printYourselfToFile ( const std::string filename, const bool showDimensions = true ) const

Print matrix to file.

Parameters
 filename Output filename showDimensions Determines if dimensions should be included in output. Default is true.

Definition at line 1477 of file floatmatrix.C.

References at(), nColumns, nRows, and OOFEM_ERROR.

Referenced by oofem::tet21ghostsolid::computeStiffnessMatrix().

 void oofem::FloatMatrix::pY ( ) const

Higher accuracy than printYourself.

Definition at line 1524 of file floatmatrix.C.

References at(), nColumns, and nRows.

 void oofem::FloatMatrix::resizeWithData ( int rows, int columns )

Checks size of receiver towards requested bounds.

If dimension mismatch, size is adjusted accordingly. Note: New coefficients are initialized to zero, old are kept.

Definition at line 1369 of file floatmatrix.C.

References at(), giveNumberOfColumns(), giveNumberOfRows(), oofem::min(), nColumns, nRows, and values.

 contextIOResultType oofem::FloatMatrix::restoreYourself ( DataStream & stream )
 void oofem::FloatMatrix::rotatedWith ( const FloatMatrix & r, char mode = 'n' )
 void oofem::FloatMatrix::setSubMatrix ( const FloatMatrix & src, int sr, int sc )

Parameters
 src Sub-matrix to be inserted. sr Determines the row position (receiver's 1-based index) of first src value to be added. sc Determines the column position (receiver's 1-based index) of first src value to be added.

Definition at line 557 of file floatmatrix.C.

References giveNumberOfColumns(), giveNumberOfRows(), and OOFEM_ERROR.

 void oofem::FloatMatrix::setTSubMatrix ( const FloatMatrix & src, int sr, int sc )

The same as setSubMatrix but transposes the source matrix.

Parameters
 src Sub-matrix to be inserted transposed. sr Determines the row position (receiver's 1-based index) of first src value to be added. sc Determines the column position (receiver's 1-based index) of first src value to be added.

Definition at line 582 of file floatmatrix.C.

References giveNumberOfColumns(), giveNumberOfRows(), and OOFEM_ERROR.

 bool oofem::FloatMatrix::solveForRhs ( const FloatArray & b, FloatArray & answer, bool transpose = false )

Solves the system of linear equations .

Uses Gaussian elimination with pivoting directly on receiver.

Parameters
 b RHS of linear system. answer Solution of linear equations. transpose Solves for the transpose of K.
Returns
False if K is singular, otherwise true.

Definition at line 1112 of file floatmatrix.C.

 void oofem::FloatMatrix::solveForRhs ( const FloatMatrix & B, FloatMatrix & answer, bool transpose = false )

Solves the system of linear equations .

Uses Gaussian elimination with pivoting directly on receiver.

Parameters
 B RHS of linear system. answer Solution of linear equations, each column corresponding to columns in B. transpose Solves for the transpose of K.

Definition at line 1204 of file floatmatrix.C.

 contextIOResultType oofem::FloatMatrix::storeYourself ( DataStream & stream ) const
 void oofem::FloatMatrix::writeCSV ( const std::string & name ) const

Writes receiver as CSV (comma seperated values)

Parameters
 name Filename

Definition at line 1543 of file floatmatrix.C.

References at(), nColumns, and nRows.

## Friends And Related Function Documentation

 std :: ostream& operator<< ( std::ostream & out, const FloatMatrix & r )
friend

Definition at line 2098 of file floatmatrix.C.

## Member Data Documentation

 int oofem::FloatMatrix::nColumns
protected

Number of columns.

Definition at line 100 of file floatmatrix.h.

 int oofem::FloatMatrix::nRows
protected
 std :: vector< double > oofem::FloatMatrix::values
protected

Values of matrix stored column wise.

Definition at line 102 of file floatmatrix.h.

The documentation for this class was generated from the following files: