atl_nerplanck_flux_module Module

module that holds all routines to calculate the flux for Nernst-Planck equations.


Uses

  • module~~atl_nerplanck_flux_module~~UsesGraph module~atl_nerplanck_flux_module atl_nerplanck_flux_module module~env_module env_module module~atl_nerplanck_flux_module->module~env_module

Used by

  • module~~atl_nerplanck_flux_module~~UsedByGraph module~atl_nerplanck_flux_module atl_nerplanck_flux_module module~atl_modg_nerplanck_kernel_module atl_modg_nerplanck_kernel_module module~atl_modg_nerplanck_kernel_module->module~atl_nerplanck_flux_module

Contents


Interfaces

public interface atl_nerplanck_numflux_solve

  • private subroutine nerplanck_numflux_concentration(left, right, diffusivity, flux)

    Subroutine to calculate the numerical flux for the first equation (u)

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=rk), intent(in) :: left(4)

    Left state vector (as conservative variables). The order of this vector has to be where and denoted concentration (scalar) and diffusive fluxes (vector).

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

    Right state vector (as conservative variables). The order of this vector has to be where and denoted concentration (scalar) and diffusive fluxes (vector).

    real(kind=rk), intent(in) :: diffusivity

    The diffusivity in the left and right cell. Since this is assumed to be equal in both cells, this flux function cannot be used to calculate the flux for cells with different material properties

    real(kind=rk), intent(out) :: flux

    The flux between left and right cell. The order of this vector is the same as the input arguments.

  • private subroutine nerplanck_numflux_diffusiveFlux(left, right, diffusivity, flux)

    Subroutine to calculate the flux for Nernst-Planck equations.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=rk), intent(in) :: left(4)

    Left state vector (as conservative variables). The order of this vector has to be where and denoted concentration (scalar) and diffusive fluxes (vector).

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

    Right state vector (as conservative variables). The order of this vector has to be where and denoted concentration (scalar) and diffusive fluxes (vector).

    real(kind=rk), intent(in) :: diffusivity

    The diffusivity in the left and right cell. Since this is assumed to be equal in both cells, this flux function cannot be used to calculate the flux for cells with different material properties

    real(kind=rk), intent(out) :: flux(3)

    The flux between left and right cell. The order of this vector is the same as the input arguments.

  • private subroutine nerplanck_physflux_concentration(state, diffusivity, flux)

    Subroutine to calculate the numerical flux for the first equation (u)

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=rk), intent(in) :: state(4)

    State vector (as conservative variables). The order of this vector has to be where and denoted concentration (scalar) and diffusive fluxes (vector).

    real(kind=rk), intent(in) :: diffusivity

    The diffusivity in the cell.

    real(kind=rk), intent(out) :: flux(3)

    The flux inside the cell. The order of this vector is the same as the input arguments.

  • private subroutine nerplanck_physflux_diffusiveFlux(state, diffusivity, flux)

    Subroutine to calculate the flux for Nernst-Planck equations.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=rk), intent(in) :: state(4)

    State vector (as conservative variables). The order of this vector has to be where and denoted concentration (scalar) and diffusive fluxes (vector).

    real(kind=rk), intent(in) :: diffusivity

    The diffusivity in the cell.

    real(kind=rk), intent(out) :: flux

    The flux inside the cell. The order of this vector is the same as the input arguments.


Subroutines

private subroutine nerplanck_numflux_concentration(left, right, diffusivity, flux)

Subroutine to calculate the numerical flux for the first equation (u)

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=rk), intent(in) :: left(4)

Left state vector (as conservative variables). The order of this vector has to be where and denoted concentration (scalar) and diffusive fluxes (vector).

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

Right state vector (as conservative variables). The order of this vector has to be where and denoted concentration (scalar) and diffusive fluxes (vector).

real(kind=rk), intent(in) :: diffusivity

The diffusivity in the left and right cell. Since this is assumed to be equal in both cells, this flux function cannot be used to calculate the flux for cells with different material properties

real(kind=rk), intent(out) :: flux

The flux between left and right cell. The order of this vector is the same as the input arguments.

private subroutine nerplanck_numflux_diffusiveFlux(left, right, diffusivity, flux)

Subroutine to calculate the flux for Nernst-Planck equations.

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=rk), intent(in) :: left(4)

Left state vector (as conservative variables). The order of this vector has to be where and denoted concentration (scalar) and diffusive fluxes (vector).

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

Right state vector (as conservative variables). The order of this vector has to be where and denoted concentration (scalar) and diffusive fluxes (vector).

real(kind=rk), intent(in) :: diffusivity

The diffusivity in the left and right cell. Since this is assumed to be equal in both cells, this flux function cannot be used to calculate the flux for cells with different material properties

real(kind=rk), intent(out) :: flux(3)

The flux between left and right cell. The order of this vector is the same as the input arguments.

private subroutine nerplanck_physflux_concentration(state, diffusivity, flux)

Subroutine to calculate the numerical flux for the first equation (u)

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=rk), intent(in) :: state(4)

State vector (as conservative variables). The order of this vector has to be where and denoted concentration (scalar) and diffusive fluxes (vector).

real(kind=rk), intent(in) :: diffusivity

The diffusivity in the cell.

real(kind=rk), intent(out) :: flux(3)

The flux inside the cell. The order of this vector is the same as the input arguments.

private subroutine nerplanck_physflux_diffusiveFlux(state, diffusivity, flux)

Subroutine to calculate the flux for Nernst-Planck equations.

Read more…

Arguments

TypeIntentOptionalAttributesName
real(kind=rk), intent(in) :: state(4)

State vector (as conservative variables). The order of this vector has to be where and denoted concentration (scalar) and diffusive fluxes (vector).

real(kind=rk), intent(in) :: diffusivity

The diffusivity in the cell.

real(kind=rk), intent(out) :: flux

The flux inside the cell. The order of this vector is the same as the input arguments.