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

TypeIntentOptionalAttributesName
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 proc~tem_coordofid tem_CoordOfId proc~create_target->proc~tem_coordofid proc~sdr_nodeprop_btest sdr_nodeProp_btest proc~create_target->proc~sdr_nodeprop_btest proc~ply_convertfromoversample ply_convertFromOversample proc~create_target->proc~ply_convertfromoversample proc~sdr_color_log2char sdr_color_log2char proc~create_target->proc~sdr_color_log2char proc~sdr_find_periodic_neighbor sdr_find_periodic_neighbor proc~create_target->proc~sdr_find_periodic_neighbor interface~ply_poly_project_n2m ply_poly_project_n2m proc~create_target->interface~ply_poly_project_n2m proc~tem_abort tem_abort proc~create_target->proc~tem_abort proc~newunit newunit proc~create_target->proc~newunit proc~sdr_color_points sdr_color_points proc~create_target->proc~sdr_color_points proc~sdr_bitfieldcolors sdr_bitfieldColors proc~create_target->proc~sdr_bitfieldcolors interface~append~10 append proc~create_target->interface~append~10 interface~positionofval~3 positionofval proc~create_target->interface~positionofval~3 proc~sdr_neighbor_in_proto sdr_neighbor_in_proto proc~create_target->proc~sdr_neighbor_in_proto proc~ply_convertfromoversample_2d ply_convertFromOversample_2d proc~ply_convertfromoversample->proc~ply_convertfromoversample_2d proc~ply_convertfromoversample_1d ply_convertFromOversample_1d proc~ply_convertfromoversample->proc~ply_convertfromoversample_1d proc~ply_convertfromoversample_3d ply_convertFromOversample_3d proc~ply_convertfromoversample->proc~ply_convertfromoversample_3d proc~sdr_find_periodic_neighbor->proc~tem_coordofid proc~sdr_find_periodic_neighbor->proc~sdr_nodeprop_btest proc~sdr_find_periodic_neighbor->proc~tem_abort proc~tem_baryofid tem_BaryOfId proc~sdr_find_periodic_neighbor->proc~tem_baryofid proc~sdr_qvalbynode sdr_qValByNode proc~sdr_find_periodic_neighbor->proc~sdr_qvalbynode proc~needcalcqvalbybcid needCalcQValByBCID proc~sdr_find_periodic_neighbor->proc~needcalcqvalbybcid proc~tem_coordofreal tem_CoordOfReal proc~sdr_find_periodic_neighbor->proc~tem_coordofreal proc~projectveconplane projectVecOnPlane proc~sdr_find_periodic_neighbor->proc~projectveconplane proc~tem_idofcoord tem_IdOfCoord proc~sdr_find_periodic_neighbor->proc~tem_idofcoord proc~gettreeidposofcoord getTreeIDPosOfCoord proc~sdr_find_periodic_neighbor->proc~gettreeidposofcoord proc~sdr_truncate_qval sdr_truncate_qVal proc~sdr_find_periodic_neighbor->proc~sdr_truncate_qval proc~ply_poly_project_n2m_multivar ply_poly_project_n2m_multiVar interface~ply_poly_project_n2m->proc~ply_poly_project_n2m_multivar proc~sdr_color_points->proc~sdr_nodeprop_btest proc~sdr_neighbor_in_proto->interface~positionofval~3 interface~tem_parentof tem_ParentOf proc~sdr_neighbor_in_proto->interface~tem_parentof proc~sdr_neighbor_in_proto->proc~tem_idofcoord

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

Contents


Variables

TypeVisibilityAttributesNameInitial
character, public :: nodecolors(proto%node%nColorChars)
character, public :: subresolved_colors(proto%node%nColorChars)
integer, public :: nodepropbits(proto%node%propLength)
logical, public :: color_subresolved(proto%node%nColors)
logical, public :: color_subresflooded(proto%node%nColors)
integer(kind=long_k), public :: nodeID
integer(kind=long_k), public :: propBits
integer, public :: nObjects
integer, public :: obj_pos
integer, public :: iDir
integer, public :: iObject
integer, public :: iColor
integer, public :: attr_kind
integer, public :: attr_pos
integer, public :: bc_color
integer, public :: bcid
integer, public :: col_int
integer, public :: col_bit
integer, public :: node_coord(4)
type(sdr_cube_type), public :: node_cube
integer(kind=long_k), public :: BC_ID(qQQQ)
integer(kind=long_k), public :: fallback_bc
integer, public :: neighbor_pos
integer, public :: neighbor_level
real(kind=rk), public :: dummy_qval
logical, public :: testall
character(len=LabelLen), public :: col_name
character(len=4), public :: EndianSuffix
integer, public :: subres_pos
real(kind=rk), public, allocatable:: color_modes(:,:)
real(kind=rk), public, allocatable:: color_oversampled(:,:)
real(kind=rk), public, allocatable:: color_nodes(:,:)
real(kind=rk), public :: elemvol
integer, public :: rl
integer, public :: nDofs
integer, public :: nPoints
integer, public :: nOversampled
integer, public :: record
integer, public :: intersected_first
integer, public :: intersected_last
logical, public :: unKnownBnd