| 
    SIMLIB/C++
    3.07
    
   | 
 
Abstract base class for integration methods with status auxiliary memories. More...
#include <simlib.h>


Classes | |
| class | StatusMemory | 
Public Member Functions | |
| StatusMethod (const char *name) | |
| initialization  More... | |
| virtual | ~StatusMethod () | 
| virtual void | TurnOff (void) override | 
| turn off integration method: flush memories etc...  More... | |
| virtual bool | PrepareStep (void) override | 
| prepare object for integration step  More... | |
| virtual void | StatusResize (size_t size) | 
| resize status memories to the given size  More... | |
  Public Member Functions inherited from simlib3::SingleStepMethod | |
| SingleStepMethod (const char *name) | |
| virtual bool | IsSingleStep (void) override | 
| void | SetStartMode (bool start_mode) | 
| bool | IsStartMode (void) | 
  Public Member Functions inherited from simlib3::IntegrationMethod | |
| IntegrationMethod (const char *name) | |
| register method to list of methods and name it  More... | |
| virtual | ~IntegrationMethod () | 
| destroy integration method (remove from list)  More... | |
| virtual void | Integrate (void)=0 | 
| virtual void | Resize (size_t size) | 
| resize all the memories to the given size  More... | |
Protected Types | |
| typedef StatusContainer::iterator | StatusIterator | 
  Protected Types inherited from simlib3::IntegrationMethod | |
| typedef IntegratorContainer::iterator | Iterator | 
Static Protected Member Functions | |
| static StatusIterator | FirstStatus (void) | 
| static StatusIterator | LastStatus (void) | 
| static void | StoreState (Memory &di, Memory &si, StatusMemory &xi) | 
| store state of integrators and status variables  More... | |
| static void | RestoreState (double dthlf, Memory &di, Memory &si, StatusMemory &xi) | 
| restore state of integrators and status variables  More... | |
| static void | GoToState (Memory &di, Memory &si, StatusMemory &xi) | 
| move startpoint to given state  More... | |
  Static Protected Member Functions inherited from simlib3::IntegrationMethod | |
| static Iterator | FirstIntegrator (void) | 
| static Iterator | LastIntegrator (void) | 
| static bool | StateCond (void) | 
| check on changes of state conditions  More... | |
| static IntegrationMethod * | SearchMethod (const char *name) | 
| search method in the list of registrated methods  More... | |
Private Member Functions | |
| StatusMethod (const StatusMethod &)=delete | |
Private Attributes | |
| size_t | PrevStatusNum | 
| std::list< Memory * > | StatusMList | 
Static Private Attributes | |
| static std::list< Memory * > * | PtrStatusMList | 
Friends | |
| class | EULER | 
| class | RKE | 
| class | StatusMemory | 
Additional Inherited Members | |
  Static Public Member Functions inherited from simlib3::IntegrationMethod | |
| static void | StepSim (void) | 
| step of numerical integration method  More... | |
| static void | IntegrationDone (void) | 
| static void | SetMethod (const char *name) | 
| set method which will be used  More... | |
| static const char * | GetMethod (void) | 
| static void | InitStep (double step_frag) | 
| initialize step  More... | |
| static void | FunCall (double step_frag) | 
| static void | SetOptStep (double opt_step) | 
| static void | SetStepSize (double step_size) | 
| static bool | IsConditionFlag (void) | 
| static int | GetErrNo (void) | 
| static void | SetErrNo (int num) | 
  Static Protected Attributes inherited from simlib3::IntegrationMethod | |
| static bool | IsEndStepEvent =false | 
Abstract base class for integration methods with status auxiliary memories.
      
  | 
  protected | 
      
  | 
  privatedelete | 
      
  | 
  explicit | 
initialization
Definition at line 517 of file numint.cc.
References Dprintf, PtrStatusMList, and StatusMList.
      
  | 
  inlinevirtual | 
      
  | 
  inlinestaticprotected | 
Definition at line 1194 of file simlib.h.
References simlib3::StatusContainer::Begin().
      
  | 
  staticprotected | 
move startpoint to given state
Definition at line 622 of file numint.cc.
References simlib3::abm4, simlib3::IntegratorContainer::Begin(), simlib3::StatusContainer::Begin(), simlib3::IntegrationMethod::CurrentMethodPtr, simlib3::IntegratorContainer::End(), simlib3::StatusContainer::End(), simlib3::euler, simlib3::fw, simlib3::IntegrationMethod::IsEndStepEvent, simlib3::IntegrationMethod::MthLstPtr, simlib3::IntegrationMethod::Memory::page_size, simlib3::IntegrationMethod::PtrMList, PtrStatusMList, simlib3::rke, simlib3::rkf3, simlib3::rkf5, and simlib3::rkf8.
Referenced by simlib3::EULER::Integrate(), and simlib3::RKE::Integrate().
      
  | 
  inlinestaticprotected | 
Definition at line 1197 of file simlib.h.
References simlib3::StatusContainer::End().
      
  | 
  overridevirtual | 
prepare object for integration step
Reimplemented from simlib3::IntegrationMethod.
Definition at line 539 of file numint.cc.
References Dprintf, simlib3::IntegrationMethod::PrepareStep(), PrevStatusNum, simlib3::StatusContainer::Size(), and StatusResize().
      
  | 
  staticprotected | 
restore state of integrators and status variables
Definition at line 594 of file numint.cc.
References _SetTime, simlib3::IntegratorContainer::Begin(), simlib3::StatusContainer::Begin(), simlib3::IntegratorContainer::End(), simlib3::StatusContainer::End(), simlib3::IntegrationMethod::IsEndStepEvent, simlib3::SIMLIB_StepStartTime, and simlib3::Time.
Referenced by simlib3::EULER::Integrate(), and simlib3::RKE::Integrate().
      
  | 
  virtual | 
resize status memories to the given size
Definition at line 557 of file numint.cc.
References Dprintf, and StatusMList.
Referenced by PrepareStep(), and TurnOff().
      
  | 
  staticprotected | 
store state of integrators and status variables
Definition at line 570 of file numint.cc.
References simlib3::IntegratorContainer::Begin(), simlib3::StatusContainer::Begin(), simlib3::IntegratorContainer::End(), and simlib3::StatusContainer::End().
Referenced by simlib3::EULER::Integrate(), and simlib3::RKE::Integrate().
      
  | 
  overridevirtual | 
turn off integration method: flush memories etc...
Reimplemented from simlib3::IntegrationMethod.
Definition at line 528 of file numint.cc.
References Dprintf, PrevStatusNum, StatusResize(), and simlib3::IntegrationMethod::TurnOff().
      
  | 
  friend | 
      
  | 
  private | 
Definition at line 1189 of file simlib.h.
Referenced by PrepareStep(), and TurnOff().
      
  | 
  staticprivate | 
Definition at line 1191 of file simlib.h.
Referenced by GoToState(), and StatusMethod().
      
  | 
  private | 
Definition at line 1190 of file simlib.h.
Referenced by StatusMethod(), and StatusResize().
 1.8.13