tem_PosOfId Function

public pure function tem_PosOfId(sTreeID, treeIDlist, lower, upper) result(IdPos)

This subroutine does a binary search on a given (sparse) list of elements. The result is the position of the given tree ID in the list, 0 if no corresponding node is found, or the negative of the found ID, if it is a virtual node.

Build the path to the searched TreeID from the leaf to the root.

Arguments

TypeIntentOptionalAttributesName
integer(kind=long_k), intent(in) :: sTreeID

tree ID to search for

integer(kind=long_k), intent(in) :: treeIDlist(:)

List to search in

integer, intent(in), optional :: lower

lowerbound of search interval

integer, intent(in), optional :: upper

upperbound of search interval

Return Value integer

position of sTreeID in the list of elements


Calls

proc~~tem_posofid~~CallsGraph proc~tem_posofid tem_PosOfId proc~tem_pathof tem_PathOf proc~tem_posofid->proc~tem_pathof proc~tem_pathcomparison tem_PathComparison proc~tem_posofid->proc~tem_pathcomparison

Called by

proc~~tem_posofid~~CalledByGraph proc~tem_posofid tem_PosOfId proc~tem_findelement tem_findElement proc~tem_findelement->proc~tem_posofid proc~tem_findelement->proc~tem_findelement proc~tem_cano_initsubtree tem_cano_initSubTree proc~tem_cano_initsubtree->proc~tem_posofid proc~tem_unify_vrtx tem_unify_vrtx proc~tem_unify_vrtx->proc~tem_posofid proc~evaluate_add_spacetime_scalarbycoordinate evaluate_add_spacetime_scalarByCoordinate proc~evaluate_add_spacetime_scalarbycoordinate->proc~tem_posofid proc~tem_cano_storepntsinsubtree tem_cano_storePntsInSubTree proc~tem_cano_storepntsinsubtree->proc~tem_posofid proc~evaluate_first_spacetime_vectorbycoordinate evaluate_first_spacetime_vectorByCoordinate proc~evaluate_first_spacetime_vectorbycoordinate->proc~tem_posofid proc~evaluate_first_spacetime_scalarbycoordinate evaluate_first_spacetime_scalarByCoordinate proc~evaluate_first_spacetime_scalarbycoordinate->proc~tem_posofid proc~evaluate_add_spacetime_vectorbycoordinate evaluate_add_spacetime_vectorByCoordinate proc~evaluate_add_spacetime_vectorbycoordinate->proc~tem_posofid proc~setup_indices_spacetime setup_indices_spacetime proc~setup_indices_spacetime->proc~tem_posofid proc~tem_shape_subtreefromgeominters tem_shape_subTreeFromGeomInters proc~tem_shape_subtreefromgeominters->proc~tem_cano_initsubtree proc~tem_shape_subtreefromgeominters->proc~tem_cano_storepntsinsubtree proc~tem_calc_vrtx_coord tem_calc_vrtx_coord proc~tem_calc_vrtx_coord->proc~tem_unify_vrtx proc~tem_create_subtree_of tem_create_subTree_of proc~tem_create_subtree_of->proc~tem_shape_subtreefromgeominters proc~hvs_output_init hvs_output_init proc~hvs_output_init->proc~tem_calc_vrtx_coord program~tem_varsys_test tem_varSys_test program~tem_varsys_test->proc~tem_create_subtree_of proc~tem_init_tracker tem_init_tracker proc~tem_init_tracker->proc~hvs_output_init proc~tem_init_tracker_subtree tem_init_tracker_subTree proc~tem_init_tracker_subtree->proc~tem_create_subtree_of proc~tem_create_subtree_of_st_funlist tem_create_subTree_of_st_funList proc~tem_create_subtree_of_st_funlist->proc~tem_create_subtree_of proc~tem_init_convergence tem_init_convergence proc~tem_init_convergence->proc~tem_create_subtree_of proc~tem_write_debugmesh tem_write_debugMesh proc~tem_write_debugmesh->proc~tem_create_subtree_of

Contents


Variables

TypeVisibilityAttributesNameInitial
integer, private :: lb
integer, private :: ub
integer, private :: middleSearch
type(tem_path_type), private :: searched
type(tem_path_type), private :: current
integer, private :: pathRelation