OGS
DirichletBoundaryConditionWithinTimeInterval.h
Go to the documentation of this file.
1
13#pragma once
14
15#include <memory>
16#include <vector>
17
19#include "BoundaryCondition.h"
20
21namespace BaseLib
22{
23class ConfigTree;
24struct TimeInterval;
25} // namespace BaseLib
26
27namespace MeshLib
28{
29class Node;
30}
31
32namespace ParameterLib
33{
34template <typename T>
35struct Parameter;
36}
37
38namespace ProcessLib
39{
41 : public BoundaryCondition
42{
43public:
45 BaseLib::TimeInterval time_interval,
46 ParameterLib::Parameter<double> const& parameter,
47 MeshLib::Mesh const& bc_mesh,
48 NumLib::LocalToGlobalIndexMap const& dof_table_bulk,
49 int const variable_id, int const component_id);
50
52 const double t, GlobalVector const& x,
53 NumLib::IndexValueVector<GlobalIndexType>& bc_values) const override;
54
55private:
56 void config(NumLib::LocalToGlobalIndexMap const& dof_table_bulk);
57
58private:
60
62
63 std::unique_ptr<NumLib::LocalToGlobalIndexMap const> _dof_table_boundary;
64 int const _variable_id;
65 int const _component_id;
66
68};
69} // 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.
DirichletBoundaryConditionWithinTimeInterval(BaseLib::TimeInterval time_interval, ParameterLib::Parameter< double > const &parameter, MeshLib::Mesh const &bc_mesh, NumLib::LocalToGlobalIndexMap const &dof_table_bulk, int const variable_id, int const component_id)
std::unique_ptr< NumLib::LocalToGlobalIndexMap const > _dof_table_boundary