| 
    mantaflow
    0.10
    
   A framework for fluid simulation 
   | 
 
#include <grid4d.h>
  
 Public Types | |
| typedef T | BASETYPE | 
| typedef Grid4dBase | BASETYPE_GRID | 
  Public Types inherited from Manta::Grid4dBase | |
| enum | Grid4dType {  TypeNone = 0, TypeReal = 1, TypeInt = 2, TypeVec3 = 4, TypeVec4 = 8 }  | 
Public Member Functions | |
| PYTHON () Grid4d(FluidSolver *parent | |
| init new grid, values are set to zero  More... | |
| Grid4d (const Grid4d< T > &a) | |
| create new & copy content from another grid  | |
| virtual | ~Grid4d () | 
| return memory to solver  | |
| T | get (int i, int j, int k, int t) const | 
| T & | get (int i, int j, int k, int t) | 
| access data  | |
| T | get (IndexInt idx) const | 
| access data  | |
| T | get (const Vec4i &pos) const | 
| access data  | |
| T & | operator() (int i, int j, int k, int t) | 
| access data  | |
| T | operator() (int i, int j, int k, int t) const | 
| access data  | |
| T & | operator() (IndexInt idx) | 
| access data  | |
| T | operator() (IndexInt idx) const | 
| access data  | |
| T & | operator() (const Vec4i &pos) | 
| access data  | |
| T | operator() (const Vec4i &pos) const | 
| access data  | |
| T & | operator[] (IndexInt idx) | 
| access data  | |
| const T | operator[] (IndexInt idx) const | 
| access data  | |
| T | getInterpolated (const Vec4 &pos) const | 
| PYTHON () Grid4d< T > ©From(const Grid4d< T > &a | |
| warning - do not use "=" for grids in python, this copies the reference! not the grid content...  More... | |
| PYTHON () void add(const Grid4d< T > &a) | |
| add/subtract other grid  | |
| PYTHON () void sub(const Grid4d< T > &a) | |
| PYTHON () void setConst(T s) | |
| set all cells to constant value  | |
| PYTHON () void addConst(T s) | |
| add constant to all grid cells  | |
| PYTHON () void addScaled(const Grid4d< T > &a | |
| add scaled other grid to current one (note, only "Real" factor, "T" type not supported here!)  | |
| PYTHON () void mult(const Grid4d< T > &a) | |
| multiply contents of grid  | |
| PYTHON () void multConst(T s) | |
| multiply each cell by a constant scalar value  | |
| PYTHON () void clamp(Real min | |
| clamp content to range (for vec3, clamps each component separately)  | |
| PYTHON () Real getMaxAbs() | |
| get absolute max value in grid  | |
| PYTHON () Real getMax() | |
| get max value in grid  | |
| PYTHON () Real getMin() | |
| get min value in grid  | |
| PYTHON () void setBound(T value | |
| set all boundary cells to constant value (Dirichlet)  | |
| PYTHON () void setBoundNeumann(int boundaryWidth | |
| set all boundary cells to last inner value (Neumann)  | |
| PYTHON () void printGrid(int zSlice | |
| debugging helper, print grid from Python  | |
| template<class S > | |
| Grid4d< T > & | operator+= (const Grid4d< S > &a) | 
| template<class S > | |
| Grid4d< T > & | operator+= (const S &a) | 
| template<class S > | |
| Grid4d< T > & | operator-= (const Grid4d< S > &a) | 
| template<class S > | |
| Grid4d< T > & | operator-= (const S &a) | 
| template<class S > | |
| Grid4d< T > & | operator*= (const Grid4d< S > &a) | 
| template<class S > | |
| Grid4d< T > & | operator*= (const S &a) | 
| template<class S > | |
| Grid4d< T > & | operator/= (const Grid4d< S > &a) | 
| template<class S > | |
| Grid4d< T > & | operator/= (const S &a) | 
| Grid4d< T > & | safeDivide (const Grid4d< T > &a) | 
| void | swap (Grid4d< T > &other) | 
| Swap data with another grid (no actual data is moved)  | |
| template<> | |
| Real | getMax () | 
| template<> | |
| Real | getMax () | 
| template<> | |
| Real | getMax () | 
| template<> | |
| Real | getMax () | 
  Public Member Functions inherited from Manta::Grid4dBase | |
| PYTHON () Grid4dBase(FluidSolver *parent) | |
| int | getSizeX () const | 
| Get the grids X dimension.  | |
| int | getSizeY () const | 
| Get the grids Y dimension.  | |
| int | getSizeZ () const | 
| Get the grids Z dimension.  | |
| int | getSizeT () const | 
| Get the grids T dimension.  | |
| Vec4i | getSize () const | 
| Get the grids dimensions.  | |
| IndexInt | getStrideX () const | 
| Get Stride in X dimension.  | |
| IndexInt | getStrideY () const | 
| Get Stride in Y dimension.  | |
| IndexInt | getStrideZ () const | 
| Get Stride in Z dimension.  | |
| IndexInt | getStrideT () const | 
| Get Stride in T dimension.  | |
| Real | getDx () | 
| void | checkIndex (int i, int j, int k, int t) const | 
| Check if indices are within bounds, otherwise error (should only be called when debugging)  | |
| void | checkIndex (IndexInt idx) const | 
| Check if indices are within bounds, otherwise error (should only be called when debugging)  | |
| bool | isInBounds (const Vec4i &p, int bnd) const | 
| Check if index is within given boundaries.  | |
| bool | isInBounds (const Vec4i &p) const | 
| Check if index is within given boundaries.  | |
| bool | isInBounds (const Vec4 &p, int bnd=0) const | 
| Check if index is within given boundaries.  | |
| bool | isInBounds (IndexInt idx) const | 
| Check if linear index is in the range of the array.  | |
| Grid4dType | getType () const | 
| Get the type of grid.  | |
| bool | is3D () const | 
| Check dimensionality.  | |
| bool | is4D () const | 
| bool | isInBounds (int i, int j, int k, int t, int bnd) const | 
| 3d compatibility  | |
| IndexInt | index (int i, int j, int k, int t) const | 
| Get index into the data.  | |
| IndexInt | index (const Vec4i &pos) const | 
| Get index into the data.  | |
Public Attributes | |
| bool | show = true) | 
| bool | copyType =true ) | 
| const T & | factor | 
| Real | max | 
| int | boundaryWidth =1) | 
| int | tSlice =-1 | 
| int bool | printIndex =false | 
| int bool int | bnd =0) | 
Protected Attributes | |
| T * | mData | 
  Protected Attributes inherited from Manta::Grid4dBase | |
| Grid4dType | mType | 
| Vec4i | mSize | 
| Real | mDx | 
| IndexInt | mStrideZ | 
| IndexInt | mStrideT | 
Grid class
      
  | 
  inline | 
all kinds of access functions, use grid(), grid[] or grid.get() access data
| Manta::Grid4d< T >::PYTHON | ( | ) | 
init new grid, values are set to zero
set all cells to zero
| Manta::Grid4d< T >::PYTHON | ( | ) | const & | 
warning - do not use "=" for grids in python, this copies the reference! not the grid content...
copy content from other grid (use this one instead of operator= !)
 1.8.13