Changeset 405 for LMDZ.3.3/branches


Ignore:
Timestamp:
Oct 15, 2002, 4:37:23 PM (22 years ago)
Author:
lmdzadmin
Message:

Nouveaux fichiers AMIP IM
IM/LF

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ.3.3/branches/rel-LF/libf/dyn3d/limit_netcdf.F

    r359 r405  
    123123      character*30 namedim
    124124      CHARACTER*80 :: varname
     125
     126cIM28/02/2002 <== PM
     127      REAL tmidmonth(12)
     128      SAVE tmidmonth
     129      DATA tmidmonth/15,45,75,105,135,165,195,225,255,285,315,345/
    125130
    126131c initialisations:
     
    443448c
    444449      PRINT*, 'Traitement de la glace oceanique'
    445       ierr = NF_OPEN('AMIP.nc', NF_NOWRITE, ncid)
    446       if (ierr.ne.0) then
    447         print *, NF_STRERROR(ierr)
    448         STOP
    449       ENDIF
    450 
    451       ierr = NF_INQ_VARID(ncid,'SEA_ICE',varid)
     450c
     451
     452cccIM#define cond_climato
     453
     454#ifdef cond_climato
     455
     456cIM22/02/2002
     457cIM   ierr = NF_OPEN('AMIP.nc', NF_NOWRITE, ncid)
     458cIM   ierr = NF_OPEN('amip79to95.nc', NF_NOWRITE, ncid)
     459      ierr = NF_OPEN('amipbc_sic_1x1_clim.nc', NF_NOWRITE, ncid)
     460#else
     461      ierr = NF_OPEN('amipbc_sic_1x1.nc', NF_NOWRITE, ncid)
     462#endif
     463
     464cIM22/02/2002
     465      if (ierr.ne.0) then
     466        print *, NF_STRERROR(ierr)
     467        STOP
     468      ENDIF
     469
     470cIM22/02/2002
     471cIM07/03/2002 AMIP.nc & amip79to95.nc
     472cIM   ierr = NF_INQ_VARID(ncid,'SEA_ICE',varid)
     473cIM07/03/2002 amipbc_sic_1x1_clim.nc & amipbc_sic_1x1.nc
     474      ierr = NF_INQ_VARID(ncid,'sicbcs',varid)
     475cIM22/02/2002
    452476      if (ierr.ne.0) then
    453477        print *, NF_STRERROR(ierr)
     
    513537      ENDIF
    514538      print*,'variable ', namedim, lmdep
     539cIM28/02/2002
     540cPM28/02/2002 : nouvelle coord temporelle fichiers AMIP pas en jours
     541c               Ici on suppose qu'on a 12 mois (de 30 jours).
     542      IF (lmdep.NE.12) THEN
     543          print *, 'Unknown AMIP file: not 12 months ?'
     544          STOP
     545       ENDIF
     546cIM28/02/2002
    515547      ierr = NF_INQ_VARID(ncid,namedim,dimid)
    516548      if (ierr.ne.0) then
     
    567599     ,'------------------------'
    568600       ENDIF
    569 
     601cIM07/03/2002
     602cIM22/02/2002 : Sea-ice Amip entre 0. et 1.
     603cIM    PRINT*,'SUB. limit_netcdf.F IM : Sea-ice et SST Amip_new clim'
     604cIM   DO j = 1, imdep * jmdep
     605cIM28/02/2002 <==PM         champ(j) = champ(j)/100.
     606cIM14/03/2002      champ(j) = max(0.0,(min(1.0, (champ(j)/100.) )))
     607cIM      champ(j) = amax1(0.0,(amin1(1.0, (champ(j)/100.) )))
     608cIM   ENDDO
     609cIM22/02/2002
    570610         CALL inter_barxy ( imdep,jmdep -1,dlon, dlat ,
    571611     ,     champ, iim, jjm, rlonu, rlatv, jjp1, champint )
     
    582622c
    583623      DO l = 1, lmdep
    584          timeyear(l) = timecoord(l)
     624cIM28/02/2002 <== PM  timeyear(l) = timecoord(l)
     625cIM      timeyear(l) = timecoord(l)
     626cIM07/03/2002     
     627         timeyear(l) = tmidmonth(l)
    585628      ENDDO
    586629      PRINT 222,  timeyear
     
    613656      ENDDO
    614657c
     658cIM14/03/2002 : Sea-ice Amip entre 0. et 1.
     659      PRINT*,'SUB. limit_netcdf.F IM : Sea-ice Amipbc '
     660      DO k = 1, 360
     661      DO j = 1, jjp1
     662      DO i = 1, iim
     663        champan(i, j, k) =
     664     $ amax1(0.0,(amin1(1.0,(champan(i, j, k)/100.))))
     665      ENDDO
     666        champan(iip1, j, k) = champan(1, j, k)
     667      ENDDO
     668      ENDDO
     669cIM14/03/2002
    615670
    616671      DO k = 1, 360
     
    729784c
    730785      PRINT*, 'Traitement de la sst'
    731       ierr = NF_OPEN('AMIP.nc', NF_NOWRITE, ncid)
    732       if (ierr.ne.0) then
    733         print *, NF_STRERROR(ierr)
    734         STOP
    735       ENDIF
    736 
    737       ierr = NF_INQ_VARID(ncid,'SST',varid)
     786#ifdef cond_climato
     787cIM22/02/2002
     788cIM   ierr = NF_OPEN('AMIP.nc', NF_NOWRITE, ncid)
     789cIM   ierr = NF_OPEN('amip79to95.nc', NF_NOWRITE, ncid)
     790      ierr = NF_OPEN('amipbc_sst_1x1_clim.nc', NF_NOWRITE, ncid)
     791#else
     792      ierr = NF_OPEN('amipbc_sst_1x1.nc', NF_NOWRITE, ncid)
     793#endif
     794cIM22/02/2002
     795      if (ierr.ne.0) then
     796        print *, NF_STRERROR(ierr)
     797        STOP
     798      ENDIF
     799
     800cIM22/02/2002
     801cIM   ierr = NF_INQ_VARID(ncid,'SST',varid)
     802      ierr = NF_INQ_VARID(ncid,'tosbcs',varid)
     803cIM22/02/2002
    738804      if (ierr.ne.0) then
    739805        print *, NF_STRERROR(ierr)
     
    800866      ENDIF
    801867      print*,'variable ', namedim, 'dimension ', lmdep
     868cIM28/02/2002
     869cPM28/02/2002 : nouvelle coord temporelle fichiers AMIP pas en jours
     870c               Ici on suppose qu'on a 12 mois (de 30 jours).
     871      IF (lmdep.NE.12) THEN
     872          print *, 'Unknown AMIP file: not 12 months ?'
     873          STOP
     874       ENDIF
     875cIM28/02/2002
    802876      ierr = NF_INQ_VARID(ncid,namedim,dimid)
    803877      if (ierr.ne.0) then
     
    873947c
    874948      DO l = 1, lmdep
    875          timeyear(l) = timecoord(l)
     949cIM28/02/2002 <==PM  timeyear(l) = timecoord(l)
     950         timeyear(l) = tmidmonth(l)
    876951      ENDDO
    877952      print 222,  timeyear
     
    904979      ENDDO
    905980c
     981cIM14/03/2002 : SST amipbc greater then 271.38
     982      PRINT*,'SUB. limit_netcdf.F IM : SST Amipbc >= 271.38 '
     983      DO k = 1, 360
     984      DO j = 1, jjp1
     985      DO i = 1, iim
     986         champan(i, j, k) = amax1(champan(i, j, k), 271.38)
     987      ENDDO
     988         champan(iip1, j, k) = champan(1, j, k)
     989      ENDDO
     990      ENDDO
     991cIM14/03/2002
    906992      DO k = 1, 360
    907993         CALL gr_dyn_fi(1, iip1, jjp1, klon,
Note: See TracChangeset for help on using the changeset viewer.