atl_acoustic_2d_flux_module Module

module that holds all routines to calculate the flux for hyperbolic linearzied gas dynamic equations.

VK use atl_laxFriedrichFlux_module, only: atl_laxFriedAcoustic


Uses

  • module~~atl_acoustic_2d_flux_module~~UsesGraph module~atl_acoustic_2d_flux_module atl_acoustic_2d_flux_module env_module env_module module~atl_acoustic_2d_flux_module->env_module module~atl_eqn_acoustic_module atl_eqn_acoustic_module module~atl_acoustic_2d_flux_module->module~atl_eqn_acoustic_module module~atl_eqn_acoustic_module->env_module aot_out_general_module aot_out_general_module module~atl_eqn_acoustic_module->aot_out_general_module aot_out_module aot_out_module module~atl_eqn_acoustic_module->aot_out_module aot_table_module aot_table_module module~atl_eqn_acoustic_module->aot_table_module aotus_module aotus_module module~atl_eqn_acoustic_module->aotus_module module~atl_materialfun_module atl_materialFun_module module~atl_eqn_acoustic_module->module~atl_materialfun_module tem_logging_module tem_logging_module module~atl_eqn_acoustic_module->tem_logging_module tem_tools_module tem_tools_module module~atl_eqn_acoustic_module->tem_tools_module module~atl_materialfun_module->env_module module~atl_materialfun_module->aot_out_module tem_varSys_module tem_varSys_module module~atl_materialfun_module->tem_varSys_module

Used by

  • module~~atl_acoustic_2d_flux_module~~UsedByGraph module~atl_acoustic_2d_flux_module atl_acoustic_2d_flux_module module~atl_modg_2d_acoustic_kernel_module atl_modg_2d_acoustic_kernel_module module~atl_modg_2d_acoustic_kernel_module->module~atl_acoustic_2d_flux_module proc~compute_rhs_cubes_modg_2d compute_rhs_cubes_modg_2d proc~compute_rhs_cubes_modg_2d->module~atl_modg_2d_acoustic_kernel_module proc~modg_2d_compute_project_physflux modg_2d_compute_project_physFlux proc~modg_2d_compute_project_physflux->module~atl_modg_2d_acoustic_kernel_module

Interfaces

public interface atl_acoustic_2d_numflux

Interface for fluxes of acoustic equations.

  • private subroutine atl_acoustic_2d_numflux_cube_vec(nTotalFaces, nSides, nFaceDofs, faceRep, faceFlux, leftPos, rightPos, var, acoustic, idir)

    VK ! call lax friedrich flux VK call atl_laxFriedAcoustic(left = leftstate, & VK & right = rightstate, & VK & acoustic = acoustic, & VK & flux = flux, & VK & iDir = idir ) VK VK faceFlux(left,iDof,var,2) = flux

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(in) :: nTotalFaces
    integer, intent(in) :: nSides
    integer, intent(in) :: nFaceDofs
    real(kind=rk), intent(in) :: faceRep(nTotalFaces,nFaceDofs,3,2)
    real(kind=rk), intent(inout) :: faceFlux(nTotalFaces,nFaceDofs,3,2)
    integer, intent(in) :: leftPos(nSides)
    integer, intent(in) :: rightPos(nsides)
    integer, intent(in) :: var(3)
    type(atl_acoustic_type), intent(in) :: acoustic

    Datatype for acoustic equation include all background data

    integer, intent(in) :: idir

    Direction of the flow, used for background velocity


Functions

public function atl_acoustic_2d_physFlux(state, acoustic, iDir) result(flux)

Function for physical flux of the acoustic equation F, 1D? Since it is 1d, there need to be passed the correct background velocity (u0 for F - flux in x direction, v0 for G - flux in y direction, w0 for H - flux in z direction)

Arguments

Type IntentOptional Attributes Name
real(kind=rk), intent(in) :: state(acoustic%ndims+1)

State to compute the fluxes (rho, u, v, w)

type(atl_acoustic_type), intent(in) :: acoustic

Datatype for acoustic equation include all background data

integer, intent(in) :: iDir

Direction of flux, used fot background velocity

Return Value real(kind=rk), (acoustic%ndims+1)

The resulting flux in x direction

private function atl_acoustic_2d_numFlux_oneDir(left, right, acoustic, iDir) result(flux)

Arguments

Type IntentOptional Attributes Name
real(kind=rk), intent(in) :: left(3)

State to compute the fluxes (rho, u, v, w)

real(kind=rk), intent(in) :: right(3)

State to compute the fluxes (rho, u, v, w)

type(atl_acoustic_type), intent(in) :: acoustic

Datatype for acoustic equation include all background data

integer, intent(in) :: iDir

Direction of flux, used fot background velocity

Return Value real(kind=rk), (3)

The resulting flux in x direction


Subroutines

private subroutine atl_acoustic_2d_numflux_cube_vec(nTotalFaces, nSides, nFaceDofs, faceRep, faceFlux, leftPos, rightPos, var, acoustic, idir)

c a l c u l a t e

f l u x

o f

p u r e

a c o u s t i c

e q u a t i o n

d i r e c t l y

o n

t h e

f a c e - v e c t o r

Read more…

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nTotalFaces
integer, intent(in) :: nSides
integer, intent(in) :: nFaceDofs
real(kind=rk), intent(in) :: faceRep(nTotalFaces,nFaceDofs,3,2)
real(kind=rk), intent(inout) :: faceFlux(nTotalFaces,nFaceDofs,3,2)
integer, intent(in) :: leftPos(nSides)
integer, intent(in) :: rightPos(nsides)
integer, intent(in) :: var(3)
type(atl_acoustic_type), intent(in) :: acoustic

Datatype for acoustic equation include all background data

integer, intent(in) :: idir

Direction of the flow, used for background velocity