|
◆ arrayof_ttr_mapper_remove()
subroutine, private stat_proc_engine::arrayof_ttr_mapper_remove |
( |
type(arrayof_ttr_mapper) |
this, |
|
|
integer, intent(in), optional |
nelem, |
|
|
integer, intent(in), optional |
pos |
|
) |
| |
|
private |
Method for removing elements of the array at a desired position.
If necessary, the array is reallocated to reduce space. - Parametri
-
| this | array object in which an element has to be removed |
[in] | nelem | number of elements to remove, if not provided, a single element is removed |
[in] | pos | position of the element to be removed, if it is out of range, it is clipped, if it is not provided, objects are removed at the end |
Definizione alla linea 651 del file stat_proc_engine.F90.
657 IF (pstart1 == pstart2) THEN
658 lmapper%extra_info = 1
659 ELSE IF (pend1 == pend2) THEN
660 lmapper%extra_info = 2
662 lmapper%extra_info = imiss
664 lmapper%time = pstart1
665 n = insert_sorted(map_ttr(i,j), lmapper, .true., .true.)
675 END SUBROUTINE recompute_stat_proc_agg_common
678 SUBROUTINE compute_stat_proc_agg_sw(vertime, pstart, pend, time_mask, &
680 TYPE(datetime), INTENT(in) :: vertime(:)
681 TYPE(datetime), INTENT(in) :: pstart
682 TYPE(datetime), INTENT(in) :: pend
683 LOGICAL, INTENT(in) :: time_mask(:)
684 TYPE(timedelta), OPTIONAL, INTENT(out) :: max_step
685 DOUBLE PRECISION, OPTIONAL, INTENT(out) :: weights(:)
688 TYPE(datetime), ALLOCATABLE :: lvertime(:)
689 TYPE(datetime) :: half, nexthalf
690 INTEGER(kind=int_ll) :: dt, tdt
692 nt = count(time_mask)
693 ALLOCATE(lvertime(nt))
694 lvertime = pack(vertime, mask=time_mask)
696 IF ( PRESENT(max_step)) THEN
|