Changeset 45


Ignore:
Timestamp:
Feb 9, 2000, 11:32:30 AM (24 years ago)
Author:
lmdz
Message:

Sauvegarde des tendances dynamiques dans l'etat initial L.Li
LF

Location:
LMDZ.3.3/trunk/libf/phylmd
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • LMDZ.3.3/trunk/libf/phylmd/phyetat0.F

    r2 r45  
    22     .            rlat,rlon,tsol,tsoil,deltat,qsol,snow,
    33     .           radsol,rugmer,agesno,clesphy0,
    4      .           zmea,zstd,zsig,zgam,zthe,zpic,zval,rugsrel,tabcntr0)
     4     .           zmea,zstd,zsig,zgam,zthe,zpic,zval,rugsrel,tabcntr0,
     5     .           t_ancien,q_ancien,ancien_ok)
    56      IMPLICIT none
    67c======================================================================
     
    3839      REAL rugsrel(klon)
    3940
     41      REAL t_ancien(klon,klev), q_ancien(klon,klev)
     42      LOGICAL ancien_ok
     43
    4044      INTEGER        longcles
    4145      PARAMETER    ( longcles = 20 )
     
    674678      PRINT*,'Rugosite relief (ecart-type) rugsrel:', xmin, xmax
    675679c
     680c
     681      ancien_ok = .TRUE.
     682c
     683      ierr = NF_INQ_VARID (nid, "TANCIEN", nvarid)
     684      IF (ierr.NE.NF_NOERR) THEN
     685         PRINT*, "phyetat0: Le champ <TANCIEN> est absent"
     686         PRINT*, "Depart legerement fausse. Mais je continue"
     687         ancien_ok = .FALSE.
     688      ELSE
     689#ifdef NC_DOUBLE
     690         ierr = NF_GET_VAR_DOUBLE(nid, nvarid, t_ancien)
     691#else
     692         ierr = NF_GET_VAR_REAL(nid, nvarid, t_ancien)
     693#endif
     694         IF (ierr.NE.NF_NOERR) THEN
     695            PRINT*, "phyetat0: Lecture echouee pour <TANCIEN>"
     696            CALL abort
     697         ENDIF
     698      ENDIF
     699c
     700      ierr = NF_INQ_VARID (nid, "QANCIEN", nvarid)
     701      IF (ierr.NE.NF_NOERR) THEN
     702         PRINT*, "phyetat0: Le champ <QANCIEN> est absent"
     703         PRINT*, "Depart legerement fausse. Mais je continue"
     704         ancien_ok = .FALSE.
     705      ELSE
     706#ifdef NC_DOUBLE
     707         ierr = NF_GET_VAR_DOUBLE(nid, nvarid, q_ancien)
     708#else
     709         ierr = NF_GET_VAR_REAL(nid, nvarid, q_ancien)
     710#endif
     711         IF (ierr.NE.NF_NOERR) THEN
     712            PRINT*, "phyetat0: Lecture echouee pour <QANCIEN>"
     713            CALL abort
     714         ENDIF
     715      ENDIF
     716c
    676717c Fermer le fichier:
    677718c
  • LMDZ.3.3/trunk/libf/phylmd/phyredem.F

    r2 r45  
    22     .           rlat,rlon,tsol,tsoil,deltat,qsol,snow,
    33     .           radsol,rugmer,agesno,
    4      .           zmea,zstd,zsig,zgam,zthe,zpic,zval,rugsrel)
     4     .           zmea,zstd,zsig,zgam,zthe,zpic,zval,rugsrel,
     5     .           t_ancien, q_ancien)
    56      IMPLICIT none
    67c======================================================================
     
    3839      REAL zval(klon)
    3940      REAL rugsrel(klon)
    40 c
    41       INTEGER nid, nvarid, idim1, idim2
     41      REAL t_ancien(klon,klev), q_ancien(klon,klev)
     42c
     43      INTEGER nid, nvarid, idim1, idim2, idim3
    4244      INTEGER ierr
    4345      INTEGER length
     
    6163      ierr = NF_DEF_DIM (nid, "index", length, idim1)
    6264      ierr = NF_DEF_DIM (nid, "points_physiques", klon, idim2)
     65      ierr = NF_DEF_DIM (nid, "horizon_vertical", klon*klev, idim3)
    6366c
    6467      ierr = NF_ENDDEF(nid)
     
    388391#endif
    389392c
     393      ierr = NF_REDEF (nid)
     394#ifdef NC_DOUBLE
     395      ierr = NF_DEF_VAR (nid, "TANCIEN", NF_DOUBLE, 1, idim3,nvarid)
     396#else
     397      ierr = NF_DEF_VAR (nid, "TANCIEN", NF_FLOAT, 1, idim3,nvarid)
     398#endif
     399      ierr = NF_ENDDEF(nid)
     400#ifdef NC_DOUBLE
     401      ierr = NF_PUT_VAR_DOUBLE (nid,nvarid,t_ancien)
     402#else
     403      ierr = NF_PUT_VAR_REAL (nid,nvarid,t_ancien)
     404#endif
     405c
     406      ierr = NF_REDEF (nid)
     407#ifdef NC_DOUBLE
     408      ierr = NF_DEF_VAR (nid, "QANCIEN", NF_DOUBLE, 1, idim3,nvarid)
     409#else
     410      ierr = NF_DEF_VAR (nid, "QANCIEN", NF_FLOAT, 1, idim3,nvarid)
     411#endif
     412      ierr = NF_ENDDEF(nid)
     413#ifdef NC_DOUBLE
     414      ierr = NF_PUT_VAR_DOUBLE (nid,nvarid,q_ancien)
     415#else
     416      ierr = NF_PUT_VAR_REAL (nid,nvarid,q_ancien)
     417#endif
     418c
    390419      ierr = NF_CLOSE(nid)
    391420c
Note: See TracChangeset for help on using the changeset viewer.