15 #ifndef _FLUIDSOLVER_H 16 #define _FLUIDSOLVER_H 34 PYTHON()
Vec3i getGridSize() {
return mGridSize; }
35 inline Real getDt() {
return mDt; }
36 inline Real getDx() {
return 1.0 / mGridSize.
max(); }
37 inline Real getTime() {
return mTimeTotal; }
40 inline bool is2D()
const {
return mDim==2; }
42 inline bool is3D()
const {
return mDim==3; }
44 PYTHON()
void printMemInfo();
50 PYTHON()
void adaptTimestep(Real maxVel);
53 PYTHON() PbClass* create(PbType type, PbTypeVec T=PbTypeVec(),
const std::string& name =
"");
56 template<
class T> T* getGridPointer();
57 template<
class T>
void freeGridPointer(T* ptr);
60 PYTHON(name=timestep) Real mDt;
61 PYTHON(name=timeTotal) Real mTimeTotal;
62 PYTHON(name=frame)
int mFrame;
64 PYTHON(name=cfl) Real mCflCond;
65 PYTHON(name=timestepMin) Real mDtMin;
66 PYTHON(name=timestepMax) Real mDtMax;
67 PYTHON(name=frameLength) Real mFrameLength;
83 std::vector<T*> grids;
102 template<
class T>
void freeGrid4dPointer(T* ptr);
int mFourthDim
Definition: fluidsolver.h:109
Definition: commonkernels.h:22
GridStorage< int > mGridsInt
memory for regular (3d) grids
Definition: fluidsolver.h:88
int getFourthDim() const
fourth dimension size
Definition: fluidsolver.h:99
Definition: fluidsolver.h:77
bool is3D() const
Check dimensionality (3d or above)
Definition: fluidsolver.h:42
Basic inlined vector class.
Definition: vectorbase.h:71
T * getGrid4dPointer()
4d data allocation
S max() const
Get biggest component.
Definition: vectorbase.h:172
bool supports4D() const
4d data section, only required for simulations working with space-time data
Definition: fluidsolver.h:97
GridStorage< Vec4 > mGridsVec4
4d grid storage
Definition: fluidsolver.h:112
Definition: fluidsolver.h:28
bool is2D() const
Check dimensionality.
Definition: fluidsolver.h:40