Ignore:
Timestamp:
Jul 20, 2024, 4:30:31 PM (4 months ago)
Author:
abarral
Message:

Remove all managed netcdf77 usage (excluding external: rrtm, ecrad)
Remove call to netcdf.inc
Replace USE lmdz_netcdf by USE netcdf
Replace lmdz_netcdf.F90 by lmdz_netcdf_format.F90

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/branches/Amaury_dev/libf/phylmdiso/phyaqua_mod.F90

    r5076 r5088  
    591591    USE mod_phys_lmdz_transfert_para, ONLY: gather
    592592    USE phys_cal_mod, ONLY: year_len
    593     USE lmdz_netcdf, ONLY:nf_clobber,nf_close,nf_noerr,nf_strerror,nf_put_att_text,nf_def_var,&
    594             nf_def_dim,nf_create,nf90_put_var,nf_unlimited,nf_global,nf_64bit_offset,nf90_format,&
    595             nf_enddef
     593    USE netcdf, ONLY:nf90_clobber,nf90_close,nf90_noerr,nf90_strerror,nf90_put_att,nf90_def_var,&
     594            nf90_def_dim,nf90_create,nf90_put_var,nf90_unlimited,nf90_global,nf90_64bit_offset,&
     595            nf90_enddef
     596    USE lmdz_netcdf_format, ONLY: nf90_format
    596597    IMPLICIT NONE
    597598
     
    625626      PRINT *, 'writelim: Ecriture du fichier limit'
    626627
    627       ierr = nf_create('limit.nc', IOR(NF_CLOBBER,NF_64BIT_OFFSET), nid)
    628 
    629       ierr = nf_put_att_text(nid, nf_global, 'title', 30, &
     628      ierr = nf90_create('limit.nc', IOR(nf90_clobber,nf90_64bit_offset), nid)
     629
     630      ierr = nf90_put_att(nid, nf90_global, 'title', &
    630631        'Fichier conditions aux limites')
    631       ! !        ierr = NF_DEF_DIM (nid, "points_physiques", klon, ndim)
    632       ierr = nf_def_dim(nid, 'points_physiques', klon_glo, ndim)
    633       ierr = nf_def_dim(nid, 'time', nf_unlimited, ntim)
     632      ! !        ierr = nf90_def_dim (nid, "points_physiques", klon, ndim)
     633      ierr = nf90_def_dim(nid, 'points_physiques', klon_glo, ndim)
     634      ierr = nf90_def_dim(nid, 'time', nf90_unlimited, ntim)
    634635
    635636      dims(1) = ndim
    636637      dims(2) = ntim
    637638
    638       ierr = nf_def_var(nid, 'TEMPS', NF90_FORMAT, 1, ntim, id_tim)
    639       ierr = nf_put_att_text(nid, id_tim, 'title', 17, 'Jour dans l annee')
    640 
    641       ierr = nf_def_var(nid, 'NAT', NF90_FORMAT, 2, dims, id_nat)
    642       ierr = nf_put_att_text(nid, id_nat, 'title', 23, &
     639      ierr = nf90_def_var(nid, 'TEMPS', nf90_format, ntim, id_tim)
     640      ierr = nf90_put_att(nid, id_tim, 'title', 'Jour dans l annee')
     641
     642      ierr = nf90_def_var(nid, 'NAT', nf90_format, dims, id_nat)
     643      ierr = nf90_put_att(nid, id_nat, 'title', &
    643644        'Nature du sol (0,1,2,3)')
    644645
    645       ierr = nf_def_var(nid, 'SST', NF90_FORMAT, 2, dims, id_sst)
    646       ierr = nf_put_att_text(nid, id_sst, 'title', 35, &
     646      ierr = nf90_def_var(nid, 'SST', nf90_format, dims, id_sst)
     647      ierr = nf90_put_att(nid, id_sst, 'title', &
    647648        'Temperature superficielle de la mer')
    648649
    649       ierr = nf_def_var(nid, 'BILS', NF90_FORMAT, 2, dims, id_bils)
    650       ierr = nf_put_att_text(nid, id_bils, 'title', 32, &
     650      ierr = nf90_def_var(nid, 'BILS', nf90_format, dims, id_bils)
     651      ierr = nf90_put_att(nid, id_bils, 'title', &
    651652        'Reference flux de chaleur au sol')
    652653
    653       ierr = nf_def_var(nid, 'ALB', NF90_FORMAT, 2, dims, id_alb)
    654       ierr = nf_put_att_text(nid, id_alb, 'title', 19, 'Albedo a la surface')
    655 
    656       ierr = nf_def_var(nid, 'RUG', NF90_FORMAT, 2, dims, id_rug)
    657       ierr = nf_put_att_text(nid, id_rug, 'title', 8, 'Rugosite')
    658 
    659       ierr = nf_def_var(nid, 'FTER', NF90_FORMAT, 2, dims, id_fter)
    660       ierr = nf_put_att_text(nid, id_fter, 'title',10,'Frac. Land')
    661       ierr = nf_def_var(nid, 'FOCE', NF90_FORMAT, 2, dims, id_foce)
    662       ierr = nf_put_att_text(nid, id_foce, 'title',11,'Frac. Ocean')
    663       ierr = nf_def_var(nid, 'FSIC', NF90_FORMAT, 2, dims, id_fsic)
    664       ierr = nf_put_att_text(nid, id_fsic, 'title',13,'Frac. Sea Ice')
    665       ierr = nf_def_var(nid, 'FLIC', NF90_FORMAT, 2, dims, id_flic)
    666       ierr = nf_put_att_text(nid, id_flic, 'title',14,'Frac. Land Ice')
    667 
    668       ierr = nf_enddef(nid)
    669       IF (ierr/=nf_noerr) THEN
     654      ierr = nf90_def_var(nid, 'ALB', nf90_format, dims, id_alb)
     655      ierr = nf90_put_att(nid, id_alb, 'title', 'Albedo a la surface')
     656
     657      ierr = nf90_def_var(nid, 'RUG', nf90_format, dims, id_rug)
     658      ierr = nf90_put_att(nid, id_rug, 'title', 'Rugosite')
     659
     660      ierr = nf90_def_var(nid, 'FTER', nf90_format, dims, id_fter)
     661      ierr = nf90_put_att(nid, id_fter, 'title','Frac. Land')
     662      ierr = nf90_def_var(nid, 'FOCE', nf90_format, dims, id_foce)
     663      ierr = nf90_put_att(nid, id_foce, 'title','Frac. Ocean')
     664      ierr = nf90_def_var(nid, 'FSIC', nf90_format, dims, id_fsic)
     665      ierr = nf90_put_att(nid, id_fsic, 'title','Frac. Sea Ice')
     666      ierr = nf90_def_var(nid, 'FLIC', nf90_format, dims, id_flic)
     667      ierr = nf90_put_att(nid, id_flic, 'title','Frac. Land Ice')
     668
     669      ierr = nf90_enddef(nid)
     670      IF (ierr/=nf90_noerr) THEN
    670671        WRITE (*, *) 'writelim error: failed to end define mode'
    671         WRITE (*, *) nf_strerror(ierr)
     672        WRITE (*, *) nf90_strerror(ierr)
    672673      END IF
    673674
     
    676677      DO k = 1, year_len
    677678        ierr = nf90_put_var(nid, id_tim, k, [k])
    678         IF (ierr/=nf_noerr) THEN
     679        IF (ierr/=nf90_noerr) THEN
    679680          WRITE (*, *) 'writelim error with temps(k),k=', k
    680           WRITE (*, *) nf_strerror(ierr)
     681          WRITE (*, *) nf90_strerror(ierr)
    681682        END IF
    682683      END DO
     
    689690    IF (is_master) THEN
    690691      ierr = nf90_put_var(nid, id_nat, phy_glo)
    691       IF (ierr/=nf_noerr) THEN
     692      IF (ierr/=nf90_noerr) THEN
    692693        WRITE (*, *) 'writelim error with phy_nat'
    693         WRITE (*, *) nf_strerror(ierr)
     694        WRITE (*, *) nf90_strerror(ierr)
    694695      END IF
    695696    END IF
     
    698699    IF (is_master) THEN
    699700      ierr = nf90_put_var(nid, id_sst, phy_glo)
    700       IF (ierr/=nf_noerr) THEN
     701      IF (ierr/=nf90_noerr) THEN
    701702        WRITE (*, *) 'writelim error with phy_sst'
    702         WRITE (*, *) nf_strerror(ierr)
     703        WRITE (*, *) nf90_strerror(ierr)
    703704      END IF
    704705    END IF
     
    707708    IF (is_master) THEN
    708709      ierr = nf90_put_var(nid, id_bils, phy_glo)
    709       IF (ierr/=nf_noerr) THEN
     710      IF (ierr/=nf90_noerr) THEN
    710711        WRITE (*, *) 'writelim error with phy_bil'
    711         WRITE (*, *) nf_strerror(ierr)
     712        WRITE (*, *) nf90_strerror(ierr)
    712713      END IF
    713714    END IF
     
    716717    IF (is_master) THEN
    717718      ierr = nf90_put_var(nid, id_alb, phy_glo)
    718       IF (ierr/=nf_noerr) THEN
     719      IF (ierr/=nf90_noerr) THEN
    719720        WRITE (*, *) 'writelim error with phy_alb'
    720         WRITE (*, *) nf_strerror(ierr)
     721        WRITE (*, *) nf90_strerror(ierr)
    721722      END IF
    722723    END IF
     
    725726    IF (is_master) THEN
    726727      ierr = nf90_put_var(nid, id_rug, phy_glo)
    727       IF (ierr/=nf_noerr) THEN
     728      IF (ierr/=nf90_noerr) THEN
    728729        WRITE (*, *) 'writelim error with phy_rug'
    729         WRITE (*, *) nf_strerror(ierr)
     730        WRITE (*, *) nf90_strerror(ierr)
    730731      END IF
    731732    END IF
     
    734735    IF (is_master) THEN
    735736      ierr = nf90_put_var(nid, id_fter, phy_glo)
    736       IF (ierr/=nf_noerr) THEN
     737      IF (ierr/=nf90_noerr) THEN
    737738        WRITE (*, *) 'writelim error with phy_fter'
    738         WRITE (*, *) nf_strerror(ierr)
     739        WRITE (*, *) nf90_strerror(ierr)
    739740      END IF
    740741    END IF
     
    743744    IF (is_master) THEN
    744745      ierr = nf90_put_var(nid, id_foce, phy_glo)
    745       IF (ierr/=nf_noerr) THEN
     746      IF (ierr/=nf90_noerr) THEN
    746747        WRITE (*, *) 'writelim error with phy_foce'
    747         WRITE (*, *) nf_strerror(ierr)
     748        WRITE (*, *) nf90_strerror(ierr)
    748749      END IF
    749750    END IF
     
    752753    IF (is_master) THEN
    753754      ierr = nf90_put_var(nid, id_fsic, phy_glo)
    754       IF (ierr/=nf_noerr) THEN
     755      IF (ierr/=nf90_noerr) THEN
    755756        WRITE (*, *) 'writelim error with phy_fsic'
    756         WRITE (*, *) nf_strerror(ierr)
     757        WRITE (*, *) nf90_strerror(ierr)
    757758      END IF
    758759    END IF
     
    761762    IF (is_master) THEN
    762763      ierr = nf90_put_var(nid, id_flic, phy_glo)
    763       IF (ierr/=nf_noerr) THEN
     764      IF (ierr/=nf90_noerr) THEN
    764765        WRITE (*, *) 'writelim error with phy_flic'
    765         WRITE (*, *) nf_strerror(ierr)
     766        WRITE (*, *) nf90_strerror(ierr)
    766767      END IF
    767768    END IF
     
    769770    ! close file:
    770771    IF (is_master) THEN
    771       ierr = nf_close(nid)
     772      ierr = nf90_close(nid)
    772773    END IF
    773774
Note: See TracChangeset for help on using the changeset viewer.