29 if (!release_nodal_forces)
35 release_nodal_forces->
set(r_neq);
40 const double t, std::vector<GlobalVector*>
const& x,
int const process_id,
45 bc->applyNaturalBC(t, x, process_id, K, b, Jac);
50 std::vector<std::reference_wrapper<ProcessVariable>>
const&
53 unsigned const integration_order,
Process const& process,
54 std::map<
int, std::shared_ptr<MaterialPropertyLib::Medium>>
const& media)
56 for (
int variable_id = 0;
57 variable_id < static_cast<int>(process_variables.size());
62 dof_table, variable_id, integration_order,
_parameters, process,
63 process_variables, media);
65 std::move(bcs.begin(), bcs.end(),
Global vector based on Eigen vector.
std::vector< NumLib::IndexValueVector< GlobalIndexType > > _dirichlet_bcs
std::vector< std::unique_ptr< BoundaryCondition > > _boundary_conditions
void applyNaturalBC(const double t, std::vector< GlobalVector * > const &x, int const process_id, GlobalMatrix *K, GlobalVector &b, GlobalMatrix *Jac) const
std::vector< std::unique_ptr< ParameterLib::ParameterBase > > const & _parameters
void setReleaseNodalForces(GlobalVector const *r_neq) const
void addBCsForProcessVariables(std::vector< std::reference_wrapper< ProcessVariable > > const &process_variables, NumLib::LocalToGlobalIndexMap const &dof_table, unsigned const integration_order, Process const &process, std::map< int, std::shared_ptr< MaterialPropertyLib::Medium > > const &media)
std::vector< std::unique_ptr< BoundaryCondition > > createBoundaryConditions(const NumLib::LocalToGlobalIndexMap &dof_table, const int variable_id, unsigned const integration_order, std::vector< std::unique_ptr< ParameterLib::ParameterBase > > const ¶meters, Process const &process, std::vector< std::reference_wrapper< ProcessVariable > > const &all_process_variables_for_this_process, std::map< int, std::shared_ptr< MaterialPropertyLib::Medium > > const &media)
Boundary condition for simulating excavation using the release nodal force approach.
void set(GlobalVector const *r_neq)
void setLocalAccessibleVector(PETScVector const &x)