spatial_distribution1d.hpp
Go to the documentation of this file.
1 
6 #ifndef SPATIAL_DISTRIBUTION_1D_HPP
7 #define SPATIAL_DISTRIBUTION_1D_HPP 1
8 
11 {
12 public:
17  virtual double operator()(double x) const = 0;
18 
19  virtual ~SpatialDistribution1D(void);
20 };
21 
24 {
25 private:
26 
28  double _val;
29 
30 public:
34  explicit Uniform(double val);
35 
40  double operator()(double x) const;
41 };
42 
45 {
46 private:
47 
49  double _val1;
50 
52  double _val2;
53 
55  double _steppos;
56 
57 public:
63  Step(double val1, double val2,
64  double steppos);
65 
70  double operator()(double x) const;
71 };
72 
75 {
76 private:
78  double vl;
80  double vr;
82  double vm;
84  double lip;
86  double rip;
87 public:
95  TwoSteps(double ivl, double ilip,
96  double ivm, double irip,
97  double ivr);
102  double operator()(double x) const;
103 };
104 
105 #endif // SPATIAL_DISTRIBUTION_1D_HPP
Uniform distribution.
virtual ~SpatialDistribution1D(void)
Abstract class for initial conditions.
Base class for initial conditions.
virtual double operator()(double x) const =0
Calculates initial conditions.
Step distribution.