libsim  Versione8.0.0

◆ arrayof_ttr_mapper_insert_sorted()

integer function, private stat_proc_engine::arrayof_ttr_mapper_insert_sorted ( type(arrayof_ttr_mapper)  this,
type(ttr_mapper), intent(in)  content,
logical, intent(in)  incr,
logical, intent(in)  back 
)
private

Method for inserting an element of the array in a sorted manner.

If necessary, the array is reallocated to accomodate the new element. It works under the assumption that the current content of the array is already sorted in the desired order.

Parametri
thisarray object to extend
[in]contentobject of TYPE TYPE(ttr_mapper) to insert
[in]incrinsert in increasing order
[in]backsearch position starting from end of array (optimization)

Definizione alla linea 619 del file stat_proc_engine.F90.

619  ENDIF
620 
621 ELSE ! analysis mode
622  tmptime = lstart + step
623  DO WHILE(tmptime < lend) ! < since lend has been extended
624  CALL insert_unique(a_otime, tmptime)
625  tmptime = tmptime + step
626  ENDDO
627  CALL insert_unique(a_otimerange, vol7d_timerange_new(stat_proc, 0, steps))
628 
629 ENDIF
630 
631 CALL packarray(a_otime)
632 CALL packarray(a_otimerange)
633 otime => a_otime%array
634 otimerange => a_otimerange%array
635 CALL sort(otime)
636 CALL sort(otimerange)
637 ! delete local objects keeping the contents
638 CALL delete(a_otime, nodealloc=.true.)
639 CALL delete(a_otimerange, nodealloc=.true.)
640 
641 #ifdef DEBUG
642 CALL l4f_log(l4f_debug, &
643  'recompute_stat_proc_agg, output time and timerange: '//&
644  t2c(SIZE(otime))//', '//t2c(size(otimerange)))
645 #endif
646 
647 IF (PRESENT(dtratio)) THEN
648 ! count the possible i/o interval ratios
649  DO k = 1, SIZE(itimerange)

Generated with Doxygen.