extensive_generator.hpp
Go to the documentation of this file.
1 
6 #ifndef EXTENSIVE_GENERATOR_HPP
7 #define EXTENSIVE_GENERATOR_HPP 1
8 
9 #include "conserved_3d.hpp"
10 #include "computational_cell.hpp"
11 #include "../common/equation_of_state.hpp"
12 #include "../../misc/utils.hpp"
13 #include "../../misc/lazy_list.hpp"
14 #include "../../3D/GeometryCommon/Tessellation3D.hpp"
15 
17 
24  const EquationOfState& eos);
25 
27 class ExtensiveGenerator: public LazyList<Conserved3D>
28 {
29 public:
30 
36  ExtensiveGenerator(const vector<ComputationalCell>& cells,
37  const Tessellation3D& tess,
38  const EquationOfState& eos);
39 
40 size_t size(void) const;
41 
42  Conserved3D operator[](size_t i) const;
43 
44 private:
45  const vector<ComputationalCell>& cells_;
46  const Tessellation3D& tess_;
47  const EquationOfState& eos_;
48 };
49 
50 #endif // EXTENSIVE_GENERATOR_HPP
Abstract class for tessellation in 3D.
Conserved3D operator[](size_t i) const
Returns a single member of the list.
Container for the hydrodynamic variables.
ExtensiveGenerator(const vector< ComputationalCell > &cells, const Tessellation3D &tess, const EquationOfState &eos)
Class constructor.
Generates a list of conserved variables.
Ordered list whose terms are evaluated lazily.
Definition: lazy_list.hpp:17
size_t size(void) const
Returns the length of the list.
Base class for equation of state.
Conserved3D calc_intensive(const ComputationalCell &cell, const EquationOfState &eos)
Calculates the extensive conserved variables.
Conserved variables for a 3D computational cell.
Definition: conserved_3d.hpp:7
A container for the hydrodynamic variables.