DOpE
tangentdirichletdata.h
Go to the documentation of this file.
1 
24 #ifndef _TANGENT_DIRICHLET_DATA_H_
25 #define _TANGENT_DIRICHLET_DATA_H_
26 
27 #include "function_wrapper.h"
28 
29 namespace DOpE
30 {
31 
38  template<typename DD, typename VECTOR, int dealdim>
40  {
41  public:
42  TangentDirichletData(const DD& data) : DOpEWrapper::Function<dealdim>(data.n_components(), data.InitialTime()), _dirichlet_data(data)
43  {
44  _param_values = NULL;
45  _domain_values = NULL;
46  _color = 0;
47  }
48 
52  void ReInit(
53  const std::map<std::string, const dealii::Vector<double>* > &param_values,
54  const std::map<std::string, const VECTOR* > &domain_values,
55  unsigned int color)
56  {
57  _param_values = &param_values;
58  _domain_values = &domain_values;
59  _color = color;
60  }
61 
62 
73  double value (const dealii::Point<dealdim> &p,
74  const unsigned int component) const
75  {
76  return _dirichlet_data.Data_Q(
77  _param_values,
78  _domain_values,
79  _color,
80  p,
81  component);
82  }
83 
89  void SetTime(double time) const
90  {
91  _dirichlet_data.SetTime(time);
92  }
93  private:
94  const DD& _dirichlet_data;
95  const std::map<std::string, const dealii::Vector<double>* >* _param_values;
96  const std::map<std::string, const VECTOR* >* _domain_values;
97  unsigned int _color;
98  };
99 }
100 #endif
double value(const dealii::Point< dealdim > &p, const unsigned int component) const
Definition: tangentdirichletdata.h:73
void ReInit(const std::map< std::string, const dealii::Vector< double > * > &param_values, const std::map< std::string, const VECTOR * > &domain_values, unsigned int color)
Definition: tangentdirichletdata.h:52
double InitialTime() const
Definition: function_wrapper.h:83
TangentDirichletData(const DD &data)
Definition: tangentdirichletdata.h:42
Definition: tangentdirichletdata.h:39
void SetTime(double time) const
Definition: tangentdirichletdata.h:89
Function(const unsigned int n_components=1, const double initial_time=0.0)
Definition: function_wrapper.h:47
Definition: function_wrapper.h:44