Sequential
Sequential (single-threaded) assembly implementation.
template < class LinearAlgebraType, class Operand> class Sequential;
| Template parameters | |
|---|---|
| LinearAlgebraType | Target linear algebra type |
| Operand | Variational form type to assemble |
Implements assembly operations using sequential iteration over mesh elements. Provides deterministic, reproducible results suitable for debugging and verification purposes.
| Specialization | Description |
|---|---|
::Mat, FormFull specializationtemplate < class Form> requires FormLanguage::IsNamedForm<Form>::Value class Sequential< ::Mat, Form> final; | Sequential PETSc assembly using a named form's local kernel. |
::Mat, Variational::BilinearForm<Solution, …>Full specializationtemplate < class Solution, class TrialFES, class TestFES> class Sequential< ::Mat, Variational::BilinearForm< Solution, TrialFES, TestFES, ::Mat >> final; | Sequential assembly of a PETSc matrix from a bilinear form. |
::Vec, Variational::LinearForm<FES,::Vec>Full specializationtemplate < class FES> class Sequential< ::Vec, Variational::LinearForm< FES, ::Vec >> final; | Sequential assembly of a PETSc vector from a linear form. |
IndexMap<Scalar>, Variational::DirichletBC<…>Full specializationtemplate < class Scalar, class Solution, class FES, class ValueDerived> class Sequential< IndexMap< Scalar >, Variational::DirichletBC< Variational::TrialFunction< Solution, FES >, Variational::FunctionBase< ValueDerived > >> final; | Sequential value Dirichlet boundary condition assembly. |
IndexMap<…>, Variational::DirichletBC<…>Full specializationtemplate < class Scalar, class Sol1, class FES1, class Derived2, class FES2, Variational::ShapeFunctionSpaceType Sp> class Sequential< IndexMap< std::pair< IndexArray, Math::Vector< Scalar > > >, Variational::DirichletBC< Variational::TrialFunction< Sol1, FES1 >, Variational::ShapeFunctionBase< Derived2, FES2, Sp > >> final; | Sequential assembler for the identification Dirichlet BC u = A(v). |
LinearSystem, Variational::Problem<LinearSystem, …>Full specializationtemplate < class LinearSystem, class TrialFunction, class TestFunction> class Sequential< LinearSystem, Variational::Problem< LinearSystem, TrialFunction, TestFunction >> final; | Sequential single-field problem assembly. |
LinearSystem, Variational::Problem<LinearSystem, …>Full specializationtemplate < class LinearSystem, class U1, class U2, class U3, class... Us> class Sequential< LinearSystem, Variational::Problem< LinearSystem, U1, U2, U3, Us... >> final; | Sequential mixed problem assembly. |
Math::Matrix<…>, Variational::BilinearForm<Solution, …>Full specializationtemplate < class Solution, class TrialFES, class TestFES> class Sequential< Math::Matrix< typename FormLanguage::Dot< typename FormLanguage::Traits< TrialFES >::ScalarType, typename FormLanguage::Traits< TestFES >::ScalarType >::Type >, Variational::BilinearForm< Solution, TrialFES, TestFES, Math::Matrix< typename FormLanguage::Dot< typename FormLanguage::Traits< TrialFES >::ScalarType, typename FormLanguage::Traits< TestFES >::ScalarType >::Type > >> final; | Sequential assembly of the Math::SparseMatrix associated to a BilinearFormBase object. |
Math::SparseMatrix<Real>, Tuple<…>Full specializationtemplate < class... Solution, class... TrialFES, class... TestFES> class Sequential< Math::SparseMatrix< Real >, Tuple< Variational::BilinearForm< Solution, TrialFES, TestFES, Math::SparseMatrix< Real > >... >> final; | Sequential block bilinear form assembly into a sparse matrix. |
Math::SparseMatrix<Scalar>, FormFull specializationtemplate < class Scalar, class Form> requires FormLanguage::IsNamedForm<Form>::Value class Sequential< Math::SparseMatrix< Scalar >, Form> final; | Assembly of a named bilinear form into a sparse matrix over a single thread. |
Math::SparseMatrix<…>, Variational::BilinearForm<Solution, …>Full specializationtemplate < class Solution, class TrialFES, class TestFES> class Sequential< Math::SparseMatrix< typename FormLanguage::Dot< typename FormLanguage::Traits< TrialFES >::ScalarType, typename FormLanguage::Traits< TestFES >::ScalarType >::Type >, Variational::BilinearForm< Solution, TrialFES, TestFES, Math::SparseMatrix< typename FormLanguage::Dot< typename FormLanguage::Traits< TrialFES >::ScalarType, typename FormLanguage::Traits< TestFES >::ScalarType >::Type > >> final; | Sequential assembly of the Math::SparseMatrix associated to a BilinearFormBase object. |
Math::Vector<Real>, Tuple<…>Full specializationtemplate < class... FES> class Sequential< Math::Vector< Real >, Tuple< Variational::LinearForm< FES, Math::Vector< Real > >... >> final; | Sequential block linear form assembly into a vector. |
Math::Vector<…>, Variational::LinearForm<FES, …>Full specializationtemplate < class FES> class Sequential< Math::Vector< typename FormLanguage::Traits< FES >::ScalarType >, Variational::LinearForm< FES, Math::Vector< typename FormLanguage::Traits< FES >::ScalarType > >> final; | Sequential assembly implementation for linear forms. |
Rodin::PETSc::Math::LinearSystem, Rodin::Variational::Problem<…>Full specializationtemplate < class U, class V> class Sequential< Rodin::PETSc::Math::LinearSystem, Rodin::Variational::Problem< Rodin::PETSc::Math::LinearSystem, U, V >> final; | Sequential assembly of a single-variable PETSc problem. |
Rodin::PETSc::Math::LinearSystem, Rodin::Variational::Problem<…>Full specializationtemplate < class U1, class U2, class U3, class... Us> class Sequential< Rodin::PETSc::Math::LinearSystem, Rodin::Variational::Problem< Rodin::PETSc::Math::LinearSystem, U1, U2, U3, Us... >> final; | Sequential assembly of a multi-variable PETSc problem. |
std::vector<Math::SparseTriplet<Real>>, Tuple<…>Full specializationtemplate < class... Solution, class... TrialFES, class... TestFES> class Sequential< std::vector< Math::SparseTriplet< Real > >, Tuple< Variational::BilinearForm< Solution, TrialFES, TestFES, std::vector< Math::SparseTriplet< Real > > >... >> final; | Sequential block bilinear form assembly into Eigen triplets. |
std::vector<…>, Variational::BilinearForm<Solution, …>Full specializationtemplate < class Solution, class TrialFES, class TestFES> class Sequential< std::vector< Math::SparseTriplet< typename FormLanguage::Dot< typename FormLanguage::Traits< TrialFES >::ScalarType, typename FormLanguage::Traits< TestFES >::ScalarType >::Type > >, Variational::BilinearForm< Solution, TrialFES, TestFES, std::vector< Math::SparseTriplet< typename FormLanguage::Dot< typename FormLanguage::Traits< TrialFES >::ScalarType, typename FormLanguage::Traits< TestFES >::ScalarType >::Type > > >> final; | Sequential bilinear form assembly into Eigen triplets. |