Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

RBFPropagation Class Reference

#include <RBFPropagation.h>

Inheritance diagram for RBFPropagation:

Inheritance graph
[legend]
Collaboration diagram for RBFPropagation:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 MAKE_PARTICLESTUFF_NAME ()
virtual double speed (gmVector3 point)
 speed function

int qlen ()
 Returns length of particle stuff parameters.

void getq (double *q)
 Get the parameters.

void setq (double *q)
 Set particle stuff parameters.

void qname (char **qn)
 Get the names of the parameters.

void attachAttributes ()
 Attach all the attributes needed by the behavior.

 RBFPropagation (Particles *ps=NULL, std::string name=std::string("RBFPropagation"))
 Creates a surface adhesion attribute for Particles p.

ParticleOrientationgetOrientation ()
 Returns the particle orientation.

ImplicitInterrogatorgetImplicitInterrogator ()
void applyConstraint ()
 Apply the surface adhesion constraint.

void integrate ()
 Update surface parameters based on actual dqdt values.

void propagateNormals (RBFInterpolant *rbf)
double targetShape (gmVector3 point)
gmVector3 computeGradF (gmVector3 point)
void adaptivity (RBFInterpolant *rbf)
void tune (RBFInterpolant *rbf)

Public Attributes

double speedfac
 Factor to scale the speed function.

double constfac
double gaussfac
double meanfac

Private Attributes

ImplicitInterrogatorimp_int
 Interrogator for the surface to be deformed.

ParticleOrientationp_orient
 Particle orientations.


Constructor & Destructor Documentation

RBFPropagation::RBFPropagation Particles ps = NULL,
std::string  name = std::string("RBFPropagation")
 

Creates a surface adhesion attribute for Particles p.

Definition at line 21 of file RBFPropagation.cpp.

References attachAttributes(), constfac, gaussfac, meanfac, and speedfac.


Member Function Documentation

void RBFPropagation::adaptivity RBFInterpolant rbf  ) 
 

Definition at line 191 of file RBFPropagation.cpp.

References RBF::centers, RBFInterpolant::dipoles, epsilon, Particles::getAttribute(), RBF::grad(), Implicit::meanCurvature(), RBFInterpolant::normals, ParticleStuff::ps, Particles::size(), RBF::update(), and ParticlePosition::x.

void RBFPropagation::applyConstraint  )  [virtual]
 

Apply the surface adhesion constraint.

Reimplemented from ParticleBehavior.

Definition at line 66 of file RBFPropagation.cpp.

References RBF::centers, RBFInterpolant::dipoles, ImplicitInterrogator::getImplicit(), RBF::grad(), imp_int, RBFInterpolant::moving, RBFInterpolant::normals, propagateNormals(), speed(), speedfac, tune(), and RBF::update().

void RBFPropagation::attachAttributes  )  [virtual]
 

Attach all the attributes needed by the behavior.

Defaults to a nop.

Reimplemented from ParticleBehavior.

Definition at line 14 of file RBFPropagation.cpp.

References ParticleStuff::attachAttribute(), imp_int, and p_orient.

Referenced by RBFPropagation().

gmVector3 RBFPropagation::computeGradF gmVector3  point  ) 
 

Definition at line 173 of file RBFPropagation.cpp.

References speed().

Referenced by propagateNormals().

ImplicitInterrogator* RBFPropagation::getImplicitInterrogator  )  [inline]
 

Definition at line 57 of file RBFPropagation.h.

References imp_int.

ParticleOrientation* RBFPropagation::getOrientation  )  [inline]
 

Returns the particle orientation.

Definition at line 55 of file RBFPropagation.h.

References p_orient.

void RBFPropagation::getq double *  q  )  [inline, virtual]
 

Get the parameters.

Defaults to no parameters.

Reimplemented from ParticleStuff.

Definition at line 41 of file RBFPropagation.h.

References constfac, gaussfac, meanfac, and speedfac.

void RBFPropagation::integrate  )  [virtual]
 

Update surface parameters based on actual dqdt values.

Reimplemented from ParticleBehavior.

Definition at line 133 of file RBFPropagation.cpp.

RBFPropagation::MAKE_PARTICLESTUFF_NAME  ) 
 

void RBFPropagation::propagateNormals RBFInterpolant rbf  ) 
 

Definition at line 138 of file RBFPropagation.cpp.

References RBF::centers, computeGradF(), RBF::grad(), RBF::hess(), RBFInterpolant::normals, and speed().

Referenced by applyConstraint().

int RBFPropagation::qlen  )  [inline, virtual]
 

Returns length of particle stuff parameters.

Defaults to no parameters.

Reimplemented from ParticleStuff.

Definition at line 40 of file RBFPropagation.h.

void RBFPropagation::qname char **  qn  )  [inline, virtual]
 

Get the names of the parameters.

Defaults to no parameters.

Reimplemented from ParticleStuff.

Definition at line 43 of file RBFPropagation.h.

void RBFPropagation::setq double *  q  )  [inline, virtual]
 

Set particle stuff parameters.

Defaults to no parameters.

Reimplemented from ParticleStuff.

Definition at line 42 of file RBFPropagation.h.

References constfac, gaussfac, meanfac, and speedfac.

double RBFPropagation::speed gmVector3  point  )  [virtual]
 

speed function

Definition at line 33 of file RBFPropagation.cpp.

References constfac, gaussfac, Implicit::gaussianCurvature(), ImplicitInterrogator::getImplicit(), imp_int, Implicit::meanCurvature(), meanfac, RBFInterpolant::morph, speedfac, and RBFInterpolant::targetShape().

Referenced by applyConstraint(), computeGradF(), and propagateNormals().

double RBFPropagation::targetShape gmVector3  point  ) 
 

Definition at line 184 of file RBFPropagation.cpp.

void RBFPropagation::tune RBFInterpolant rbf  ) 
 

Definition at line 257 of file RBFPropagation.cpp.

References RBF::centers, RBFInterpolant::dipoles, epsilon, Particles::getAttribute(), RBF::grad(), RBFInterpolant::normals, TriMesh::proc(), ParticleStuff::ps, Particles::size(), RBFInterpolant::targetMesh, RBF::update(), and ParticlePosition::x.

Referenced by applyConstraint().


Member Data Documentation

double RBFPropagation::constfac
 

Definition at line 33 of file RBFPropagation.h.

Referenced by getq(), RBFPropagation(), setq(), and speed().

double RBFPropagation::gaussfac
 

Definition at line 34 of file RBFPropagation.h.

Referenced by getq(), RBFPropagation(), setq(), and speed().

ImplicitInterrogator* RBFPropagation::imp_int [private]
 

Interrogator for the surface to be deformed.

Definition at line 21 of file RBFPropagation.h.

Referenced by applyConstraint(), attachAttributes(), getImplicitInterrogator(), and speed().

double RBFPropagation::meanfac
 

Definition at line 35 of file RBFPropagation.h.

Referenced by getq(), RBFPropagation(), setq(), and speed().

ParticleOrientation* RBFPropagation::p_orient [private]
 

Particle orientations.

Definition at line 24 of file RBFPropagation.h.

Referenced by attachAttributes(), and getOrientation().

double RBFPropagation::speedfac
 

Factor to scale the speed function.

Definition at line 32 of file RBFPropagation.h.

Referenced by applyConstraint(), getq(), RBFPropagation(), setq(), and speed().


The documentation for this class was generated from the following files:
Generated on Mon Jun 28 15:03:04 2004 for Advanced Surface Library by doxygen 1.3.4