20class LocalToGlobalIndexMap;
25struct CoupledSolutionsForStaggeredScheme;
27class LocalAssemblerInterface;
37 std::unique_ptr<AbstractJacobianAssembler>&& jacobian_assembler);
46 void assemble(std::size_t
const mesh_item_id,
48 std::vector<std::reference_wrapper<
50 double const t,
double const dt,
51 std::vector<GlobalVector*>
const& x,
52 std::vector<GlobalVector*>
const& xdot,
int const process_id,
58 std::size_t
const mesh_item_id,
61 std::reference_wrapper<NumLib::LocalToGlobalIndexMap>>
const&
63 const double t,
double const dt, std::vector<GlobalVector*>
const& x,
64 std::vector<GlobalVector*>
const& xdot,
int const process_id,
Global vector based on Eigen vector.
std::unique_ptr< AbstractJacobianAssembler > _jacobian_assembler
Used to assemble the Jacobian.
void assemble(std::size_t const mesh_item_id, LocalAssemblerInterface &local_assembler, std::vector< std::reference_wrapper< NumLib::LocalToGlobalIndexMap > > const &dof_tables, double const t, double const dt, std::vector< GlobalVector * > const &x, std::vector< GlobalVector * > const &xdot, int const process_id, GlobalMatrix &M, GlobalMatrix &K, GlobalVector &b)
std::vector< double > _local_b_data
std::vector< double > _local_K_data
std::vector< double > _local_Jac_data
VectorMatrixAssembler(std::unique_ptr< AbstractJacobianAssembler > &&jacobian_assembler)
void assembleWithJacobian(std::size_t const mesh_item_id, LocalAssemblerInterface &local_assembler, std::vector< std::reference_wrapper< NumLib::LocalToGlobalIndexMap > > const &dof_tables, const double t, double const dt, std::vector< GlobalVector * > const &x, std::vector< GlobalVector * > const &xdot, int const process_id, GlobalMatrix &M, GlobalMatrix &K, GlobalVector &b, GlobalMatrix &Jac)
void preAssemble(const std::size_t mesh_item_id, LocalAssemblerInterface &local_assembler, const NumLib::LocalToGlobalIndexMap &dof_table, const double t, double const dt, const GlobalVector &x)
std::vector< double > _local_M_data