atl_eqn_maxwelldivcorr_var_module Module

equations with divergence correction



Subroutines

public subroutine atl_init_maxwellDivCorr_vars(equation, methodData)

init the variables for maxwell equation

Read more…

Arguments

Type IntentOptional Attributes Name
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

Type IntentOptional Attributes Name
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

Type IntentOptional Attributes Name
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

Type IntentOptional Attributes Name
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

Type IntentOptional Attributes Name
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)

evaluate "currentDensity" source

Read more…

Arguments

Type IntentOptional Attributes Name
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)

evaluate "charge" source

Read more…

Arguments

Type IntentOptional Attributes Name
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.