|
SpECTRE
v2025.08.19
|
Actions applicable to any parallel linear solver. More...
Classes | |
| struct | AssembleFullMatrix |
| struct | BuildMatrix |
| Build the explicit matrix representation of the linear operator and optionally invert it directly to solve the problem. More... | |
| struct | BuildMatrixSingleton |
| struct | CollectTotalNumPoints |
| Dispatch global reduction to get the size of the matrix. More... | |
| struct | InvertMatrix |
| struct | MakeIdentityIfSkipped |
| Make the iterative linear solve the identity operation on the source vector if no iterations were performed at all. Useful for disabling a preconditioner by setting its number of iterations to zero. More... | |
| struct | PrepareBuildMatrix |
| Receive the reduction and initialize the algorithm. More... | |
| struct | ProjectBuildMatrix |
| struct | ResetBuiltMatrix |
| Dispatch global reduction to get the size of the matrix. More... | |
| struct | SetUnitVector |
| Set the operand to a unit vector with a '1' at the current grid point. Applying the operator to this operand gives a column of the matrix. We jump back to this until we have iterated over all grid points. More... | |
| struct | StoreMatrixColumn |
| Write result out to disk, reset operand back to zero, and keep iterating. More... | |
| struct | StoreSolution |
Typedefs | |
| template<typename LinearSolverType , typename BuildOperatorActions = tmpl::list<>, typename Label = typename LinearSolverType::options_group> | |
| using | make_identity_if_skipped = tmpl::conditional_t< std::is_same_v< BuildOperatorActions, tmpl::list<> >, MakeIdentityIfSkipped< LinearSolverType >, tmpl::list< MakeIdentityIfSkipped< LinearSolverType, detail::ProceedLabel< Label > >, BuildOperatorActions, ::Actions::Label< detail::ProceedLabel< Label > > > > |
Run MakeIdentityIfSkipped, and also run the BuildOperatorActions if the linear solver is skipped. See MakeIdentityIfSkipped for details. | |
Actions applicable to any parallel linear solver.