create_target Subroutine

public subroutine create_target(node_pos, proto, geometry, leVal, meshUniverse, header, temData)

Routine to create an element with subelement resolution.

This routine is used to define a target element, that is a node, that reached its final level, but contains boundaries, that are to be resolved on a subelement basis. For the treelmesh, this is just a normal element with additional information attached to it. That additional information is covered by a property. For the actual information in the subelement resolution, the children of the target node need to be considered. We use a separate routine for this case, as it is ensured, that this element never will be refined, due to adjacent boundaries. (Any such refinement was already done during the building of the protoTree). Also we will ignore Q-Value complications here for the identification of boundaries. If subelement resolution is active, no Q-Values might be used and the other way around.

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: node_pos

Position of leaf in the preliminary tree

type(sdr_protoTree_type), intent(in) :: proto

preliminary tree

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

contains all geometrical objects

type(levelValues_type), intent(in) :: leVal

level value of parent node

type(treelmesh_type), intent(inout) :: meshUniverse

contains bounding cube information

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

Configuration header.

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

Data for the final mesh.


Calls

proc~~create_target~~CallsGraph proc~create_target create_target 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 val val proc~create_target->val proc~sdr_color_points->sdr_nodeprop_btest proc~sdr_color_points->val proc~sdr_find_periodic_neighbor->sdr_nodeprop_btest proc~sdr_find_periodic_neighbor->tem_CoordOfId proc~sdr_find_periodic_neighbor->tem_abort proc~sdr_find_periodic_neighbor->val kindpos kindpos proc~sdr_find_periodic_neighbor->kindpos proc~gettreeidposofcoord getTreeIDPosOfCoord proc~sdr_find_periodic_neighbor->proc~gettreeidposofcoord proc~needcalcqvalbybcid needCalcQValByBCID proc~sdr_find_periodic_neighbor->proc~needcalcqvalbybcid proc~projectveconplane projectVecOnPlane proc~sdr_find_periodic_neighbor->proc~projectveconplane proc~sdr_qvalbynode sdr_qValByNode proc~sdr_find_periodic_neighbor->proc~sdr_qvalbynode proc~sdr_truncate_qval sdr_truncate_qVal proc~sdr_find_periodic_neighbor->proc~sdr_truncate_qval tem_BaryOfId tem_BaryOfId proc~sdr_find_periodic_neighbor->tem_BaryOfId tem_CoordOfReal tem_CoordOfReal proc~sdr_find_periodic_neighbor->tem_CoordOfReal tem_IdOfCoord tem_IdOfCoord proc~sdr_find_periodic_neighbor->tem_IdOfCoord proc~sdr_neighbor_in_proto->positionofval proc~sdr_neighbor_in_proto->tem_IdOfCoord tem_ParentOf tem_ParentOf proc~sdr_neighbor_in_proto->tem_ParentOf proc~gettreeidposofcoord->positionofval proc~gettreeidposofcoord->sdr_nodeprop_btest proc~gettreeidposofcoord->tem_CoordOfReal proc~gettreeidposofcoord->tem_IdOfCoord proc~needcalcqvalbybcid->val proc~needcalcqvalbybcid->kindpos proc~sdr_qvalbynode->val fraction_PointLine fraction_PointLine proc~sdr_qvalbynode->fraction_PointLine intersect_RayTriangle intersect_RayTriangle proc~sdr_qvalbynode->intersect_RayTriangle proc~sdr_truncate_qval->sdr_nodeprop_btest

Called by

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