Ignore:
Timestamp:
Oct 24, 2024, 1:55:38 PM (13 months ago)
Author:
abarral
Message:

Replace F77 netcdf library by F90 netcdf library

Location:
LMDZ6/trunk/libf/phylmd/Dust
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/trunk/libf/phylmd/Dust/condsurfc.f90

    r5246 r5270  
    44        lmt_omnat)
    55  USE dimphy
     6  USE netcdf, ONLY: nf90_close, nf90_noerr, nf90_inq_varid, nf90_open, nf90_nowrite, nf90_get_var
    67  IMPLICIT none
    78  !
     
    1011  !
    1112  INCLUDE "dimensions.h"
    12   INCLUDE "netcdf.inc"
    1313
    1414  REAL :: lmt_bcff(klon), lmt_bcbb(klon),lmt_bc_penner(klon)
     
    3434  ENDIF
    3535  !
    36   ierr = NF_OPEN ("limitcarbon.nc", NF_NOWRITE, nid1)
    37   if (ierr.ne.NF_NOERR) then
     36  ierr = nf90_open ("limitcarbon.nc", nf90_nowrite, nid1)
     37  if (ierr.ne.nf90_noerr) then
    3838    write(6,*)' Pb d''ouverture du fichier limitbc.nc'
    3939    write(6,*)' ierr = ', ierr
     
    4848  !
    4949  !
    50   ierr = NF_INQ_VARID (nid1, "BCFF", nvarid)
     50  ierr = nf90_inq_varid(nid1, "BCFF", nvarid)
    5151  !nhl #ifdef NC_DOUBLE
    52   ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, lmt_bcff)
     52  ierr = nf90_get_var(nid1, nvarid, lmt_bcff, debut, epais)
    5353   ! print *,'IERR = ',ierr
    54    ! print *,'NF_NOERR = ',NF_NOERR
     54   ! print *,'nf90_noerr = ',nf90_noerr
    5555   ! print *,'debut = ',debut
    5656   ! print *,'epais = ',epais
    5757  !nhl #else
    58   !nhl       ierr = NF_GET_VARA_REAL (nid1, nvarid, debut, epais, lmt_bcff)
     58  !nhl       ierr = nf90_get_var(nid1, nvarid, lmt_bcff, debut, epais)
    5959  !nhl #endif
    60   IF (ierr .NE. NF_NOERR) THEN
     60  IF (ierr .NE. nf90_noerr) THEN
    6161     PRINT*, 'Pb de lecture pour les sources BC'
    6262     CALL exit(1)
     
    6464  !
    6565  !
    66   ierr = NF_INQ_VARID (nid1, "BCBB", nvarid)
     66  ierr = nf90_inq_varid(nid1, "BCBB", nvarid)
    6767  !nhl #ifdef NC_DOUBLE
    68   ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, lmt_bcbb)
     68  ierr = nf90_get_var(nid1, nvarid, lmt_bcbb, debut, epais)
    6969  !nhl #else
    70   !nhl       ierr = NF_GET_VARA_REAL (nid1, nvarid, debut, epais, lmt_bcbb)
     70  !nhl       ierr = nf90_get_var(nid1, nvarid, lmt_bcbb, debut, epais)
    7171  !nhl #endif
    72   IF (ierr .NE. NF_NOERR) THEN
     72  IF (ierr .NE. nf90_noerr) THEN
    7373     PRINT*, 'Pb de lecture pour les sources BC-biomass'
    7474     CALL exit(1)
     
    7676  !
    7777  !
    78   ierr = NF_INQ_VARID (nid1, "BCBL", nvarid)
     78  ierr = nf90_inq_varid(nid1, "BCBL", nvarid)
    7979  !nhl #ifdef NC_DOUBLE
    80   ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, lmt_bcbbl)
     80  ierr = nf90_get_var(nid1, nvarid, lmt_bcbbl, debut, epais)
    8181  !nhl #else
    82   !nhl       ierr = NF_GET_VARA_REAL (nid1, nvarid, debut, epais, lmt_bcbbl)
     82  !nhl       ierr = nf90_get_var(nid1, nvarid, lmt_bcbbl, debut, epais)
    8383  !nhl #endif
    84   IF (ierr .NE. NF_NOERR) THEN
     84  IF (ierr .NE. nf90_noerr) THEN
    8585     PRINT*, 'Pb de lecture pour les sources BC low'
    8686     CALL exit(1)
     
    8888  !
    8989  !
    90   ierr = NF_INQ_VARID (nid1, "BCBH", nvarid)
     90  ierr = nf90_inq_varid(nid1, "BCBH", nvarid)
    9191  !nhl #ifdef NC_DOUBLE
    92   ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, lmt_bcbbh)
     92  ierr = nf90_get_var(nid1, nvarid, lmt_bcbbh, debut, epais)
    9393  !nhl #else
    94   !nhl       ierr = NF_GET_VARA_REAL (nid1, nvarid, debut, epais, lmt_bcbbh)
     94  !nhl       ierr = nf90_get_var(nid1, nvarid, lmt_bcbbh, debut, epais)
    9595  !nhl #endif
    96   IF (ierr .NE. NF_NOERR) THEN
     96  IF (ierr .NE. nf90_noerr) THEN
    9797     PRINT*, 'Pb de lecture pour les sources BC high'
    9898     CALL exit(1)
    9999  ENDIF
    100100  !
    101   ierr = NF_INQ_VARID (nid1, "TERP", nvarid)
     101  ierr = nf90_inq_varid(nid1, "TERP", nvarid)
    102102  !nhl #ifdef NC_DOUBLE
    103   ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, lmt_terp)
     103  ierr = nf90_get_var(nid1, nvarid, lmt_terp, debut, epais)
    104104  !nhl #else
    105   !nhl       ierr = NF_GET_VARA_REAL (nid1, nvarid, debut, epais, lmt_terp)
     105  !nhl       ierr = nf90_get_var(nid1, nvarid, lmt_terp, debut, epais)
    106106  !nhl #endif
    107   IF (ierr .NE. NF_NOERR) THEN
     107  IF (ierr .NE. nf90_noerr) THEN
    108108     PRINT*, 'Pb de lecture pour les sources Terpene'
    109109     CALL exit(1)
     
    111111  !
    112112  !
    113   ierr = NF_INQ_VARID (nid1, "BC_penner", nvarid)
    114   !nhl #ifdef NC_DOUBLE
    115   ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, &
    116         epais, lmt_bc_penner)
    117   !nhl #else
    118   !nhl       ierr = NF_GET_VARA_REAL (nid1, nvarid, debut, epais,
    119   !nhl      .       lmt_bc_penner)
    120   !nhl #endif
    121   IF (ierr .NE. NF_NOERR) THEN
     113  ierr = nf90_inq_varid(nid1, "BC_penner", nvarid)
     114  ierr = nf90_get_var(nid1, nvarid, lmt_bc_penner, debut, &
     115        epais)
     116  IF (ierr .NE. nf90_noerr) THEN
    122117     PRINT*, 'Pb de lecture pour les sources BC Penner'
    123118     CALL exit(1)
     
    125120  !
    126121  !
    127   ierr = NF_INQ_VARID (nid1, "OMFF", nvarid)
     122  ierr = nf90_inq_varid(nid1, "OMFF", nvarid)
    128123  !nhl #ifdef NC_DOUBLE
    129   ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, lmt_omff)
     124  ierr = nf90_get_var(nid1, nvarid, lmt_omff, debut, epais)
    130125  !nhl #else
    131   !nhl       ierr = NF_GET_VARA_REAL (nid1, nvarid, debut, epais, lmt_omff)
     126  !nhl       ierr = nf90_get_var(nid1, nvarid, lmt_omff, debut, epais)
    132127  !nhl #endif
    133   IF (ierr .NE. NF_NOERR) THEN
     128  IF (ierr .NE. nf90_noerr) THEN
    134129     PRINT*, 'Pb de lecture pour les sources om-ifossil'
    135130     CALL exit(1)
     
    144139  ENDDO
    145140  !
    146   ierr = NF_CLOSE(nid1)
     141  ierr = nf90_close(nid1)
    147142  PRINT*, 'Carbon sources lues pour jour: ', jour
    148143  !
  • LMDZ6/trunk/libf/phylmd/Dust/condsurfc_new.f90

    r5246 r5270  
    66  USE mod_phys_lmdz_para
    77  USE dimphy
     8  USE netcdf, ONLY: nf90_get_var, nf90_close, nf90_noerr, nf90_inq_varid, nf90_open, nf90_nowrite
    89  IMPLICIT none
    910  !
     
    1213  !
    1314  INCLUDE "dimensions.h"
    14   INCLUDE "netcdf.inc"
    1515
    1616  REAL :: lmt_bcff(klon), lmt_bcnff(klon), lmt_bcba(klon)
     
    5757  !=======================================================================
    5858  !
    59   ierr = NF_OPEN ("carbon_emissions.nc", NF_NOWRITE, nid1)
    60   if (ierr.ne.NF_NOERR) then
     59  ierr = nf90_open ("carbon_emissions.nc", nf90_nowrite, nid1)
     60  if (ierr.ne.nf90_noerr) then
    6161    write(6,*)' Pb d''ouverture du fichier limitbc.nc'
    6262    write(6,*)' ierr = ', ierr
     
    6666  ! BC emissions from fossil fuel combustion
    6767  !
    68   ierr = NF_INQ_VARID (nid1, "BCFF", nvarid)
    69   ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, &
    70         lmt_bcff_glo)
    71   IF (ierr .NE. NF_NOERR) THEN
     68  ierr = nf90_inq_varid(nid1, "BCFF", nvarid)
     69  ierr = nf90_get_var(nid1, nvarid, &
     70        lmt_bcff_glo, debut, epais)
     71  IF (ierr .NE. nf90_noerr) THEN
    7272     PRINT*, 'Pb de lecture pour les sources BC'
    7373     CALL exit(1)
     
    7878  ! BC emissions from non fossil fuel combustion
    7979  !
    80   ierr = NF_INQ_VARID (nid1, "BCNFF", nvarid)
    81   ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, &
    82         lmt_bcnff_glo)
    83   IF (ierr .NE. NF_NOERR) THEN
     80  ierr = nf90_inq_varid(nid1, "BCNFF", nvarid)
     81  ierr = nf90_get_var(nid1, nvarid, &
     82        lmt_bcnff_glo, debut, epais)
     83  IF (ierr .NE. nf90_noerr) THEN
    8484     PRINT*, 'Pb de lecture pour les sources BC'
    8585     CALL exit(1)
     
    8888  ! Low BC emissions from biomass burning
    8989  !
    90   ierr = NF_INQ_VARID (nid1, "BCBBL", nvarid)
    91   ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, &
    92         lmt_bcbbl_glo)
    93   IF (ierr .NE. NF_NOERR) THEN
     90  ierr = nf90_inq_varid(nid1, "BCBBL", nvarid)
     91  ierr = nf90_get_var(nid1, nvarid, &
     92        lmt_bcbbl_glo, debut, epais)
     93  IF (ierr .NE. nf90_noerr) THEN
    9494     PRINT*, 'Pb de lecture pour les sources BC low'
    9595     CALL exit(1)
     
    9898  ! High BC emissions from biomass burning
    9999  !
    100   ierr = NF_INQ_VARID (nid1, "BCBBH", nvarid)
    101   ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, &
    102         lmt_bcbbh_glo)
    103   IF (ierr .NE. NF_NOERR) THEN
     100  ierr = nf90_inq_varid(nid1, "BCBBH", nvarid)
     101  ierr = nf90_get_var(nid1, nvarid, &
     102        lmt_bcbbh_glo, debut, epais)
     103  IF (ierr .NE. nf90_noerr) THEN
    104104     PRINT*, 'Pb de lecture pour les sources BC high'
    105105     CALL exit(1)
     
    108108  ! BC emissions from ship transport
    109109  !
    110   ierr = NF_INQ_VARID (nid1, "BCBA", nvarid)
    111   ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, &
    112         lmt_bcba_glo)
    113   IF (ierr .NE. NF_NOERR) THEN
     110  ierr = nf90_inq_varid(nid1, "BCBA", nvarid)
     111  ierr = nf90_get_var(nid1, nvarid, &
     112        lmt_bcba_glo, debut, epais)
     113  IF (ierr .NE. nf90_noerr) THEN
    114114     PRINT*, 'Pb de lecture pour les sources BC'
    115115     CALL exit(1)
     
    124124  ! OM emissions from fossil fuel combustion
    125125  !
    126   ierr = NF_INQ_VARID (nid1, "OMFF", nvarid)
    127   ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, &
    128         lmt_omff_glo)
    129   IF (ierr .NE. NF_NOERR) THEN
     126  ierr = nf90_inq_varid(nid1, "OMFF", nvarid)
     127  ierr = nf90_get_var(nid1, nvarid, &
     128        lmt_omff_glo, debut, epais)
     129  IF (ierr .NE. nf90_noerr) THEN
    130130     PRINT*, 'Pb de lecture pour les sources OM'
    131131     CALL exit(1)
     
    134134  ! OM emissions from non fossil fuel combustion
    135135  !
    136   ierr = NF_INQ_VARID (nid1, "OMNFF", nvarid)
    137   ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, &
    138         lmt_omnff_glo)
    139   IF (ierr .NE. NF_NOERR) THEN
     136  ierr = nf90_inq_varid(nid1, "OMNFF", nvarid)
     137  ierr = nf90_get_var(nid1, nvarid, &
     138        lmt_omnff_glo, debut, epais)
     139  IF (ierr .NE. nf90_noerr) THEN
    140140     PRINT*, 'Pb de lecture pour les sources OM'
    141141     CALL exit(1)
     
    144144  ! Low OM emissions from biomass burning - low
    145145  !
    146   ierr = NF_INQ_VARID (nid1, "OMBBL", nvarid)
    147   ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, &
    148         lmt_ombbl_glo)
    149   IF (ierr .NE. NF_NOERR) THEN
     146  ierr = nf90_inq_varid(nid1, "OMBBL", nvarid)
     147  ierr = nf90_get_var(nid1, nvarid, &
     148        lmt_ombbl_glo, debut, epais)
     149  IF (ierr .NE. nf90_noerr) THEN
    150150     PRINT*, 'Pb de lecture pour les sources OM low'
    151151     CALL exit(1)
     
    154154  ! High OM emissions from biomass burning - high
    155155  !
    156   ierr = NF_INQ_VARID (nid1, "OMBBH", nvarid)
    157   ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, &
    158         lmt_ombbh_glo)
    159   IF (ierr .NE. NF_NOERR) THEN
     156  ierr = nf90_inq_varid(nid1, "OMBBH", nvarid)
     157  ierr = nf90_get_var(nid1, nvarid, &
     158        lmt_ombbh_glo, debut, epais)
     159  IF (ierr .NE. nf90_noerr) THEN
    160160     PRINT*, 'Pb de lecture pour les sources OM high'
    161161     CALL exit(1)
     
    164164  ! High OM emissions from ship
    165165  !
    166   ierr = NF_INQ_VARID (nid1, "OMBA", nvarid)
    167   ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, &
    168         lmt_omba_glo)
    169   IF (ierr .NE. NF_NOERR) THEN
     166  ierr = nf90_inq_varid(nid1, "OMBA", nvarid)
     167  ierr = nf90_get_var(nid1, nvarid, &
     168        lmt_omba_glo, debut, epais)
     169  IF (ierr .NE. nf90_noerr) THEN
    170170     PRINT*, 'Pb de lecture pour les sources OM ship'
    171171     CALL exit(1)
     
    174174  ! Natural Terpene emissions => Natural OM emissions
    175175  !
    176   ierr = NF_INQ_VARID (nid1, "TERP", nvarid)
    177   ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, &
    178         lmt_terp_glo)
    179   IF (ierr .NE. NF_NOERR) THEN
     176  ierr = nf90_inq_varid(nid1, "TERP", nvarid)
     177  ierr = nf90_get_var(nid1, nvarid, &
     178        lmt_terp_glo, debut, epais)
     179  IF (ierr .NE. nf90_noerr) THEN
    180180     PRINT*, 'Pb de lecture pour les sources Terpene'
    181181     CALL exit(1)
     
    186186  ENDDO
    187187
    188   ierr = NF_CLOSE(nid1)
     188  ierr = nf90_close(nid1)
    189189  !
    190190  PRINT*, 'Carbon sources lues pour jour: ', jour
  • LMDZ6/trunk/libf/phylmd/Dust/condsurfs.f90

    r5246 r5270  
    44        lmt_dmsbio, lmt_h2sbio, lmt_dms, lmt_dmsconc)
    55   USE dimphy
     6   USE netcdf, ONLY: nf90_close, nf90_noerr, nf90_inq_varid, nf90_open, &
     7          nf90_nowrite, nf90_get_var
    68  IMPLICIT none
    79  !
     
    1012  !
    1113  INCLUDE "dimensions.h"
    12   INCLUDE "netcdf.inc"
    1314  !
    1415  REAL :: lmt_so2h(klon), lmt_so2b(klon), lmt_so2bb(klon)
     
    3435  ENDIF
    3536  !
    36   ierr = NF_OPEN ("limitsoufre.nc", NF_NOWRITE, nid)
    37   if (ierr.ne.NF_NOERR) then
     37  ierr = nf90_open ("limitsoufre.nc", nf90_nowrite, nid)
     38  if (ierr.ne.nf90_noerr) then
    3839    write(6,*)' Pb d''ouverture du fichier limitsoufre.nc'
    3940    write(6,*)' ierr = ', ierr
     
    4748  epais(2) = 1
    4849  !
    49   ierr = NF_INQ_VARID (nid, "VOLC", nvarid)
    50   !nhl #ifdef NC_DOUBLE
    51   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, lmt_so2volc)
    52   !nhl #else
    53   !nhl       ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_so2volc)
    54   !nhl #endif
    55   IF (ierr .NE. NF_NOERR) THEN
     50  ierr = nf90_inq_varid(nid, "VOLC", nvarid)
     51  !nhl #ifdef NC_DOUBLE
     52  ierr = nf90_get_var(nid, nvarid, lmt_so2volc, debut, epais)
     53  !nhl #else
     54  !nhl       ierr = nf90_get_var(nid, nvarid, lmt_so2volc, debut, epais)
     55  !nhl #endif
     56  IF (ierr .NE. nf90_noerr) THEN
    5657     PRINT*, 'Pb de lecture pour les sources so2 volcan'
    5758     CALL exit(1)
    5859  ENDIF
    5960  !
    60   ierr = NF_INQ_VARID (nid, "ALTI", nvarid)
    61   !nhl #ifdef NC_DOUBLE
    62   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, lmt_altvolc)
    63   !nhl #else
    64   !nhl       ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_altvolc)
    65   !nhl #endif
    66   IF (ierr .NE. NF_NOERR) THEN
     61  ierr = nf90_inq_varid(nid, "ALTI", nvarid)
     62  !nhl #ifdef NC_DOUBLE
     63  ierr = nf90_get_var(nid, nvarid, lmt_altvolc, debut, epais)
     64  !nhl #else
     65  !nhl       ierr = nf90_get_var(nid, nvarid, lmt_altvolc, debut, epais)
     66  !nhl #endif
     67  IF (ierr .NE. nf90_noerr) THEN
    6768     PRINT*, 'Pb de lecture pour les altitudes volcan'
    6869     CALL exit(1)
     
    7172  IF (edgar) THEN   !--EDGAR w/o ship and biomass burning
    7273  !
    73   ierr = NF_INQ_VARID (nid, "SO2ED95L", nvarid)
    74   !nhl #ifdef NC_DOUBLE
    75   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, lmt_so2b)
    76   !nhl #else
    77   !nhl       ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_so2b)
    78   !nhl #endif
    79   IF (ierr .NE. NF_NOERR) THEN
     74  ierr = nf90_inq_varid(nid, "SO2ED95L", nvarid)
     75  !nhl #ifdef NC_DOUBLE
     76  ierr = nf90_get_var(nid, nvarid, lmt_so2b, debut, epais)
     77  !nhl #else
     78  !nhl       ierr = nf90_get_var(nid, nvarid, lmt_so2b, debut, epais)
     79  !nhl #endif
     80  IF (ierr .NE. nf90_noerr) THEN
    8081     PRINT*, 'Pb de lecture pour les sources so2 edgar low'
    8182     CALL exit(1)
    8283  ENDIF
    8384  !
    84   ierr = NF_INQ_VARID (nid, "SO2ED95H", nvarid)
    85   !nhl #ifdef NC_DOUBLE
    86   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, lmt_so2h)
    87   !nhl #else
    88   !nhl       ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_so2h)
    89   !nhl #endif
    90   IF (ierr .NE. NF_NOERR) THEN
     85  ierr = nf90_inq_varid(nid, "SO2ED95H", nvarid)
     86  !nhl #ifdef NC_DOUBLE
     87  ierr = nf90_get_var(nid, nvarid, lmt_so2h, debut, epais)
     88  !nhl #else
     89  !nhl       ierr = nf90_get_var(nid, nvarid, lmt_so2h, debut, epais)
     90  !nhl #endif
     91  IF (ierr .NE. nf90_noerr) THEN
    9192     PRINT*, 'Pb de lecture pour les sources so2 edgar high'
    9293     CALL exit(1)
     
    9596  ELSE  !--GEIA
    9697  !
    97   ierr = NF_INQ_VARID (nid, "SO2H", nvarid)
    98   !nhl #ifdef NC_DOUBLE
    99   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, lmt_so2h)
    100   !nhl #else
    101   !nhl       ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_so2h)
    102   !nhl #endif
    103   IF (ierr .NE. NF_NOERR) THEN
     98  ierr = nf90_inq_varid(nid, "SO2H", nvarid)
     99  !nhl #ifdef NC_DOUBLE
     100  ierr = nf90_get_var(nid, nvarid, lmt_so2h, debut, epais)
     101  !nhl #else
     102  !nhl       ierr = nf90_get_var(nid, nvarid, lmt_so2h, debut, epais)
     103  !nhl #endif
     104  IF (ierr .NE. nf90_noerr) THEN
    104105     PRINT*, 'Pb de lecture pour les sources so2 haut'
    105106     CALL exit(1)
    106107  ENDIF
    107108  !
    108   ierr = NF_INQ_VARID (nid, "SO2B", nvarid)
    109   !nhl #ifdef NC_DOUBLE
    110   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, lmt_so2b)
    111   !nhl #else
    112   !nhl       ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_so2b)
    113   !nhl #endif
    114   IF (ierr .NE. NF_NOERR) THEN
     109  ierr = nf90_inq_varid(nid, "SO2B", nvarid)
     110  !nhl #ifdef NC_DOUBLE
     111  ierr = nf90_get_var(nid, nvarid, lmt_so2b, debut, epais)
     112  !nhl #else
     113  !nhl       ierr = nf90_get_var(nid, nvarid, lmt_so2b, debut, epais)
     114  !nhl #endif
     115  IF (ierr .NE. nf90_noerr) THEN
    115116     PRINT*, 'Pb de lecture pour les sources so2 bas'
    116117     CALL exit(1)
     
    119120  ENDIF  !--edgar
    120121  !
    121   ierr = NF_INQ_VARID (nid, "SO2BB", nvarid)
    122   !nhl #ifdef NC_DOUBLE
    123   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, lmt_so2bb)
    124   !nhl #else
    125   !nhl       ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_so2bb)
    126   !nhl #endif
    127   IF (ierr .NE. NF_NOERR) THEN
     122  ierr = nf90_inq_varid(nid, "SO2BB", nvarid)
     123  !nhl #ifdef NC_DOUBLE
     124  ierr = nf90_get_var(nid, nvarid, lmt_so2bb, debut, epais)
     125  !nhl #else
     126  !nhl       ierr = nf90_get_var(nid, nvarid, lmt_so2bb, debut, epais)
     127  !nhl #endif
     128  IF (ierr .NE. nf90_noerr) THEN
    128129     PRINT*, 'Pb de lecture pour les sources so2 bb'
    129130     CALL exit(1)
    130131  ENDIF
    131132  !
    132   ierr = NF_INQ_VARID (nid, "SO2BA", nvarid)
    133   !nhl #ifdef NC_DOUBLE
    134   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, lmt_so2ba)
    135   !nhl #else
    136   !nhl       ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_so2ba)
    137   !nhl #endif
    138   IF (ierr .NE. NF_NOERR) THEN
     133  ierr = nf90_inq_varid(nid, "SO2BA", nvarid)
     134  !nhl #ifdef NC_DOUBLE
     135  ierr = nf90_get_var(nid, nvarid, lmt_so2ba, debut, epais)
     136  !nhl #else
     137  !nhl       ierr = nf90_get_var(nid, nvarid, lmt_so2ba, debut, epais)
     138  !nhl #endif
     139  IF (ierr .NE. nf90_noerr) THEN
    139140     PRINT*, 'Pb de lecture pour les sources so2 bateau'
    140141     CALL exit(1)
    141142  ENDIF
    142143  !
    143   ierr = NF_INQ_VARID (nid, "DMSB", nvarid)
    144   !nhl #ifdef NC_DOUBLE
    145   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, lmt_dmsbio)
    146   !nhl #else
    147   !nhl       ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_dmsbio)
    148   !nhl #endif
    149   IF (ierr .NE. NF_NOERR) THEN
     144  ierr = nf90_inq_varid(nid, "DMSB", nvarid)
     145  !nhl #ifdef NC_DOUBLE
     146  ierr = nf90_get_var(nid, nvarid, lmt_dmsbio, debut, epais)
     147  !nhl #else
     148  !nhl       ierr = nf90_get_var(nid, nvarid, lmt_dmsbio, debut, epais)
     149  !nhl #endif
     150  IF (ierr .NE. nf90_noerr) THEN
    150151     PRINT*, 'Pb de lecture pour les sources dms bio'
    151152     CALL exit(1)
    152153  ENDIF
    153154  !
    154   ierr = NF_INQ_VARID (nid, "H2SB", nvarid)
    155   !nhl #ifdef NC_DOUBLE
    156   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, lmt_h2sbio)
    157   !nhl #else
    158   !nhl       ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_h2sbio)
    159   !nhl #endif
    160   IF (ierr .NE. NF_NOERR) THEN
     155  ierr = nf90_inq_varid(nid, "H2SB", nvarid)
     156  !nhl #ifdef NC_DOUBLE
     157  ierr = nf90_get_var(nid, nvarid, lmt_h2sbio, debut, epais)
     158  !nhl #else
     159  !nhl       ierr = nf90_get_var(nid, nvarid, lmt_h2sbio, debut, epais)
     160  !nhl #endif
     161  IF (ierr .NE. nf90_noerr) THEN
    161162     PRINT*, 'Pb de lecture pour les sources h2s bio'
    162163     CALL exit(1)
     
    165166  IF (flag_dms.EQ.1) THEN
    166167  !
    167   ierr = NF_INQ_VARID (nid, "DMSL", nvarid)
    168   !nhl #ifdef NC_DOUBLE
    169   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, lmt_dms)
    170   !nhl #else
    171   !nhl       ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_dms)
    172   !nhl #endif
    173   IF (ierr .NE. NF_NOERR) THEN
     168  ierr = nf90_inq_varid(nid, "DMSL", nvarid)
     169  !nhl #ifdef NC_DOUBLE
     170  ierr = nf90_get_var(nid, nvarid, lmt_dms, debut, epais)
     171  !nhl #else
     172  !nhl       ierr = nf90_get_var(nid, nvarid, lmt_dms, debut, epais)
     173  !nhl #endif
     174  IF (ierr .NE. nf90_noerr) THEN
    174175     PRINT*, 'Pb de lecture pour les sources dms liss'
    175176     CALL exit(1)
     
    178179  ELSEIF (flag_dms.EQ.2) THEN
    179180  !
    180   ierr = NF_INQ_VARID (nid, "DMSW", nvarid)
    181   !nhl #ifdef NC_DOUBLE
    182   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, lmt_dms)
    183   !nhl #else
    184   !nhl       ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_dms)
    185   !nhl #endif
    186   IF (ierr .NE. NF_NOERR) THEN
     181  ierr = nf90_inq_varid(nid, "DMSW", nvarid)
     182  !nhl #ifdef NC_DOUBLE
     183  ierr = nf90_get_var(nid, nvarid, lmt_dms, debut, epais)
     184  !nhl #else
     185  !nhl       ierr = nf90_get_var(nid, nvarid, lmt_dms, debut, epais)
     186  !nhl #endif
     187  IF (ierr .NE. nf90_noerr) THEN
    187188     PRINT*, 'Pb de lecture pour les sources dms wann'
    188189     CALL exit(1)
     
    191192  ELSEIF (flag_dms.EQ.3) THEN
    192193  !
    193   ierr = NF_INQ_VARID (nid, "DMSC1", nvarid)
    194   !nhl #ifdef NC_DOUBLE
    195   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut,epais,lmt_dmsconc)
    196   !nhl #else
    197   !nhl       ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_dmsconc)
    198   !nhl #endif
    199   IF (ierr .NE. NF_NOERR) THEN
     194  ierr = nf90_inq_varid(nid, "DMSC1", nvarid)
     195  !nhl #ifdef NC_DOUBLE
     196  ierr = nf90_get_var(nid, nvarid,lmt_dmsconc, debut,epais)
     197  !nhl #else
     198  !nhl       ierr = nf90_get_var(nid, nvarid, lmt_dmsconc, debut, epais)
     199  !nhl #endif
     200  IF (ierr .NE. nf90_noerr) THEN
    200201     PRINT*, 'Pb de lecture pour les sources dmsconc old'
    201202     CALL exit(1)
     
    204205  ELSEIF (flag_dms.EQ.4) THEN
    205206  !
    206   ierr = NF_INQ_VARID (nid, "DMSC2", nvarid)
    207   !nhl #ifdef NC_DOUBLE
    208   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut,epais,lmt_dmsconc)
    209   !nhl #else
    210   !nhl       ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_dmsconc)
    211   !nhl #endif
    212   IF (ierr .NE. NF_NOERR) THEN
     207  ierr = nf90_inq_varid(nid, "DMSC2", nvarid)
     208  !nhl #ifdef NC_DOUBLE
     209  ierr = nf90_get_var(nid, nvarid,lmt_dmsconc, debut,epais)
     210  !nhl #else
     211  !nhl       ierr = nf90_get_var(nid, nvarid, lmt_dmsconc, debut, epais)
     212  !nhl #endif
     213  IF (ierr .NE. nf90_noerr) THEN
    213214     PRINT*, 'Pb de lecture pour les sources dms conc 2'
    214215     CALL exit(1)
     
    217218  ELSEIF (flag_dms.EQ.5) THEN
    218219  !
    219   ierr = NF_INQ_VARID (nid, "DMSC3", nvarid)
    220   !nhl #ifdef NC_DOUBLE
    221   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut,epais,lmt_dmsconc)
    222   !nhl #else
    223   !nhl       ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_dmsconc)
    224   !nhl #endif
    225   IF (ierr .NE. NF_NOERR) THEN
     220  ierr = nf90_inq_varid(nid, "DMSC3", nvarid)
     221  !nhl #ifdef NC_DOUBLE
     222  ierr = nf90_get_var(nid, nvarid,lmt_dmsconc, debut,epais)
     223  !nhl #else
     224  !nhl       ierr = nf90_get_var(nid, nvarid, lmt_dmsconc, debut, epais)
     225  !nhl #endif
     226  IF (ierr .NE. nf90_noerr) THEN
    226227     PRINT*, 'Pb de lecture pour les sources dms conc 3'
    227228     CALL exit(1)
     
    230231  ELSEIF (flag_dms.EQ.6) THEN
    231232  !
    232   ierr = NF_INQ_VARID (nid, "DMSC4", nvarid)
    233   !nhl #ifdef NC_DOUBLE
    234   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut,epais,lmt_dmsconc)
    235   !nhl #else
    236   !nhl       ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_dmsconc)
    237   !nhl #endif
    238   IF (ierr .NE. NF_NOERR) THEN
     233  ierr = nf90_inq_varid(nid, "DMSC4", nvarid)
     234  !nhl #ifdef NC_DOUBLE
     235  ierr = nf90_get_var(nid, nvarid,lmt_dmsconc, debut,epais)
     236  !nhl #else
     237  !nhl       ierr = nf90_get_var(nid, nvarid, lmt_dmsconc, debut, epais)
     238  !nhl #endif
     239  IF (ierr .NE. nf90_noerr) THEN
    239240     PRINT*, 'Pb de lecture pour les sources dms conc 4'
    240241     CALL exit(1)
     
    243244  ELSEIF (flag_dms.EQ.7) THEN
    244245  !
    245   ierr = NF_INQ_VARID (nid, "DMSC5", nvarid)
    246   !nhl #ifdef NC_DOUBLE
    247   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut,epais,lmt_dmsconc)
    248   !nhl #else
    249   !nhl       ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_dmsconc)
    250   !nhl #endif
    251   IF (ierr .NE. NF_NOERR) THEN
     246  ierr = nf90_inq_varid(nid, "DMSC5", nvarid)
     247  !nhl #ifdef NC_DOUBLE
     248  ierr = nf90_get_var(nid, nvarid,lmt_dmsconc, debut,epais)
     249  !nhl #else
     250  !nhl       ierr = nf90_get_var(nid, nvarid, lmt_dmsconc, debut, epais)
     251  !nhl #endif
     252  IF (ierr .NE. nf90_noerr) THEN
    252253     PRINT*, 'Pb de lecture pour les sources dms conc 5'
    253254     CALL exit(1)
     
    256257  ELSEIF (flag_dms.EQ.8) THEN
    257258  !
    258   ierr = NF_INQ_VARID (nid, "DMSC6", nvarid)
    259   !nhl #ifdef NC_DOUBLE
    260   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut,epais,lmt_dmsconc)
    261   !nhl #else
    262   !nhl       ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_dmsconc)
    263   !nhl #endif
    264   IF (ierr .NE. NF_NOERR) THEN
     259  ierr = nf90_inq_varid(nid, "DMSC6", nvarid)
     260  !nhl #ifdef NC_DOUBLE
     261  ierr = nf90_get_var(nid, nvarid,lmt_dmsconc, debut,epais)
     262  !nhl #else
     263  !nhl       ierr = nf90_get_var(nid, nvarid, lmt_dmsconc, debut, epais)
     264  !nhl #endif
     265  IF (ierr .NE. nf90_noerr) THEN
    265266     PRINT*, 'Pb de lecture pour les sources dms conc 6'
    266267     CALL exit(1)
     
    269270  ELSEIF (flag_dms.EQ.9) THEN
    270271  !
    271   ierr = NF_INQ_VARID (nid, "DMSC7", nvarid)
    272   !nhl #ifdef NC_DOUBLE
    273   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut,epais,lmt_dmsconc)
    274   !nhl #else
    275   !nhl       ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_dmsconc)
    276   !nhl #endif
    277   IF (ierr .NE. NF_NOERR) THEN
     272  ierr = nf90_inq_varid(nid, "DMSC7", nvarid)
     273  !nhl #ifdef NC_DOUBLE
     274  ierr = nf90_get_var(nid, nvarid,lmt_dmsconc, debut,epais)
     275  !nhl #else
     276  !nhl       ierr = nf90_get_var(nid, nvarid, lmt_dmsconc, debut, epais)
     277  !nhl #endif
     278  IF (ierr .NE. nf90_noerr) THEN
    278279     PRINT*, 'Pb de lecture pour les sources dms conc 7'
    279280     CALL exit(1)
     
    282283  ELSEIF (flag_dms.EQ.10) THEN
    283284  !
    284   ierr = NF_INQ_VARID (nid, "DMSC8", nvarid)
    285   !nhl #ifdef NC_DOUBLE
    286   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut,epais,lmt_dmsconc)
    287   !nhl #else
    288   !nhl       ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_dmsconc)
    289   !nhl #endif
    290   IF (ierr .NE. NF_NOERR) THEN
     285  ierr = nf90_inq_varid(nid, "DMSC8", nvarid)
     286  !nhl #ifdef NC_DOUBLE
     287  ierr = nf90_get_var(nid, nvarid,lmt_dmsconc, debut,epais)
     288  !nhl #else
     289  !nhl       ierr = nf90_get_var(nid, nvarid, lmt_dmsconc, debut, epais)
     290  !nhl #endif
     291  IF (ierr .NE. nf90_noerr) THEN
    291292     PRINT*, 'Pb de lecture pour les sources dms conc 8'
    292293     CALL exit(1)
     
    300301  ENDIF
    301302  !
    302   ierr = NF_CLOSE(nid)
     303  ierr = nf90_close(nid)
    303304  !
    304305  IF (flag_dms.LE.2) THEN
  • LMDZ6/trunk/libf/phylmd/Dust/condsurfs_new.f90

    r5246 r5270  
    99  USE mod_phys_lmdz_para
    1010  USE dimphy
     11  USE netcdf, ONLY: nf90_get_var, nf90_inq_varid, nf90_close, nf90_noerr, nf90_open, nf90_nowrite
    1112  IMPLICIT none
    1213  !
     
    1516  !
    1617  INCLUDE "dimensions.h"
    17   INCLUDE "netcdf.inc"
    1818  !
    1919  REAL :: lmt_so2b(klon), lmt_so2h(klon), lmt_so2nff(klon)
     
    6161  !=======================================================================
    6262  !
    63   ierr = NF_OPEN ("sulphur_emissions_antro.nc", NF_NOWRITE, nid)
    64   if (ierr.ne.NF_NOERR) then
     63  ierr = nf90_open ("sulphur_emissions_antro.nc", nf90_nowrite, nid)
     64  if (ierr.ne.nf90_noerr) then
    6565    write(6,*)' Pb d''ouverture du fichier sulphur_emissions_antro'
    6666    write(6,*)' ierr = ', ierr
     
    7171  ! SO2 Low level emissions
    7272  !
    73   ierr = NF_INQ_VARID (nid, "SO2FF_LOW", nvarid)
    74   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais,lmt_so2b_glo)
    75   IF (ierr .NE. NF_NOERR) THEN
     73  ierr = nf90_inq_varid(nid, "SO2FF_LOW", nvarid)
     74  ierr = nf90_get_var(nid, nvarid,lmt_so2b_glo, debut, epais)
     75  IF (ierr .NE. nf90_noerr) THEN
    7676    PRINT*, 'Pb de lecture pour les sources so2 low'
    7777    print *,'JE klon, jour, debut ,epais ',klon_glo,jour,debut,epais
     
    8383  ! SO2 High level emissions
    8484  !
    85   ierr = NF_INQ_VARID (nid, "SO2FF_HIGH", nvarid)
    86   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais,lmt_so2h_glo)
    87   IF (ierr .NE. NF_NOERR) THEN
     85  ierr = nf90_inq_varid(nid, "SO2FF_HIGH", nvarid)
     86  ierr = nf90_get_var(nid, nvarid,lmt_so2h_glo, debut, epais)
     87  IF (ierr .NE. nf90_noerr) THEN
    8888    PRINT*, 'Pb de lecture pour les sources so2 high'
    8989    CALL exit(1)
     
    9292  ! SO2 Biomass burning High level emissions
    9393  !
    94   ierr = NF_INQ_VARID (nid, "SO2BBH", nvarid)
    95   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, &
    96         epais, lmt_so2bb_h_glo)
    97   IF (ierr .NE. NF_NOERR) THEN
     94  ierr = nf90_inq_varid(nid, "SO2BBH", nvarid)
     95  ierr = nf90_get_var(nid, nvarid, lmt_so2bb_h_glo, debut, &
     96        epais)
     97  IF (ierr .NE. nf90_noerr) THEN
    9898    PRINT*, 'Pb de lecture pour les sources so2 BB high'
    9999    CALL exit(1)
     
    102102  ! SO2 biomass burning low level emissions
    103103  !
    104   ierr = NF_INQ_VARID (nid, "SO2BBL", nvarid)
    105   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, &
    106         epais, lmt_so2bb_l_glo)
    107   IF (ierr .NE. NF_NOERR) THEN
     104  ierr = nf90_inq_varid(nid, "SO2BBL", nvarid)
     105  ierr = nf90_get_var(nid, nvarid, lmt_so2bb_l_glo, debut, &
     106        epais)
     107  IF (ierr .NE. nf90_noerr) THEN
    108108    PRINT*, 'Pb de lecture pour les sources so2 BB low'
    109109    CALL exit(1)
     
    112112  ! SO2 ship emissions
    113113  !
    114   ierr = NF_INQ_VARID (nid, "SO2BA", nvarid)
    115   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut,epais,lmt_so2ba_glo)
    116   IF (ierr .NE. NF_NOERR) THEN
     114  ierr = nf90_inq_varid(nid, "SO2BA", nvarid)
     115  ierr = nf90_get_var(nid, nvarid,lmt_so2ba_glo, debut,epais)
     116  IF (ierr .NE. nf90_noerr) THEN
    117117    PRINT*, 'Pb de lecture pour les sources so2 ship'
    118118    CALL exit(1)
     
    121121  ! SO2 Non Fossil Fuel Emissions
    122122  !
    123   ierr = NF_INQ_VARID (nid, "SO2NFF", nvarid)
    124   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, &
    125         lmt_so2nff_glo)
    126   IF (ierr .NE. NF_NOERR) THEN
     123  ierr = nf90_inq_varid(nid, "SO2NFF", nvarid)
     124  ierr = nf90_get_var(nid, nvarid, &
     125        lmt_so2nff_glo, debut, epais)
     126  IF (ierr .NE. nf90_noerr) THEN
    127127    PRINT*, 'Pb de lecture pour les sources so2 non FF'
    128128    CALL exit(1)
    129129  ENDIF
    130130  !
    131   ierr = NF_CLOSE(nid)
     131  ierr = nf90_close(nid)
    132132  !
    133133  !=======================================================================
    134134                   ! READING NATURAL EMISSIONS
    135135  !=======================================================================
    136   ierr = NF_OPEN ("sulphur_emissions_nat.nc", NF_NOWRITE, nid)
    137   if (ierr.ne.NF_NOERR) then
     136  ierr = nf90_open ("sulphur_emissions_nat.nc", nf90_nowrite, nid)
     137  if (ierr.ne.nf90_noerr) then
    138138    write(6,*)' Pb d''ouverture du fichier sulphur_emissions_nat'
    139139    write(6,*)' ierr = ', ierr
     
    143143  ! Biologenic source of DMS
    144144  !
    145   ierr = NF_INQ_VARID (nid, "DMSB", nvarid)
    146   ierr = NF_GET_VARA_DOUBLE (nid, nvarid,debut,epais,lmt_dmsbio_glo)
    147   IF (ierr .NE. NF_NOERR) THEN
     145  ierr = nf90_inq_varid(nid, "DMSB", nvarid)
     146  ierr = nf90_get_var(nid, nvarid,lmt_dmsbio_glo,debut,epais)
     147  IF (ierr .NE. nf90_noerr) THEN
    148148     PRINT*, 'Pb de lecture pour les sources dms bio'
    149149     CALL exit(1)
     
    152152  ! Biologenic source of H2S
    153153  !
    154   ierr = NF_INQ_VARID (nid, "H2SB", nvarid)
    155   ierr = NF_GET_VARA_DOUBLE (nid, nvarid,debut,epais,lmt_h2sbio_glo)
    156   IF (ierr .NE. NF_NOERR) THEN
     154  ierr = nf90_inq_varid(nid, "H2SB", nvarid)
     155  ierr = nf90_get_var(nid, nvarid,lmt_h2sbio_glo,debut,epais)
     156  IF (ierr .NE. nf90_noerr) THEN
    157157     PRINT*, 'Pb de lecture pour les sources h2s bio'
    158158     CALL exit(1)
     
    163163  IF (flag_dms.EQ.4) THEN
    164164  !
    165   ierr = NF_INQ_VARID (nid, "DMSC2", nvarid)
    166   ierr = NF_GET_VARA_DOUBLE (nid,nvarid,debut,epais,lmt_dmsconc_glo)
    167   IF (ierr .NE. NF_NOERR) THEN
     165  ierr = nf90_inq_varid(nid, "DMSC2", nvarid)
     166  ierr = nf90_get_var(nid,nvarid,lmt_dmsconc_glo,debut,epais)
     167  IF (ierr .NE. nf90_noerr) THEN
    168168     PRINT*, 'Pb de lecture pour les sources dms conc 2'
    169169     CALL exit(1)
     
    182182  ENDIF
    183183  !
    184   ierr = NF_CLOSE(nid)
     184  ierr = nf90_close(nid)
    185185  !
    186186  !=======================================================================
     
    189189  print *,'   ***      READING VOLCANIC EMISSIONS   ***   '
    190190  print *,' Jour = ',jour
    191   ierr = NF_OPEN ("sulphur_emissions_volc.nc", NF_NOWRITE, nid)
    192   if (ierr.ne.NF_NOERR) then
     191  ierr = nf90_open ("sulphur_emissions_volc.nc", nf90_nowrite, nid)
     192  if (ierr.ne.nf90_noerr) then
    193193    write(6,*)' Pb d''ouverture du fichier sulphur_emissions_volc'
    194194    write(6,*)' ierr = ', ierr
     
    198198  ! Continuous Volcanic emissions
    199199  !
    200   !  ierr = NF_INQ_VARID (nid, "VOLC", nvarid)
    201   ierr = NF_INQ_VARID (nid, "flx_volc_cont", nvarid)
    202   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, &
    203         lmt_so2volc_cont_glo)
    204   IF (ierr .NE. NF_NOERR) THEN
     200  !  ierr = nf90_inq_varid(nid, "VOLC", nvarid)
     201  ierr = nf90_inq_varid(nid, "flx_volc_cont", nvarid)
     202  ierr = nf90_get_var(nid, nvarid, &
     203        lmt_so2volc_cont_glo, debut, epais)
     204  IF (ierr .NE. nf90_noerr) THEN
    205205     PRINT*, 'Pb de lecture pour les sources so2 volcan (cont)'
    206206     CALL exit(1)
     
    212212  ! Altitud of continuous volcanic emissions
    213213  !
    214   !  ierr = NF_INQ_VARID (nid, "ALTI", nvarid)
    215   ierr = NF_INQ_VARID (nid, "flx_volc_altcont", nvarid)
    216   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, &
    217         lmt_altvolc_cont_glo)
    218   IF (ierr .NE. NF_NOERR) THEN
     214  !  ierr = nf90_inq_varid(nid, "ALTI", nvarid)
     215  ierr = nf90_inq_varid(nid, "flx_volc_altcont", nvarid)
     216  ierr = nf90_get_var(nid, nvarid, &
     217        lmt_altvolc_cont_glo, debut, epais)
     218  IF (ierr .NE. nf90_noerr) THEN
    219219     PRINT*, 'Pb de lecture pour les altitudes volcan (cont)'
    220220     CALL exit(1)
     
    223223  ! Explosive Volcanic emissions
    224224  !
    225   ierr = NF_INQ_VARID (nid, "flx_volc_expl", nvarid)
    226   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, &
    227         lmt_so2volc_expl_glo)
    228   IF (ierr .NE. NF_NOERR) THEN
     225  ierr = nf90_inq_varid(nid, "flx_volc_expl", nvarid)
     226  ierr = nf90_get_var(nid, nvarid, &
     227        lmt_so2volc_expl_glo, debut, epais)
     228  IF (ierr .NE. nf90_noerr) THEN
    229229     PRINT*, 'Pb de lecture pour les sources so2 volcan (expl)'
    230230     CALL exit(1)
     
    236236  ! Altitud of explosive volcanic emissions
    237237  !
    238   ierr = NF_INQ_VARID (nid, "flx_volc_altexpl", nvarid)
    239   ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, &
    240         lmt_altvolc_expl_glo)
    241   IF (ierr .NE. NF_NOERR) THEN
     238  ierr = nf90_inq_varid(nid, "flx_volc_altexpl", nvarid)
     239  ierr = nf90_get_var(nid, nvarid, &
     240        lmt_altvolc_expl_glo, debut, epais)
     241  IF (ierr .NE. nf90_noerr) THEN
    242242     PRINT*, 'Pb de lecture pour les altitudes volcan'
    243243     CALL exit(1)
     
    245245   ! lmt_altvolc_expl(:)=0.0
    246246
    247   ierr = NF_CLOSE(nid)
     247  ierr = nf90_close(nid)
    248248  !
    249249  PRINT*, 'Sources SOUFRE lues pour jour: ', jour
  • LMDZ6/trunk/libf/phylmd/Dust/phytracr_spl_mod.F90

    r5233 r5270  
    45684568      USE mod_grid_phy_lmdz
    45694569      USE mod_phys_lmdz_para
     4570      USE netcdf, ONLY: nf90_open, nf90_close, nf90_inq_varid, nf90_nowrite, nf90_noerr, nf90_get_var
    45704571      IMPLICIT NONE
    4571 
    4572       include "netcdf.inc"
    45734572
    45744573      CHARACTER*800 filescaleparams
     
    45814580      integer start(4),count(4), status
    45824581!      local
    4583       integer debutread,countread
    45844582      CHARACTER*104 varname
    45854583      CHARACTER*2 aux_2s
     
    45874585!$OMP MASTER
    45884586      IF (is_mpi_root .AND. is_omp_root) THEN
    4589           !nci=NCOPN(trim(adjustl(filescaleparams)),NCNOWRIT,rcode)
    4590          ierr = NF_OPEN (trim(adjustl(filescaleparams)),NF_NOWRITE, nid)
    4591           if (ierr .EQ. NF_NOERR) THEN
    4592           debutread=step_sca
    4593           countread=1
     4587          !nci=nf90_open(trim(adjustl(filescaleparams)),nf90_nowrite,rcode)
     4588         ierr = nf90_open (trim(adjustl(filescaleparams)),nf90_nowrite, nid)
     4589          if (ierr .EQ. nf90_noerr) THEN
    45944590
    45954591           do i=1,nbreg
     
    45974593            varname= trim(adjustl(paramname))//aux_2s
    45984594            print *,varname
    4599             ierr = NF_INQ_VARID (nid,trim(adjustl(varname)), nvarid)
    4600             ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debutread,          &
    4601                          countread, auxreal)
    4602             IF (ierr .NE. NF_NOERR) THEN
     4595            ierr = nf90_inq_varid(nid,trim(adjustl(varname)), nvarid)
     4596            ierr = nf90_get_var(nid, nvarid, auxreal, [step_sca])
     4597            IF (ierr .NE. nf90_noerr) THEN
    46034598             PRINT*, 'Pb de lecture pour modvalues'
    46044599       print *,'JE  scale_var, step_sca',trim(adjustl(varname)),step_sca
     
    46134608           enddo
    46144609
    4615             ierr = NF_CLOSE(nid)
     4610            ierr = nf90_close(nid)
    46164611          else
    46174612           print *,'File '//trim(adjustl(filescaleparams))//' not found'
  • LMDZ6/trunk/libf/phylmd/Dust/read_dust.f90

    r5268 r5270  
    33  USE mod_grid_phy_lmdz
    44  USE mod_phys_lmdz_para
    5   USE netcdf, ONLY: nf90_get_var
     5  USE netcdf, ONLY: nf90_get_var, nf90_nowrite, nf90_open, nf90_inq_varid
    66  IMPLICIT NONE
    77  !
    88  INCLUDE "dimensions.h"
    99  INCLUDE "paramet.h"
    10   INCLUDE "netcdf.inc"
    1110  !
    1211  INTEGER :: step, nbjour
     
    1716  ! as      real dust_nc(iip1,jjp1)
    1817  real :: dust_nc_glo(nbp_lon+1,nbp_lat)
    19   real :: rcode
    20   integer :: ncid1, varid1, ncid2, varid2
     18  INTEGER :: ncid1, varid1, ncid2, varid2, rcode
    2119
    2220  save ncid1, varid1, ncid2, varid2
     
    2927  if (debutphy) then
    3028  !
    31      ncid1=NCOPN('dust.nc',NCNOWRIT,rcode)
    32      varid1=NCVID(ncid1,'EMISSION',rcode)
     29     ncid1=nf90_open('dust.nc',nf90_nowrite,rcode)
     30     varid1=nf90_inq_varid(ncid1,'EMISSION',rcode)
    3331  !
    3432  endif
  • LMDZ6/trunk/libf/phylmd/Dust/read_surface.f90

    r5268 r5270  
    1010       USE mod_phys_lmdz_para
    1111       USE iophy
    12        USE netcdf, ONLY: nf90_get_var
     12       USE netcdf, ONLY: nf90_inq_varid,nf90_noerr,nf90_get_var,nf90_nowrite,nf90_inq_varid,nf90_open
    1313       IMPLICIT NONE
    14 
    15        INCLUDE "netcdf.inc"
    1614       INCLUDE "dimensions.h"
    1715       INCLUDE "paramet.h"
     
    3129       real surfa_glo(klon_glo,5)
    3230!
    33        integer ncid
    34        integer varid
    35        real rcode
     31       integer ncid, varid, rcode
    3632       integer start(2),count(2),status
    3733       integer i,j,l,ig
     
    4339      real, dimension(jjp1) :: lats
    4440      real, dimension(nbp_lat) :: lats_glo
    45       real :: rcode2
    4641      integer, dimension(1) :: startj,endj
    4742!JE20140526>>
     
    5045
    5146       print*,'Lecture du fichier donnees_lisa.nc'
    52        ncid=NCOPN('donnees_lisa.nc',NCNOWRIT,rcode)
     47       ncid=nf90_open('donnees_lisa.nc',nf90_nowrite,rcode)
    5348
    5449!JE20140526<<: check if are inversed or not the latitude grid in donnes_lisa
     
    6257       if (i==4) aux4s='Latu'
    6358       if (i==5) aux4s='latU'
    64        status = NF_INQ_VARID (ncid, aux4s, rcode)
     59       status = nf90_inq_varid(ncid, aux4s, rcode)
    6560!       print *,'stat,i',status,i,outcycle,aux4s
    66 !       print *,'ifclause',status.NE. NF_NOERR ,outcycle == .false.
    67        IF ((.not.(status.NE. NF_NOERR) ).and.( .not. outcycle )) THEN
     61!       print *,'ifclause',status.NE. nf90_noerr ,outcycle == .false.
     62       IF ((.not.(status.NE. nf90_noerr) ).and.( .not. outcycle )) THEN
    6863         outcycle=.true.
    6964         latstr=aux4s
     
    7368!      endj(1)=jjp1
    7469      endj(1)=nbp_lat
    75       varid=NCVID(ncid,latstr,rcode)
     70      varid=nf90_inq_varid(ncid,latstr,rcode)
    7671
    7772          status = nf90_get_var(ncid, varid, lats_glo, startj, endj)
    7873!      print *,latstr,varid,status,jjp1,rcode
    79 !      IF (status .NE. NF_NOERR) print*,'NOOOOOOO'
     74!      IF (status .NE. nf90_noerr) print*,'NOOOOOOO'
    8075!      print *,lats
    8176!stop
     
    9085          varname=trim(name)//str1
    9186       print*,'lecture variable:',varname
    92           varid=NCVID(ncid,trim(varname),rcode)
    93 !          varid=NCVID(ncid,varname,rcode)
     87          varid=nf90_inq_varid(ncid,trim(varname),rcode)
     88!          varid=nf90_inq_varid(ncid,varname,rcode)
    9489
    9590!  dimensions pour les champs scalaires et le vent zonal
  • LMDZ6/trunk/libf/phylmd/Dust/read_vent.f90

    r5268 r5270  
    33  USE mod_grid_phy_lmdz
    44  USE mod_phys_lmdz_para
    5   USE netcdf, ONLY: nf90_get_var
     5  USE netcdf, ONLY: nf90_get_var, nf90_open, nf90_inq_varid, nf90_nowrite
    66   ! USE write_field_phy
    77  IMPLICIT NONE
     
    99    ! INCLUDE "dimphy.h"
    1010  INCLUDE "paramet.h"
    11   INCLUDE "netcdf.inc"
    1211  !
    1312  INTEGER :: step, nbjour
     
    2019  real :: u10m_nc_glo(nbp_lon+1,nbp_lat) !, v10m_nc(iip1,jjm) ! dim 97x72
    2120  real :: v10m_nc_glo(nbp_lon+1,nbp_lat)  ! dim 97x73
    22   real :: rcode
    23   integer :: ncidu1, varidu1, ncidv1, varidv1
     21  integer :: ncidu1, varidu1, ncidv1, varidv1, rcode
    2422  save ncidu1, varidu1, ncidv1, varidv1
    2523!$OMP THREADPRIVATE(ncidu1, varidu1, ncidv1, varidv1)
     
    3331  if (debutphy) then
    3432  !
    35      ncidu1=NCOPN('u10m.nc',NCNOWRIT,rcode)
    36      varidu1=NCVID(ncidu1,'U10M',rcode)
    37      ncidv1=NCOPN('v10m.nc',NCNOWRIT,rcode)
    38      varidv1=NCVID(ncidv1,'V10M',rcode)
     33     ncidu1=nf90_open('u10m.nc',nf90_nowrite,rcode)
     34     varidu1=nf90_inq_varid(ncidu1,'U10M',rcode)
     35     ncidv1=nf90_open('v10m.nc',nf90_nowrite,rcode)
     36     varidv1=nf90_inq_varid(ncidv1,'V10M',rcode)
    3937  !
    4038  endif
Note: See TracChangeset for help on using the changeset viewer.