DamBreak++ Wave Simulator 0.3
DamBreak++ Simulation Framework
Loading...
Searching...
No Matches
Testvs19::ProtoPhysicalAlgorithm Class Reference

Concept of physical algoritm using components (set numerical method). This allow to program complex algorithms quickly by components. In project require to prototype according to physics assumptions. Each of these components are programmed or support a wide (large) implementation of discretization. For example, Nujic 1995 propose to use ENO techniques to compute flux and some source special treatment to take account ... Model of an explicit conservative scheme with source terms (energy and bed slope). Switch components to re-configure the algorithm (Nujic flux) but E. McNeil use HLL. This kind of flexibility must be supported particularly in industrial projects since ... to be completed. More...

#include <Testvs19_ProtoPhysicalAlgorithm.h>

Inheritance diagram for Testvs19::ProtoPhysicalAlgorithm:
Sfx::PhysicalAlgorithm

Public Member Functions

 ProtoPhysicalAlgorithm (std::string aName, dbpp::FluxAlgorithm *aFluxAlgo)
 Ctor from name and flux algorithm.
void calculate (dbpp::PhysicalSystem *aPhysys, const std::shared_ptr< dbpp::FiniteVolumeDiscretization > &aGlbdiscr, Sfx::Simulation *aSim) override final
 Numerical.
std::string getName () const noexcept
 Getter.
Public Member Functions inherited from Sfx::PhysicalAlgorithm
virtual ~PhysicalAlgorithm ()=default
 dtor
virtual bool isTimeDependent () const noexcept
 time dependent algorihm

Private Attributes

std::string m_name
dbpp::FluxAlgorithmm_fluxAlgo

Detailed Description

Concept of physical algoritm using components (set numerical method). This allow to program complex algorithms quickly by components. In project require to prototype according to physics assumptions. Each of these components are programmed or support a wide (large) implementation of discretization. For example, Nujic 1995 propose to use ENO techniques to compute flux and some source special treatment to take account ... Model of an explicit conservative scheme with source terms (energy and bed slope). Switch components to re-configure the algorithm (Nujic flux) but E. McNeil use HLL. This kind of flexibility must be supported particularly in industrial projects since ... to be completed.

Want to show the flexibilty how to write physical algorithm based on DamBreak++ framework

Constructor & Destructor Documentation

◆ ProtoPhysicalAlgorithm()

Testvs19::ProtoPhysicalAlgorithm::ProtoPhysicalAlgorithm ( std::string aName,
dbpp::FluxAlgorithm * aFluxAlgo )
inline

Ctor from name and flux algorithm.

Parameters
aNamealgorithm name
aFluxAlgoflux algorithm

Member Function Documentation

◆ calculate()

void Testvs19::ProtoPhysicalAlgorithm::calculate ( dbpp::PhysicalSystem * aPhysys,
const std::shared_ptr< dbpp::FiniteVolumeDiscretization > & aGlbdiscr,
Sfx::Simulation * aSim )
inlinefinaloverridevirtual

Numerical.

Parameters
aPhysys
aGlbdiscr
aSim

Implements Sfx::PhysicalAlgorithm.

◆ getName()

std::string Testvs19::ProtoPhysicalAlgorithm::getName ( ) const
inlinenoexcept

Getter.

Returns
algorithm name

Member Data Documentation

◆ m_fluxAlgo

dbpp::FluxAlgorithm* Testvs19::ProtoPhysicalAlgorithm::m_fluxAlgo
private

numericla flux algorithm

◆ m_name

std::string Testvs19::ProtoPhysicalAlgorithm::m_name
private

algorithm name


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