CentroidMotion.hpp
Go to the documentation of this file.
1 
6 #ifndef CENTROIDMOTION_HPP
7 #define CENTROIDMOTION_HPP 1
8 
9 #include "../point_motion.hpp"
10 #include "../../common/equation_of_state.hpp"
11 #include "../OuterBoundary.hpp"
12 #include "../geometric_outer_boundaries/PeriodicBox.hpp"
13 #include "../interpolations/LinearGaussImproved.hpp"
14 
19 {
20 public:
21 
29  CentroidMotion(PointMotion const& bpm, double reduction_factor,EquationOfState const& eos, size_t niter = 2,
30  vector<string> toignore = vector<string>());
31 
32  vector<Vector2D> operator()(const Tessellation& tess, const vector<ComputationalCell>& cells, double time,
33  TracerStickerNames const& tracerstickernames) const;
34 
35  vector<Vector2D> ApplyFix(Tessellation const& tess, vector<ComputationalCell> const& cells, double time,
36  double dt, vector<Vector2D> const& velocities, TracerStickerNames const& tracerstickernames)const;
37 private:
38  PointMotion const& bpm_;
39  const double reduce_factor_;
40  EquationOfState const& eos_;
41  const size_t niter_;
42  const vector<string> toignore_;
43 };
44 
45 #endif // CENTROIDMOTION_HPP
46 
Abstract class for tessellation.
CentroidMotion(PointMotion const &bpm, double reduction_factor, EquationOfState const &eos, size_t niter=2, vector< string > toignore=vector< string >())
Class constructor.
vector< Vector2D > ApplyFix(Tessellation const &tess, vector< ComputationalCell > const &cells, double time, double dt, vector< Vector2D > const &velocities, TracerStickerNames const &tracerstickernames) const
Applies a small fix to the velocity of all mesh points once the time step is known.
Abstract class for motion of mesh generating points.
Base class for equation of state.
Correction to point velocities that keeps cells round.
Class for keeping the names of the tracers and stickers.
vector< Vector2D > operator()(const Tessellation &tess, const vector< ComputationalCell > &cells, double time, TracerStickerNames const &tracerstickernames) const
Calculates the velocity of all mesh points.