Alsvinn  0.5.3
The fast FVM simulator with UQ support
Public Member Functions | List of all members
alsfvm::functional::StructureCube Class Reference

#include <alsfvm/functional/StructureCube.hpp>

Inheritance diagram for alsfvm::functional::StructureCube:
alsfvm::functional::Functional

Public Member Functions

 StructureCube (const Functional::Parameters &parameters)
 
virtual void operator() (volume::Volume &conservedVolumeOut, const volume::Volume &conservedVolumeIn, const real weight, const grid::Grid &grid) override
 
virtual ivec3 getFunctionalSize (const grid::Grid &grid) const override
 
- Public Member Functions inherited from alsfvm::functional::Functional
virtual ~Functional ()
 
virtual ivec3 getGhostCellSizes (const grid::Grid &grid, const volume::Volume &volume) const
 
virtual std::string getPlatformToAllocateOn (const std::string &platform) const
 

Additional Inherited Members

- Public Types inherited from alsfvm::functional::Functional
typedef alsutils::parameters::Parameters Parameters
 To be used to pass parameters to the constructors. More...
 

Detailed Description

This is basically the functional version of stats/StructureCube.

Todo:
Refactor this to avoid code duplication.

Constructor & Destructor Documentation

◆ StructureCube()

alsfvm::functional::StructureCube::StructureCube ( const Functional::Parameters parameters)

Member Function Documentation

◆ getFunctionalSize()

ivec3 alsfvm::functional::StructureCube::getFunctionalSize ( const grid::Grid grid) const
overridevirtual

Returns the number of elements needed to represent the functional

Returns {numberOfH, 1,1}

Implements alsfvm::functional::Functional.

◆ operator()()

void alsfvm::functional::StructureCube::operator() ( volume::Volume conservedVolumeOut,
const volume::Volume conservedVolumeIn,
const real  weight,
const grid::Grid grid 
)
overridevirtual

Computes the operator value on the givne input data

Note
In order to support time integration, the result should be added to conservedVolumeOut and extraVolumeOut, not overriding it.
Parameters
[out]conservedVolumeOutat the end, should have the contribution of the functional for the conservedVariables
[in]conservedVolumeInthe state of the conserved variables
[in]weightthe current weight to be applied to the functional. Ie, the functional should compute
conservedVolumeOut += weight + f(conservedVolumeIn)
[in]gridthe grid to use

Implements alsfvm::functional::Functional.


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