tem_pmlLayer_module Module

This module gathers information for the PML damping functions.


Uses

  • module~~tem_pmllayer_module~~UsesGraph module~tem_pmllayer_module tem_pmlLayer_module module~tem_aux_module tem_aux_module module~tem_pmllayer_module->module~tem_aux_module module~tem_param_module tem_param_module module~tem_pmllayer_module->module~tem_param_module module~env_module env_module module~tem_pmllayer_module->module~env_module module~tem_logging_module tem_logging_module module~tem_pmllayer_module->module~tem_logging_module module~aotus_module aotus_module module~tem_pmllayer_module->module~aotus_module module~aot_table_module aot_table_module module~tem_pmllayer_module->module~aot_table_module module~tem_aux_module->module~env_module module~tem_aux_module->module~tem_logging_module module~tem_aux_module->module~aotus_module module~tem_aux_module->module~aot_table_module module~flu_binding flu_binding module~tem_aux_module->module~flu_binding module~tem_lua_requires_module tem_lua_requires_module module~tem_aux_module->module~tem_lua_requires_module module~tem_tools_module tem_tools_module module~tem_aux_module->module~tem_tools_module module~soi_revision_module soi_revision_module module~tem_aux_module->module~soi_revision_module mpi mpi module~tem_aux_module->mpi module~tem_comm_env_module tem_comm_env_module module~tem_aux_module->module~tem_comm_env_module module~tem_param_module->module~env_module module~env_module->module~aotus_module module~env_module->module~flu_binding iso_fortran_env iso_fortran_env module~env_module->iso_fortran_env module~env_module->mpi module~tem_logging_module->module~env_module module~tem_logging_module->module~aotus_module module~tem_logging_module->module~aot_table_module module~tem_lua_requires_module->module~env_module module~tem_lua_requires_module->module~aotus_module module~tem_lua_requires_module->module~aot_table_module module~tem_lua_requires_module->module~flu_binding iso_c_binding iso_c_binding module~tem_lua_requires_module->iso_c_binding module~tem_tools_module->module~env_module module~tem_comm_env_module->mpi

Used by

  • module~~tem_pmllayer_module~~UsedByGraph module~tem_pmllayer_module tem_pmlLayer_module module~tem_spatial_module tem_spatial_module module~tem_spatial_module->module~tem_pmllayer_module module~tem_spacetime_fun_module tem_spacetime_fun_module module~tem_spacetime_fun_module->module~tem_spatial_module module~tem_spacetime_var_module tem_spacetime_var_module module~tem_spacetime_var_module->module~tem_spatial_module module~tem_spacetime_var_module->module~tem_spacetime_fun_module module~tem_variable_module tem_variable_module module~tem_spacetime_var_module->module~tem_variable_module module~tem_ini_condition_module tem_ini_condition_module module~tem_ini_condition_module->module~tem_spatial_module module~tem_variable_module->module~tem_spacetime_fun_module module~tem_face_module tem_face_module module~tem_face_module->module~tem_spacetime_fun_module module~tem_bc_module tem_bc_module module~tem_bc_module->module~tem_spacetime_fun_module module~tem_varmap_module tem_varMap_module module~tem_bc_module->module~tem_varmap_module module~tem_surfacedata_module tem_surfaceData_module module~tem_surfacedata_module->module~tem_spacetime_fun_module module~tem_derived_module tem_derived_module module~tem_derived_module->module~tem_spacetime_fun_module module~tem_derived_module->module~tem_spacetime_var_module module~tem_derived_module->module~tem_variable_module module~tem_varmap_module->module~tem_spacetime_fun_module module~tem_varmap_module->module~tem_spacetime_var_module module~tem_operation_var_module tem_operation_var_module module~tem_operation_var_module->module~tem_variable_module module~tem_operation_var_module->module~tem_varmap_module module~hvs_output_module hvs_output_module module~hvs_output_module->module~tem_varmap_module module~tem_depend_module tem_depend_module module~tem_depend_module->module~tem_varmap_module module~tem_restart_module tem_restart_module module~tem_restart_module->module~tem_varmap_module module~tem_convergence_module tem_convergence_module module~tem_convergence_module->module~tem_varmap_module module~tem_tracking_module tem_tracking_module module~tem_tracking_module->module~tem_varmap_module

Contents


Derived Types

type, public ::  tem_pmlLayer_type

This type contains datas to define PML layer.

Components

Type Visibility Attributes Name Initial
real(kind=rk), public :: plane_origin(3)

Plane origin

real(kind=rk), public :: plane_normal(3)

Plane normal

real(kind=rk), public :: dampFactor

Damp factor for the Layer

integer, public :: dampExponent

Damping exponent for the layer


Functions

public function tem_evaluate_pml(me, ncomp, coord, n) result(res)

Calculate damping functions times normal and derivatives times normal for the PML evaluation.

Arguments

Type IntentOptional Attributes Name
type(tem_pmlLayer_type) :: me

Spacetime function to evaluate

integer, intent(in) :: ncomp

Number of entrys in each array

real(kind=rk), intent(in) :: coord(n,3)

barycentric Ids of an elements. 1st index goes over number of elements and 2nd index goes over x,y,z coordinates

integer, intent(in) :: n

Number of arrays to return

Return Value real(kind=rk), (n,ncomp)

return value


Subroutines

public subroutine tem_load_pmlLayer(conf, thandle, me)

Load definition of the PML damping term.

Arguments

Type IntentOptional Attributes Name
type(flu_State) :: conf

lua state type

integer, intent(in) :: thandle

aotus parent handle

type(tem_pmlLayer_type), intent(out) :: me

Global pmlLayer data type