atl_evalElemMaterial Subroutine

private subroutine atl_evalElemMaterial(mesh, scheme, material, materialFun, time, poly_proj, mode_reduction, time_weights, proc, commPattern)

Evaluates the material properties for all elements contained in the computeElems variable of the material_desc datatype.

@note Todo PV 20151027 Write unit tests for this routine as I'm not sure whether the index calculations around nScalars and iMat do what they are supposed to do.

if (.not. associated (material%material_desc%material_elems(levelindex, iMat) & & %stFunPtr )) then write(,) '++++++++POINTER is not set!!++++++++++' end if

Arguments

Type IntentOptional Attributes Name
type(atl_cube_elem_type), intent(inout) :: mesh

Description of the mesh

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

Information about the scheme

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

The description of the material properties. The compute lists in the material description is filled up by calling this subroutine. The indizes of variables in the global varSys that are used as material's, penalization's or whatever's data sources.

This data is needed to calculate the number of total material components.

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

The current simulation time

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

Projection method for current level

type(atl_mode_reduction_type), intent(in) :: mode_reduction

Settings for mode reduction. Used to determine which element can be calculated with reduced computational effort due to mode reduction.

logical, intent(in), optional :: time_weights
type(tem_comm_env_type), intent(inout) :: proc

Communication environment

type(tem_commPattern_type), intent(inout) :: commPattern

mpi communication pattern type


Calls

proc~~atl_evalelemmaterial~~CallsGraph proc~atl_evalelemmaterial atl_evalElemMaterial neigh neigh proc~atl_evalelemmaterial->neigh nelems nelems proc~atl_evalelemmaterial->nelems nghelems nghelems proc~atl_evalelemmaterial->nghelems pnttid pnttid proc~atl_evalelemmaterial->pnttid proc~atl_reftophyscoord atl_refToPhysCoord proc~atl_evalelemmaterial->proc~atl_reftophyscoord tem_abort tem_abort proc~atl_evalelemmaterial->tem_abort tem_spacetime_for tem_spacetime_for proc~atl_evalelemmaterial->tem_spacetime_for tem_startTimer tem_startTimer proc~atl_evalelemmaterial->tem_startTimer tem_stopTimer tem_stopTimer proc~atl_evalelemmaterial->tem_stopTimer

Called by

proc~~atl_evalelemmaterial~~CalledByGraph proc~atl_evalelemmaterial atl_evalElemMaterial proc~atl_init_materialparams atl_init_materialParams proc~atl_init_materialparams->proc~atl_evalelemmaterial proc~atl_update_materialparams atl_update_materialParams proc~atl_update_materialparams->proc~atl_evalelemmaterial proc~atl_initialize atl_initialize proc~atl_initialize->proc~atl_init_materialparams proc~atl_preprocess_modg_1d_kernel atl_preprocess_modg_1d_kernel proc~atl_preprocess_modg_1d_kernel->proc~atl_update_materialparams proc~atl_preprocess_modg_2d_kernel atl_preprocess_modg_2d_kernel proc~atl_preprocess_modg_2d_kernel->proc~atl_update_materialparams proc~atl_preprocess_modg_kernel atl_preprocess_modg_kernel proc~atl_preprocess_modg_kernel->proc~atl_update_materialparams proc~atl_initialize_program atl_initialize_program proc~atl_initialize_program->proc~atl_initialize proc~preprocess_local_rhs_cubes preprocess_local_rhs_cubes proc~preprocess_local_rhs_cubes->proc~atl_preprocess_modg_kernel proc~preprocess_rhs_cubes preprocess_rhs_cubes proc~preprocess_rhs_cubes->proc~atl_preprocess_modg_1d_kernel proc~preprocess_rhs_cubes->proc~atl_preprocess_modg_2d_kernel proc~preprocess_rhs_cubes->proc~atl_preprocess_modg_kernel program~atl_harvesting atl_harvesting program~atl_harvesting->proc~atl_initialize interface~atl_preprocess_local_rhs atl_preprocess_local_rhs interface~atl_preprocess_local_rhs->proc~preprocess_local_rhs_cubes interface~atl_preprocess_rhs atl_preprocess_rhs interface~atl_preprocess_rhs->proc~preprocess_rhs_cubes program~ateles ateles program~ateles->proc~atl_initialize_program