sdr_proto2treelm Subroutine

public subroutine sdr_proto2treelm(proto, geometry, temData, header)

This subroutine creates the treelmesh from the flooded prototree.

It will create the treelmesh out of all flooded elements and refine those leaves intersected by a refinement object. This routine will also identify the elements with boundary conditions and store the boundary information accordingly. Please keep in mind, that the flooding only considered the 6 face neighbors, while we create boundary informations for all 26 neighbors.

Todo

Neighbors that do not intersect boundary objects. This means, that it might happen, that any of the 20 further neighbors does not actually intersect a boundary object. We need to deal with this case properly. For example, a boundary condition might be selected based on the adjacent face neighbors for the direction in question.

Arguments

Type IntentOptional Attributes Name
type(sdr_protoTree_type), intent(inout) :: proto

preliminary tree

type(sdr_geometry_type), intent(in) :: geometry

contains all geometrical objects

type(sdr_temData_type), intent(inout) :: temData

temData contains final mesh created by this routine

type(sdr_confHead_type), intent(inout) :: header

Header data.


Calls

proc~~sdr_proto2treelm~~CallsGraph proc~sdr_proto2treelm sdr_proto2treelm init init proc~sdr_proto2treelm->init ply_poly_project_fillbody ply_poly_project_fillbody proc~sdr_proto2treelm->ply_poly_project_fillbody proc~traverse_tree traverse_tree proc~sdr_proto2treelm->proc~traverse_tree tem_FirstIdAtLevel tem_FirstIdAtLevel proc~sdr_proto2treelm->tem_FirstIdAtLevel tem_startTimer tem_startTimer proc~sdr_proto2treelm->tem_startTimer tem_stopTimer tem_stopTimer proc~sdr_proto2treelm->tem_stopTimer proc~traverse_tree->proc~traverse_tree proc~traverse_tree->tem_FirstIdAtLevel proc~create_target create_target proc~traverse_tree->proc~create_target proc~proto2treelm proto2Treelm proc~traverse_tree->proc~proto2treelm sdr_nodecolors sdr_nodecolors proc~traverse_tree->sdr_nodecolors val val proc~traverse_tree->val proc~create_target->val append append proc~create_target->append bc_color_id bc_color_id proc~create_target->bc_color_id newunit newunit proc~create_target->newunit ply_convertfromoversample ply_convertfromoversample proc~create_target->ply_convertfromoversample ply_poly_project_n2m ply_poly_project_n2m proc~create_target->ply_poly_project_n2m positionofval positionofval proc~create_target->positionofval proc~sdr_color_points sdr_color_points proc~create_target->proc~sdr_color_points proc~sdr_find_periodic_neighbor sdr_find_periodic_neighbor proc~create_target->proc~sdr_find_periodic_neighbor proc~sdr_neighbor_in_proto sdr_neighbor_in_proto proc~create_target->proc~sdr_neighbor_in_proto sdr_bitfieldcolors sdr_bitfieldcolors proc~create_target->sdr_bitfieldcolors sdr_color_log2char sdr_color_log2char proc~create_target->sdr_color_log2char sdr_nodeprop_btest sdr_nodeprop_btest proc~create_target->sdr_nodeprop_btest tem_CoordOfId tem_CoordOfId proc~create_target->tem_CoordOfId tem_abort tem_abort proc~create_target->tem_abort proc~proto2treelm->val proc~proto2treelm->append proc~sdr_identify_boundary sdr_identify_boundary proc~proto2treelm->proc~sdr_identify_boundary proc~proto2treelm->tem_CoordOfId

Called by

proc~~sdr_proto2treelm~~CalledByGraph proc~sdr_proto2treelm sdr_proto2treelm program~seeder seeder program~seeder->proc~sdr_proto2treelm