Go to the documentation of this file.
21 #ifndef __integration_hpp__
22 #define __integration_hpp__
164 #endif //__integration_hpp__
repository & owner_
The owner repository that all fields are storred in.
const word baseName_
The base name for integration.
integration & operator=(const integration &)=default
Copy assignment.
Base class for integrating the first order ODE (IVP)
const auto & pStruct() const
Const ref to pointStructure.
virtual bool predict(real dt, realx3Vector_D &y, realx3Vector_D &dy)=0
Prediction step in integration.
virtual bool setInitialVals(const int32IndexContainer &newIndices, const realx3Vector &y)=0
Set the initial values for new indices.
virtual bool correct(real dt, realx3Vector_D &y, realx3Vector_D &dy)=0
Correction/main integration step.
const word & baseName() const
Base name.
virtual uniquePtr< integration > clone() const =0
Polymorphic copy/cloning.
TypeInfo("integration")
Type info.
create_vCtor(integration, word,(const word &baseName, repository &owner, const pointStructure &pStruct, const word &method),(baseName, owner, pStruct, method))
Add a virtual constructor.
static uniquePtr< integration > create(const word &baseName, repository &owner, const pointStructure &pStruct, const word &method)
Create the polymorphic object based on inputs.
repository & owner()
Ref to the owner repository.
virtual ~integration()=default
Destructor.
integration(const word &baseName, repository &owner, const pointStructure &pStruct, const word &method)
Construct from components.
const pointStructure & pStruct_
A reference to pointStructure.
virtual bool needSetInitialVals() const =0
Check if the method requires any set initial vals.