Loading [MathJax]/extensions/tex2jax.js
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"
21
22namespace BaseLib
23{
24class ConfigTree;
25struct TimeInterval;
26} // namespace BaseLib
27
28namespace MeshLib
29{
30class Node;
31}
32
33namespace ParameterLib
34{
35template <typename T>
36struct Parameter;
37}
38
39namespace ProcessLib
40{
42 : public BoundaryCondition
43{
44public:
46 BaseLib::TimeInterval time_interval,
47 ParameterLib::Parameter<double> const& parameter,
48 MeshLib::Mesh const& bc_mesh,
49 NumLib::LocalToGlobalIndexMap const& dof_table_bulk,
50 int const variable_id, int const component_id);
51
53 const double t, GlobalVector const& x,
54 NumLib::IndexValueVector<GlobalIndexType>& bc_values) const override;
55
56private:
57 void config(NumLib::LocalToGlobalIndexMap const& dof_table_bulk);
58
59private:
61
63
64 std::unique_ptr<NumLib::LocalToGlobalIndexMap const> _dof_table_boundary;
65 int const _variable_id;
66 int const _component_id;
67
69};
70} // 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