Changeset 5270 for LMDZ6/trunk/libf/phylmd/Dust
- Timestamp:
- Oct 24, 2024, 1:55:38 PM (13 months ago)
- Location:
- LMDZ6/trunk/libf/phylmd/Dust
- Files:
-
- 8 edited
-
condsurfc.f90 (modified) (10 diffs)
-
condsurfc_new.f90 (modified) (15 diffs)
-
condsurfs.f90 (modified) (18 diffs)
-
condsurfs_new.f90 (modified) (19 diffs)
-
phytracr_spl_mod.F90 (modified) (5 diffs)
-
read_dust.f90 (modified) (3 diffs)
-
read_surface.f90 (modified) (7 diffs)
-
read_vent.f90 (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/trunk/libf/phylmd/Dust/condsurfc.f90
r5246 r5270 4 4 lmt_omnat) 5 5 USE dimphy 6 USE netcdf, ONLY: nf90_close, nf90_noerr, nf90_inq_varid, nf90_open, nf90_nowrite, nf90_get_var 6 7 IMPLICIT none 7 8 ! … … 10 11 ! 11 12 INCLUDE "dimensions.h" 12 INCLUDE "netcdf.inc"13 13 14 14 REAL :: lmt_bcff(klon), lmt_bcbb(klon),lmt_bc_penner(klon) … … 34 34 ENDIF 35 35 ! 36 ierr = NF_OPEN ("limitcarbon.nc", NF_NOWRITE, nid1)37 if (ierr.ne. NF_NOERR) then36 ierr = nf90_open ("limitcarbon.nc", nf90_nowrite, nid1) 37 if (ierr.ne.nf90_noerr) then 38 38 write(6,*)' Pb d''ouverture du fichier limitbc.nc' 39 39 write(6,*)' ierr = ', ierr … … 48 48 ! 49 49 ! 50 ierr = NF_INQ_VARID(nid1, "BCFF", nvarid)50 ierr = nf90_inq_varid(nid1, "BCFF", nvarid) 51 51 !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) 53 53 ! print *,'IERR = ',ierr 54 ! print *,' NF_NOERR = ',NF_NOERR54 ! print *,'nf90_noerr = ',nf90_noerr 55 55 ! print *,'debut = ',debut 56 56 ! print *,'epais = ',epais 57 57 !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) 59 59 !nhl #endif 60 IF (ierr .NE. NF_NOERR) THEN60 IF (ierr .NE. nf90_noerr) THEN 61 61 PRINT*, 'Pb de lecture pour les sources BC' 62 62 CALL exit(1) … … 64 64 ! 65 65 ! 66 ierr = NF_INQ_VARID(nid1, "BCBB", nvarid)66 ierr = nf90_inq_varid(nid1, "BCBB", nvarid) 67 67 !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) 69 69 !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) 71 71 !nhl #endif 72 IF (ierr .NE. NF_NOERR) THEN72 IF (ierr .NE. nf90_noerr) THEN 73 73 PRINT*, 'Pb de lecture pour les sources BC-biomass' 74 74 CALL exit(1) … … 76 76 ! 77 77 ! 78 ierr = NF_INQ_VARID(nid1, "BCBL", nvarid)78 ierr = nf90_inq_varid(nid1, "BCBL", nvarid) 79 79 !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) 81 81 !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) 83 83 !nhl #endif 84 IF (ierr .NE. NF_NOERR) THEN84 IF (ierr .NE. nf90_noerr) THEN 85 85 PRINT*, 'Pb de lecture pour les sources BC low' 86 86 CALL exit(1) … … 88 88 ! 89 89 ! 90 ierr = NF_INQ_VARID(nid1, "BCBH", nvarid)90 ierr = nf90_inq_varid(nid1, "BCBH", nvarid) 91 91 !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) 93 93 !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) 95 95 !nhl #endif 96 IF (ierr .NE. NF_NOERR) THEN96 IF (ierr .NE. nf90_noerr) THEN 97 97 PRINT*, 'Pb de lecture pour les sources BC high' 98 98 CALL exit(1) 99 99 ENDIF 100 100 ! 101 ierr = NF_INQ_VARID(nid1, "TERP", nvarid)101 ierr = nf90_inq_varid(nid1, "TERP", nvarid) 102 102 !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) 104 104 !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) 106 106 !nhl #endif 107 IF (ierr .NE. NF_NOERR) THEN107 IF (ierr .NE. nf90_noerr) THEN 108 108 PRINT*, 'Pb de lecture pour les sources Terpene' 109 109 CALL exit(1) … … 111 111 ! 112 112 ! 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 122 117 PRINT*, 'Pb de lecture pour les sources BC Penner' 123 118 CALL exit(1) … … 125 120 ! 126 121 ! 127 ierr = NF_INQ_VARID(nid1, "OMFF", nvarid)122 ierr = nf90_inq_varid(nid1, "OMFF", nvarid) 128 123 !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) 130 125 !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) 132 127 !nhl #endif 133 IF (ierr .NE. NF_NOERR) THEN128 IF (ierr .NE. nf90_noerr) THEN 134 129 PRINT*, 'Pb de lecture pour les sources om-ifossil' 135 130 CALL exit(1) … … 144 139 ENDDO 145 140 ! 146 ierr = NF_CLOSE(nid1)141 ierr = nf90_close(nid1) 147 142 PRINT*, 'Carbon sources lues pour jour: ', jour 148 143 ! -
LMDZ6/trunk/libf/phylmd/Dust/condsurfc_new.f90
r5246 r5270 6 6 USE mod_phys_lmdz_para 7 7 USE dimphy 8 USE netcdf, ONLY: nf90_get_var, nf90_close, nf90_noerr, nf90_inq_varid, nf90_open, nf90_nowrite 8 9 IMPLICIT none 9 10 ! … … 12 13 ! 13 14 INCLUDE "dimensions.h" 14 INCLUDE "netcdf.inc"15 15 16 16 REAL :: lmt_bcff(klon), lmt_bcnff(klon), lmt_bcba(klon) … … 57 57 !======================================================================= 58 58 ! 59 ierr = NF_OPEN ("carbon_emissions.nc", NF_NOWRITE, nid1)60 if (ierr.ne. NF_NOERR) then59 ierr = nf90_open ("carbon_emissions.nc", nf90_nowrite, nid1) 60 if (ierr.ne.nf90_noerr) then 61 61 write(6,*)' Pb d''ouverture du fichier limitbc.nc' 62 62 write(6,*)' ierr = ', ierr … … 66 66 ! BC emissions from fossil fuel combustion 67 67 ! 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) THEN68 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 72 72 PRINT*, 'Pb de lecture pour les sources BC' 73 73 CALL exit(1) … … 78 78 ! BC emissions from non fossil fuel combustion 79 79 ! 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) THEN80 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 84 84 PRINT*, 'Pb de lecture pour les sources BC' 85 85 CALL exit(1) … … 88 88 ! Low BC emissions from biomass burning 89 89 ! 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) THEN90 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 94 94 PRINT*, 'Pb de lecture pour les sources BC low' 95 95 CALL exit(1) … … 98 98 ! High BC emissions from biomass burning 99 99 ! 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) THEN100 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 104 104 PRINT*, 'Pb de lecture pour les sources BC high' 105 105 CALL exit(1) … … 108 108 ! BC emissions from ship transport 109 109 ! 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) THEN110 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 114 114 PRINT*, 'Pb de lecture pour les sources BC' 115 115 CALL exit(1) … … 124 124 ! OM emissions from fossil fuel combustion 125 125 ! 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) THEN126 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 130 130 PRINT*, 'Pb de lecture pour les sources OM' 131 131 CALL exit(1) … … 134 134 ! OM emissions from non fossil fuel combustion 135 135 ! 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) THEN136 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 140 140 PRINT*, 'Pb de lecture pour les sources OM' 141 141 CALL exit(1) … … 144 144 ! Low OM emissions from biomass burning - low 145 145 ! 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) THEN146 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 150 150 PRINT*, 'Pb de lecture pour les sources OM low' 151 151 CALL exit(1) … … 154 154 ! High OM emissions from biomass burning - high 155 155 ! 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) THEN156 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 160 160 PRINT*, 'Pb de lecture pour les sources OM high' 161 161 CALL exit(1) … … 164 164 ! High OM emissions from ship 165 165 ! 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) THEN166 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 170 170 PRINT*, 'Pb de lecture pour les sources OM ship' 171 171 CALL exit(1) … … 174 174 ! Natural Terpene emissions => Natural OM emissions 175 175 ! 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) THEN176 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 180 180 PRINT*, 'Pb de lecture pour les sources Terpene' 181 181 CALL exit(1) … … 186 186 ENDDO 187 187 188 ierr = NF_CLOSE(nid1)188 ierr = nf90_close(nid1) 189 189 ! 190 190 PRINT*, 'Carbon sources lues pour jour: ', jour -
LMDZ6/trunk/libf/phylmd/Dust/condsurfs.f90
r5246 r5270 4 4 lmt_dmsbio, lmt_h2sbio, lmt_dms, lmt_dmsconc) 5 5 USE dimphy 6 USE netcdf, ONLY: nf90_close, nf90_noerr, nf90_inq_varid, nf90_open, & 7 nf90_nowrite, nf90_get_var 6 8 IMPLICIT none 7 9 ! … … 10 12 ! 11 13 INCLUDE "dimensions.h" 12 INCLUDE "netcdf.inc"13 14 ! 14 15 REAL :: lmt_so2h(klon), lmt_so2b(klon), lmt_so2bb(klon) … … 34 35 ENDIF 35 36 ! 36 ierr = NF_OPEN ("limitsoufre.nc", NF_NOWRITE, nid)37 if (ierr.ne. NF_NOERR) then37 ierr = nf90_open ("limitsoufre.nc", nf90_nowrite, nid) 38 if (ierr.ne.nf90_noerr) then 38 39 write(6,*)' Pb d''ouverture du fichier limitsoufre.nc' 39 40 write(6,*)' ierr = ', ierr … … 47 48 epais(2) = 1 48 49 ! 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) THEN50 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 56 57 PRINT*, 'Pb de lecture pour les sources so2 volcan' 57 58 CALL exit(1) 58 59 ENDIF 59 60 ! 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) THEN61 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 67 68 PRINT*, 'Pb de lecture pour les altitudes volcan' 68 69 CALL exit(1) … … 71 72 IF (edgar) THEN !--EDGAR w/o ship and biomass burning 72 73 ! 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) THEN74 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 80 81 PRINT*, 'Pb de lecture pour les sources so2 edgar low' 81 82 CALL exit(1) 82 83 ENDIF 83 84 ! 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) THEN85 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 91 92 PRINT*, 'Pb de lecture pour les sources so2 edgar high' 92 93 CALL exit(1) … … 95 96 ELSE !--GEIA 96 97 ! 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) THEN98 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 104 105 PRINT*, 'Pb de lecture pour les sources so2 haut' 105 106 CALL exit(1) 106 107 ENDIF 107 108 ! 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) THEN109 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 115 116 PRINT*, 'Pb de lecture pour les sources so2 bas' 116 117 CALL exit(1) … … 119 120 ENDIF !--edgar 120 121 ! 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) THEN122 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 128 129 PRINT*, 'Pb de lecture pour les sources so2 bb' 129 130 CALL exit(1) 130 131 ENDIF 131 132 ! 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) THEN133 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 139 140 PRINT*, 'Pb de lecture pour les sources so2 bateau' 140 141 CALL exit(1) 141 142 ENDIF 142 143 ! 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) THEN144 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 150 151 PRINT*, 'Pb de lecture pour les sources dms bio' 151 152 CALL exit(1) 152 153 ENDIF 153 154 ! 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) THEN155 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 161 162 PRINT*, 'Pb de lecture pour les sources h2s bio' 162 163 CALL exit(1) … … 165 166 IF (flag_dms.EQ.1) THEN 166 167 ! 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) THEN168 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 174 175 PRINT*, 'Pb de lecture pour les sources dms liss' 175 176 CALL exit(1) … … 178 179 ELSEIF (flag_dms.EQ.2) THEN 179 180 ! 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) THEN181 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 187 188 PRINT*, 'Pb de lecture pour les sources dms wann' 188 189 CALL exit(1) … … 191 192 ELSEIF (flag_dms.EQ.3) THEN 192 193 ! 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) THEN194 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 200 201 PRINT*, 'Pb de lecture pour les sources dmsconc old' 201 202 CALL exit(1) … … 204 205 ELSEIF (flag_dms.EQ.4) THEN 205 206 ! 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) THEN207 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 213 214 PRINT*, 'Pb de lecture pour les sources dms conc 2' 214 215 CALL exit(1) … … 217 218 ELSEIF (flag_dms.EQ.5) THEN 218 219 ! 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) THEN220 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 226 227 PRINT*, 'Pb de lecture pour les sources dms conc 3' 227 228 CALL exit(1) … … 230 231 ELSEIF (flag_dms.EQ.6) THEN 231 232 ! 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) THEN233 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 239 240 PRINT*, 'Pb de lecture pour les sources dms conc 4' 240 241 CALL exit(1) … … 243 244 ELSEIF (flag_dms.EQ.7) THEN 244 245 ! 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) THEN246 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 252 253 PRINT*, 'Pb de lecture pour les sources dms conc 5' 253 254 CALL exit(1) … … 256 257 ELSEIF (flag_dms.EQ.8) THEN 257 258 ! 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) THEN259 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 265 266 PRINT*, 'Pb de lecture pour les sources dms conc 6' 266 267 CALL exit(1) … … 269 270 ELSEIF (flag_dms.EQ.9) THEN 270 271 ! 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) THEN272 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 278 279 PRINT*, 'Pb de lecture pour les sources dms conc 7' 279 280 CALL exit(1) … … 282 283 ELSEIF (flag_dms.EQ.10) THEN 283 284 ! 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) THEN285 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 291 292 PRINT*, 'Pb de lecture pour les sources dms conc 8' 292 293 CALL exit(1) … … 300 301 ENDIF 301 302 ! 302 ierr = NF_CLOSE(nid)303 ierr = nf90_close(nid) 303 304 ! 304 305 IF (flag_dms.LE.2) THEN -
LMDZ6/trunk/libf/phylmd/Dust/condsurfs_new.f90
r5246 r5270 9 9 USE mod_phys_lmdz_para 10 10 USE dimphy 11 USE netcdf, ONLY: nf90_get_var, nf90_inq_varid, nf90_close, nf90_noerr, nf90_open, nf90_nowrite 11 12 IMPLICIT none 12 13 ! … … 15 16 ! 16 17 INCLUDE "dimensions.h" 17 INCLUDE "netcdf.inc"18 18 ! 19 19 REAL :: lmt_so2b(klon), lmt_so2h(klon), lmt_so2nff(klon) … … 61 61 !======================================================================= 62 62 ! 63 ierr = NF_OPEN ("sulphur_emissions_antro.nc", NF_NOWRITE, nid)64 if (ierr.ne. NF_NOERR) then63 ierr = nf90_open ("sulphur_emissions_antro.nc", nf90_nowrite, nid) 64 if (ierr.ne.nf90_noerr) then 65 65 write(6,*)' Pb d''ouverture du fichier sulphur_emissions_antro' 66 66 write(6,*)' ierr = ', ierr … … 71 71 ! SO2 Low level emissions 72 72 ! 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) THEN73 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 76 76 PRINT*, 'Pb de lecture pour les sources so2 low' 77 77 print *,'JE klon, jour, debut ,epais ',klon_glo,jour,debut,epais … … 83 83 ! SO2 High level emissions 84 84 ! 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) THEN85 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 88 88 PRINT*, 'Pb de lecture pour les sources so2 high' 89 89 CALL exit(1) … … 92 92 ! SO2 Biomass burning High level emissions 93 93 ! 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) THEN94 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 98 98 PRINT*, 'Pb de lecture pour les sources so2 BB high' 99 99 CALL exit(1) … … 102 102 ! SO2 biomass burning low level emissions 103 103 ! 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) THEN104 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 108 108 PRINT*, 'Pb de lecture pour les sources so2 BB low' 109 109 CALL exit(1) … … 112 112 ! SO2 ship emissions 113 113 ! 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) THEN114 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 117 117 PRINT*, 'Pb de lecture pour les sources so2 ship' 118 118 CALL exit(1) … … 121 121 ! SO2 Non Fossil Fuel Emissions 122 122 ! 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) THEN123 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 127 127 PRINT*, 'Pb de lecture pour les sources so2 non FF' 128 128 CALL exit(1) 129 129 ENDIF 130 130 ! 131 ierr = NF_CLOSE(nid)131 ierr = nf90_close(nid) 132 132 ! 133 133 !======================================================================= 134 134 ! READING NATURAL EMISSIONS 135 135 !======================================================================= 136 ierr = NF_OPEN ("sulphur_emissions_nat.nc", NF_NOWRITE, nid)137 if (ierr.ne. NF_NOERR) then136 ierr = nf90_open ("sulphur_emissions_nat.nc", nf90_nowrite, nid) 137 if (ierr.ne.nf90_noerr) then 138 138 write(6,*)' Pb d''ouverture du fichier sulphur_emissions_nat' 139 139 write(6,*)' ierr = ', ierr … … 143 143 ! Biologenic source of DMS 144 144 ! 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) THEN145 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 148 148 PRINT*, 'Pb de lecture pour les sources dms bio' 149 149 CALL exit(1) … … 152 152 ! Biologenic source of H2S 153 153 ! 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) THEN154 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 157 157 PRINT*, 'Pb de lecture pour les sources h2s bio' 158 158 CALL exit(1) … … 163 163 IF (flag_dms.EQ.4) THEN 164 164 ! 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) THEN165 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 168 168 PRINT*, 'Pb de lecture pour les sources dms conc 2' 169 169 CALL exit(1) … … 182 182 ENDIF 183 183 ! 184 ierr = NF_CLOSE(nid)184 ierr = nf90_close(nid) 185 185 ! 186 186 !======================================================================= … … 189 189 print *,' *** READING VOLCANIC EMISSIONS *** ' 190 190 print *,' Jour = ',jour 191 ierr = NF_OPEN ("sulphur_emissions_volc.nc", NF_NOWRITE, nid)192 if (ierr.ne. NF_NOERR) then191 ierr = nf90_open ("sulphur_emissions_volc.nc", nf90_nowrite, nid) 192 if (ierr.ne.nf90_noerr) then 193 193 write(6,*)' Pb d''ouverture du fichier sulphur_emissions_volc' 194 194 write(6,*)' ierr = ', ierr … … 198 198 ! Continuous Volcanic emissions 199 199 ! 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) THEN200 ! 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 205 205 PRINT*, 'Pb de lecture pour les sources so2 volcan (cont)' 206 206 CALL exit(1) … … 212 212 ! Altitud of continuous volcanic emissions 213 213 ! 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) THEN214 ! 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 219 219 PRINT*, 'Pb de lecture pour les altitudes volcan (cont)' 220 220 CALL exit(1) … … 223 223 ! Explosive Volcanic emissions 224 224 ! 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) THEN225 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 229 229 PRINT*, 'Pb de lecture pour les sources so2 volcan (expl)' 230 230 CALL exit(1) … … 236 236 ! Altitud of explosive volcanic emissions 237 237 ! 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) THEN238 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 242 242 PRINT*, 'Pb de lecture pour les altitudes volcan' 243 243 CALL exit(1) … … 245 245 ! lmt_altvolc_expl(:)=0.0 246 246 247 ierr = NF_CLOSE(nid)247 ierr = nf90_close(nid) 248 248 ! 249 249 PRINT*, 'Sources SOUFRE lues pour jour: ', jour -
LMDZ6/trunk/libf/phylmd/Dust/phytracr_spl_mod.F90
r5233 r5270 4568 4568 USE mod_grid_phy_lmdz 4569 4569 USE mod_phys_lmdz_para 4570 USE netcdf, ONLY: nf90_open, nf90_close, nf90_inq_varid, nf90_nowrite, nf90_noerr, nf90_get_var 4570 4571 IMPLICIT NONE 4571 4572 include "netcdf.inc"4573 4572 4574 4573 CHARACTER*800 filescaleparams … … 4581 4580 integer start(4),count(4), status 4582 4581 ! local 4583 integer debutread,countread4584 4582 CHARACTER*104 varname 4585 4583 CHARACTER*2 aux_2s … … 4587 4585 !$OMP MASTER 4588 4586 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 4594 4590 4595 4591 do i=1,nbreg … … 4597 4593 varname= trim(adjustl(paramname))//aux_2s 4598 4594 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 4603 4598 PRINT*, 'Pb de lecture pour modvalues' 4604 4599 print *,'JE scale_var, step_sca',trim(adjustl(varname)),step_sca … … 4613 4608 enddo 4614 4609 4615 ierr = NF_CLOSE(nid)4610 ierr = nf90_close(nid) 4616 4611 else 4617 4612 print *,'File '//trim(adjustl(filescaleparams))//' not found' -
LMDZ6/trunk/libf/phylmd/Dust/read_dust.f90
r5268 r5270 3 3 USE mod_grid_phy_lmdz 4 4 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 6 6 IMPLICIT NONE 7 7 ! 8 8 INCLUDE "dimensions.h" 9 9 INCLUDE "paramet.h" 10 INCLUDE "netcdf.inc"11 10 ! 12 11 INTEGER :: step, nbjour … … 17 16 ! as real dust_nc(iip1,jjp1) 18 17 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 21 19 22 20 save ncid1, varid1, ncid2, varid2 … … 29 27 if (debutphy) then 30 28 ! 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) 33 31 ! 34 32 endif -
LMDZ6/trunk/libf/phylmd/Dust/read_surface.f90
r5268 r5270 10 10 USE mod_phys_lmdz_para 11 11 USE iophy 12 USE netcdf, ONLY: nf90_ get_var12 USE netcdf, ONLY: nf90_inq_varid,nf90_noerr,nf90_get_var,nf90_nowrite,nf90_inq_varid,nf90_open 13 13 IMPLICIT NONE 14 15 INCLUDE "netcdf.inc"16 14 INCLUDE "dimensions.h" 17 15 INCLUDE "paramet.h" … … 31 29 real surfa_glo(klon_glo,5) 32 30 ! 33 integer ncid 34 integer varid 35 real rcode 31 integer ncid, varid, rcode 36 32 integer start(2),count(2),status 37 33 integer i,j,l,ig … … 43 39 real, dimension(jjp1) :: lats 44 40 real, dimension(nbp_lat) :: lats_glo 45 real :: rcode246 41 integer, dimension(1) :: startj,endj 47 42 !JE20140526>> … … 50 45 51 46 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) 53 48 54 49 !JE20140526<<: check if are inversed or not the latitude grid in donnes_lisa … … 62 57 if (i==4) aux4s='Latu' 63 58 if (i==5) aux4s='latU' 64 status = NF_INQ_VARID(ncid, aux4s, rcode)59 status = nf90_inq_varid(ncid, aux4s, rcode) 65 60 ! 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 )) THEN61 ! print *,'ifclause',status.NE. nf90_noerr ,outcycle == .false. 62 IF ((.not.(status.NE. nf90_noerr) ).and.( .not. outcycle )) THEN 68 63 outcycle=.true. 69 64 latstr=aux4s … … 73 68 ! endj(1)=jjp1 74 69 endj(1)=nbp_lat 75 varid= NCVID(ncid,latstr,rcode)70 varid=nf90_inq_varid(ncid,latstr,rcode) 76 71 77 72 status = nf90_get_var(ncid, varid, lats_glo, startj, endj) 78 73 ! print *,latstr,varid,status,jjp1,rcode 79 ! IF (status .NE. NF_NOERR) print*,'NOOOOOOO'74 ! IF (status .NE. nf90_noerr) print*,'NOOOOOOO' 80 75 ! print *,lats 81 76 !stop … … 90 85 varname=trim(name)//str1 91 86 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) 94 89 95 90 ! dimensions pour les champs scalaires et le vent zonal -
LMDZ6/trunk/libf/phylmd/Dust/read_vent.f90
r5268 r5270 3 3 USE mod_grid_phy_lmdz 4 4 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 6 6 ! USE write_field_phy 7 7 IMPLICIT NONE … … 9 9 ! INCLUDE "dimphy.h" 10 10 INCLUDE "paramet.h" 11 INCLUDE "netcdf.inc"12 11 ! 13 12 INTEGER :: step, nbjour … … 20 19 real :: u10m_nc_glo(nbp_lon+1,nbp_lat) !, v10m_nc(iip1,jjm) ! dim 97x72 21 20 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 24 22 save ncidu1, varidu1, ncidv1, varidv1 25 23 !$OMP THREADPRIVATE(ncidu1, varidu1, ncidv1, varidv1) … … 33 31 if (debutphy) then 34 32 ! 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) 39 37 ! 40 38 endif
Note: See TracChangeset
for help on using the changeset viewer.
