atl_modg_nerplanck_kernel_module Module

Module for routines and datatypes of MOdal Discontinuous Galerkin (MODG) scheme. This scheme is a spectral scheme for linear, purley hyperbolic partial differential equation systems.


Uses


Interfaces

interface for preprocessing the data for the kernel


Subroutines

private subroutine preprocess_modg_nerplanck_kernel(equation, kerneldata, statedata, mesh, scheme)

Arguments

Type IntentOptional Attributes Name
type(atl_Equations_type) :: equation

The equation you solve.

type(atl_kerneldata_type) :: kerneldata

The data of the kernel.

type(atl_statedata_type) :: statedata

THe state if the equation

type(atl_cube_elem_type) :: mesh

The mesh you are working with.

type(atl_modg_scheme_type) :: scheme

Parameters of the modal dg scheme

private subroutine modg_nerplanck_x_numFlux_pre(mesh, equation, statedata, scheme)

Numerical flux calculation for Nernst-Planck equation across the faces in X direction.

Arguments

Type IntentOptional Attributes Name
type(atl_cube_elem_type) :: mesh

The mesh you are working with.

type(atl_Equations_type) :: equation

The equation you solve.

type(atl_statedata_type) :: statedata

THe state if the equation

type(atl_modg_scheme_type), intent(in) :: scheme

Parameters of the modal dg scheme

private subroutine modg_nerplanck_y_numFlux_pre(mesh, equation, statedata, scheme)

Numerical flux calculation for Nernst-Planck equation across the faces in Y direction.

Arguments

Type IntentOptional Attributes Name
type(atl_cube_elem_type) :: mesh

The mesh you are working with.

type(atl_Equations_type) :: equation

The equation you solve.

type(atl_statedata_type) :: statedata

THe state if the equation

type(atl_modg_scheme_type), intent(in) :: scheme

Parameters of the modal dg scheme

private subroutine modg_nerplanck_z_numFlux_pre(mesh, equation, statedata, scheme)

Numerical flux calculation for Nernst-Planck equation across the faces in Z direction.

Arguments

Type IntentOptional Attributes Name
type(atl_cube_elem_type) :: mesh

The mesh you are working with.

type(atl_Equations_type) :: equation

The equation you solve.

type(atl_statedata_type) :: statedata

THe state if the equation

type(atl_modg_scheme_type), intent(in) :: scheme

Parameters of the modal dg scheme

private subroutine modg_nerplanck_physFlux_pre(mesh, equation, statedata, scheme)

Calculate the projection of the physical flux for the MODG scheme and Nernst-Planck equation.

Arguments

Type IntentOptional Attributes Name
type(atl_cube_elem_type) :: mesh

The mesh you are working with.

type(atl_Equations_type) :: equation

The equation you solve.

type(atl_statedata_type) :: statedata

THe state if the equation

type(atl_modg_scheme_type), intent(in) :: scheme

Parameters of the modal dg scheme

private subroutine modg_invMassMatrix_pre(mesh, scheme)

Applies the inverse of the mass matrix for a 3D scheme.

Arguments

Type IntentOptional Attributes Name
type(atl_cube_elem_type) :: mesh

The mesh you are working with.

type(atl_modg_scheme_type), intent(in) :: scheme

Parameters of the modal dg scheme