Alsvinn  0.5.3
The fast FVM simulator with UQ support
Public Member Functions | List of all members
alsfvm::reconstruction::tecno::ENOCPU< order > Class Template Reference

#include <alsfvm/reconstruction/tecno/ENOCPU.hpp>

Inheritance diagram for alsfvm::reconstruction::tecno::ENOCPU< order >:
alsfvm::reconstruction::tecno::TecnoReconstruction

Public Member Functions

 ENOCPU (alsfvm::shared_ptr< memory::MemoryFactory > &memoryFactory, size_t nx, size_t ny, size_t nz)
 
virtual void performReconstruction (const volume::Volume &leftInput, const volume::Volume &rightInput, size_t direction, volume::Volume &leftOutput, volume::Volume &rightOutput)
 
virtual size_t getNumberOfGhostCells () const
 getNumberOfGhostCells returns the number of ghost cells we need for this computation More...
 
- Public Member Functions inherited from alsfvm::reconstruction::tecno::TecnoReconstruction
virtual ~TecnoReconstruction ()
 

Detailed Description

template<int order>
class alsfvm::reconstruction::tecno::ENOCPU< order >

Applies ENO reconstruction of order "order" (template argument), according to the Tecno paper

The reason we need a different class than for normal reconstruction is that the input left and right values are a priori different.

In other words, for tecno we reconstruct with

\[u^l_i = R_{i+1/2}u_{i}\]

\[u^r_i = R_{i-1/2}u_{i}\]

The reconstructions should be compatible with the Tecno paper

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.

See http://www.cscamm.umd.edu/people/faculty/tadmor/pub/TV+entropy/Fjordholm_Mishra_Tadmor_SINUM2012.pdf

Constructor & Destructor Documentation

◆ ENOCPU()

template<int order>
alsfvm::reconstruction::tecno::ENOCPU< order >::ENOCPU ( alsfvm::shared_ptr< memory::MemoryFactory > &  memoryFactory,
size_t  nx,
size_t  ny,
size_t  nz 
)

Member Function Documentation

◆ getNumberOfGhostCells()

template<int order>
size_t alsfvm::reconstruction::tecno::ENOCPU< order >::getNumberOfGhostCells ( ) const
virtual

getNumberOfGhostCells returns the number of ghost cells we need for this computation

Returns
order.

Implements alsfvm::reconstruction::tecno::TecnoReconstruction.

◆ performReconstruction()

template<int order>
void alsfvm::reconstruction::tecno::ENOCPU< order >::performReconstruction ( const volume::Volume leftInput,
const volume::Volume rightInput,
size_t  direction,
volume::Volume leftOutput,
volume::Volume rightOutput 
)
virtual

Applies the reconstruction.

Parameters
[in]leftInputthe left values to use for reconstruction
[in]rightInputthe right values to use for reconstruction
[in]directionthe direction (0=x, 1=y, 2=y)
[out]leftOutputat the end, should contain reconstructed values
[out]rightOutputat the end, should contain the reconstructed values

Implements alsfvm::reconstruction::tecno::TecnoReconstruction.


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