MPI-AMRVAC  3.0
The MPI - Adaptive Mesh Refinement - Versatile Advection Code
Functions/Subroutines | Variables
mod_limiter Module Reference

Module with slope/flux limiters. More...

Functions/Subroutines

integer function limiter_type (namelim)
 
pure logical function limiter_symmetric (typelim)
 
subroutine dwlimiter2 (dwC, ixIL, ixCL, idims, typelim, ldw, rdw, a2max)
 Limit the centered dwC differences within ixC for iw in direction idim. The limiter is chosen according to typelim. More...
 

Variables

double precision cada3_radius
 radius of the asymptotic region [0.001, 10], larger means more accurate in smooth region but more overshooting at discontinuities More...
 
double precision schmid_rad
 
double precision d
 
integer, parameter limiter_minmod = 1
 
integer, parameter limiter_woodward = 2
 
integer, parameter limiter_mcbeta = 3
 
integer, parameter limiter_superbee = 4
 
integer, parameter limiter_vanleer = 5
 
integer, parameter limiter_albada = 6
 
integer, parameter limiter_koren = 7
 
integer, parameter limiter_cada = 8
 
integer, parameter limiter_cada3 = 9
 
integer, parameter limiter_schmid = 10
 
integer, parameter limiter_venk = 11
 
integer, parameter limiter_ppm = 12
 
integer, parameter limiter_mp5 = 13
 
integer, parameter limiter_weno3 = 14
 
integer, parameter limiter_wenoyc3 = 15
 
integer, parameter limiter_weno5 = 16
 
integer, parameter limiter_weno5nm = 17
 
integer, parameter limiter_wenoz5 = 18
 
integer, parameter limiter_wenoz5nm = 19
 
integer, parameter limiter_wenozp5 = 20
 
integer, parameter limiter_wenozp5nm = 21
 
integer, parameter limiter_weno5cu6 = 22
 
integer, parameter limiter_teno5ad = 23
 
integer, parameter limiter_weno7 = 24
 
integer, parameter limiter_mpweno7 = 25
 

Detailed Description

Module with slope/flux limiters.

Function/Subroutine Documentation

◆ dwlimiter2()

subroutine mod_limiter::dwlimiter2 ( double precision, dimension(ixi^s), intent(in)  dwC,
integer, intent(in)  ixI,
integer, intent(in)  L,
integer, intent(in)  ixC,
  L,
integer, intent(in)  idims,
integer, intent(in)  typelim,
double precision, dimension(ixi^s), intent(out), optional  ldw,
double precision, dimension(ixi^s), intent(out), optional  rdw,
double precision, intent(in), optional  a2max 
)

Limit the centered dwC differences within ixC for iw in direction idim. The limiter is chosen according to typelim.

Note that this subroutine is called from upwindLR (hence from methods like tvdlf, hancock, hll(c) etc) or directly from tvd.t, but also from the gradientS and divvectorS subroutines in geometry.t Accordingly, the typelim here corresponds to one of limiter or one of gradient_limiter.

Parameters
[out]ldwResult using left-limiter (same as right for symmetric)
[out]rdwResult using right-limiter (same as left for symmetric)

Definition at line 127 of file mod_limiter.t.

Here is the call graph for this function:

◆ limiter_symmetric()

pure logical function mod_limiter::limiter_symmetric ( integer, intent(in)  typelim)

Definition at line 108 of file mod_limiter.t.

◆ limiter_type()

integer function mod_limiter::limiter_type ( character(len=*), intent(in)  namelim)

Definition at line 44 of file mod_limiter.t.

Here is the call graph for this function:

Variable Documentation

◆ cada3_radius

double precision mod_limiter::cada3_radius

radius of the asymptotic region [0.001, 10], larger means more accurate in smooth region but more overshooting at discontinuities

Definition at line 13 of file mod_limiter.t.

◆ d

double precision mod_limiter::d

Definition at line 14 of file mod_limiter.t.

◆ limiter_albada

integer, parameter mod_limiter::limiter_albada = 6

Definition at line 20 of file mod_limiter.t.

◆ limiter_cada

integer, parameter mod_limiter::limiter_cada = 8

Definition at line 22 of file mod_limiter.t.

◆ limiter_cada3

integer, parameter mod_limiter::limiter_cada3 = 9

Definition at line 23 of file mod_limiter.t.

◆ limiter_koren

integer, parameter mod_limiter::limiter_koren = 7

Definition at line 21 of file mod_limiter.t.

◆ limiter_mcbeta

integer, parameter mod_limiter::limiter_mcbeta = 3

Definition at line 17 of file mod_limiter.t.

◆ limiter_minmod

integer, parameter mod_limiter::limiter_minmod = 1

Definition at line 15 of file mod_limiter.t.

◆ limiter_mp5

integer, parameter mod_limiter::limiter_mp5 = 13

Definition at line 28 of file mod_limiter.t.

◆ limiter_mpweno7

integer, parameter mod_limiter::limiter_mpweno7 = 25

Definition at line 40 of file mod_limiter.t.

◆ limiter_ppm

integer, parameter mod_limiter::limiter_ppm = 12

Definition at line 27 of file mod_limiter.t.

◆ limiter_schmid

integer, parameter mod_limiter::limiter_schmid = 10

Definition at line 24 of file mod_limiter.t.

◆ limiter_superbee

integer, parameter mod_limiter::limiter_superbee = 4

Definition at line 18 of file mod_limiter.t.

◆ limiter_teno5ad

integer, parameter mod_limiter::limiter_teno5ad = 23

Definition at line 38 of file mod_limiter.t.

◆ limiter_vanleer

integer, parameter mod_limiter::limiter_vanleer = 5

Definition at line 19 of file mod_limiter.t.

◆ limiter_venk

integer, parameter mod_limiter::limiter_venk = 11

Definition at line 25 of file mod_limiter.t.

◆ limiter_weno3

integer, parameter mod_limiter::limiter_weno3 = 14

Definition at line 29 of file mod_limiter.t.

◆ limiter_weno5

integer, parameter mod_limiter::limiter_weno5 = 16

Definition at line 31 of file mod_limiter.t.

◆ limiter_weno5cu6

integer, parameter mod_limiter::limiter_weno5cu6 = 22

Definition at line 37 of file mod_limiter.t.

◆ limiter_weno5nm

integer, parameter mod_limiter::limiter_weno5nm = 17

Definition at line 32 of file mod_limiter.t.

◆ limiter_weno7

integer, parameter mod_limiter::limiter_weno7 = 24

Definition at line 39 of file mod_limiter.t.

◆ limiter_wenoyc3

integer, parameter mod_limiter::limiter_wenoyc3 = 15

Definition at line 30 of file mod_limiter.t.

◆ limiter_wenoz5

integer, parameter mod_limiter::limiter_wenoz5 = 18

Definition at line 33 of file mod_limiter.t.

◆ limiter_wenoz5nm

integer, parameter mod_limiter::limiter_wenoz5nm = 19

Definition at line 34 of file mod_limiter.t.

◆ limiter_wenozp5

integer, parameter mod_limiter::limiter_wenozp5 = 20

Definition at line 35 of file mod_limiter.t.

◆ limiter_wenozp5nm

integer, parameter mod_limiter::limiter_wenozp5nm = 21

Definition at line 36 of file mod_limiter.t.

◆ limiter_woodward

integer, parameter mod_limiter::limiter_woodward = 2

Definition at line 16 of file mod_limiter.t.

◆ schmid_rad

double precision mod_limiter::schmid_rad

Definition at line 14 of file mod_limiter.t.