atl_source_module Module

Provides routines to initialize and update source terms (accumulate the RHS of the PDE)


Uses

Used by

  • module~~atl_source_module~~UsedByGraph module~atl_source_module atl_source_module module~atl_compute_module atl_compute_module module~atl_compute_module->module~atl_source_module module~atl_initialize_module atl_initialize_module module~atl_initialize_module->module~atl_source_module module~atl_program_module atl_program_module module~atl_program_module->module~atl_source_module module~atl_program_module->module~atl_initialize_module module~atl_global_time_integration_module atl_global_time_integration_module module~atl_program_module->module~atl_global_time_integration_module proc~compute_rhs_cubes compute_rhs_cubes proc~compute_rhs_cubes->module~atl_source_module module~atl_fwdeuler_module atl_fwdEuler_module module~atl_fwdeuler_module->module~atl_compute_module module~atl_rk4_module atl_rk4_module module~atl_rk4_module->module~atl_compute_module module~atl_rktaylor_module atl_rktaylor_module module~atl_rktaylor_module->module~atl_compute_module module~atl_ssprk2_module atl_ssprk2_module module~atl_ssprk2_module->module~atl_compute_module proc~global_corrector_substep global_corrector_substep proc~global_corrector_substep->module~atl_compute_module proc~imexrk_substep imexrk_substep proc~imexrk_substep->module~atl_compute_module program~ateles ateles program~ateles->module~atl_program_module program~atl_harvesting atl_harvesting program~atl_harvesting->module~atl_initialize_module program~atl_harvesting->module~atl_program_module module~atl_global_time_integration_module->module~atl_fwdeuler_module module~atl_global_time_integration_module->module~atl_rk4_module module~atl_global_time_integration_module->module~atl_rktaylor_module module~atl_global_time_integration_module->module~atl_ssprk2_module module~atl_container_module atl_container_module module~atl_container_module->module~atl_global_time_integration_module

Subroutines

public subroutine atl_initialize_sources(source, initSource, conf, equation, poly_proj_list, mesh_list, tree, varSys_data)

Arguments

Type IntentOptional Attributes Name
type(atl_source_type), intent(inout) :: source

Instance of atl_source_type to be initialized. This instance will contain the source definitions from lua as well as the corresponding variables in the global variable system.

type(atl_init_source_type), intent(in) :: initSource

Initialize source type contains possible source terms and function pointers to update those source terms

type(flu_State), intent(inout) :: conf

lua state

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

Description on the equation system to solve.

type(ply_poly_project_type), intent(in) :: poly_proj_list(:)

unique list for projection methods

type(atl_cube_elem_type), intent(in) :: mesh_list(tree%global%minLevel:)

Mesh list to access the level descriptors

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

Mesh data in treelmesh format.

type(atl_varSys_solverData_type), intent(in), target :: varSys_data

public subroutine atl_append_newSourceVars(me, varSys, varSys_data, poss_srcVars, eval_source)

Arguments

Type IntentOptional Attributes Name
type(atl_source_type), intent(inout) :: me

Instance of atl_source_type to be initialized. This instance will contain the source definitions from lua as well as the corresponding variables in the global variable system.

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

The variable system to which the souce variables have to be added

type(atl_varSys_solverData_type), intent(in), target :: varSys_data

Data for the variable System

type(tem_possible_variable_type) :: poss_srcVars

The list of possible source variables. This is used to determine the index of the eval-source_routine in eval_source.

type(atl_eqn_sourceMap_type), allocatable :: eval_source(:)

List of function pointers for each possible source to apply the source term to the state.

public subroutine atl_fill_sourceIndex(source, varSys, nDim, tree, poly_proj_list, mesh_list)

Create source elements list for given source variable

Read more…

Arguments

Type IntentOptional Attributes Name
type(atl_source_type), intent(inout) :: source

Instance of atl_source_type to be initialized. This instance will contain the source definitions from lua as well as the corresponding variables in the global variable system.

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

global variable system

integer, intent(in) :: nDim

equation nDimensions

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

global treelm mesh

type(ply_poly_project_type), intent(in), target :: poly_proj_list(:)

unique list for projection methods

type(atl_cube_elem_type), intent(in) :: mesh_list(tree%global%minLevel:)

Mesh list to access the level descriptors

public subroutine atl_source_prim2cons(equation, source, varSys)

This routine converts primitive variables in source terms to convervative

Arguments

Type IntentOptional Attributes Name
type(atl_Equations_type), intent(in) :: equation
type(atl_source_type), intent(in) :: source
type(tem_varSys_type), intent(in) :: varSys

public subroutine atl_update_sourcedata(equation, time, mesh, poly_proj, currentLevel, state, material, source, scheme)

s u b r o u t i n e

t o

c a l c u l a t e

t h e

R H S

o f

t h e

P D E

f r o m

t h e

s u m

o f

a l l

Read more…

Arguments

Type IntentOptional Attributes Name
type(atl_Equations_type), intent(in) :: equation

The equation with source term data

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

current time

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

Current level mesh information

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

The projection used for update the source terms for.

integer, intent(in) :: currentLevel

The current Level

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

state vector (sources may depend on the state)

type(atl_material_type), intent(inout) :: material

The material description.

type(atl_source_type), intent(inout) :: source

sources for this level

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

The scheme you update the source terms for.

public subroutine atl_allocate_sourceData(source, nDofs, nComponents)

Arguments

Type IntentOptional Attributes Name
type(atl_source_type), intent(inout) :: source
integer, intent(in) :: nDofs
integer, intent(in) :: nComponents

public subroutine atl_deallocate_sourceData(source)

Deallocates the array for storing the sourceData for the currentLevel

Arguments

Type IntentOptional Attributes Name
type(atl_source_type), intent(inout) :: source

Levelwise list of sources