Alsvinn
0.5.3
The fast FVM simulator with UQ support
|
#include <alsfvm/diffusion/TecnoDiffusionCUDA.hpp>
Public Member Functions | |
TecnoDiffusionCUDA (volume::VolumeFactory &volumeFactory, alsfvm::shared_ptr< reconstruction::tecno::TecnoReconstruction > reconstruction, const simulator::SimulatorParameters &simulatorParameters) | |
virtual void | applyDiffusion (volume::Volume &outputVolume, const volume::Volume &conservedVolume) |
virtual size_t | getNumberOfGhostCells () const |
![]() | |
virtual | ~DiffusionOperator () |
Applies the Tecno diffusion to the operator. This will always take the form
where is the matrix of eigenvalues of the flux jacobian, and
is either the Rusanov or Roe matrix. See http://www.cscamm.umd.edu/tadmor/pub/TV+entropy/Fjordholm_Mishra_Tadmor_SINUM2012.pdf
The matrix is specified through the DiffusionMatrix template argument.
alsfvm::diffusion::TecnoDiffusionCUDA< Equation, DiffusionMatrix >::TecnoDiffusionCUDA | ( | volume::VolumeFactory & | volumeFactory, |
alsfvm::shared_ptr< reconstruction::tecno::TecnoReconstruction > | reconstruction, | ||
const simulator::SimulatorParameters & | simulatorParameters | ||
) |
|
virtual |
Applies numerical diffusion to the outputVolume given the data in conservedVolume.
Implements alsfvm::diffusion::DiffusionOperator.
|
virtual |
Gets the total number of ghost cells this diffusion needs, this is typically governed by reconstruction algorithm.
Implements alsfvm::diffusion::DiffusionOperator.