Finite Volume Solver  prototype
A framework to build finite volume solvers for the AG Klein at the Freie Universität Berlin.
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
fub::Advection2d Struct Reference

This class descibes the 2-dimensional advection equation with constant transport velocity. More...

#include <Advection.hpp>

Public Types

using ConservativeDepths = AdvectionVariables< ScalarDepth >
 
using CompleteDepths = ConservativeDepths
 
using Complete = ::fub::Complete< Advection2d >
 
using Conservative = ::fub::Conservative< Advection2d >
 
using CompleteArray = ::fub::CompleteArray< Advection2d >
 
using ConservativeArray = ::fub::ConservativeArray< Advection2d >
 

Public Member Functions

 Advection2d (const std::array< double, 2 > &v) noexcept
 Constructs an equation object with velocity v. More...
 
void Flux (Conservative &flux, const Complete &state, Direction dir) const noexcept
 Computes the linear transport flux in the specified direction. More...
 
void Flux (ConservativeArray &flux, const CompleteArray &state, Direction dir) const noexcept
 Computes the linear transport flux in the specified direction (Array version). More...
 

Static Public Member Functions

static constexpr int Rank ()
 Returns 2, which is the space dimension for this equation. More...
 

Public Attributes

std::array< double, 2 > velocity
 This member variable stores the constant transport velocity. More...
 

Detailed Description

This class descibes the 2-dimensional advection equation with constant transport velocity.

Member Typedef Documentation

◆ Complete

◆ CompleteArray

◆ CompleteDepths

◆ Conservative

◆ ConservativeArray

◆ ConservativeDepths

Constructor & Destructor Documentation

◆ Advection2d()

fub::Advection2d::Advection2d ( const std::array< double, 2 > &  v)
inlinenoexcept

Constructs an equation object with velocity v.

Member Function Documentation

◆ Flux() [1/2]

void fub::Advection2d::Flux ( Conservative flux,
const Complete state,
Direction  dir 
) const
noexcept

Computes the linear transport flux in the specified direction.

Parameters
[out]fluxThe conservative state which will store the results.
[in]stateThe input state.
[in]dirThe split direction of this flux.

◆ Flux() [2/2]

void fub::Advection2d::Flux ( ConservativeArray flux,
const CompleteArray state,
Direction  dir 
) const
noexcept

Computes the linear transport flux in the specified direction (Array version).

Parameters
[out]fluxThe conservative state which will store the results.
[in]stateThe input state.
[in]dirThe split direction of this flux.

◆ Rank()

static constexpr int fub::Advection2d::Rank ( )
inlinestaticconstexpr

Returns 2, which is the space dimension for this equation.

Member Data Documentation

◆ velocity

std::array<double, 2> fub::Advection2d::velocity

This member variable stores the constant transport velocity.


The documentation for this struct was generated from the following file: