OGS
DirichletBoundaryCondition.h
Go to the documentation of this file.
1
11#pragma once
12
13#include <memory>
14
15#include "BoundaryCondition.h"
16
17namespace BaseLib
18{
19class ConfigTree;
20}
21namespace ParameterLib
22{
23template <typename T>
24struct Parameter;
25}
26
27namespace ProcessLib
28{
29// TODO docu
35{
36public:
38 ParameterLib::Parameter<double> const& parameter,
39 MeshLib::Mesh const& bc_mesh,
40 NumLib::LocalToGlobalIndexMap const& dof_table_bulk,
41 int const variable_id, int const component_id);
42
44 const double t, GlobalVector const& x,
45 NumLib::IndexValueVector<GlobalIndexType>& bc_values) const override;
46
47private:
49
51 std::unique_ptr<NumLib::LocalToGlobalIndexMap const> _dof_table_boundary;
52 int const _variable_id;
53 int const _component_id;
54};
55
56std::unique_ptr<DirichletBoundaryCondition> createDirichletBoundaryCondition(
57 BaseLib::ConfigTree const& config, MeshLib::Mesh const& bc_mesh,
58 NumLib::LocalToGlobalIndexMap const& dof_table_bulk, int const variable_id,
59 int const component_id,
60 const std::vector<std::unique_ptr<ParameterLib::ParameterBase>>&
61 parameters);
62
63} // namespace ProcessLib
Global vector based on Eigen vector.
Definition EigenVector.h:25
void getEssentialBCValues(const double t, GlobalVector const &x, NumLib::IndexValueVector< GlobalIndexType > &bc_values) const override
Writes the values of essential BCs to bc_values.
DirichletBoundaryCondition(ParameterLib::Parameter< double > const &parameter, MeshLib::Mesh const &bc_mesh, NumLib::LocalToGlobalIndexMap const &dof_table_bulk, int const variable_id, int const component_id)
ParameterLib::Parameter< double > const & _parameter
std::unique_ptr< NumLib::LocalToGlobalIndexMap const > _dof_table_boundary
std::unique_ptr< DirichletBoundaryCondition > createDirichletBoundaryCondition(BaseLib::ConfigTree const &config, MeshLib::Mesh const &bc_mesh, NumLib::LocalToGlobalIndexMap const &dof_table_bulk, int const variable_id, int const component_id, const std::vector< std::unique_ptr< ParameterLib::ParameterBase > > &parameters)