atl_facedata_module Module

Collects routines and datatypes related to face information.


Uses

  • module~~atl_facedata_module~~UsesGraph module~atl_facedata_module atl_facedata_module module~tem_facedata_module tem_faceData_module module~atl_facedata_module->module~tem_facedata_module module~tem_construction_module tem_construction_module module~atl_facedata_module->module~tem_construction_module module~env_module env_module module~atl_facedata_module->module~env_module module~atl_boundary_module atl_boundary_module module~atl_facedata_module->module~atl_boundary_module module~atl_boundary_module->module~tem_facedata_module module~atl_boundary_module->module~env_module module~tem_bc_prop_module tem_bc_prop_module module~atl_boundary_module->module~tem_bc_prop_module module~tem_varsys_module tem_varSys_module module~atl_boundary_module->module~tem_varsys_module module~atl_cube_elem_module atl_cube_elem_module module~atl_boundary_module->module~atl_cube_elem_module module~aotus_module aotus_module module~atl_boundary_module->module~aotus_module module~atl_scheme_module atl_scheme_module module~atl_boundary_module->module~atl_scheme_module module~tem_logging_module tem_logging_module module~atl_boundary_module->module~tem_logging_module module~atl_equation_module atl_equation_module module~atl_boundary_module->module~atl_equation_module module~tem_element_module tem_element_module module~atl_boundary_module->module~tem_element_module module~atl_reference_element_module atl_reference_element_module module~atl_boundary_module->module~atl_reference_element_module module~tem_grow_array_module tem_grow_array_module module~atl_boundary_module->module~tem_grow_array_module module~tem_aux_module tem_aux_module module~atl_boundary_module->module~tem_aux_module module~treelmesh_module treelmesh_module module~atl_boundary_module->module~treelmesh_module module~atl_bc_header_module atl_bc_header_module module~atl_boundary_module->module~atl_bc_header_module module~tem_bc_header_module tem_bc_header_module module~atl_boundary_module->module~tem_bc_header_module module~ply_poly_project_module ply_poly_project_module module~atl_boundary_module->module~ply_poly_project_module

Used by


Contents


Variables

TypeVisibilityAttributesNameInitial
real(kind=rk), public, parameter, dimension(2):: atl_elemfaceToNormal_prp =reshape((/-1.0_rk, 1.0_rk/), (/2/))

outer unit surface normal coefficient.

Maps left or right face to its outer unit surface normal. Because of our cubical elements we do not need full 3-dimensional vectors here and we store only the non-zero components. Use \link tem_face_module:tem_leftface_prp \endlink and \link tem_face_module:tem_rightface_prp \endlink to access this mapping.


Interfaces

public interface atl_init_facedata

  • private subroutine atl_init_facedata_sym(faces, facedata, minLevel, maxLevel, nDim, nScalars, nFaceDofs, boundary)

    Initializes the face data by a given set of faces.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    type(tem_face_type), intent(in) :: faces(minLevel:maxLevel)

    Description of the faces (levelwise).

    type(atl_facedata_type), intent(out), allocatable:: facedata(:)

    The face data to be initialized (levelwise, running from minLevel to maxLevel).

    integer, intent(in) :: minLevel

    The minimum refinement level of the mesh.

    integer, intent(in) :: maxLevel

    The maximum refinement level of the mesh.

    integer, intent(in) :: nDim

    The number of dimensions of the used scheme.

    integer, intent(in) :: nScalars

    The number of scalar variables to store on the faces.

    integer, intent(in) :: nFaceDofs(minLevel:maxLevel)

    The number of degrees of freedoms on the face (one value for each level).

    type(atl_level_boundary_type), intent(in) :: boundary(minLevel:maxLevel)

    The boundary description for the faces on all levels of the mesh.

  • private subroutine atl_init_facedata_asym(faces, facedata, minLevel, maxLevel, nDim, nScalarsState, nScalarsFlux, nFaceDofs, boundary)

    Initializes the face data by a given set of faces (asymmetrically).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    type(tem_face_type), intent(in) :: faces(minLevel:maxLevel)

    Description of the faces (levelwise).

    type(atl_facedata_type), intent(out), allocatable:: facedata(:)

    The face data to be initialized (levelwise, running from minLevel to maxLevel).

    integer, intent(in) :: minLevel

    The minimum refinement level of the mesh.

    integer, intent(in) :: maxLevel

    The maximum refinement level of the mesh.

    integer, intent(in) :: nDim

    The number of dimensions of the used scheme.

    integer, intent(in) :: nScalarsState

    The number of scalar variables to store on the faces for the state.

    integer, intent(in) :: nScalarsFlux

    The number of scalar variables to store on the faces for the flux.

    integer, intent(in) :: nFaceDofs(minLevel:maxLevel)

    The number of degrees of freedoms on the face (one value for each level).

    type(atl_level_boundary_type), intent(in) :: boundary(minLevel:maxLevel)

    The boundary description for the faces on all levels of the mesh.


Derived Types

type, public :: atl_faceRep_type

Representation of a solution on a set of faces (all of them in a fixed spatial direction).

Components

TypeVisibilityAttributesNameInitial
integer, private :: nFaces =0

The number of faces with a face representation.

real(kind=rk), private, allocatable:: dat(:,:,:,:)

Data for the face representation. The size of this array is: \n (nFaces, nFaceDofs, nScalars,2) -> 2 because of left and right face.

type, public :: atl_facedata_type

Datatype to represent data defined on the faces of a cubical element.

Components

TypeVisibilityAttributesNameInitial
type(atl_faceRep_type), private :: faceRep(3)

Representation of the state on the face. We handle it for each spatial direction (x,y,z) separately.

type(atl_faceRep_type), private :: faceFlux(3)

Representation of the flux on the face. We handle it for each spatial direction (x,y,z) separately.


Subroutines

private subroutine atl_init_facedata_sym(faces, facedata, minLevel, maxLevel, nDim, nScalars, nFaceDofs, boundary)

Initializes the face data by a given set of faces.

Read more…

Arguments

TypeIntentOptionalAttributesName
type(tem_face_type), intent(in) :: faces(minLevel:maxLevel)

Description of the faces (levelwise).

type(atl_facedata_type), intent(out), allocatable:: facedata(:)

The face data to be initialized (levelwise, running from minLevel to maxLevel).

integer, intent(in) :: minLevel

The minimum refinement level of the mesh.

integer, intent(in) :: maxLevel

The maximum refinement level of the mesh.

integer, intent(in) :: nDim

The number of dimensions of the used scheme.

integer, intent(in) :: nScalars

The number of scalar variables to store on the faces.

integer, intent(in) :: nFaceDofs(minLevel:maxLevel)

The number of degrees of freedoms on the face (one value for each level).

type(atl_level_boundary_type), intent(in) :: boundary(minLevel:maxLevel)

The boundary description for the faces on all levels of the mesh.

private subroutine atl_init_facedata_asym(faces, facedata, minLevel, maxLevel, nDim, nScalarsState, nScalarsFlux, nFaceDofs, boundary)

Initializes the face data by a given set of faces (asymmetrically).

Read more…

Arguments

TypeIntentOptionalAttributesName
type(tem_face_type), intent(in) :: faces(minLevel:maxLevel)

Description of the faces (levelwise).

type(atl_facedata_type), intent(out), allocatable:: facedata(:)

The face data to be initialized (levelwise, running from minLevel to maxLevel).

integer, intent(in) :: minLevel

The minimum refinement level of the mesh.

integer, intent(in) :: maxLevel

The maximum refinement level of the mesh.

integer, intent(in) :: nDim

The number of dimensions of the used scheme.

integer, intent(in) :: nScalarsState

The number of scalar variables to store on the faces for the state.

integer, intent(in) :: nScalarsFlux

The number of scalar variables to store on the faces for the flux.

integer, intent(in) :: nFaceDofs(minLevel:maxLevel)

The number of degrees of freedoms on the face (one value for each level).

type(atl_level_boundary_type), intent(in) :: boundary(minLevel:maxLevel)

The boundary description for the faces on all levels of the mesh.

private subroutine atl_init_facerep(nScalars, nFaceDofs, faceRep, dimLevelDesc, dir, boundary)

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: nScalars

The number of scalar variables to store on the faces.

integer, intent(in) :: nFaceDofs

The number of degrees of freedoms on the face.

type(atl_faceRep_type), intent(out) :: faceRep

The face representation to be initialized.

type(tem_levelDesc_type), intent(in) :: dimLevelDesc

Dimension-by-dimension level description of the mesh.

integer, intent(in) :: dir

The spatial direciton:\n 1 -> x direction \n 2 -> y direction \n 3 -> z direction

type(atl_level_boundary_type), intent(in) :: boundary

The boundary description for the faces on the current level.