libsim Versione 7.1.11

◆ arrayof_ttr_mapper_insert_array()

subroutine arrayof_ttr_mapper_insert_array ( type(arrayof_ttr_mapper this,
type(ttr_mapper), dimension(:), intent(in), optional  content,
integer, intent(in), optional  nelem,
integer, intent(in), optional  pos 
)

Method for inserting a number of elements of the array at a desired position.

If necessary, the array is reallocated to accomodate the new elements.

Parametri
thisarray object to extend
[in]contentobject of TYPE TYPE(ttr_mapper) to insert, if not provided, space is reserved but not initialized
[in]nelemnumber of elements to add, mutually exclusive with the previous parameter, if both are not provided, a single element is added without initialization
[in]posposition where to insert, if it is out of range, it is clipped, if it is not provided, the object is appended

Definizione alla linea 496 del file stat_proc_engine.F90.

497 ENDIF
498! full_steps is effective only in analysis mode and when start is not
499! specified (start by itself in analysis mode implies full_steps with
500! respect to start instead of absolute full steps)
501 IF (optio_log(full_steps) .AND. .NOT.lforecast) THEN
502 lstart = lstart - (mod(lstart, step)) ! round to step, (should be MODULO, not MOD)
503 ENDIF
504ENDIF
505
506#ifdef DEBUG
507CALL l4f_log(l4f_debug, &
508 'recompute_stat_proc_agg, processing period: '//t2c(lstart)//' - '//t2c(lend))
509#endif
510
511! create output time and timerange lists
512
513IF (lforecast) THEN ! forecast mode
514 IF (time_definition == 0) THEN ! reference time
515 CALL insert(a_otime, itime) ! should I limit to elements itime >= lstart?
516
517! apply start shift to timerange, not to reftime
518! why did we use itime(SIZE(itime)) (last ref time)?
519! CALL getval(lstart-itime(SIZE(itime)), asec=dstart)
520 CALL getval(lstart-itime(1), asec=dstart)
521! allow starting before first reftime but restrict dtstart to -steps
522! dstart = MAX(0, dstart)
523 IF (dstart < 0) dstart = mod(dstart, steps)
524 DO p1 = steps + dstart, maxp1, steps
525 CALL insert_unique(a_otimerange, vol7d_timerange_new(stat_proc, p1, steps))
526 ENDDO
527
528 ELSE ! verification time
529
530! verification time in forecast mode is the ugliest case, because we

Generated with Doxygen.