Template deduction guides module
Class template argument deduction (CTAD) of Rodin's classes.
Functions
-
template<class Solution, class TrialFES, class TestFES>BilinearForm(const PETSc::Variational::TrialFunction<Solution, TrialFES>& u, const PETSc::Variational::TestFunction<TestFES>& v) -> BilinearForm< Solution, TrialFES, TestFES, ::Mat >
- Deduction guide for PETSc-backed BilinearForm.
-
template<class FES>GridFunction(const FES&) -> GridFunction< FES >
- Deduction guide for PETSc::Variational::GridFunction.
-
template<class FES>LinearForm(const PETSc::Variational::TestFunction<FES>&) -> LinearForm< FES, ::Vec >
- Deduction guide for PETSc-backed LinearForm.
-
template<class Solution, class TrialFES, class TestFES>Problem(PETSc::Variational::TrialFunction<Solution, TrialFES>&, PETSc::Variational::TestFunction<TestFES>&) -> Problem< PETSc::Math::LinearSystem, TrialFunction< Solution, TrialFES >, TestFunction< TestFES > >
- Deduction guide for two-field PETSc Problem.
-
template<class U1, class U2, class U3, class... Us>auto Problem(U1&, U2&, U3&, Us& ...) -> Problem< Rodin::PETSc::Math::LinearSystem, U1, U2, U3, Us... > -> ::value
- Deduction guide for multi-field PETSc Problem.
-
template<class FES>TestFunction(const FES& fes) -> TestFunction< FES >
- Deduction guide for PETSc::Variational::TestFunction.
-
template<class FES>TrialFunction(const FES& fes) -> TrialFunction< GridFunction< FES >, FES >
- Deduction guide for PETSc::Variational::TrialFunction.
-
template<class LinearSystem>BiCGSTAB(Variational::ProblemBase<LinearSystem>&) -> BiCGSTAB< LinearSystem >
- CTAD for BiCGSTAB.
-
template<class LinearSystem>CG(Variational::ProblemBase<LinearSystem>&) -> CG< LinearSystem >
- CTAD (Class Template Argument Deduction) guide for CG.
-
template<class LinearSystem>DGMRES(Variational::ProblemBase<LinearSystem>&) -> DGMRES< LinearSystem >
- CTAD (Class Template Argument Deduction) guide for DGMRES.
-
template<class LinearSystem>GMRES(Variational::ProblemBase<LinearSystem>&) -> GMRES< LinearSystem >
- CTAD (Class Template Argument Deduction) guide for GMRES.
-
template<class LinearSystem>HouseholderQR(Variational::ProblemBase<LinearSystem>&) -> HouseholderQR< LinearSystem >
- CTAD for HouseholderQR.
-
template<class LinearSystem>IDRS(Variational::ProblemBase<LinearSystem>&) -> IDRS< LinearSystem >
- CTAD (Class Template Argument Deduction) guide for IDRS.
-
template<class LinearSystem>IDRSTABL(Variational::ProblemBase<LinearSystem>&) -> IDRSTABL< LinearSystem >
- CTAD (Class Template Argument Deduction) guide for IDRSTABL.
-
template<class LinearSystem>LDLT(Variational::ProblemBase<LinearSystem>&) -> LDLT< LinearSystem >
- CTAD (Class Template Argument Deduction) guide for LDLT.
-
template<class LinearSystem>LeastSquaresCG(Variational::ProblemBase<LinearSystem>&) -> LeastSquaresCG< LinearSystem >
- CTAD (Class Template Argument Deduction) guide for LeastSquaresCG.
-
template<class LinearSystem>MINRES(Variational::ProblemBase<LinearSystem>&) -> MINRES< LinearSystem >
- CTAD (Class Template Argument Deduction) guide for MINRES.
-
template<class LS>NewtonSolver(LS&) -> NewtonSolver< LS >
- CTAD (Class Template Argument Deduction) guide for NewtonSolver.
-
template<class LinearSystem>PartialPivLU(Variational::ProblemBase<LinearSystem>&) -> PartialPivLU< LinearSystem >
- CTAD guide for PartialPivLU.
-
template<class LinearSystemType>SimplicialLDLT(Variational::ProblemBase<LinearSystemType>&) -> SimplicialLDLT< LinearSystemType >
- CTAD (Class Template Argument Deduction) guide for SimplicialLDLT.
-
template<class LinearSystem>SimplicialLLT(Variational::ProblemBase<LinearSystem>&) -> SimplicialLLT< LinearSystem >
- CTAD (Class Template Argument Deduction) guide for SimplicialLLT.
-
template<class LinearSystem>SparseLU(Variational::ProblemBase<LinearSystem>&) -> SparseLU< LinearSystem >
- CTAD (Class Template Argument Deduction) guide for SparseLU.
-
template<class LinearSystem>SparseQR(Variational::ProblemBase<LinearSystem>&) -> SparseQR< LinearSystem >
- CTAD (Class Template Argument Deduction) guide for SparseQR.
Function documentation
template<class Solution, class TrialFES, class TestFES>
BilinearForm(const PETSc::Variational::TrialFunction<Solution, TrialFES>& u,
const PETSc::Variational::TestFunction<TestFES>& v) -> BilinearForm< Solution, TrialFES, TestFES, ::Mat >
Deduction guide for PETSc-backed BilinearForm.
template<class FES>
GridFunction(const FES&) -> GridFunction< FES >
Deduction guide for PETSc::Variational::GridFunction.
template<class FES>
LinearForm(const PETSc::Variational::TestFunction<FES>&) -> LinearForm< FES, ::Vec >
Deduction guide for PETSc-backed LinearForm.
#include <Rodin/PETSc/Variational/Problem.h>
template<class Solution, class TrialFES, class TestFES>
Problem(PETSc::Variational::TrialFunction<Solution, TrialFES>&,
PETSc::Variational::TestFunction<TestFES>&) -> Problem< PETSc::Math::LinearSystem, TrialFunction< Solution, TrialFES >, TestFunction< TestFES > >
Deduction guide for two-field PETSc Problem.
#include <Rodin/PETSc/Variational/Problem.h>
template<class U1, class U2, class U3, class... Us>
::value Problem(U1&,
U2&,
U3&,
Us& ...) -> Problem< Rodin::PETSc::Math::LinearSystem, U1, U2, U3, Us... >
Deduction guide for multi-field PETSc Problem.
template<class FES>
TestFunction(const FES& fes) -> TestFunction< FES >
Deduction guide for PETSc::Variational::TestFunction.
template<class FES>
TrialFunction(const FES& fes) -> TrialFunction< GridFunction< FES >, FES >
Deduction guide for PETSc::Variational::TrialFunction.
#include <Rodin/Solver/BiCGSTAB.h>
template<class LinearSystem>
BiCGSTAB(Variational::ProblemBase<LinearSystem>&) -> BiCGSTAB< LinearSystem >
CTAD for BiCGSTAB.
#include <Rodin/Solver/CG.h>
template<class LinearSystem>
CG(Variational::ProblemBase<LinearSystem>&) -> CG< LinearSystem >
CTAD (Class Template Argument Deduction) guide for CG.
#include <Rodin/Solver/DGMRES.h>
template<class LinearSystem>
DGMRES(Variational::ProblemBase<LinearSystem>&) -> DGMRES< LinearSystem >
CTAD (Class Template Argument Deduction) guide for DGMRES.
#include <Rodin/Solver/GMRES.h>
template<class LinearSystem>
GMRES(Variational::ProblemBase<LinearSystem>&) -> GMRES< LinearSystem >
CTAD (Class Template Argument Deduction) guide for GMRES.
#include <Rodin/Solver/HouseholderQR.h>
template<class LinearSystem>
HouseholderQR(Variational::ProblemBase<LinearSystem>&) -> HouseholderQR< LinearSystem >
CTAD for HouseholderQR.
#include <Rodin/Solver/IDRS.h>
template<class LinearSystem>
IDRS(Variational::ProblemBase<LinearSystem>&) -> IDRS< LinearSystem >
CTAD (Class Template Argument Deduction) guide for IDRS.
#include <Rodin/Solver/IDRSTABL.h>
template<class LinearSystem>
IDRSTABL(Variational::ProblemBase<LinearSystem>&) -> IDRSTABL< LinearSystem >
CTAD (Class Template Argument Deduction) guide for IDRSTABL.
#include <Rodin/Solver/LDLT.h>
template<class LinearSystem>
LDLT(Variational::ProblemBase<LinearSystem>&) -> LDLT< LinearSystem >
CTAD (Class Template Argument Deduction) guide for LDLT.
#include <Rodin/Solver/LeastSquaresCG.h>
template<class LinearSystem>
LeastSquaresCG(Variational::ProblemBase<LinearSystem>&) -> LeastSquaresCG< LinearSystem >
CTAD (Class Template Argument Deduction) guide for LeastSquaresCG.
#include <Rodin/Solver/MINRES.h>
template<class LinearSystem>
MINRES(Variational::ProblemBase<LinearSystem>&) -> MINRES< LinearSystem >
CTAD (Class Template Argument Deduction) guide for MINRES.
template<class LS>
NewtonSolver(LS&) -> NewtonSolver< LS >
CTAD (Class Template Argument Deduction) guide for NewtonSolver.
Allows writing:
SparseLU solver(tangent); NewtonSolver newton(solver);
#include <Rodin/Solver/PartialPivLU.h>
template<class LinearSystem>
PartialPivLU(Variational::ProblemBase<LinearSystem>&) -> PartialPivLU< LinearSystem >
CTAD guide for PartialPivLU.
#include <Rodin/Solver/SimplicialLDLT.h>
template<class LinearSystemType>
SimplicialLDLT(Variational::ProblemBase<LinearSystemType>&) -> SimplicialLDLT< LinearSystemType >
CTAD (Class Template Argument Deduction) guide for SimplicialLDLT.
#include <Rodin/Solver/SimplicialLLT.h>
template<class LinearSystem>
SimplicialLLT(Variational::ProblemBase<LinearSystem>&) -> SimplicialLLT< LinearSystem >
CTAD (Class Template Argument Deduction) guide for SimplicialLLT.
#include <Rodin/Solver/SparseLU.h>
template<class LinearSystem>
SparseLU(Variational::ProblemBase<LinearSystem>&) -> SparseLU< LinearSystem >
CTAD (Class Template Argument Deduction) guide for SparseLU.
#include <Rodin/Solver/SparseQR.h>
template<class LinearSystem>
SparseQR(Variational::ProblemBase<LinearSystem>&) -> SparseQR< LinearSystem >
CTAD (Class Template Argument Deduction) guide for SparseQR.