27 #ifndef vtkAMRGaussianPulseSource_h
28 #define vtkAMRGaussianPulseSource_h
30 #include "vtkFiltersAMRModule.h"
51 vtkSetMacro(Dimension,
int);
58 vtkSetMacro(NumberOfLevels,
int);
66 this->RefinmentRatio = r;
76 this->RootSpacing[0] = this->RootSpacing[1] = this->RootSpacing[2] = h0;
85 vtkSetVector3Macro(PulseOrigin,
double);
86 vtkGetVector3Macro(PulseOrigin,
double);
89 this->PulseOrigin[0] = f;
94 this->PulseOrigin[1] = f;
99 this->PulseOrigin[2] = f;
108 vtkSetVector3Macro(PulseWidth,
double);
109 vtkGetVector3Macro(PulseWidth,
double);
112 this->PulseWidth[0] = f;
117 this->PulseWidth[1] = f;
122 this->PulseWidth[2] = f;
131 vtkSetMacro(PulseAmplitude,
double);
132 vtkGetMacro(PulseAmplitude,
double);
157 return (this->ComputePulseAt(xyz));
163 for (
int i = 0; i < this->Dimension; ++i)
165 double d = pt[i] - this->PulseOrigin[i];
167 double L2 = this->PulseWidth[i] * this->PulseWidth[i];
170 pulse = this->PulseAmplitude * std::exp(-r);
205 double RootSpacing[3];
206 double PulseOrigin[3];
207 double PulseWidth[3];