|
| procedure | apply (self, u, g) |
| | Solve linear system.
|
| |
| procedure(solver_apply), deferred | apply (self, u, g) |
| | Solve system.
|
| |
| procedure | check_thread (self) |
| | Check thread safety.
|
| |
| procedure | check_thread (self) |
| | Check thread safety.
|
| |
| procedure | delete (self) |
| | Clean-up internal storage.
|
| |
| procedure(solver_delete), deferred | delete (self) |
| | Clean-up internal storage.
|
| |
| procedure | setup_from_xml (self, solver_node, level) |
| | Setup solver from XML node.
|
| |
| procedure | setup_from_xml (self, solver_node, level) |
| | Setup solver from XML node.
|
| |
| procedure | update (self, new_pattern) |
| | Update solver with new settings/operators and refactor.
|
| |
| procedure | update (self, new_pattern) |
| | Update solver with new settings/operators.
|
| |
| procedure | view (self) |
| | Print solver information.
|
| |
|
| class(oft_matrix), pointer | a => NULL() |
| | Matrix to be inverted.
|
| |
| real(r8), dimension(:,:), pointer | atmp => NULL() |
| | Local dense matrix ("lapack" only)
|
| |
| real(r8) | atol = 1.d-14 |
| | Absolute convergence tolerance \( |res| < atol \).
|
| |
| integer(i4) | cits = 0 |
| | Number of iteractions to convergence.
|
| |
| logical | full_residual = .TRUE. |
| | Output true residual on exit.
|
| |
| logical | initialized = .FALSE. |
| | Solver has been constructed.
|
| |
| integer(i4), dimension(:), pointer | ipiv => NULL() |
| | Row pivot array ("lapack" only)
|
| |
| integer(i4) | itplot =10 |
| | Output frequency for iterative solvers when pm=.TRUE.
|
| |
| integer(i4) | its = -1 |
| | Maximum iteration count.
|
| |
| integer(i4) | nrhs = 1 |
| |
| character(len=7) | package = DEF_LU_PACK |
| | Factorization package.
|
| |
| logical | pm = .FALSE. |
| | Performance monitor override.
|
| |
| class(oft_solver), pointer | pre => NULL() |
| | Preconditioner.
|
| |
| logical | refactor = .TRUE. |
| | Refactor solution on next application.
|
| |
| real(r8) | rtol = 1.d-14 |
| | Relative convergence tolerance \( |res|/|res_0| < rtol \).
|
| |
| real(r8), dimension(:,:), pointer | sec_rhs => NULL() |
| |
| logical | update_graph = .TRUE. |
| | Perform full factorization including symbolic steps.
|
| |
|
| procedure(oft_bc_proto), pointer, nopass | bc => NULL() |
| | Boundary condition.
|
| |
◆ apply() [1/2]
Solve linear system.
- Parameters
-
| [in,out] | u | Guess/Solution field |
| [in,out] | g | RHS/Residual field |
◆ apply() [2/2]
| procedure(solver_apply), deferred apply |
( |
class(oft_solver), intent(inout) |
self, |
|
|
class(oft_vector), intent(inout) |
u, |
|
|
class(oft_vector), intent(inout) |
g |
|
) |
| |
|
pure virtualinherited |
◆ check_thread() [1/2]
| procedure check_thread |
( |
class(oft_lusolver), intent(inout) |
self | ) |
|
◆ check_thread() [2/2]
| procedure check_thread |
( |
class(oft_solver), intent(inout) |
self | ) |
|
|
inherited |
◆ delete() [1/2]
Clean-up internal storage.
◆ delete() [2/2]
| procedure(solver_delete), deferred delete |
( |
class(oft_solver), intent(inout) |
self | ) |
|
|
pure virtualinherited |
Clean-up internal storage.
◆ setup_from_xml() [1/2]
| procedure setup_from_xml |
( |
class(oft_lusolver), intent(inout) |
self, |
|
|
type(fox_node), intent(in), pointer |
solver_node, |
|
|
integer(i4), intent(in), optional |
level |
|
) |
| |
Setup solver from XML node.
- Parameters
-
| [in] | solver_node | XML node containing solver definition |
| [in] | level | Leve in MG hierarchy (optional) |
◆ setup_from_xml() [2/2]
| procedure setup_from_xml |
( |
class(oft_solver), intent(inout) |
self, |
|
|
type(fox_node), intent(in), pointer |
solver_node, |
|
|
integer(i4), intent(in), optional |
level |
|
) |
| |
|
inherited |
Setup solver from XML node.
- Note
- This subroutine is a dummy routine used to specify the interface of the member function and catch errors in uninitialized solvers
- Parameters
-
| [in] | solver_node | XML node containing solver definition |
| [in] | level | Level in MG hierarchy (optional) |
◆ update() [1/2]
| procedure update |
( |
class(oft_lusolver), intent(inout) |
self, |
|
|
logical, intent(in), optional |
new_pattern |
|
) |
| |
Update solver with new settings/operators and refactor.
- Parameters
-
| [in] | new_pattern | Update matrix pattern (optional) |
◆ update() [2/2]
| procedure update |
( |
class(oft_solver), intent(inout) |
self, |
|
|
logical, intent(in), optional |
new_pattern |
|
) |
| |
|
inherited |
Update solver with new settings/operators.
- Note
- This subroutine is a dummy routine used to specify the interface of the member function and catch errors in uninitialized solvers
- Parameters
-
| [in] | new_pattern | Update matrix pattern (optional) |
◆ view()
| procedure view |
( |
class(oft_solver), intent(inout) |
self | ) |
|
|
inherited |
Print solver information.
- Note
- This subroutine is a dummy routine used to specify the interface of the member function and catch errors in uninitialized solvers
| class(oft_matrix), pointer a => NULL() |
|
inherited |
◆ atmp
| real(r8), dimension(:,:), pointer atmp => NULL() |
Local dense matrix ("lapack" only)
◆ atol
Absolute convergence tolerance \( |res| < atol \).
◆ bc
| procedure(oft_bc_proto), pointer, nopass bc => NULL() |
|
staticinherited |
◆ cits
Number of iteractions to convergence.
◆ full_residual
| logical full_residual = .TRUE. |
|
inherited |
Output true residual on exit.
◆ initialized
| logical initialized = .FALSE. |
|
inherited |
Solver has been constructed.
◆ ipiv
| integer(i4), dimension(:), pointer ipiv => NULL() |
Row pivot array ("lapack" only)
◆ itplot
Output frequency for iterative solvers when pm=.TRUE.
◆ its
◆ nrhs
◆ package
◆ pm
Performance monitor override.
◆ pre
◆ refactor
| logical refactor = .TRUE. |
Refactor solution on next application.
◆ rtol
Relative convergence tolerance \( |res|/|res_0| < rtol \).
◆ sec_rhs
| real(r8), dimension(:,:), pointer sec_rhs => NULL() |
◆ update_graph
| logical update_graph = .TRUE. |
Perform full factorization including symbolic steps.
The documentation for this type was generated from the following file:
- /home/runner/work/OpenFUSIONToolkit/OpenFUSIONToolkit/src/lin_alg/oft_lu.F90