OGS
DeactivatedSubdomainDirichlet.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) OpenGeoSys Community (opengeosys.org)
2// SPDX-License-Identifier: BSD-3-Clause
3
4#pragma once
5
6#include <memory>
7#include <vector>
8
9#include "BoundaryCondition.h"
12
13namespace BaseLib
14{
15class ConfigTree;
16} // namespace BaseLib
17
18namespace MeshLib
19{
20class Node;
21template <typename T>
22class PropertyVector;
23} // namespace MeshLib
24
25namespace ParameterLib
26{
27template <typename T>
28struct Parameter;
29}
30
31namespace ProcessLib
32{
34
36{
37public:
41 ParameterLib::Parameter<double> const& parameter,
42 bool const set_outer_nodes_dirichlet_values,
43 DeactivatedSubdomainMesh const& subdomain,
44 NumLib::LocalToGlobalIndexMap const& dof_table_bulk,
45 int const variable_id, int const component_id);
46
48 const double t, GlobalVector const& x,
49 NumLib::IndexValueVector<GlobalIndexType>& bc_values) const override;
50
51private:
52 void config(NumLib::LocalToGlobalIndexMap const& dof_table_bulk);
53
54private:
56
58
59 std::unique_ptr<NumLib::LocalToGlobalIndexMap const> _dof_table_boundary;
60 int const _variable_id;
61 int const _component_id;
62
65
67};
68} // namespace ProcessLib
MathLib::EigenVector GlobalVector
DeactivatedSubdomainDirichlet(MeshLib::PropertyVector< unsigned char > const &is_active, MathLib::PiecewiseLinearInterpolation time_interval, ParameterLib::Parameter< double > const &parameter, 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
void config(NumLib::LocalToGlobalIndexMap const &dof_table_bulk)
std::unique_ptr< NumLib::LocalToGlobalIndexMap const > _dof_table_boundary