SPH
Public Member Functions | Protected Member Functions | List of all members
RungeKutta Class Reference

#include <TimeStepping.h>

Inheritance diagram for RungeKutta:
ITimeStepping Polymorphic

Public Member Functions

 RungeKutta (const SharedPtr< Storage > &storage, const RunSettings &settings)
 
 ~RungeKutta () override
 
- Public Member Functions inherited from ITimeStepping
 ITimeStepping (const SharedPtr< Storage > &storage, const RunSettings &settings)
 Constructs the timestepping, using timestep criteria from parameters in settings. More...
 
 ITimeStepping (const SharedPtr< Storage > &storage, const RunSettings &settings, AutoPtr< ITimeStepCriterion > &&criterion)
 Constructs the timestepping, explicitly specifying the timestep criterion used in the run. More...
 
 ~ITimeStepping () override
 
INLINE Float getTimeStep () const
 
void step (IScheduler &scheduler, ISolver &solver, Statistics &stats)
 
- Public Member Functions inherited from Polymorphic
virtual ~Polymorphic ()
 

Protected Member Functions

virtual void stepImpl (IScheduler &scheduler, ISolver &solver, Statistics &stats) override
 
void integrateAndAdvance (ISolver &solver, Statistics &stats, Storage &k, const Float m, const Float n)
 

Additional Inherited Members

- Protected Attributes inherited from ITimeStepping
SharedPtr< Storagestorage
 Main storage holding all the particles in the run. More...
 
Float timeStep
 Current time step. More...
 
Float maxTimeStep
 Maximal allowed time step. More...
 
AutoPtr< ITimeStepCriterioncriterion
 Criterion used to compute the time step. More...
 

Detailed Description

Definition at line 129 of file TimeStepping.h.

Constructor & Destructor Documentation

◆ RungeKutta()

RungeKutta::RungeKutta ( const SharedPtr< Storage > &  storage,
const RunSettings settings 
)

Definition at line 362 of file TimeStepping.cpp.

◆ ~RungeKutta()

RungeKutta::~RungeKutta ( )
overridedefault

Member Function Documentation

◆ integrateAndAdvance()

void RungeKutta::integrateAndAdvance ( ISolver solver,
Statistics stats,
Storage k,
const Float  m,
const Float  n 
)
protected

Definition at line 381 of file TimeStepping.cpp.

◆ stepImpl()

void RungeKutta::stepImpl ( IScheduler scheduler,
ISolver solver,
Statistics stats 
)
overrideprotectedvirtual
Todo:
derivatives of storage (original, not k1, ..., k4) are never used
Todo:
at this point, I no longer need k1, we just need 2 auxiliary buffers

Implements ITimeStepping.

Definition at line 409 of file TimeStepping.cpp.


The documentation for this class was generated from the following files: