#include <Integrator.h>

Public Member Functions | |
| Grad & | getGrad () const |
| Gets the numerical differentiation scheme. | |
| const GridInterpolator * | getInterpolator () const |
| Gets the margin interpolator for this numerical method. | |
| int | getInterpolatorType () const |
| Gets the interpolator type. | |
| int | getInterpolationBufferSize () const |
| Gets the number of interpolation related additional points. | |
| virtual void | integrate (int ir)=0 |
| Integrates a partial differential equation. | |
| virtual void | richardson (const AMError &amerr, int ir)=0 |
| Richardson error estimation. | |
| double | getError (int i) const |
| Gets the Richardson error in the specified grid point. | |
| void | setTimeStepCount (int tsc) |
| int | getTimeStepCount () const |
| virtual void | getResult (int i, tvalarray< GReal_t > &w) const =0 |
| Gets the result of the integration at the specified point. | |
| virtual int | getNumVelocity () const =0 |
| Gets the numerical error propagation velocity. | |
| virtual Integrator * | createIntegrator (Grid &g, const Sigma *sigma) const =0 |
| Creates a new integrator instance for the specified grid. | |
| virtual Integrator * | cloneIntegrator (Grid &g) const =0 |
| const Sigma & | getSigma () const |
| GReal_t | getDeltaT () const |
| Gets the time step. | |
| void | setDeltaT (GReal_t dt) |
| Sets the time step. | |
| Grid * | getGrid () const |
| Gets the grid. | |
| PDE & | getPDE () const |
| Gets the PDE. | |
| void | updateGrid (int ir) |
Protected Member Functions | |
| Integrator (const Integrator &gi, Grid &g) | |
| Integrator (Grid *g, PDE &pde, const tvalarray< string > *optsarr, int deftype, Sigma *sigma) | |
| Integrator (Grid *g, PDE &pde, Grad *d, Grad *d2, int deftype, Sigma *sigma) | |
| void | calcErrors (const AMError &amerr, const Grid &g, const Grid &g2, double c) |
Protected Attributes | |
| Grad * | gradOp |
| Grad * | gradOp2 |
| int | timeStepCount |
Friends | |
| class | Grid |
Numerical method to integrate a PDE on the grid.
| Grad& gridripper::amr1d::Integrator::getGrad | ( | ) | const [inline] |
Gets the numerical differentiation scheme.
Reimplemented in gridripper::amr1d::gridint::ICN.
| const GridInterpolator* gridripper::amr1d::Integrator::getInterpolator | ( | ) | const [inline] |
Gets the margin interpolator for this numerical method.
| int gridripper::amr1d::Integrator::getInterpolatorType | ( | ) | const [inline] |
Gets the interpolator type.
| int gridripper::amr1d::Integrator::getInterpolationBufferSize | ( | ) | const [inline] |
Gets the number of interpolation related additional points.
The margin of a refined parent grid must always be wide enough to make centered interpolation possible for its child grids. 4 additional points are needed for the 5th order interpolation.
| virtual void gridripper::amr1d::Integrator::integrate | ( | int | ir | ) | [pure virtual] |
Integrates a partial differential equation.
| ir | refined step count (0...r-1) |
Implemented in gridripper::amr1d::gridint::ICN, gridripper::amr1d::gridint::RK2, and gridripper::amr1d::gridint::RK4.
| virtual void gridripper::amr1d::Integrator::richardson | ( | const AMError & | amerr, | |
| int | ir | |||
| ) | [pure virtual] |
Richardson error estimation.
| amerr | the error calculation method | |
| ir | refined step count (0...r-1) |
Implemented in gridripper::amr1d::gridint::ICN, gridripper::amr1d::gridint::RK2, and gridripper::amr1d::gridint::RK4.
| virtual void gridripper::amr1d::Integrator::getResult | ( | int | i, | |
| tvalarray< GReal_t > & | w | |||
| ) | const [pure virtual] |
Gets the result of the integration at the specified point.
| i | the grid point index | |
| w | the integration result will be copied here |
Implemented in gridripper::amr1d::gridint::ICN, gridripper::amr1d::gridint::RK2, and gridripper::amr1d::gridint::RK4.
| virtual int gridripper::amr1d::Integrator::getNumVelocity | ( | ) | const [pure virtual] |
Gets the numerical error propagation velocity.
Implemented in gridripper::amr1d::gridint::ICN, gridripper::amr1d::gridint::RK2, and gridripper::amr1d::gridint::RK4.
| virtual Integrator* gridripper::amr1d::Integrator::createIntegrator | ( | Grid & | g, | |
| const Sigma * | sigma | |||
| ) | const [pure virtual] |
Creates a new integrator instance for the specified grid.
| g | the grid | |
| sigma | dissipation term is multiplied by this factor |
Implemented in gridripper::amr1d::gridint::ICN, gridripper::amr1d::gridint::RK2, and gridripper::amr1d::gridint::RK4.
| GReal_t gridripper::amr1d::Integrator::getDeltaT | ( | ) | const [inline] |
Gets the time step.
| void gridripper::amr1d::Integrator::setDeltaT | ( | GReal_t | dt | ) | [inline] |
Sets the time step.
| dt | the time step |
| Grid* gridripper::amr1d::Integrator::getGrid | ( | ) | const [inline] |
Gets the grid.
1.5.6