atl_eqn_maxwelldivcorr_var_module Module

equations with divergence correction


Uses

Used by

  • module~~atl_eqn_maxwelldivcorr_var_module~~UsedByGraph module~atl_eqn_maxwelldivcorr_var_module atl_eqn_maxwelldivcorr_var_module module~atl_materialini_module atl_materialIni_module module~atl_materialini_module->module~atl_eqn_maxwelldivcorr_var_module module~atl_eqn_maxwell_hlp_module atl_eqn_maxwell_hlp_module module~atl_eqn_maxwell_hlp_module->module~atl_eqn_maxwelldivcorr_var_module module~atl_modg_2d_kernel_module atl_modg_2d_kernel_module module~atl_modg_2d_kernel_module->module~atl_materialini_module module~atl_initialize_module atl_initialize_module module~atl_initialize_module->module~atl_materialini_module module~atl_equation_init_module atl_equation_init_module module~atl_initialize_module->module~atl_equation_init_module module~atl_container_module atl_container_module module~atl_initialize_module->module~atl_container_module module~atl_modg_kernel_module atl_modg_kernel_module module~atl_modg_kernel_module->module~atl_materialini_module proc~implicit_update implicit_update proc~implicit_update->module~atl_eqn_maxwell_hlp_module module~atl_modg_1d_kernel_module atl_modg_1d_kernel_module module~atl_modg_1d_kernel_module->module~atl_materialini_module module~atl_equation_init_module->module~atl_eqn_maxwell_hlp_module module~atl_program_module atl_program_module module~atl_program_module->module~atl_initialize_module module~atl_program_module->module~atl_container_module proc~compute_rhs_cubes_modg_1d compute_rhs_cubes_modg_1d proc~compute_rhs_cubes_modg_1d->module~atl_modg_1d_kernel_module module~atl_compute_local_module atl_compute_local_module module~atl_compute_local_module->module~atl_modg_kernel_module proc~modg_1d_compute_project_physflux modg_1d_compute_project_physFlux proc~modg_1d_compute_project_physflux->module~atl_modg_1d_kernel_module proc~compute_rhs_cubes_modg_2d compute_rhs_cubes_modg_2d proc~compute_rhs_cubes_modg_2d->module~atl_modg_2d_kernel_module proc~compute_rhs_cubes_modg compute_rhs_cubes_modg proc~compute_rhs_cubes_modg->module~atl_modg_kernel_module proc~postprocess_rhs_cubes postprocess_rhs_cubes proc~postprocess_rhs_cubes->module~atl_modg_2d_kernel_module proc~postprocess_rhs_cubes->module~atl_modg_kernel_module proc~postprocess_rhs_cubes->module~atl_modg_1d_kernel_module module~atl_container_module->module~atl_modg_2d_kernel_module module~atl_container_module->module~atl_modg_kernel_module module~atl_container_module->module~atl_modg_1d_kernel_module program~atl_harvesting atl_harvesting program~atl_harvesting->module~atl_initialize_module program~atl_harvesting->module~atl_program_module program~atl_harvesting->module~atl_container_module proc~preprocess_rhs_cubes preprocess_rhs_cubes proc~preprocess_rhs_cubes->module~atl_modg_2d_kernel_module proc~preprocess_rhs_cubes->module~atl_modg_kernel_module proc~preprocess_rhs_cubes->module~atl_modg_1d_kernel_module program~ateles ateles program~ateles->module~atl_program_module program~ateles->module~atl_container_module module~atl_predcor_cerk4_module atl_predcor_cerk4_module module~atl_predcor_cerk4_module->module~atl_compute_local_module

Contents


Subroutines

public subroutine atl_init_maxwellDivCorr_vars(equation, methodData)

Arguments

TypeIntentOptionalAttributesName
type(atl_Equations_type), intent(inout) :: equation

The equation system

type(atl_varSys_solverData_type) :: methodData

the pointer to the data required for the varsys

public subroutine atl_append_maxwellDivCorr_vars(equation, methodData)

append the variables for electrodynamic simulations that include

Read more…

Arguments

TypeIntentOptionalAttributesName
type(atl_Equations_type), intent(inout) :: equation

The equation system

type(atl_varSys_solverData_type), target:: methodData

the pointer to the data required for the varsys

public subroutine atl_init_maxwellDivCorr_sourceTerms(possVars, eval_source)

init source terms for electrodynamic simulations with divergence

Read more…

Arguments

TypeIntentOptionalAttributesName
type(tem_possible_variable_type), intent(out) :: possVars
type(atl_eqn_sourceMap_type), intent(out), allocatable:: eval_source(:)

public subroutine atl_init_maxwellDivCorr_material(possVars)

Adds the properties of the expected source terms to the list of possible variables to extract these expected variables later on from the configuration file.

Arguments

TypeIntentOptionalAttributesName
type(tem_possible_variable_type), intent(out) :: possVars

public subroutine atl_getMaxPropSpeedDivCor(tree, materialFun, material_list)

Determines maximum propagation speed for Maxwell equation with divergence cleaning (hyperbolic), i.e. the speed of light depends only on material parameters.

Arguments

TypeIntentOptionalAttributesName
type(treelmesh_type), intent(in) :: tree

Mesh data in treelmesh format.

type(atl_materialFun_type), intent(in) :: materialFun

Information about the material parameters. Used to figure out the order of the material paramters as well as the number of components.

type(atl_material_type), intent(inout) :: material_list(tree%global%minLevel:tree%global%maxLevel)

The description of the material properties. The compute lists in the material description is filled up by calling this subroutine.

private subroutine eval_charge(rhs, source, state, constants)

Arguments

TypeIntentOptionalAttributesName
real(kind=rk), intent(inout) :: rhs(:,:)

The Right Hand side to be updated

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

The source data to be used

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

The state in the modal form

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

the constants required for the evaluation of source

private subroutine eval_source_charge(fun, varSys, time, mesh, poly_proj, currentLevel, state, material, sourcedata)

Arguments

TypeIntentOptionalAttributesName
class(atl_source_op_type), intent(in) :: fun

Description of method to update source

type(tem_varSys_type), intent(in) :: varSys

variable system

type(tem_time_type), intent(in) :: time

Point in time at which to evaluate the variable.

type(atl_cube_elem_type), intent(in) :: mesh

Current level mesh information

type(ply_poly_project_type), intent(inout) :: poly_proj

Parameters for projection

integer, intent(in) :: currentLevel

current level

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

The state in modal space. This is needed for several source terms that have to be applied to the current state

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

Material description for the complete domain. Used for evaluation of some source terms.

real(kind=rk), intent(inout) :: sourcedata(:,:,:)

The source data to update. When all source terms are added to this buffer, it is applied to the state.