|
FEDEM Solver
R8.0
Source code of the dynamics solver
|
Solves the linear system of equations Ax = B. More...
Public Member Functions | |
| subroutine | cssolvea (iop, iopSing, sysMat, rhs, lpu, ierr, eqnInErr, meqnInErr, tolFactorize, scaleOnSing, neq1) |
| Solves the linear system of equations Ax = B. More... | |
| subroutine | cssolveb (iop, iopSing, sysMat, rhs, nrhs, lpu, ierr, eqnInErr, meqnInErr, tolFactorize, scaleOnSing, neq1) |
| Solves the linear system of equations Ax = B. More... | |
Solves the linear system of equations Ax = B.
| subroutine solextensionmodule::cssolve::cssolvea | ( | integer, intent(in) | iop, |
| integer, intent(in) | iopSing, | ||
| type(sysmatrixtype), intent(inout) | sysMat, | ||
| real(dp), dimension(:,:), intent(inout) | rhs, | ||
| integer, intent(in) | lpu, | ||
| integer, intent(out) | ierr, | ||
| integer(ik), intent(out), optional | eqnInErr, | ||
| integer(ik), dimension(:), intent(out), optional | meqnInErr, | ||
| real(dp), intent(in), optional | tolFactorize, | ||
| real(dp), intent(in), optional | scaleOnSing, | ||
| integer, intent(in), optional | neq1 | ||
| ) |
Solves the linear system of equations Ax = B.
This version accepts the right-hand-side vectors rhs to be provided as a 2D neq×nrhs matrix instead of a 1D array.
| subroutine solextensionmodule::cssolve::cssolveb | ( | integer, intent(in) | iop, |
| integer, intent(in) | iopSing, | ||
| type(sysmatrixtype), intent(inout) | sysMat, | ||
| real(dp), dimension(:), intent(inout) | rhs, | ||
| integer, intent(in) | nrhs, | ||
| integer, intent(in) | lpu, | ||
| integer, intent(out) | ierr, | ||
| integer(ik), intent(out), optional | eqnInErr, | ||
| integer(ik), dimension(:), intent(out), optional | meqnInErr, | ||
| real(dp), intent(in), optional | tolFactorize, | ||
| real(dp), intent(in), optional | scaleOnSing, | ||
| integer, intent(in), optional | neq1 | ||
| ) |
Solves the linear system of equations Ax = B.
| [in] | iop | Calculation option (see below) |
| [in] | iopSing | Singularity handling options (see below) |
| sysMat | The coefficient matrix A | |
| rhs | The right-hand-side vector(s) B, solution on output | |
| [in] | nrhs | Number of right-hand-side vectors |
| [in] | lpu | File unit number for res-file output |
| [out] | ierr | Error flag |
| [out] | eqnInErr | Equation number of the first singularity detected |
| [out] | meqnInErr | Equation numbers of all singularities detected |
| [in] | tolFactorize | Singularity tolerance |
| [in] | scaleOnSing | Scaling factor for singular pivot elements |
| [in] | neq1 | Number of equations to solve for |
Basic equations: Ax = B, LDL'x = B, LDy = B, L'x = y. The value on the input argument iop defines which solution step to do:
The singularity handling flag iopSing is interpreted as follows: