chombo-discharge
Loading...
Searching...
No Matches
Public Member Functions | List of all members
Physics::Geometry::GeometryStepper Class Reference

Minimal TimeStepper that performs no physics, intended for geometry development and visualisation. More...

#include <CD_GeometryStepper.H>

Inheritance diagram for Physics::Geometry::GeometryStepper:
Inheritance graph
[legend]
Collaboration diagram for Physics::Geometry::GeometryStepper:
Collaboration graph
[legend]

Public Member Functions

 GeometryStepper ()
 Constructor.
 
virtual ~GeometryStepper ()
 Destructor.
 
virtual void setupSolvers () override
 Set up solvers (no-op).
 
virtual void allocate () override
 Allocate solver internals (no-op).
 
virtual void initialData () override
 Fill solver initial data (no-op).
 
virtual void postInitialize () override
 Post-initialization hook (no-op).
 
virtual void postCheckpointSetup () override
 Post-restart hook (no-op).
 
virtual void registerRealms () override
 Register realms (no-op).
 
virtual void registerOperators () override
 Register operators (no-op).
 
virtual int getNumberOfPlotVariables () const override
 Get the number of plot variables.
 
virtual Vector< std::stringgetPlotVariableNames () const override
 Get plot variable names.
 
virtual void writePlotData (LevelData< EBCellFAB > &a_output, int &a_icomp, const std::string &a_outputRealm, const int a_level) const override
 Write plot data to output holder (no-op).
 
virtual Real computeDt () override
 Compute a time step.
 
virtual Real advance (const Real a_dt) override
 Advance by one time step (no-op).
 
virtual void synchronizeSolverTimes (const int a_step, const Real a_time, const Real a_dt) override
 Synchronize solver times and time steps (no-op).
 
virtual void printStepReport () override
 Print a step report (no-op).
 
virtual void preRegrid (const int a_lmin, const int a_oldFinestLevel) override
 Perform pre-regrid operations (no-op).
 
virtual void regrid (const int a_lmin, const int a_oldFinestLevel, const int a_newFinestLevel) override
 Regrid method (no-op).
 
virtual void postRegrid () override
 Post-regrid operations (no-op).
 
- Public Member Functions inherited from TimeStepper
 TimeStepper ()
 Default constructor (does nothing)
 
virtual ~TimeStepper ()
 Default destructor (does nothing)
 
 TimeStepper (const TimeStepper &)=delete
 Disallow copy construction.
 
TimeStepperoperator= (const TimeStepper &)=delete
 Disallow copy assignment.
 
 TimeStepper (TimeStepper &&)=default
 Allow move construction.
 
TimeStepperoperator= (TimeStepper &&)=default
 Allow move assignment.
 
void setAmr (const RefCountedPtr< AmrMesh > &a_amr)
 Set AmrMesh.
 
void setComputationalGeometry (const RefCountedPtr< ComputationalGeometry > &a_computationalGeometry)
 Set the computational geometry.
 
virtual void parseRuntimeOptions ()
 Parse runtime options.
 
virtual void prePlot ()
 An option for calling special functions prior to plotting data. Called by Driver in the IMMEDIATELY before writing the plot file.
 
virtual void postPlot ()
 An option for calling special functions prior to plotting data. Called by Driver in the IMMEDIATELY after writing the plot file.
 
virtual Vector< long intgetCheckpointLoads (const std::string &a_realm, int a_level) const
 Get computational loads to be checkpointed.
 
virtual bool needToRegrid ()
 Function which can have Driver do regrids at arbitrary points in the simulation.
 
bool keepGoing () const
 Query whether the time stepper wants to continue stepping.
 
virtual bool loadBalanceThisRealm (const std::string &a_realm) const
 Load balancing query for a specified realm. If this returns true for a_realm, load balancing routines will be called during regrids.
 
virtual void loadBalanceBoxes (Vector< Vector< int > > &a_procs, Vector< Vector< Box > > &a_boxes, const std::string &a_realm, const Vector< DisjointBoxLayout > &a_grids, int a_lmin, int a_finestLevel)
 Load balance grid boxes for a specified realm.
 

Additional Inherited Members

- Protected Attributes inherited from TimeStepper
int m_verbosity
 Class verbosity.
 
int m_timeStep
 Time step.
 
Real m_time
 TIme.
 
Real m_dt
 Previous time step size.
 
bool m_keepGoing
 If false, Driver will stop the time loop after the current step.
 
RefCountedPtr< AmrMeshm_amr
 AmrMesh.
 
RefCountedPtr< ComputationalGeometrym_computationalGeometry
 Computational geometry.
 

Detailed Description

Minimal TimeStepper that performs no physics, intended for geometry development and visualisation.

All lifecycle methods are no-ops. The intended use is to set Driver.geometry_only=true in the input script, which causes Driver to write a single plot file of the computational geometry and then exit. This makes it easy to inspect and tune complex EB geometries without building a full physics application.

Member Function Documentation

◆ advance()

Real GeometryStepper::advance ( const Real  a_dt)
overridevirtual

Advance by one time step (no-op).

Parameters
[in]a_dtTime step size.
Returns
Returns std::numeric_limits<Real>::max() to drive Driver to terminate after one step.

Implements TimeStepper.

◆ allocate()

void GeometryStepper::allocate ( )
overridevirtual

Allocate solver internals (no-op).

Implements TimeStepper.

◆ computeDt()

Real GeometryStepper::computeDt ( )
overridevirtual

Compute a time step.

Returns
Always returns 0.

Implements TimeStepper.

◆ getNumberOfPlotVariables()

int GeometryStepper::getNumberOfPlotVariables ( ) const
overridevirtual

Get the number of plot variables.

Returns
Always returns 0.

Implements TimeStepper.

◆ getPlotVariableNames()

Vector< std::string > GeometryStepper::getPlotVariableNames ( ) const
overridevirtual

Get plot variable names.

Returns
Always returns an empty vector.

Implements TimeStepper.

◆ initialData()

void GeometryStepper::initialData ( )
overridevirtual

Fill solver initial data (no-op).

Implements TimeStepper.

◆ postCheckpointSetup()

void GeometryStepper::postCheckpointSetup ( )
overridevirtual

Post-restart hook (no-op).

Implements TimeStepper.

◆ postInitialize()

void GeometryStepper::postInitialize ( )
overridevirtual

Post-initialization hook (no-op).

Implements TimeStepper.

◆ postRegrid()

void GeometryStepper::postRegrid ( )
overridevirtual

Post-regrid operations (no-op).

Implements TimeStepper.

◆ preRegrid()

void GeometryStepper::preRegrid ( const int  a_lmin,
const int  a_oldFinestLevel 
)
overridevirtual

Perform pre-regrid operations (no-op).

Parameters
[in]a_lminThe coarsest level that changes.
[in]a_oldFinestLevelThe finest level before the regrid.

Implements TimeStepper.

◆ printStepReport()

void GeometryStepper::printStepReport ( )
overridevirtual

Print a step report (no-op).

Implements TimeStepper.

◆ registerOperators()

void GeometryStepper::registerOperators ( )
overridevirtual

Register operators (no-op).

Implements TimeStepper.

◆ registerRealms()

void GeometryStepper::registerRealms ( )
overridevirtual

Register realms (no-op).

Implements TimeStepper.

◆ regrid()

void GeometryStepper::regrid ( const int  a_lmin,
const int  a_oldFinestLevel,
const int  a_newFinestLevel 
)
overridevirtual

Regrid method (no-op).

Parameters
[in]a_lminThe coarsest level that changed.
[in]a_oldFinestLevelThe finest level before the regrid.
[in]a_newFinestLevelThe finest level after the regrid.

Implements TimeStepper.

◆ setupSolvers()

void GeometryStepper::setupSolvers ( )
overridevirtual

Set up solvers (no-op).

Implements TimeStepper.

◆ synchronizeSolverTimes()

void GeometryStepper::synchronizeSolverTimes ( const int  a_step,
const Real  a_time,
const Real  a_dt 
)
overridevirtual

Synchronize solver times and time steps (no-op).

Parameters
[in]a_stepCurrent time step number.
[in]a_timeCurrent simulation time in seconds.
[in]a_dtTime step that was used.

Implements TimeStepper.

◆ writePlotData()

void GeometryStepper::writePlotData ( LevelData< EBCellFAB > &  a_output,
int a_icomp,
const std::string a_outputRealm,
const int  a_level 
) const
overridevirtual

Write plot data to output holder (no-op).

Parameters
[in,out]a_outputOutput data holder.
[in,out]a_icompStarting component in a_output.
[in]a_outputRealmOutput realm name.
[in]a_levelGrid level.

Implements TimeStepper.


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