Go to the documentation of this file.
29 #ifndef VTKAMRGAUSSIANPULSESOURCE_H_
30 #define VTKAMRGAUSSIANPULSESOURCE_H_
63 {this->RefinmentRatio=
r;this->
Modified();}
70 this->RootSpacing[0]=this->RootSpacing[1]=this->RootSpacing[2]=h0;
80 {this->PulseOrigin[0]=
f;this->
Modified();}
82 {this->PulseOrigin[1]=
f;this->
Modified();}
84 {this->PulseOrigin[2]=
f;this->
Modified();}
122 double xyz[3]; xyz[0]=
x; xyz[1]=
y; xyz[2]=
z;
123 return( this->ComputePulseAt(xyz) );
129 for(
int i=0; i < this->Dimension; ++i )
131 double d = pt[i]-this->PulseOrigin[i];
133 double L2 = this->PulseWidth[i]*this->PulseWidth[i];
136 pulse = this->PulseAmplitude*std::exp( -
r );
146 double centroid[3] );
165 double RootSpacing[3];
166 double PulseOrigin[3];
167 double PulseWidth[3];
void PrintSelf(ostream &os, vtkIndent indent)
vtkAMRGaussianPulseSource()
vtkUniformGrid * RefinePatch(vtkUniformGrid *parent, int patchExtent[6])
void SetZPulseWidth(double f)
GLfloat GLfloat GLfloat GLfloat h
void Generate2DDataSet(vtkOverlappingAMR *amr)
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
#define vtkSetVector3Macro(name, type)
double ComputePulseAt(double pt[3])
void SetZPulseOrigin(double f)
void SetYPulseOrigin(double f)
#define vtkTypeMacro(thisClass, superclass)
static vtkAMRGaussianPulseSource * New()
double ComputePulseAt(const double x, const double y, const double z)
GLint GLint GLint GLint GLint x
void ComputeCellCenter(vtkUniformGrid *grid, vtkIdType cellIdx, double centroid[3])
#define vtkGetVector3Macro(name, type)
void SetRefinementRatio(int r)
vtkUniformGrid * GetGrid(double origin[3], double h[3], int ndim[3])
virtual ~vtkAMRGaussianPulseSource()
a simple class to control print indentation
void SetYPulseWidth(double f)
void GeneratePulseField(vtkUniformGrid *grid)
#define vtkGetMacro(name, type)
hierarchical dataset of vtkUniformGrids
vtkSetMacro(IgnoreDriverBugs, bool)
void SetXPulseOrigin(double f)
GLdouble GLdouble GLdouble r
#define VTKFILTERSAMR_EXPORT
GLint GLint GLint GLint GLint GLint y
void Generate3DDataSet(vtkOverlappingAMR *amr)
void SetRootSpacing(double h0)
void SetXPulseWidth(double f)