generate_treelm_elements Subroutine

private subroutine generate_treelm_elements(me, origin, length, elementcount, myPart, nParts, comm, predefined, bclabel)

Generate a predefined line with a given number of elements

This serves as an simple grid generation for performance or scaling analysis without being obliged to use Seeder. You have to specify the generic grid parameters in the lua file instead of the mesh folder

mesh = { predefined='line', -- or: 'line_bounded'
         origin = {0.,0.,0.},
         length = 10.,
         elementcount = 6 }

You have to specify the shape 'line', a bounding box origin, its length and the number of elements, which results in different amount elements in the grid.\n The result of this routine is mainly the treeID list with the additional lists for saving the properties. The generated line will be a line of elementcount elements along the X-Axis with periodicity in all directions.

It is also possible to generate a mesh with boundary conditions in the X direction (west and east), by using the predefined 'line_bounded'. In this case these two boundary conditions need to be provided in the solver configuration.

Arguments

TypeIntentOptionalAttributesName
type(treelmesh_type), intent(out) :: me

Mesh to generate

real(kind=rk), intent(in) :: origin(3)

Corner of the cube

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

Length of cube

integer, intent(in) :: elementcount

Number of elements in the line

integer, intent(in) :: myPart

Partition of the caller (starts with 0)

integer, intent(in) :: nParts

Number of partitions

integer, intent(in) :: comm

communicator to be used

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

Label describing the internal mesh.

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

Label describing the boundary conditions to set for this mesh.


Calls

proc~~generate_treelm_elements~~CallsGraph proc~generate_treelm_elements generate_treelm_elements proc~tem_firstidatlevel tem_FirstIdAtLevel proc~generate_treelm_elements->proc~tem_firstidatlevel proc~tem_idofcoord tem_IdOfCoord proc~generate_treelm_elements->proc~tem_idofcoord

Called by

proc~~generate_treelm_elements~~CalledByGraph proc~generate_treelm_elements generate_treelm_elements proc~tem_load_internal tem_load_internal proc~tem_load_internal->proc~generate_treelm_elements proc~load_tem load_tem proc~load_tem->proc~tem_load_internal proc~load_env load_env proc~load_env->proc~load_tem proc~tem_restart_readheader tem_restart_readHeader proc~tem_restart_readheader->proc~load_tem program~tem_varsys_statevar_test tem_varSys_stateVar_test program~tem_varsys_statevar_test->proc~load_env proc~check_parallel_singlelevel_facedesc check_parallel_singlelevel_faceDesc proc~check_parallel_singlelevel_facedesc->proc~load_env program~tem_varsys_opvar_test tem_varSys_opVar_test program~tem_varsys_opvar_test->proc~load_env program~tem_variable_extract_test tem_variable_extract_test program~tem_variable_extract_test->proc~load_env program~tem_varsys_test tem_varSys_test program~tem_varsys_test->proc~load_env proc~check_serial_singlelevel_facedesc check_serial_singlelevel_faceDesc proc~check_serial_singlelevel_facedesc->proc~load_env proc~tem_load_restart tem_load_restart proc~tem_load_restart->proc~tem_restart_readheader program~tem_varsys_stfunvar_test tem_varSys_stfunVar_test program~tem_varsys_stfunvar_test->proc~load_env program~tem_variable_evaltype_test tem_variable_evaltype_test program~tem_variable_evaltype_test->proc~load_env proc~check_variableoperations check_variableOperations proc~check_variableoperations->proc~load_env program~tem_variable_combine_test tem_variable_combine_Test program~tem_variable_combine_test->proc~load_env program~tem_spacetime_fun_test tem_spacetime_fun_test program~tem_spacetime_fun_test->proc~load_env program~tem_varsys_derivevar_test tem_varSys_deriveVar_test program~tem_varsys_derivevar_test->proc~load_env

Contents


Variables

TypeVisibilityAttributesNameInitial
integer, private :: level
integer(kind=long_k), private :: firstID
integer(kind=long_k), private :: lastID
integer(kind=long_k), private :: share
integer, private :: remainder
integer, private :: iPart
integer, private :: iElem
integer, private :: coord(4)
integer, private :: lastcoord
integer, private :: xbound_pad