Added documentation
This commit is contained in:
parent
9197a283b6
commit
788697405f
1 changed files with 34 additions and 0 deletions
|
|
@ -158,6 +158,40 @@ namespace VCSnonideal {
|
|||
*/
|
||||
int vcsUtil_mlequ(double *c, int idem, int n, double *b, int m);
|
||||
|
||||
//! Invert an n x n matrix and solve m rhs's
|
||||
/*!
|
||||
* Solve a square matrix with multiple right hand sides
|
||||
*
|
||||
* \f[
|
||||
* C X + B = 0;
|
||||
* \f]
|
||||
*
|
||||
* This routine uses Gauss-Jordan elimination and is optimized for the solution
|
||||
* of lots of rhs's. Full row and column pivoting is used here. It's been
|
||||
* shown to be necessary in at least one case.
|
||||
* The matrix C is destroyed during the solve.
|
||||
*
|
||||
* @return The solution x[] is returned in the matrix <I>B</I>.
|
||||
* Routine returns an integer representing success:
|
||||
* - 1 : Matrix is singluar
|
||||
* - 0 : solution is OK
|
||||
*
|
||||
* @param c Matrix to be inverted. c is in fortran format, i.e., rows
|
||||
* are the inner loop. Row numbers equal to idem.
|
||||
* c[i+j*idem] = c_i_j = Matrix to be inverted:
|
||||
* - i = row number
|
||||
* - j = column number
|
||||
*
|
||||
* @param idem number of row dimensions in c
|
||||
* @param n Number of rows and columns in c
|
||||
* @param b Multiple RHS. Note, b is actually the negative of
|
||||
* most formulations. Row numbers equal to idem.
|
||||
* b[i+j*idem] = b_i_j = vectors of rhs's:
|
||||
* - i = row number
|
||||
* - j = column number
|
||||
* (each column is a new rhs)
|
||||
* @param m number of rhs's
|
||||
*/
|
||||
int vcsUtil_gaussj(double *c, int idem, int n, double *b, int m);
|
||||
|
||||
//! Swap values in vector of doubles
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue