Lagrangian Particle Code for The Simulation of 2D/3D Fluid Dynamics
|
An abstract class for different types of simulation time controllers. More...
#include <time_controller.h>
Public Member Functions | |
virtual int | solve ()=0 |
Calls main solvers of the simulation and determines the time stepping between iterations. More... | |
Protected Member Functions | |
bool | adjustDtByWriteTimeInterval () |
Adjusts the iteration time step when current time approaches the time for results writting. More... | |
Protected Attributes | |
LPSolver * | m_pSolver |
A pointer to the Lagrangian Particle solver. | |
std::vector< ParticleViewer * > | m_vViewers |
A vector containing pointers to different types of particle viewers. | |
double | m_fTime |
Current physical time of simulation. | |
double | m_fEndTime |
End physical time of simulation. | |
double | m_fWriteTimeInterval |
The physical time interval between two writting of results. | |
double | m_fNextWriteTime |
The next physical time point to write results. | |
double | m_fDt |
The physical time interval between two iterations of the simulation. | |
std::size_t | m_iWriteStep |
The number of times results are written to the particle veiwer. | |
bool | m_iIfDebug |
if true then print debug info | |
std::ofstream | debug |
output information for debugging | |
An abstract class for different types of simulation time controllers.
Co-author: Yu, Kwangmin (yukwa) on initial interface design ngmi n@gma il.c om
Created on: 2014/07/02
|
protected |
Adjusts the iteration time step when current time approaches the time for results writting.
m_fDt will be adjusted(shrinked) when m_fTime + m_fDt > m_fNextWriteTime, to match the exact time of results writting
None |
true
if m_fDt is adjusted; false
otherwise
|
pure virtual |
Calls main solvers of the simulation and determines the time stepping between iterations.
The simulation is performed by calling the main LP solver for each iteration and the time length between iterations is determined by the type of time controller adopted
None |
Implemented in DefaultTimeController.