atl_eqn_euler_2d_var_module Module

Module to configure the variables of the Euler equations.


Uses

Used by

  • module~~atl_eqn_euler_2d_var_module~~UsedByGraph module~atl_eqn_euler_2d_var_module atl_eqn_euler_2d_var_module module~atl_eqn_euler_hlp_module atl_eqn_euler_hlp_module module~atl_eqn_euler_hlp_module->module~atl_eqn_euler_2d_var_module module~atl_eqn_nvrstk_hlp_module atl_eqn_nvrstk_hlp_module module~atl_eqn_nvrstk_hlp_module->module~atl_eqn_euler_2d_var_module module~atl_eqn_nvrstk_hlp_module->module~atl_eqn_euler_hlp_module module~atl_equation_init_module atl_equation_init_module module~atl_equation_init_module->module~atl_eqn_euler_hlp_module module~atl_equation_init_module->module~atl_eqn_nvrstk_hlp_module proc~implicit_update implicit_update proc~implicit_update->module~atl_eqn_euler_hlp_module module~atl_initialize_module atl_initialize_module module~atl_initialize_module->module~atl_equation_init_module module~atl_program_module atl_program_module module~atl_program_module->module~atl_initialize_module program~atl_harvesting atl_harvesting program~atl_harvesting->module~atl_initialize_module

Subroutines

public subroutine atl_init_euler_2d_vars(equation, solverData)

Init the variable system for Euler (inviscid) flow simulations.

Read more…

Arguments

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

The equation system

type(atl_varSys_solverData_type) :: solverData

the pointer to the data required for the varsys

public subroutine atl_append_euler_2d_consVars(equation, solverData)

Append conservative variables for Euler equations.

Read more…

Arguments

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

The equation type .

type(atl_varSys_solverData_type), target :: solverData

the pointer to the data required for the varsys

public subroutine atl_append_euler_2d_primVars(varSys, primVar, solverData)

Append primitive variables for euler equation

Read more…

Arguments

Type IntentOptional Attributes Name
type(tem_varSys_type), intent(inout) :: varSys

The Euler variable system to modify, it has to contain the conservative variables already.

integer, intent(out), allocatable :: primVar(:)

Indices of the primitive variables in the overall system.

type(atl_varSys_solverData_type), target :: solverData

the pointer to the data required for the varsys to fulfill all operations and derivations on the variables

public subroutine atl_append_euler_2d_derivedVars(varSys, solverData)

a p p e n d

/

s e t

d a t a

o f

d e r i v e d

q u a n t i t i e s

Read more…

Arguments

Type IntentOptional Attributes Name
type(tem_varSys_type), intent(inout) :: varSys
type(atl_varSys_solverData_type), target :: solverData

the pointer to the data required for the varsys to fulfill all operations and derivations on the variables

public subroutine atl_init_euler_2d_sourceTerms(possVars, eval_source)

This routine initializes possible source variables and returns the filled up list of the poss_srcVars

Arguments

Type IntentOptional Attributes Name
type(tem_possible_variable_type), intent(inout) :: possVars
type(atl_eqn_sourceMap_type), intent(out), allocatable :: eval_source(:)

private subroutine outputAppendResult(wasAdded, varName)

Outputs the result of appending a variable. If appending was not successful, the program is aborted.

Arguments

Type IntentOptional Attributes Name
logical, intent(in) :: wasAdded

The result of the append call

character(len=*), intent(in) :: varName

The name of the variable was appended (or not)

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

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_gravitation_2d(fun, varSys, time, mesh, poly_proj, currentLevel, state, material, sourcedata)

PV: Create a unit test for this routine and compare it to the version before the new varSys

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.

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

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_arbitrary_2d(fun, varSys, time, mesh, poly_proj, currentLevel, state, material, sourcedata)

PV: Create a unit test for this routine and compare it to the version before the new varSys

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.