25template <
int GlobalDim,
template <
typename ,
int >
26 class LocalAssemblerImplementation>
34 unsigned const integration_order,
unsigned const shapefunction_order,
42 void applyNaturalBC(
const double t, std::vector<GlobalVector*>
const& x,
64 std::unique_ptr<NormalTractionBoundaryConditionLocalAssemblerInterface>>
76template <
int GlobalDim>
80 std::string
const& parameter_name,
MeshLib::Mesh const& bc_mesh,
82 unsigned const integration_order,
unsigned const shapefunction_order,
83 std::vector<std::unique_ptr<ParameterLib::ParameterBase>>
const&
MathLib::EigenMatrix GlobalMatrix
MathLib::EigenVector GlobalVector
void applyNaturalBC(const double t, std::vector< GlobalVector * > const &x, int const process_id, GlobalMatrix *K, GlobalVector &b, GlobalMatrix *Jac) override
MeshLib::Mesh const & _bc_mesh
ParameterLib::Parameter< double > const & _pressure
std::vector< Eigen::Vector3d > _element_normals
Normal vectors for each element in the boundary condition mesh.
unsigned const _integration_order
Integration order for integration over the lower-dimensional elements.
std::unique_ptr< MeshLib::MeshSubset const > _mesh_subset_all_nodes
NormalTractionBoundaryCondition(unsigned const integration_order, unsigned const shapefunction_order, MeshLib::Mesh const &bulk_mesh, NumLib::LocalToGlobalIndexMap const &dof_table_bulk, int const variable_id, MeshLib::Mesh const &bc_mesh, ParameterLib::Parameter< double > const &pressure)
std::unique_ptr< NumLib::LocalToGlobalIndexMap > _dof_table_boundary
std::vector< MeshLib::Node * > _nodes_subset
std::vector< std::unique_ptr< NormalTractionBoundaryConditionLocalAssemblerInterface > > _local_assemblers
Local assemblers for each element of number of _elements.
std::unique_ptr< NormalTractionBoundaryCondition< GlobalDim, NormalTractionBoundaryConditionLocalAssembler > > createNormalTractionBoundaryCondition(std::string const ¶meter_name, MeshLib::Mesh const &bc_mesh, MeshLib::Mesh const &bulk_mesh, NumLib::LocalToGlobalIndexMap const &dof_table, int const variable_id, unsigned const integration_order, unsigned const shapefunction_order, std::vector< std::unique_ptr< ParameterLib::ParameterBase > > const ¶meters)
std::string parseNormalTractionBoundaryCondition(BaseLib::ConfigTree const &config)