append_da_vecprojection Subroutine

private subroutine append_da_vecprojection(me, val, length, pos, wasadded)

appending a sorted list of values to the dynamic array

with this subroutine, a given list of sorted values can be added to the dynamic array. the actual positions of these values in the dynamic array will be returned, so it can be found again easily later. with the wasadded flag, it is indicated,\n wasadded = true, if this entry had to be added,\n wasadded = false, if this was already found in the array.


type(dyn_projectionarray_type) :: me
type(ply_prj_init_type), intent(in) :: val(:)
integer, intent(in), optional :: length

optional length to expand the array

integer, intent(out), optional :: pos(:)

position in the array, the values are found at.

logical, intent(out), optional :: wasadded(:)

flag to indicate, if val was newly added


proc~~append_da_vecprojection~~CallsGraph proc~append_da_vecprojection append_da_vecprojection interface~expand~9 expand proc~append_da_vecprojection->interface~expand~9 proc~expand_da_projection expand_da_projection interface~expand~9->proc~expand_da_projection

Called by

proc~~append_da_vecprojection~~CalledByGraph proc~append_da_vecprojection append_da_vecprojection interface~append~9 append interface~append~9->proc~append_da_vecprojection proc~sorttruncate_da_projection sorttruncate_da_projection proc~sorttruncate_da_projection->interface~append~9 proc~ply_fill_dynprojectarray ply_fill_dynProjectArray proc~ply_fill_dynprojectarray->interface~append~9 interface~sorttruncate~2 sorttruncate interface~sorttruncate~2->proc~sorttruncate_da_projection



type(ply_prj_init_type), private :: lastval
logical, private :: addedval(size(val))
integer, private :: i
integer, private :: veclen
integer, private :: maxlen
integer, private :: nappend
integer, private :: rem_app
integer, private :: curval
integer, private :: ival
integer, private :: iold
integer, private :: iadd
integer, private, allocatable:: newsorted(:)