mantaflow
0.10
A framework for fluid simulation
|
fast marching algorithm wrapper class More...
#include <fastmarch.h>
Public Types | |
enum | SpecialValues { FlagInited = 1, FlagIsOnHeap = 2 } |
Public Member Functions | |
FastMarch (const FlagGrid &flags, Grid< int > &fmFlags, Grid< Real > &levelset, Real maxTime, MACGrid *velTransport=NULL) | |
void | performMarching () |
advect level set function with given velocity */ More... | |
bool | isInvalid (Real v) const |
test value for invalidity | |
void | addToList (const Vec3i &p, const Vec3i &src) |
Real | phi2time (Real phival) |
convert phi to time value | |
Real | time2phi (Real tval) |
... and back | |
Real | _phi (int i, int j, int k) |
Static Public Member Functions | |
static Real | InvalidTime () |
static Real | InvtOffset () |
Protected Member Functions | |
template<int C> | |
Real | calcWeights (int &okCnt, int &invcnt, Real *v, const Vec3i &idx) |
Real | calculateDistance (const Vec3i &pos) |
Protected Attributes | |
Grid< Real > & | mLevelset |
const FlagGrid & | mFlags |
Grid< int > & | mFmFlags |
FmValueTransportVec3< MACGrid, Vec3 > | mVelTransport |
velocity extrpolation | |
Real | mMaxTime |
maximal time to march for | |
std::priority_queue< T, std::vector< T >, std::less< T > > | mHeap |
fast marching list | |
Real | mReheapVal |
Real | mWeights [6] |
weights for touching points | |
fast marching algorithm wrapper class
void Manta::FastMarch< COMP, TDIR >::performMarching | ( | ) |
advect level set function with given velocity */
Walk...