30template <ODESystemTag ODETag>
 
   78template <ODESystemTag ODETag>
 
   99        : _time_disc(timeDisc)
 
 
  131    mutable std::size_t _tmp_id = 0u;
 
 
  136template <ODESystemTag ODETag>
 
  140    return std::unique_ptr<MatrixTranslator<ODETag>>(
 
 
Global vector based on Eigen vector.
 
MatrixTranslatorGeneral(TimeDiscretization const &timeDisc)
 
TimeDiscretization const  & _time_disc
the time discretization used.
 
virtual void computeJacobian(GlobalMatrix const &Jac_in, GlobalMatrix &Jac_out) const =0
Computes the Jacobian of the residual and writes it to Jac_out.
 
virtual void computeA(GlobalMatrix const &M, GlobalMatrix const &K, GlobalMatrix &A) const =0
Computes A from M and K.
 
virtual void normalizeAandRhs(GlobalMatrix &A, GlobalVector &b) const =0
 
virtual void computeRhs(const GlobalMatrix &M, const GlobalMatrix &K, const GlobalVector &b, const GlobalVector &x_prev, GlobalVector &rhs) const =0
Computes rhs from M, K, b and x_prev.
 
virtual ~MatrixTranslator()=default
 
virtual void computeResidual(GlobalMatrix const &M, GlobalMatrix const &K, GlobalVector const &b, double dt, GlobalVector const &x_curr, GlobalVector const &x_prev, GlobalVector &res) const =0
 
std::unique_ptr< MatrixTranslator< ODETag > > createMatrixTranslator(TimeDiscretization const &timeDisc)
 
ODESystemTag
Tag used to specify the type of ODE.
 
@ FirstOrderImplicitQuasilinear