ryujin 2.5.0 revision c64172211cf21344cb9b9b0f3a1266aa6400d392
Loading...
Searching...
No Matches
Classes | List of all members
ryujin::Quantities< dim, Number > Class Template Referencefinal

#include <include/ryujin/output/quantities.h>

Inheritance diagram for ryujin::Quantities< dim, Number >:
Inheritance graph
[legend]
Collaboration diagram for ryujin::Quantities< dim, Number >:
Collaboration graph
[legend]

Public Member Functions

Constructor and setup
 Quantities (const Interface::Simulation< dim, Number > &simulation, const std::string &subsection="/Quantities")
 
Task
void prepare (TaskContext< Number > &context) override
 
void execute (TaskContext< Number > &context) override
 
- Public Member Functions inherited from ryujin::Interface::Task< Number >
virtual ~Task ()=default
 
virtual void initialize (TaskContext< Number > &)
 
virtual void start (TaskContext< Number > &)
 
virtual void finalize (TaskContext< Number > &)
 
virtual void save (boost::archive::binary_oarchive &) const
 
virtual void load (boost::archive::binary_iarchive &)
 

Additional Inherited Members

- Protected Member Functions inherited from ryujin::Interface::Task< Number >
 Task (const std::string &name, TaskPhase phase)
 

Detailed Description

template<int dim, typename Number = double>
class ryujin::Quantities< dim, Number >

A postprocessor class for quantities of interest.

The class accumulates statistics of a user selected list of (conserved, primitive, precomputed, initial, or parabolic) quantities on level set defined interior and boundary manifolds. For every degree of freedom of a manifold the raw moments (up to a selectable order) of all selected quantities are stored and averaged in time (with a trapezoidal rule), and averaged in space (weighted by the lumped, or boundary mass). Raw moments are linear in the samples and can thus be accumulated exactly. They are converted to the mean and the central moments (variance, third and fourth central moment) on output.

All statistics are accumulated on the selected memory space (i.e., on the device if the state vector resides there) and are only transferred to the host for writing out.

Note
The conversion from raw to central moments is subject to cancellation if the fluctuations of a quantity are small compared to its mean.

The class is the task "quantities" that accumulates statistics in every cycle and writes them out whenever its trigger fires.

Definition at line 52 of file quantities.h.

Constructor & Destructor Documentation

◆ Quantities()

template<int dim, typename Number = double>
ryujin::Quantities< dim, Number >::Quantities ( const Interface::Simulation< dim, Number > &  simulation,
const std::string &  subsection = "/Quantities< dim, Number >" 
)

Constructor.

Member Function Documentation

◆ prepare()

template<int dim, typename Number = double>
void ryujin::Quantities< dim, Number >::prepare ( TaskContext< Number > &  context)
overridevirtual

Prepare evaluation for the current mesh: allocate temporary storage for various boundary and interior maps. The storage requirement varies according to the supplied manifold descriptions.

Reimplemented from ryujin::Interface::Task< Number >.

◆ execute()

template<int dim, typename Number = double>
void ryujin::Quantities< dim, Number >::execute ( TaskContext< Number > &  context)
overridevirtual

Accumulate statistics, and write them out whenever the trigger fires.

Implements ryujin::Interface::Task< Number >.


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