Afivo  0.3
Functions/Subroutines
m_flux_schemes Module Reference

Module containing a couple simple flux schemes for scalar advection/diffusion problems. More...

Functions/Subroutines

subroutine, public flux_diff_1d (cc, dc, inv_dr, nc, ngc)
 Compute diffusive flux (second order) More...
 
subroutine, public flux_diff_2d (cc, dc, inv_dr, nc, ngc)
 Compute diffusive flux (second order) More...
 
subroutine, public flux_diff_3d (cc, dc, inv_dr, nc, ngc)
 Compute diffusive flux (second order) More...
 
subroutine, public flux_koren_1d (cc, v, nc, ngc)
 Compute flux according to Koren limiter. More...
 
subroutine, public flux_koren_2d (cc, v, nc, ngc)
 Compute flux according to Koren limiter. More...
 
subroutine, public flux_koren_3d (cc, v, nc, ngc)
 Compute flux according to Koren limiter. More...
 

Detailed Description

Module containing a couple simple flux schemes for scalar advection/diffusion problems.

Todo:
Explain multidimensional index for flux, velocity

Function/Subroutine Documentation

§ flux_diff_1d()

subroutine, public m_flux_schemes::flux_diff_1d ( real(dp), dimension(1-ngc:nc+ngc), intent(in)  cc,
real(dp), dimension(1:nc+1), intent(inout)  dc,
real(dp), intent(in)  inv_dr,
integer, intent(in)  nc,
integer, intent(in)  ngc 
)

Compute diffusive flux (second order)

Parameters
[in]ncNumber of cells
[in]ngcNumber of ghost cells
[in]ccCell-centered values
[in,out]dcInput: diffusion coeff. at interfaces, output: fluxes
[in]inv_drInverse grid spacing

Definition at line 19 of file m_flux_schemes.f90.

§ flux_diff_2d()

subroutine, public m_flux_schemes::flux_diff_2d ( real(dp), dimension(1-ngc:nc+ngc, 1-ngc:nc+ngc), intent(in)  cc,
real(dp), dimension(1:nc+1, 1:nc+1, 2), intent(inout)  dc,
real(dp), intent(in)  inv_dr,
integer, intent(in)  nc,
integer, intent(in)  ngc 
)

Compute diffusive flux (second order)

Parameters
[in]ncNumber of cells
[in]ngcNumber of ghost cells
[in]ccCell-centered values
[in,out]dcInput: diffusion coeff. at interfaces, output: fluxes
[in]inv_drInverse grid spacing

Definition at line 34 of file m_flux_schemes.f90.

§ flux_diff_3d()

subroutine, public m_flux_schemes::flux_diff_3d ( real(dp), dimension(1-ngc:nc+ngc, 1-ngc:nc+ngc, 1-ngc:nc+ngc), intent(in)  cc,
real(dp), dimension(1:nc+1, 1:nc+1, 1:nc+1, 3), intent(inout)  dc,
real(dp), intent(in)  inv_dr,
integer, intent(in)  nc,
integer, intent(in)  ngc 
)

Compute diffusive flux (second order)

Parameters
[in]ncNumber of cells
[in]ngcNumber of ghost cells
[in]ccCell-centered values
[in,out]dcInput: diffusion coeff. at interfaces, output: fluxes
[in]inv_drInverse grid spacing

Definition at line 58 of file m_flux_schemes.f90.

§ flux_koren_1d()

subroutine, public m_flux_schemes::flux_koren_1d ( real(dp), dimension(1-ngc:nc+ngc), intent(in)  cc,
real(dp), dimension(1:nc+1), intent(inout)  v,
integer, intent(in)  nc,
integer, intent(in)  ngc 
)

Compute flux according to Koren limiter.

Parameters
[in]ncNumber of cells
[in]ngcNumber of ghost cells
[in]ccCell-centered values
[in,out]vInput: velocities at interfaces, output: fluxes

Definition at line 94 of file m_flux_schemes.f90.

§ flux_koren_2d()

subroutine, public m_flux_schemes::flux_koren_2d ( real(dp), dimension(1-ngc:nc+ngc, 1-ngc:nc+ngc), intent(in)  cc,
real(dp), dimension(1:nc+1, 1:nc+1, 2), intent(inout)  v,
integer, intent(in)  nc,
integer, intent(in)  ngc 
)

Compute flux according to Koren limiter.

Parameters
[in]ncNumber of cells
[in]ngcNumber of ghost cells
[in]ccCell-centered values
[in,out]vInput: velocities at interfaces, output: fluxes

Definition at line 117 of file m_flux_schemes.f90.

§ flux_koren_3d()

subroutine, public m_flux_schemes::flux_koren_3d ( real(dp), dimension(1-ngc:nc+ngc, 1-ngc:nc+ngc, 1-ngc:nc+ngc), intent(in)  cc,
real(dp), dimension(1:nc+1, 1:nc+1, 1:nc+1, 3), intent(inout)  v,
integer, intent(in)  nc,
integer, intent(in)  ngc 
)

Compute flux according to Koren limiter.

Parameters
[in]ncNumber of cells
[in]ngcNumber of ghost cells
[in]ccCell-centered values
[in,out]vInput: velocities at interfaces, output: fluxes

Definition at line 140 of file m_flux_schemes.f90.