Template Class SemidiscreteTerm

Class Documentation

template<typename VectorType, typename MatrixType = ImmersXLA::MPI::SparseMatrix>
class SemidiscreteTerm

Direct handle for one semantically coherent residual term.

Public Types

using Model = SemiDiscreteModel<VectorType, MatrixType>
using Operator = typename Model::Operator
using MatrixOperator = typename Model::MatrixOperator
using MatrixOperatorFactory = typename Model::MatrixOperatorFactory
using ResidualFactory = typename Model::ResidualFactory
using OperatorFactory = typename Model::OperatorFactory

Public Functions

inline SemidiscreteTerm(Model &model, const FieldId row, std::string name)
template<typename Factory>
inline SemidiscreteTerm &residual(Factory factory)
inline SemidiscreteTerm &state(const FieldId column, const Operator &op)
inline SemidiscreteTerm &state(const FieldId column, OperatorFactory factory)
inline SemidiscreteTerm &state(const FieldId column, const MatrixOperator &op)
inline SemidiscreteTerm &state(const FieldId column, MatrixOperatorFactory factory)
inline SemidiscreteTerm &derivative(const FieldId column, const Operator &op)
inline SemidiscreteTerm &derivative(const FieldId column, OperatorFactory factory)
inline SemidiscreteTerm &derivative(const FieldId column, const MatrixOperator &op)
inline SemidiscreteTerm &derivative(const FieldId column, MatrixOperatorFactory factory)
inline FieldId row() const
inline const std::string &name() const