Alsvinn
0.5.3
The fast FVM simulator with UQ support
|
#include <alsfvm/functional/LogEntropy.hpp>
Public Member Functions | |
LogEntropy (const Parameters ¶meters) | |
Uses no parameter. More... | |
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 grid.getDimensions() More... | |
![]() | |
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 | |
![]() | |
typedef alsutils::parameters::Parameters | Parameters |
To be used to pass parameters to the constructors. More... | |
Computes the thermodynamic entropy, see
Fjordholm, U. S., Mishra, S., & Tadmor, E. (2012). Arbitrarily high-order accurate entropy stable essentially nonoscillatory schemes for systems of conservation laws, 50(2), 544–573.
for a definition (2.16), E.
Note that we compute the spatial integral of the entropy at all points.
Specifically, we set
where is the gas constant. We set the entropy $E$ to be
This functional computes
alsfvm::functional::LogEntropy::LogEntropy | ( | const Parameters & | parameters | ) |
Uses no parameter.
|
overridevirtual |
Returns grid.getDimensions()
Implements alsfvm::functional::Functional.
|
overridevirtual |
Computes the operator value on the given input data
[out] | conservedVolumeOut | at the end, should have the contribution of the functional for the conservedVariables |
[in] | conservedVolumeIn | the state of the conserved variables |
[in] | weight | the current weight to be applied to the functional. Ie, the functional should compute conservedVolumeOut += weight + f(conservedVolumeIn) |
[in] | grid | the grid to use |
Implements alsfvm::functional::Functional.