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

Computes the bounded variation of the given solution. More...

#include <alsfvm/functional/BoundedVariation.hpp>

Inheritance diagram for alsfvm::functional::BoundedVariation:
alsfvm::functional::Functional

Public Member Functions

 BoundedVariation (const 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
 Returns ivec3{1,1,1} – we only need one element to represent this functional. More...
 
virtual std::string getPlatformToAllocateOn (const std::string &platform) const override
 
- Public Member Functions inherited from alsfvm::functional::Functional
virtual ~Functional ()
 
virtual ivec3 getGhostCellSizes (const grid::Grid &grid, const volume::Volume &volume) 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

Computes the bounded variation of the given solution.

Constructor & Destructor Documentation

◆ BoundedVariation()

alsfvm::functional::BoundedVariation::BoundedVariation ( const Parameters parameters)

The following parameters are accepted through parameters

Name Description
degree The degree

Member Function Documentation

◆ getFunctionalSize()

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

Returns ivec3{1,1,1} – we only need one element to represent this functional.

Implements alsfvm::functional::Functional.

◆ getPlatformToAllocateOn()

std::string alsfvm::functional::BoundedVariation::getPlatformToAllocateOn ( const std::string &  platform) const
overridevirtual

Reimplemented from alsfvm::functional::Functional.

◆ operator()()

void alsfvm::functional::BoundedVariation::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 current grid

Implements alsfvm::functional::Functional.


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