|
| | RK45Transport (ot::Mesh *pMesh, double pTBegin, double pTEnd, double pTh) |
| | Default constructor. More...
|
| |
| | ~RK45Transport () |
| |
| void | setParameters (double *b, std::function< double(double, double, double)>g, std::function< double(double, double, double, double)> f, const char *fprefix, double wltTol) |
| | : set parameters for transport equation More...
|
| |
| void | setLDImbParameters (double ldTol=0.1, unsigned int sfK=2) |
| | Used to set the load balancing parameters for the solver. More...
|
| |
| void | applyInitialConditions () |
| |
|
void | performSingleIteration () |
| | : Implementation of the base class time step function
|
| |
|
void | applyBoundaryConditions () |
| | : Implementation of the base class function to apply boundary conditions.
|
| |
|
template<typename T > |
| void | applyBoundaryConditions (const double time, T *vec) |
| | : apply boundary conditions for the each stage of rk45
|
| |
|
void | rkSolve () |
| | : starts the rk-45 solver.
|
| |
| int | storeCheckPoint (const char *fNamePrefix) |
| | : stores the all the variables that is required to restore the rk45 solver at a given stage. More...
|
| |
| int | restoreRK45Solver (const char *fNamePrefix, const unsigned int step, const MPI_Comm comm) |
| | : restore rk45 solver from a given checkpoint. This will overwrite the parameters given in the original constructor More...
|
| |
| | RK (ot::Mesh *pMesh, double pTBegin, double pTEnd, double pTh) |
| |
|
void | freeMesh () |
| | free memeory of the mesh
|
| |
|
| ot::Mesh * | m_uiMesh |
| |
| unsigned int | m_uiOrder |
| |
| unsigned int | m_uiNrp |
| |
| MPI_Comm | m_uiComm |
| |
| double | m_uiTimeBegin |
| |
| double | m_uiTimeEnd |
| |
| double | m_uiT_h |
| |
| double | m_uiCurrentTime |
| |
| double | m_uiT_h_prev |
| |
| double | m_uiTimeStepCurrent |
| |
| unsigned int | m_uiCurrentStep |
| |
| const double | RK45_STAGE_1_COEF =16.0/135.0 |
| |
|
const double | RK45_STAGE_1_T =1.0 |
| |
|
const double | RK45_STAGE_1_U =1.0 |
| |
| const double | RK45_STAGE_2_COEF =0.0 |
| |
|
const double | RK45_STAGE_2_T =(1.0/4.0) |
| |
|
const double | RK45_STAGE_2_U =(1.0/4.0) |
| |
| const double | RK45_STAGE_3_COEF =6656.0/12825.0 |
| |
|
const double | RK45_STAGE_3_T =(3.0/8.0) |
| |
|
const double | RK45_STAGE_3_U1 =(3.0/32.0) |
| |
|
const double | RK45_STAGE_3_U2 =(9.0/32.0) |
| |
| const double | RK45_STAGE_4_COEF =28561.0/56430 |
| |
|
const double | RK45_STAGE_4_T =(12.0/13.0) |
| |
|
const double | RK45_STAGE_4_U1 =(1932.0/2197.0) |
| |
|
const double | RK45_STAGE_4_U2 =(-7200.0/2197.0) |
| |
|
const double | RK45_STAGE_4_U3 =(7296.0/2197.0) |
| |
| const double | RK45_STAGE_5_COEF =-9.0/50.0 |
| |
|
const double | RK45_STAGE_5_T =1.0 |
| |
|
const double | RK45_STAGE_5_U1 =(439.0/216.0) |
| |
|
const double | RK45_STAGE_5_U2 =(-8.0) |
| |
|
const double | RK45_STAGE_5_U3 =(3680.0/513.0) |
| |
|
const double | RK45_STAGE_5_U4 =(-845.0/4104.0) |
| |
| const double | RK45_STAGE_6_COEF =2.0/55.0 |
| |
|
const double | RK45_STAGE_6_T =0.5 |
| |
|
const double | RK45_STAGE_6_U1 =(-8.0/27.0) |
| |
|
const double | RK45_STAGE_6_U2 =(2.0) |
| |
|
const double | RK45_STAGE_6_U3 =(-3544.0/2565.0) |
| |
|
const double | RK45_STAGE_6_U4 =(1859.0/4104.0) |
| |
|
const double | RK45_STAGE_6_U5 =(-11.0/40.0) |
| |
| std::vector< unsigned int > | m_uiRefinedOctIDs |
| |
| std::vector< unsigned int > | m_uiCoarsenOctIDs |
| |
◆ RK45Transport()
| ode::solver::RK45Transport::RK45Transport |
( |
ot::Mesh * |
pMesh, |
|
|
double |
pTBegin, |
|
|
double |
pTEnd, |
|
|
double |
pTh |
|
) |
| |
Default constructor.
- Parameters
-
| [in] | pMesh | mesh that we will use to solve transport equation. |
| [in] | pTBegin | begin time of time step. |
| [in] | pTEnd | end time of time step. |
◆ ~RK45Transport()
| ode::solver::RK45Transport::~RK45Transport |
( |
| ) |
|
: Destructor to release the memory for the allocated variables
◆ applyInitialConditions()
| void ode::solver::RK45Transport::applyInitialConditions |
( |
| ) |
|
|
virtual |
◆ restoreRK45Solver()
| int ode::solver::RK45Transport::restoreRK45Solver |
( |
const char * |
fNamePrefix, |
|
|
const unsigned int |
step, |
|
|
const MPI_Comm |
comm |
|
) |
| |
: restore rk45 solver from a given checkpoint. This will overwrite the parameters given in the original constructor
- Parameters
-
◆ setLDImbParameters()
| void ode::solver::RK45Transport::setLDImbParameters |
( |
double |
ldTol = 0.1, |
|
|
unsigned int |
sfK = 2 |
|
) |
| |
Used to set the load balancing parameters for the solver.
- Parameters
-
| [in] | ldTol | load imbalance toelrance |
| [in] | sfK | splitter fix value |
◆ setParameters()
| void ode::solver::RK45Transport::setParameters |
( |
double * |
b, |
|
|
std::function< double(double, double, double)> |
g, |
|
|
std::function< double(double, double, double, double)> |
f, |
|
|
const char * |
fprefix, |
|
|
double |
wltTol |
|
) |
| |
: set parameters for transport equation
- Parameters
-
| [in] | constant | vector b as given in transport equation. This should be an array size of 3. |
| [in] | g | initial value when t=pTBegin. |
◆ storeCheckPoint()
| int ode::solver::RK45Transport::storeCheckPoint |
( |
const char * |
fNamePrefix | ) |
|
: stores the all the variables that is required to restore the rk45 solver at a given stage.
- Parameters
-
| [in] | fNamePrefix | checkpoint file pre-fix name. |
The documentation for this class was generated from the following files: