58 [[maybe_unused]]
auto const& bulk_node_ids =
60 [[maybe_unused]]
auto const& bulk_element_ids =
63 auto is_inactive_id = [&](std::size_t
const bulk_element_id)
67 {
return is_inactive_id(bulk_element_ids[e->getID()]); };
69 std::vector<std::size_t> inactive_nodes_in_bc_mesh;
71 back_inserter(inactive_nodes_in_bc_mesh),
72 [&](std::size_t
const n)
74 const auto& connected_elements =
77 return std::all_of(begin(connected_elements),
78 end(connected_elements),
85 back_inserter(inactive_nodes_in_bc_mesh),
86 [&](std::size_t
const n)
88 const auto& connected_elements =
91 return std::all_of(begin(connected_elements),
92 end(connected_elements),
101 if (std::all_of(begin(connected_elements), end(connected_elements),
109 auto time_interval_contains = [&](
double const t)
114 if (time_interval_contains(t))
122 bc_values.
ids.clear();
DeactivatedSubdomainDirichlet(MeshLib::PropertyVector< unsigned char > const &is_active, MathLib::PiecewiseLinearInterpolation time_interval, ParameterLib::Parameter< double > const ¶meter, bool const set_outer_nodes_dirichlet_values, DeactivatedSubdomainMesh const &subdomain, NumLib::LocalToGlobalIndexMap const &dof_table_bulk, int const variable_id, int const component_id)
MathLib::PiecewiseLinearInterpolation const _time_interval
void getEssentialBCValues(const double t, GlobalVector const &x, NumLib::IndexValueVector< GlobalIndexType > &bc_values) const override
Writes the values of essential BCs to bc_values.
ParameterLib::Parameter< double > const & _parameter
MeshLib::PropertyVector< unsigned char > const & _is_active
bool const _set_outer_nodes_dirichlet_values
void config(NumLib::LocalToGlobalIndexMap const &dof_table_bulk)
std::unique_ptr< NumLib::LocalToGlobalIndexMap const > _dof_table_boundary
DeactivatedSubdomainMesh const & _subdomain
void getEssentialBCValuesLocal(ParameterLib::Parameter< double > const ¶meter, MeshLib::Mesh const &bc_mesh, std::vector< std::size_t > const &nodes_in_bc_mesh, NumLib::LocalToGlobalIndexMap const &dof_table_boundary, int const variable_id, int const component_id, const double t, GlobalVector const &, NumLib::IndexValueVector< GlobalIndexType > &bc_values)
std::vector< std::vector< std::size_t > > outer_nodes_elements
std::vector< std::size_t > inner_nodes
std::vector< std::size_t > outer_nodes