|
|
◆ vol7d_set_attr_ind()
| subroutine vol7d_class::vol7d_set_attr_ind |
( |
type(vol7d), intent(inout) |
this | ) |
|
Metodo per creare gli indici che associano le variabili aventi attributo alle variabili nei relativi descrittori.
Ha senso chiamare questo metodo solo dopo che i descrittori delle variabili e degli attributi desiderati sono stati allocati ed รจ stato assegnato un valore ai relativi membri btable (vedi vol7d_var_class::vol7d_var), se i descrittori non sono stati allocati o assegnati, il metodo non fa niente.
- Parametri
-
| [in,out] | this | oggetto in cui creare gli indici |
Definizione alla linea 1518 del file vol7d_class.F90.
1519 END SUBROUTINE vol7d_set_attr_ind 1526 SUBROUTINE vol7d_merge(this, that, sort, bestdata, & 1527 ltimesimple, ltimerangesimple, llevelsimple, lanasimple) 1528 TYPE(vol7d), INTENT(INOUT) :: this 1529 TYPE(vol7d), INTENT(INOUT) :: that 1530 LOGICAL, INTENT(IN), OPTIONAL :: sort 1531 LOGICAL, INTENT(in), OPTIONAL :: bestdata 1532 LOGICAL, INTENT(IN), OPTIONAL :: ltimesimple, ltimerangesimple, llevelsimple, lanasimple 1534 TYPE(vol7d) :: v7d_clean 1537 IF (.NOT.c_e(this)) THEN 1539 CALL init(v7d_clean) 1542 CALL vol7d_append(this, that, sort, bestdata, & 1543 ltimesimple, ltimerangesimple, llevelsimple, lanasimple) 1547 END SUBROUTINE vol7d_merge 1578 SUBROUTINE vol7d_append(this, that, sort, bestdata, & 1579 ltimesimple, ltimerangesimple, llevelsimple, lanasimple, lnetworksimple) 1580 TYPE(vol7d), INTENT(INOUT) :: this 1581 TYPE(vol7d), INTENT(IN) :: that 1582 LOGICAL, INTENT(IN), OPTIONAL :: sort 1586 LOGICAL, INTENT(in), OPTIONAL :: bestdata 1587 LOGICAL, INTENT(IN), OPTIONAL :: ltimesimple, ltimerangesimple, llevelsimple, lanasimple, lnetworksimple 1590 TYPE(vol7d) :: v7dtmp 1591 LOGICAL :: lsort, lbestdata 1592 INTEGER, POINTER :: remapt1(:), remapt2(:), remaptr1(:), remaptr2(:), & 1593 remapl1(:), remapl2(:), remapa1(:), remapa2(:), remapn1(:), remapn2(:) 1595 IF (.NOT.c_e(that)) RETURN 1596 IF (.NOT.vol7d_check_vol(that)) RETURN 1597 IF (.NOT.c_e(this)) THEN 1598 CALL vol7d_copy(that, this, sort=sort) 1602 IF (this%time_definition /= that%time_definition) THEN 1603 CALL l4f_log(l4f_fatal, & 1604 'in vol7d_append, cannot append volumes with different & 1606 CALL raise_fatal_error() 1610 CALL vol7d_alloc_vol(this) 1612 CALL init(v7dtmp, time_definition=this%time_definition) 1613 CALL optio(sort, lsort) 1614 CALL optio(bestdata, lbestdata) 1618 IF (optio_log(ltimesimple)) THEN 1619 CALL vol7d_remap2simple_datetime(this%time, that%time, v7dtmp%time, & 1620 lsort, remapt1, remapt2) 1622 CALL vol7d_remap2_datetime(this%time, that%time, v7dtmp%time, & 1623 lsort, remapt1, remapt2) 1625 IF (optio_log(ltimerangesimple)) THEN 1626 CALL vol7d_remap2simple_vol7d_timerange(this%timerange, that%timerange, & 1627 v7dtmp%timerange, lsort, remaptr1, remaptr2) 1629 CALL vol7d_remap2_vol7d_timerange(this%timerange, that%timerange, & 1630 v7dtmp%timerange, lsort, remaptr1, remaptr2) 1632 IF (optio_log(llevelsimple)) THEN 1633 CALL vol7d_remap2simple_vol7d_level(this%level, that%level, v7dtmp%level, & 1634 lsort, remapl1, remapl2) 1636 CALL vol7d_remap2_vol7d_level(this%level, that%level, v7dtmp%level, & 1637 lsort, remapl1, remapl2) 1639 IF (optio_log(lanasimple)) THEN 1640 CALL vol7d_remap2simple_vol7d_ana(this%ana, that%ana, v7dtmp%ana, & 1641 .false., remapa1, remapa2) 1643 CALL vol7d_remap2_vol7d_ana(this%ana, that%ana, v7dtmp%ana, & 1644 .false., remapa1, remapa2) 1646 IF (optio_log(lnetworksimple)) THEN 1647 CALL vol7d_remap2simple_vol7d_network(this%network, that%network, v7dtmp%network, & 1648 .false., remapn1, remapn2) 1650 CALL vol7d_remap2_vol7d_network(this%network, that%network, v7dtmp%network, & 1651 .false., remapn1, remapn2) 1655 CALL vol7d_merge_finalr(this, that, v7dtmp, & 1656 remapa1, remapa2, remapt1, remapt2, remapl1, remapl2, & 1657 remaptr1, remaptr2, remapn1, remapn2, lbestdata) 1658 CALL vol7d_merge_finald(this, that, v7dtmp, & 1659 remapa1, remapa2, remapt1, remapt2, remapl1, remapl2, & 1660 remaptr1, remaptr2, remapn1, remapn2, lbestdata) 1661 CALL vol7d_merge_finali(this, that, v7dtmp, & 1662 remapa1, remapa2, remapt1, remapt2, remapl1, remapl2, & 1663 remaptr1, remaptr2, remapn1, remapn2, lbestdata) 1664 CALL vol7d_merge_finalb(this, that, v7dtmp, & 1665 remapa1, remapa2, remapt1, remapt2, remapl1, remapl2, & 1666 remaptr1, remaptr2, remapn1, remapn2, lbestdata) 1667 CALL vol7d_merge_finalc(this, that, v7dtmp, & 1668 remapa1, remapa2, remapt1, remapt2, remapl1, remapl2, & 1669 remaptr1, remaptr2, remapn1, remapn2, lbestdata) 1672 IF ( ASSOCIATED(remapt1)) DEALLOCATE(remapt1) 1673 IF ( ASSOCIATED(remapt2)) DEALLOCATE(remapt2) 1674 IF ( ASSOCIATED(remaptr1)) DEALLOCATE(remaptr1) 1675 IF ( ASSOCIATED(remaptr2)) DEALLOCATE(remaptr2) 1676 IF ( ASSOCIATED(remapl1)) DEALLOCATE(remapl1) 1677 IF ( ASSOCIATED(remapl2)) DEALLOCATE(remapl2) 1678 IF ( ASSOCIATED(remapa1)) DEALLOCATE(remapa1) 1679 IF ( ASSOCIATED(remapa2)) DEALLOCATE(remapa2) 1680 IF ( ASSOCIATED(remapn1)) DEALLOCATE(remapn1) 1681 IF ( ASSOCIATED(remapn2)) DEALLOCATE(remapn2) 1687 CALL vol7d_set_attr_ind(this) 1689 END SUBROUTINE vol7d_append
|