SIMLIB/C++
3.07
|
base for multi-step integration method More...
#include <simlib.h>
Public Member Functions | |
MultiStepMethod (const char *name, const char *slave_name) | |
initialize multistep method More... | |
~MultiStepMethod () | |
free dynamic data More... | |
virtual bool | IsSingleStep (void) override |
virtual void | SetStarter (const char *slave_name) |
set starting method for the multi-step method More... | |
virtual bool | PrepareStep (void) override |
prepare the object for the step of integration More... | |
virtual void | TurnOff (void) override |
turn off integration method and its slave (starter) More... | |
![]() | |
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... | |
Static Public Member Functions | |
static void | SetStarter (const char *name, const char *slave_name) |
set starting method for given multi-step method More... | |
static const char * | GetStarter (const char *name) |
obtain the name of the starting method of given method More... | |
![]() | |
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) |
Protected Member Functions | |
SingleStepMethod * | SlavePtr (void) |
return pointer to the starting method (initialize it also) More... | |
Private Attributes | |
char * | SlaveName |
SingleStepMethod * | Slave_Ptr |
Additional Inherited Members | |
![]() | |
typedef IntegratorContainer::iterator | Iterator |
![]() | |
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... | |
![]() | |
static bool | IsEndStepEvent =false |
simlib3::MultiStepMethod::MultiStepMethod | ( | const char * | name, |
const char * | slave_name | ||
) |
simlib3::MultiStepMethod::~MultiStepMethod | ( | ) |
|
static |
obtain the name of the starting method of given method
Definition at line 503 of file numint.cc.
References Dprintf, simlib3::IntegrationMethod::SearchMethod(), and SlaveName.
Referenced by simlib3::GetStarter().
|
inlineoverridevirtual |
Implements simlib3::IntegrationMethod.
Definition at line 1172 of file simlib.h.
References simlib3::GetStarter(), and simlib3::SetStarter().
|
overridevirtual |
prepare the object for the step of integration
Reimplemented from simlib3::IntegrationMethod.
Reimplemented in simlib3::ABM4.
Definition at line 449 of file numint.cc.
References Dprintf, simlib3::IntegrationMethod::PrepareStep(), simlib3::SingleStepMethod::SetStartMode(), and SlavePtr().
Referenced by simlib3::ABM4::PrepareStep().
|
static |
set starting method for given multi-step method
Definition at line 474 of file numint.cc.
References Dprintf, simlib3::NI_NotMultiStep, simlib3::IntegrationMethod::SearchMethod(), SetStarter(), and simlib3::SIMLIB_error().
Referenced by SetStarter(), and simlib3::SetStarter().
|
virtual |
set starting method for the multi-step method
Definition at line 487 of file numint.cc.
References Dprintf, simlib3::NI_CantSetStarter, simlib3::SIMLIB_DynamicFlag, simlib3::SIMLIB_error(), Slave_Ptr, and SlaveName.
|
protected |
return pointer to the starting method (initialize it also)
Definition at line 435 of file numint.cc.
References simlib3::NI_NotSingleStep, simlib3::IntegrationMethod::SearchMethod(), simlib3::SIMLIB_error(), Slave_Ptr, and SlaveName.
Referenced by simlib3::ABM4::Integrate(), PrepareStep(), and TurnOff().
|
overridevirtual |
turn off integration method and its slave (starter)
Reimplemented from simlib3::IntegrationMethod.
Definition at line 463 of file numint.cc.
References Dprintf, simlib3::SingleStepMethod::SetStartMode(), SlavePtr(), and simlib3::IntegrationMethod::TurnOff().
|
private |
Definition at line 1165 of file simlib.h.
Referenced by SetStarter(), and SlavePtr().
|
private |
Definition at line 1164 of file simlib.h.
Referenced by GetStarter(), MultiStepMethod(), SetStarter(), SlavePtr(), and ~MultiStepMethod().