#include <Grid3D.h>
| Classes | |
| struct | Cell | 
| Public Attributes | |
| int | nx | 
| int | ny | 
| int | nz | 
| int | nxny | 
| int | ncell | 
| Cell * | fdata | 
| real * | pressure | 
| real * | levelset | 
| real | t | 
| real | tend | 
| real | max_pressure | 
| Cell | bcell | 
| vec3 | gravity | 
| int * | fmm_status | 
| int * | fmm_heap | 
| int | fmm_heap_size | 
| Static Public Attributes | |
| static const unsigned long * | obstacles = NULL | 
| Public Member Functions | |
| Grid3D () | |
| ~Grid3D () | |
| void | clear (int _nx, int _ny, int _nz) | 
| int | clamp_x (int x) | 
| int | clamp_y (int y) | 
| int | clamp_z (int z) | 
| int | clamp_in_x (int x) | 
| int | clamp_in_y (int y) | 
| int | clamp_in_z (int z) | 
| int | index (int x, int y, int z) const | 
| int | index (const vec3 &p) const | 
| Cell * | get (int x, int y, int z, Cell *base) const | 
| const Cell * | get (int x, int y, int z, const Cell *base) const | 
| Cell * | get (int x, int y, int z) | 
| const Cell * | get (int x, int y, int z) const | 
| Cell * | get (const vec3 &p) | 
| const Cell * | get (const vec3 &p) const | 
| template<int C> | |
| real | interp (const Cell *base, real fx, real fy, real fz) const | 
| template<int C> | |
| real | interp (vec3 p) const | 
| vec3 | interp (vec3 p) const | 
| template<int C> | |
| void | impulse (Cell *base, real fx, real fy, real fz, real i) | 
| template<int C> | |
| void | impulse (vec3 p, real i) | 
| void | impulse (const vec3 &p, const vec3 &i) | 
| real * | getpressure (int x, int y, int z) | 
| real | getpressure (vec3 p) | 
| real * | getlevelset (int x, int y, int z) | 
| real | getlevelset (vec3 p) | 
| void | seed (real height) | 
| void | seed (real height, vec3 normal) | 
| void | seed (vec3 p0, vec3 p1, vec3 velocity=vec3(0, 0, 0)) | 
| void | step (Grid3D *prev, Grid3D *temp, real dt=0.04, real diff=0.00001) | 
| void | step_init (const Grid3D *prev, Grid3D *temp, real dt, real diff) | 
| void | step_levelset (Grid3D *prev, Grid3D *temp, real dt, real diff) | 
| void | step_forces (const Grid3D *prev, Grid3D *temp, real dt, real diff, real scale=1.0) | 
| void | step_surface (const Grid3D *prev, Grid3D *temp, real dt, real diff) | 
| void | step_advect (const Grid3D *prev, Grid3D *temp, real dt, real diff) | 
| void | step_diffuse (const Grid3D *prev, Grid3D *temp, real dt, real diff) | 
| void | step_project (const Grid3D *prev, Grid3D *temp, real dt, real diff) | 
| void | step_color (const Grid3D *prev, Grid3D *temp, real dt, real diff) | 
| int | fmm_pop () | 
| void | fmm_push (int index) | 
| void | fmm_swap (int entry1, int entry2) | 
| Static Public Member Functions | |
| template<class T > | |
| static T | lerp (T a, T b, real f) | 
| Cell sofaeulerianfluid::Grid3D::bcell | 
| Cell* sofaeulerianfluid::Grid3D::fdata | 
| int* sofaeulerianfluid::Grid3D::fmm_heap | 
| int sofaeulerianfluid::Grid3D::fmm_heap_size | 
| int* sofaeulerianfluid::Grid3D::fmm_status | 
| vec3 sofaeulerianfluid::Grid3D::gravity | 
| real* sofaeulerianfluid::Grid3D::levelset | 
| real sofaeulerianfluid::Grid3D::max_pressure | 
| int sofaeulerianfluid::Grid3D::ncell | 
| int sofaeulerianfluid::Grid3D::nx | 
| int sofaeulerianfluid::Grid3D::nxny | 
| int sofaeulerianfluid::Grid3D::ny | 
| int sofaeulerianfluid::Grid3D::nz | 
| 
 | static | 
| real* sofaeulerianfluid::Grid3D::pressure | 
| real sofaeulerianfluid::Grid3D::t | 
| real sofaeulerianfluid::Grid3D::tend | 
| sofaeulerianfluid::Grid3D::Grid3D | ( | ) | 
| sofaeulerianfluid::Grid3D::~Grid3D | ( | ) | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| void sofaeulerianfluid::Grid3D::clear | ( | int | _nx, | 
| int | _ny, | ||
| int | _nz | ||
| ) | 
| int sofaeulerianfluid::Grid3D::fmm_pop | ( | ) | 
| void sofaeulerianfluid::Grid3D::fmm_push | ( | int | index | ) | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inlinestatic | 
| void sofaeulerianfluid::Grid3D::seed | ( | real | height | ) | 
| void sofaeulerianfluid::Grid3D::step | ( | Grid3D * | prev, | 
| Grid3D * | temp, | ||
| real | dt = 0.04, | ||
| real | diff = 0.00001 | ||
| ) | 
| void sofaeulerianfluid::Grid3D::step_advect | ( | const Grid3D * | prev, | 
| Grid3D * | temp, | ||
| real | dt, | ||
| real | diff | ||
| ) | 
| void sofaeulerianfluid::Grid3D::step_color | ( | const Grid3D * | prev, | 
| Grid3D * | temp, | ||
| real | dt, | ||
| real | diff | ||
| ) | 
| void sofaeulerianfluid::Grid3D::step_diffuse | ( | const Grid3D * | prev, | 
| Grid3D * | temp, | ||
| real | dt, | ||
| real | diff | ||
| ) | 
| void sofaeulerianfluid::Grid3D::step_forces | ( | const Grid3D * | prev, | 
| Grid3D * | temp, | ||
| real | dt, | ||
| real | diff, | ||
| real | scale = 1.0 | ||
| ) | 
| void sofaeulerianfluid::Grid3D::step_init | ( | const Grid3D * | prev, | 
| Grid3D * | temp, | ||
| real | dt, | ||
| real | diff | ||
| ) | 
| void sofaeulerianfluid::Grid3D::step_project | ( | const Grid3D * | prev, | 
| Grid3D * | temp, | ||
| real | dt, | ||
| real | diff | ||
| ) | 
| void sofaeulerianfluid::Grid3D::step_surface | ( | const Grid3D * | prev, | 
| Grid3D * | temp, | ||
| real | dt, | ||
| real | diff | ||
| ) |