Physics Class Reference

Kynema-SGF API: kynema_sgf::Physics Class Reference
Kynema-SGF API v0.1.0
CFD solver for wind plant simulations
Loading...
Searching...
No Matches

#include <Physics.H>

Inheritance diagram for kynema_sgf::Physics:
[legend]
Collaboration diagram for kynema_sgf::Physics:
[legend]

Public Member Functions

 ~Physics () override=default
virtual void initialize_fields (int level, const amrex::Geometry &geom)=0
 Initialize the fields for a given level during init/regrid.
virtual void pre_init_actions ()
 Actions to perform after PDEs and turbulence models have been created, but before mesh creation.
virtual void post_init_actions ()=0
 Actions to perform post initialization.
virtual void post_regrid_actions ()=0
 Actions to perform post regrid.
virtual void pre_advance_work ()=0
 Perform tasks necessary before advancing timestep.
virtual void pre_predictor_work ()
 Perform tasks necessary only once per timestep, after pre_advance.
virtual void post_advance_work ()=0
 Perform tasks necessary after advancing timestep.
virtual void pre_pressure_correction_work ()
 Perform tasks necessary before applying the pressure correction.
virtual void post_pressure_correction_work ()
 Perform tasks necessary after applying the pressure correction.
Public Member Functions inherited from kynema_sgf::Factory< Physics, CFDSim & >
virtual ~Factory ()=default

Static Public Member Functions

static std::string base_identifier ()
Static Public Member Functions inherited from kynema_sgf::Factory< Physics, CFDSim & >
static std::unique_ptr< Physicscreate (const std::string &key, Args... args)
static void print (std::ostream &os)

Additional Inherited Members

Public Attributes inherited from kynema_sgf::Factory< Physics, CFDSim & >
friend Base

Detailed Description

Abstract representation of different physics

This class defines an abstract API that represents the notion of some physics that will be used during the simulation. The most common use-case for this class is to create initial conditions. However, it can also be used to perform actions at different stages within a timestep during a CFD simulation.

Constructor & Destructor Documentation

◆ ~Physics()

kynema_sgf::Physics::~Physics ( )
overridedefault

Member Function Documentation

◆ base_identifier()

std::string kynema_sgf::Physics::base_identifier ( )
inlinestatic

◆ initialize_fields()

virtual void kynema_sgf::Physics::initialize_fields ( int level,
const amrex::Geometry & geom )
pure virtual

Initialize the fields for a given level during init/regrid.

◆ post_advance_work()

virtual void kynema_sgf::Physics::post_advance_work ( )
pure virtual

Perform tasks necessary after advancing timestep.

◆ post_init_actions()

virtual void kynema_sgf::Physics::post_init_actions ( )
pure virtual

Actions to perform post initialization.

◆ post_pressure_correction_work()

virtual void kynema_sgf::Physics::post_pressure_correction_work ( )
inlinevirtual

Perform tasks necessary after applying the pressure correction.

◆ post_regrid_actions()

virtual void kynema_sgf::Physics::post_regrid_actions ( )
pure virtual

Actions to perform post regrid.

◆ pre_advance_work()

virtual void kynema_sgf::Physics::pre_advance_work ( )
pure virtual

Perform tasks necessary before advancing timestep.

◆ pre_init_actions()

virtual void kynema_sgf::Physics::pre_init_actions ( )
inlinevirtual

Actions to perform after PDEs and turbulence models have been created, but before mesh creation.

◆ pre_predictor_work()

virtual void kynema_sgf::Physics::pre_predictor_work ( )
inlinevirtual

Perform tasks necessary only once per timestep, after pre_advance.

◆ pre_pressure_correction_work()

virtual void kynema_sgf::Physics::pre_pressure_correction_work ( )
inlinevirtual

Perform tasks necessary before applying the pressure correction.


The documentation for this class was generated from the following file:
  • /home/runner/work/kynema-sgf/kynema-sgf/src/core/Physics.H