Ignore:
Timestamp:
Nov 21, 2019, 4:43:45 PM (4 years ago)
Author:
lguez
Message:

Merge revisions 3427:3600 of trunk into branch Ocean_skin

Location:
LMDZ6/branches/Ocean_skin
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/branches/Ocean_skin

  • LMDZ6/branches/Ocean_skin/libf/phylmd/sisvat/surf_sisvat_mod.F90

    r2345 r3605  
    15401540    INTEGER isl, ikl, i, isn
    15411541    CHARACTER (len=2) :: str2
     1542    INTEGER           :: pass
    15421543
    15431544      isno(:)       = 0       
     
    16171618
    16181619      CALL open_restartphy(fichnom)
    1619       CALL put_field("longitude", &
     1620      DO pass = 1, 2
     1621        CALL put_field(pass,"longitude", &
    16201622                    "Longitudes de la grille physique",rlon)     
    1621       CALL put_field("latitude","Latitudes de la grille physique",rlat)
    1622 
    1623       CALL put_field("n_snows", "number of snow/ice layers",isno)
    1624       CALL put_field("n_ice_top", "number of top ice layers",ispi)
    1625       CALL put_field("n_ice", "number of ice layers",iice)
    1626       CALL put_field("IR_soil", "Soil IR flux",IRs)
    1627       CALL put_field("LMO", "Monin-Obukhov Scale",LMO)
    1628       CALL put_field("surf_water", "Surficial water",rusn)
    1629       CALL put_field("snow_buffer", "Snow buffer layer",Bufs)
    1630       CALL put_field("alb_1", "albedo sw",alb1)
    1631       CALL put_field("alb_2", "albedo nIR",alb2)
    1632       CALL put_field("alb_3", "albedo fIR",alb3)
    1633       CALL put_field("to_ice", "Snow passed to ice",toic)
     1623        CALL put_field(pass,"latitude","Latitudes de la grille physique",rlat)
     1624 
     1625        CALL put_field(pass,"n_snows", "number of snow/ice layers",isno)
     1626        CALL put_field(pass,"n_ice_top", "number of top ice layers",ispi)
     1627        CALL put_field(pass,"n_ice", "number of ice layers",iice)
     1628        CALL put_field(pass,"IR_soil", "Soil IR flux",IRs)
     1629        CALL put_field(pass,"LMO", "Monin-Obukhov Scale",LMO)
     1630        CALL put_field(pass,"surf_water", "Surficial water",rusn)
     1631        CALL put_field(pass,"snow_buffer", "Snow buffer layer",Bufs)
     1632        CALL put_field(pass,"alb_1", "albedo sw",alb1)
     1633        CALL put_field(pass,"alb_2", "albedo nIR",alb2)
     1634        CALL put_field(pass,"alb_3", "albedo fIR",alb3)
     1635        CALL put_field(pass,"to_ice", "Snow passed to ice",toic)
    16341636
    16351637 !     DO i = 1, 5
    16361638 !       WRITE(str2,'(i2.2)') i
    1637  !       CALL put_field("turb_veloc"//str2, &
     1639 !       CALL put_field(pass,"turb_veloc"//str2, &
    16381640 !                      "various turbulent velocities"//str2, &
    16391641 !                      turb_vel(:,i))
     
    16411643 !     DO i = 1, 9
    16421644 !       WRITE(str2,'(i2.2)') i
    1643  !       CALL put_field("rough_length"//str2, &
     1645 !       CALL put_field(pass,"rough_length"//str2, &
    16441646 !                      "various roughness lengths"//str2, &
    16451647 !                      rlength(:,i))
    16461648 !     ENDDO
    1647       DO isn = 1,nsno
    1648         IF (isn.LE.99) THEN
    1649           WRITE(str2,'(i2.2)') isn
    1650           CALL put_field("AGESNOW"//str2, &
     1649        DO isn = 1,nsno
     1650          IF (isn.LE.99) THEN
     1651            WRITE(str2,'(i2.2)') isn
     1652            CALL put_field(pass,"AGESNOW"//str2, &
    16511653                         "Age de la neige layer No."//str2, &
    16521654                         agsn(:,isn))
    1653         ELSE
    1654           PRINT*, "Trop de couches"
    1655           CALL abort
    1656         ENDIF
    1657       ENDDO
    1658       DO isn = 1,nsno
    1659         IF (isn.LE.99) THEN
    1660           WRITE(str2,'(i2.2)') isn
    1661           CALL put_field("DZSNOW"//str2, &
     1655          ELSE
     1656            PRINT*, "Trop de couches"
     1657            CALL abort
     1658          ENDIF
     1659        ENDDO
     1660        DO isn = 1,nsno
     1661          IF (isn.LE.99) THEN
     1662            WRITE(str2,'(i2.2)') isn
     1663            CALL put_field(pass,"DZSNOW"//str2, &
    16621664                         "Snow/ice thickness layer No."//str2, &
    16631665                         dzsn(:,isn))
    1664         ELSE
    1665           PRINT*, "Trop de couches"
    1666           CALL abort
    1667         ENDIF
    1668       ENDDO
    1669       DO isn = 1,nsno
    1670         IF (isn.LE.99) THEN
    1671           WRITE(str2,'(i2.2)') isn
    1672           CALL put_field("G2SNOW"//str2, &
     1666          ELSE
     1667            PRINT*, "Trop de couches"
     1668            CALL abort
     1669          ENDIF
     1670        ENDDO
     1671        DO isn = 1,nsno
     1672          IF (isn.LE.99) THEN
     1673            WRITE(str2,'(i2.2)') isn
     1674            CALL put_field(pass,"G2SNOW"//str2, &
    16731675                         "Snow Property 2, layer No."//str2, &
    16741676                         G2sn(:,isn))
    1675         ELSE
    1676           PRINT*, "Trop de couches"
    1677           CALL abort
    1678         ENDIF
    1679       ENDDO
    1680       DO isn = 1,nsno
    1681         IF (isn.LE.99) THEN
    1682           WRITE(str2,'(i2.2)') isn
    1683           CALL put_field("G1SNOW"//str2, &
     1677          ELSE
     1678            PRINT*, "Trop de couches"
     1679            CALL abort
     1680          ENDIF
     1681        ENDDO
     1682        DO isn = 1,nsno
     1683          IF (isn.LE.99) THEN
     1684            WRITE(str2,'(i2.2)') isn
     1685            CALL put_field(pass,"G1SNOW"//str2, &
    16841686                         "Snow Property 1, layer No."//str2, &
    16851687                         G1sn(:,isn))
    1686         ELSE
    1687           PRINT*, "Trop de couches"
    1688           CALL abort
    1689         ENDIF
    1690       ENDDO
    1691       DO isn = 1,nsismx
    1692         IF (isn.LE.99) THEN
    1693           WRITE(str2,'(i2.2)') isn
    1694           CALL put_field("ETA"//str2, &
     1688          ELSE
     1689            PRINT*, "Trop de couches"
     1690            CALL abort
     1691          ENDIF
     1692        ENDDO
     1693        DO isn = 1,nsismx
     1694          IF (isn.LE.99) THEN
     1695            WRITE(str2,'(i2.2)') isn
     1696            CALL put_field(pass,"ETA"//str2, &
    16951697                         "Soil/snow water content layer No."//str2, &
    16961698                         eta(:,isn))
    1697         ELSE
    1698           PRINT*, "Trop de couches"
    1699           CALL abort
    1700         ENDIF
     1699          ELSE
     1700            PRINT*, "Trop de couches"
     1701            CALL abort
     1702          ENDIF
     1703        ENDDO
     1704        DO isn = 1,nsismx   !nsno
     1705          IF (isn.LE.99) THEN
     1706            WRITE(str2,'(i2.2)') isn
     1707            CALL put_field(pass,"RO"//str2, &
     1708                           "Snow density layer No."//str2, &
     1709                           ro(:,isn))
     1710          ELSE
     1711            PRINT*, "Trop de couches"
     1712            CALL abort
     1713          ENDIF
     1714        ENDDO
     1715        DO isn = 1,nsismx
     1716          IF (isn.LE.99) THEN
     1717            WRITE(str2,'(i2.2)') isn
     1718            CALL put_field(pass,"TSS"//str2, &
     1719                           "Soil/snow temperature layer No."//str2, &
     1720                           Tsis(:,isn))
     1721          ELSE
     1722            PRINT*, "Trop de couches"
     1723            CALL abort
     1724          ENDIF
     1725        ENDDO
     1726        DO isn = 1,nsno
     1727          IF (isn.LE.99) THEN
     1728            WRITE(str2,'(i2.2)') isn
     1729            CALL put_field(pass,"HISTORY"//str2, &
     1730                           "Snow history layer No."//str2, &
     1731                           isto(:,isn))
     1732          ELSE
     1733            PRINT*, "Trop de couches"
     1734            CALL abort
     1735          ENDIF
     1736        ENDDO
    17011737      ENDDO
    1702       DO isn = 1,nsismx   !nsno
    1703         IF (isn.LE.99) THEN
    1704           WRITE(str2,'(i2.2)') isn
    1705           CALL put_field("RO"//str2, &
    1706                          "Snow density layer No."//str2, &
    1707                          ro(:,isn))
    1708         ELSE
    1709           PRINT*, "Trop de couches"
    1710           CALL abort
    1711         ENDIF
    1712       ENDDO
    1713       DO isn = 1,nsismx
    1714         IF (isn.LE.99) THEN
    1715           WRITE(str2,'(i2.2)') isn
    1716           CALL put_field("TSS"//str2, &
    1717                          "Soil/snow temperature layer No."//str2, &
    1718                          Tsis(:,isn))
    1719         ELSE
    1720           PRINT*, "Trop de couches"
    1721           CALL abort
    1722         ENDIF
    1723       ENDDO
    1724       DO isn = 1,nsno
    1725         IF (isn.LE.99) THEN
    1726           WRITE(str2,'(i2.2)') isn
    1727           CALL put_field("HISTORY"//str2, &
    1728                          "Snow history layer No."//str2, &
    1729                          isto(:,isn))
    1730         ELSE
    1731           PRINT*, "Trop de couches"
    1732           CALL abort
    1733         ENDIF
    1734       ENDDO
    17351738
    17361739  END SUBROUTINE sisvatredem
Note: See TracChangeset for help on using the changeset viewer.