DOpE
primaldirichletdata.h
Go to the documentation of this file.
1 
24 #ifndef _PRIMAL_DIRICHLET_DATA_H_
25 #define _PRIMAL_DIRICHLET_DATA_H_
26 
27 #include "function_wrapper.h"
28 #include "dofhandler_wrapper.h"
29 #include "fevalues_wrapper.h"
30 
31 namespace DOpE
32 {
33 
40  template<typename DD, typename VECTOR, int dealdim>
42  {
43  public:
44  PrimalDirichletData(const DD& data) : DOpEWrapper::Function<dealdim>(data.n_components(), data.InitialTime()), _dirichlet_data(data)
45  {
46  _param_values = NULL;
47  _domain_values = NULL;
48  _color = 0;
49  }
50 
54  void ReInit(
55  const std::map<std::string, const dealii::Vector<double>* > &param_values,
56  const std::map<std::string, const VECTOR* > &domain_values,
57  unsigned int color)
58  {
59  _param_values = &param_values;
60  _domain_values = &domain_values;
61  _color = color;
62  }
63 
64 
75  double value (const dealii::Point<dealdim> &p,
76  const unsigned int component) const
77  {
78  return _dirichlet_data.Data(
79  _param_values,
80  _domain_values,
81  _color,
82  p,
83  component);
84  }
85 
91  void SetTime(double time) const
92  {
93  _dirichlet_data.SetTime(time);
94  }
95  private:
96  const DD& _dirichlet_data;
97  const std::map<std::string, const dealii::Vector<double>* >* _param_values;
98  const std::map<std::string, const VECTOR* >* _domain_values;
99  unsigned int _color;
100  };
101 }
102 #endif
double InitialTime() const
Definition: function_wrapper.h:83
void SetTime(double time) const
Definition: primaldirichletdata.h:91
double value(const dealii::Point< dealdim > &p, const unsigned int component) const
Definition: primaldirichletdata.h:75
PrimalDirichletData(const DD &data)
Definition: primaldirichletdata.h:44
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: primaldirichletdata.h:54
Definition: primaldirichletdata.h:41
Function(const unsigned int n_components=1, const double initial_time=0.0)
Definition: function_wrapper.h:47
Definition: function_wrapper.h:44