Changeset 5084 for LMDZ6/trunk/libf/phylmd/Dust
- Timestamp:
- Jul 19, 2024, 6:40:44 PM (14 months ago)
- Location:
- LMDZ6/trunk/libf/phylmd/Dust
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/trunk/libf/phylmd/Dust/condsurfc.F
r5075 r5084 4 4 . lmt_omnat) 5 5 USE dimphy 6 USE lmdz_netcdf, ONLY: nf_close,nf_noerr,nf_inq_varid,nf_open,nf_nowrite,nf90_get_var7 6 IMPLICIT none 8 7 ! … … 11 10 ! 12 11 INCLUDE "dimensions.h" 13 12 INCLUDE "netcdf.inc" 13 14 14 REAL lmt_bcff(klon), lmt_bcbb(klon),lmt_bc_penner(klon) 15 15 REAL lmt_omff(klon), lmt_ombb(klon) … … 24 24 INTEGER debut(2),epais(2) 25 25 ! 26 IF (jour <0 .OR. jour>(360-1)) THEN27 IF (jour >(360-1).AND.jour<=367) THEN26 IF (jour.LT.0 .OR. jour.GT.(360-1)) THEN 27 IF (jour.GT.(360-1).AND.jour.LE.367) THEN 28 28 jour=360-1 29 29 print *,'JE: jour changed to jour= ',jour … … 35 35 ! 36 36 ierr = NF_OPEN ("limitcarbon.nc", NF_NOWRITE, nid1) 37 if (ierr /=NF_NOERR) then37 if (ierr.ne.NF_NOERR) then 38 38 write(6,*)' Pb d''ouverture du fichier limitbc.nc' 39 39 write(6,*)' ierr = ', ierr … … 49 49 ! 50 50 ierr = NF_INQ_VARID (nid1, "BCFF", nvarid) 51 ierr = nf90_get_var(nid1, nvarid, lmt_bcff, debut, epais) 51 !nhl #ifdef NC_DOUBLE 52 ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, lmt_bcff) 52 53 ! print *,'IERR = ',ierr 53 54 ! print *,'NF_NOERR = ',NF_NOERR 54 55 ! print *,'debut = ',debut 55 56 ! print *,'epais = ',epais 56 IF (ierr /= NF_NOERR) THEN 57 !nhl #else 58 !nhl ierr = NF_GET_VARA_REAL (nid1, nvarid, debut, epais, lmt_bcff) 59 !nhl #endif 60 IF (ierr .NE. NF_NOERR) THEN 57 61 PRINT*, 'Pb de lecture pour les sources BC' 58 62 CALL exit(1) … … 61 65 ! 62 66 ierr = NF_INQ_VARID (nid1, "BCBB", nvarid) 63 ierr = nf90_get_var(nid1, nvarid, lmt_bcbb, debut, epais) 64 IF (ierr /= NF_NOERR) THEN 67 !nhl #ifdef NC_DOUBLE 68 ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, lmt_bcbb) 69 !nhl #else 70 !nhl ierr = NF_GET_VARA_REAL (nid1, nvarid, debut, epais, lmt_bcbb) 71 !nhl #endif 72 IF (ierr .NE. NF_NOERR) THEN 65 73 PRINT*, 'Pb de lecture pour les sources BC-biomass' 66 74 CALL exit(1) … … 69 77 ! 70 78 ierr = NF_INQ_VARID (nid1, "BCBL", nvarid) 71 ierr = nf90_get_var(nid1, nvarid, lmt_bcbbl, debut, epais) 72 IF (ierr /= NF_NOERR) THEN 79 !nhl #ifdef NC_DOUBLE 80 ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, lmt_bcbbl) 81 !nhl #else 82 !nhl ierr = NF_GET_VARA_REAL (nid1, nvarid, debut, epais, lmt_bcbbl) 83 !nhl #endif 84 IF (ierr .NE. NF_NOERR) THEN 73 85 PRINT*, 'Pb de lecture pour les sources BC low' 74 86 CALL exit(1) … … 77 89 ! 78 90 ierr = NF_INQ_VARID (nid1, "BCBH", nvarid) 79 ierr = nf90_get_var (nid1, nvarid, lmt_bcbbh, debut, epais) 80 IF (ierr /= NF_NOERR) THEN 91 !nhl #ifdef NC_DOUBLE 92 ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, lmt_bcbbh) 93 !nhl #else 94 !nhl ierr = NF_GET_VARA_REAL (nid1, nvarid, debut, epais, lmt_bcbbh) 95 !nhl #endif 96 IF (ierr .NE. NF_NOERR) THEN 81 97 PRINT*, 'Pb de lecture pour les sources BC high' 82 98 CALL exit(1) … … 84 100 ! 85 101 ierr = NF_INQ_VARID (nid1, "TERP", nvarid) 86 ierr = nf90_get_var (nid1, nvarid, lmt_terp, debut, epais) 87 IF (ierr /= NF_NOERR) THEN 102 !nhl #ifdef NC_DOUBLE 103 ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, lmt_terp) 104 !nhl #else 105 !nhl ierr = NF_GET_VARA_REAL (nid1, nvarid, debut, epais, lmt_terp) 106 !nhl #endif 107 IF (ierr .NE. NF_NOERR) THEN 88 108 PRINT*, 'Pb de lecture pour les sources Terpene' 89 109 CALL exit(1) … … 92 112 ! 93 113 ierr = NF_INQ_VARID (nid1, "BC_penner", nvarid) 94 ierr = nf90_get_var (nid1, nvarid, lmt_bc_penner, debut, epais) 95 IF (ierr /= NF_NOERR) THEN 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 96 122 PRINT*, 'Pb de lecture pour les sources BC Penner' 97 123 CALL exit(1) … … 100 126 ! 101 127 ierr = NF_INQ_VARID (nid1, "OMFF", nvarid) 102 ierr = nf90_get_var (nid1, nvarid, lmt_omff, debut, epais) 103 IF (ierr /= NF_NOERR) THEN 128 !nhl #ifdef NC_DOUBLE 129 ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, lmt_omff) 130 !nhl #else 131 !nhl ierr = NF_GET_VARA_REAL (nid1, nvarid, debut, epais, lmt_omff) 132 !nhl #endif 133 IF (ierr .NE. NF_NOERR) THEN 104 134 PRINT*, 'Pb de lecture pour les sources om-ifossil' 105 135 CALL exit(1) -
LMDZ6/trunk/libf/phylmd/Dust/condsurfc_new.F
r5075 r5084 6 6 USE mod_phys_lmdz_para 7 7 USE dimphy 8 USE lmdz_netcdf, ONLY:nf90_get_var,nf_close,nf_noerr,nf_inq_varid,nf_open,nf_nowrite9 8 IMPLICIT none 10 9 c … … 13 12 c 14 13 INCLUDE "dimensions.h" 15 14 INCLUDE "netcdf.inc" 15 16 16 REAL lmt_bcff(klon), lmt_bcnff(klon), lmt_bcba(klon) 17 17 REAL lmt_omff(klon), lmt_omnff(klon), lmt_ombb(klon) … … 36 36 c 37 37 ! IF (jour.LT.0 .OR. jour.GT.(366-1)) THEN 38 IF (jour <0 .OR. jour>366) THEN38 IF (jour.LT.0 .OR. jour.GT.366) THEN 39 39 PRINT*,'Le jour demande n est pas correcte:', jour 40 40 print *,'JE: FORCED TO CONTINUE (emissions have … … 58 58 ! 59 59 ierr = NF_OPEN ("carbon_emissions.nc", NF_NOWRITE, nid1) 60 if (ierr /=NF_NOERR) then60 if (ierr.ne.NF_NOERR) then 61 61 write(6,*)' Pb d''ouverture du fichier limitbc.nc' 62 62 write(6,*)' ierr = ', ierr … … 67 67 ! 68 68 ierr = NF_INQ_VARID (nid1, "BCFF", nvarid) 69 ierr = nf90_get_var (nid1, nvarid, lmt_bcff_glo, debut, epais) 70 IF (ierr /= NF_NOERR) THEN 69 ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, 70 . lmt_bcff_glo) 71 IF (ierr .NE. NF_NOERR) THEN 71 72 PRINT*, 'Pb de lecture pour les sources BC' 72 73 CALL exit(1) … … 78 79 ! 79 80 ierr = NF_INQ_VARID (nid1, "BCNFF", nvarid) 80 ierr = nf90_get_var (nid1, nvarid, lmt_bcnff_glo, debut, epais) 81 IF (ierr /= NF_NOERR) THEN 81 ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, 82 . lmt_bcnff_glo) 83 IF (ierr .NE. NF_NOERR) THEN 82 84 PRINT*, 'Pb de lecture pour les sources BC' 83 85 CALL exit(1) … … 87 89 ! 88 90 ierr = NF_INQ_VARID (nid1, "BCBBL", nvarid) 89 ierr = nf90_get_var (nid1, nvarid, lmt_bcbbl_glo, debut, epais) 90 IF (ierr /= NF_NOERR) THEN 91 ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, 92 . lmt_bcbbl_glo) 93 IF (ierr .NE. NF_NOERR) THEN 91 94 PRINT*, 'Pb de lecture pour les sources BC low' 92 95 CALL exit(1) … … 96 99 ! 97 100 ierr = NF_INQ_VARID (nid1, "BCBBH", nvarid) 98 ierr = nf90_get_var (nid1, nvarid, lmt_bcbbh_glo, debut, epais) 99 IF (ierr /= NF_NOERR) THEN 101 ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, 102 . lmt_bcbbh_glo) 103 IF (ierr .NE. NF_NOERR) THEN 100 104 PRINT*, 'Pb de lecture pour les sources BC high' 101 105 CALL exit(1) … … 105 109 ! 106 110 ierr = NF_INQ_VARID (nid1, "BCBA", nvarid) 107 ierr = nf90_get_var (nid1, nvarid, lmt_bcba_glo, debut, epais) 108 IF (ierr /= NF_NOERR) THEN 111 ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, 112 . lmt_bcba_glo) 113 IF (ierr .NE. NF_NOERR) THEN 109 114 PRINT*, 'Pb de lecture pour les sources BC' 110 115 CALL exit(1) … … 120 125 ! 121 126 ierr = NF_INQ_VARID (nid1, "OMFF", nvarid) 122 ierr = nf90_get_var (nid1, nvarid, lmt_omff_glo, debut, epais) 123 IF (ierr /= NF_NOERR) THEN 127 ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, 128 . lmt_omff_glo) 129 IF (ierr .NE. NF_NOERR) THEN 124 130 PRINT*, 'Pb de lecture pour les sources OM' 125 131 CALL exit(1) … … 129 135 ! 130 136 ierr = NF_INQ_VARID (nid1, "OMNFF", nvarid) 131 ierr = nf90_get_var (nid1, nvarid, lmt_omnff_glo, debut, epais) 132 IF (ierr /= NF_NOERR) THEN 137 ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, 138 . lmt_omnff_glo) 139 IF (ierr .NE. NF_NOERR) THEN 133 140 PRINT*, 'Pb de lecture pour les sources OM' 134 141 CALL exit(1) … … 138 145 ! 139 146 ierr = NF_INQ_VARID (nid1, "OMBBL", nvarid) 140 ierr = nf90_get_var (nid1, nvarid, lmt_ombbl_glo, debut, epais) 141 IF (ierr /= NF_NOERR) THEN 147 ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, 148 . lmt_ombbl_glo) 149 IF (ierr .NE. NF_NOERR) THEN 142 150 PRINT*, 'Pb de lecture pour les sources OM low' 143 151 CALL exit(1) … … 147 155 ! 148 156 ierr = NF_INQ_VARID (nid1, "OMBBH", nvarid) 149 ierr = nf90_get_var (nid1, nvarid, lmt_ombbh_glo, debut, epais) 150 IF (ierr /= NF_NOERR) THEN 157 ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, 158 . lmt_ombbh_glo) 159 IF (ierr .NE. NF_NOERR) THEN 151 160 PRINT*, 'Pb de lecture pour les sources OM high' 152 161 CALL exit(1) … … 156 165 ! 157 166 ierr = NF_INQ_VARID (nid1, "OMBA", nvarid) 158 ierr = nf90_get_var (nid1, nvarid, lmt_omba_glo, debut, epais) 159 IF (ierr /= NF_NOERR) THEN 167 ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, 168 . lmt_omba_glo) 169 IF (ierr .NE. NF_NOERR) THEN 160 170 PRINT*, 'Pb de lecture pour les sources OM ship' 161 171 CALL exit(1) … … 165 175 ! 166 176 ierr = NF_INQ_VARID (nid1, "TERP", nvarid) 167 ierr = nf90_get_var (nid1, nvarid, lmt_terp_glo, debut, epais) 168 IF (ierr /= NF_NOERR) THEN 177 ierr = NF_GET_VARA_DOUBLE (nid1, nvarid, debut, epais, 178 . lmt_terp_glo) 179 IF (ierr .NE. NF_NOERR) THEN 169 180 PRINT*, 'Pb de lecture pour les sources Terpene' 170 181 CALL exit(1) -
LMDZ6/trunk/libf/phylmd/Dust/condsurfs.F
r5075 r5084 4 4 . lmt_dmsbio, lmt_h2sbio, lmt_dms, lmt_dmsconc) 5 5 USE dimphy 6 USE lmdz_netcdf, ONLY:nf_close,nf_noerr,nf_inq_varid,nf_open,nf_nowrite,nf90_get_var7 6 IMPLICIT none 8 7 c … … 11 10 c 12 11 INCLUDE "dimensions.h" 12 INCLUDE "netcdf.inc" 13 13 c 14 14 REAL lmt_so2h(klon), lmt_so2b(klon), lmt_so2bb(klon) … … 24 24 INTEGER debut(2),epais(2) 25 25 c 26 IF (jour <0 .OR. jour>(360-1)) THEN27 IF ((jour >(360-1)) .AND. (jour<=367)) THEN26 IF (jour.LT.0 .OR. jour.GT.(360-1)) THEN 27 IF ((jour.GT.(360-1)) .AND. (jour.LE.367)) THEN 28 28 jour=360-1 29 29 print *,'JE: jour changed to jour= ',jour … … 35 35 c 36 36 ierr = NF_OPEN ("limitsoufre.nc", NF_NOWRITE, nid) 37 if (ierr /=NF_NOERR) then37 if (ierr.ne.NF_NOERR) then 38 38 write(6,*)' Pb d''ouverture du fichier limitsoufre.nc' 39 39 write(6,*)' ierr = ', ierr … … 48 48 c 49 49 ierr = NF_INQ_VARID (nid, "VOLC", nvarid) 50 ierr = nf90_get_var(nid, nvarid, lmt_so2volc, debut, epais) 51 IF (ierr /= NF_NOERR) THEN 50 cnhl #ifdef NC_DOUBLE 51 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, lmt_so2volc) 52 cnhl #else 53 cnhl ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_so2volc) 54 cnhl #endif 55 IF (ierr .NE. NF_NOERR) THEN 52 56 PRINT*, 'Pb de lecture pour les sources so2 volcan' 53 57 CALL exit(1) … … 55 59 c 56 60 ierr = NF_INQ_VARID (nid, "ALTI", nvarid) 57 ierr = nf90_get_var(nid, nvarid, lmt_altvolc, debut, epais) 58 IF (ierr /= NF_NOERR) THEN 61 cnhl #ifdef NC_DOUBLE 62 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, lmt_altvolc) 63 cnhl #else 64 cnhl ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_altvolc) 65 cnhl #endif 66 IF (ierr .NE. NF_NOERR) THEN 59 67 PRINT*, 'Pb de lecture pour les altitudes volcan' 60 68 CALL exit(1) … … 64 72 c 65 73 ierr = NF_INQ_VARID (nid, "SO2ED95L", nvarid) 66 ierr = nf90_get_var(nid, nvarid, lmt_so2b, debut, epais) 67 IF (ierr /= NF_NOERR) THEN 74 cnhl #ifdef NC_DOUBLE 75 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, lmt_so2b) 76 cnhl #else 77 cnhl ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_so2b) 78 cnhl #endif 79 IF (ierr .NE. NF_NOERR) THEN 68 80 PRINT*, 'Pb de lecture pour les sources so2 edgar low' 69 81 CALL exit(1) … … 71 83 c 72 84 ierr = NF_INQ_VARID (nid, "SO2ED95H", nvarid) 73 ierr = nf90_get_var(nid, nvarid, lmt_so2h, debut, epais) 74 IF (ierr /= NF_NOERR) THEN 85 cnhl #ifdef NC_DOUBLE 86 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, lmt_so2h) 87 cnhl #else 88 cnhl ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_so2h) 89 cnhl #endif 90 IF (ierr .NE. NF_NOERR) THEN 75 91 PRINT*, 'Pb de lecture pour les sources so2 edgar high' 76 92 CALL exit(1) … … 80 96 c 81 97 ierr = NF_INQ_VARID (nid, "SO2H", nvarid) 82 ierr = nf90_get_var(nid, nvarid, lmt_so2h, debut, epais) 83 IF (ierr /= NF_NOERR) THEN 98 cnhl #ifdef NC_DOUBLE 99 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, lmt_so2h) 100 cnhl #else 101 cnhl ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_so2h) 102 cnhl #endif 103 IF (ierr .NE. NF_NOERR) THEN 84 104 PRINT*, 'Pb de lecture pour les sources so2 haut' 85 105 CALL exit(1) … … 87 107 c 88 108 ierr = NF_INQ_VARID (nid, "SO2B", nvarid) 89 ierr = nf90_get_var(nid, nvarid, lmt_so2b, debut, epais) 90 IF (ierr /= NF_NOERR) THEN 109 cnhl #ifdef NC_DOUBLE 110 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, lmt_so2b) 111 cnhl #else 112 cnhl ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_so2b) 113 cnhl #endif 114 IF (ierr .NE. NF_NOERR) THEN 91 115 PRINT*, 'Pb de lecture pour les sources so2 bas' 92 116 CALL exit(1) … … 96 120 c 97 121 ierr = NF_INQ_VARID (nid, "SO2BB", nvarid) 98 ierr = nf90_get_var(nid, nvarid, lmt_so2bb, debut, epais) 99 IF (ierr /= NF_NOERR) THEN 122 cnhl #ifdef NC_DOUBLE 123 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, lmt_so2bb) 124 cnhl #else 125 cnhl ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_so2bb) 126 cnhl #endif 127 IF (ierr .NE. NF_NOERR) THEN 100 128 PRINT*, 'Pb de lecture pour les sources so2 bb' 101 129 CALL exit(1) … … 103 131 c 104 132 ierr = NF_INQ_VARID (nid, "SO2BA", nvarid) 105 ierr = nf90_get_var(nid, nvarid, lmt_so2ba, debut, epais) 106 IF (ierr /= NF_NOERR) THEN 133 cnhl #ifdef NC_DOUBLE 134 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, lmt_so2ba) 135 cnhl #else 136 cnhl ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_so2ba) 137 cnhl #endif 138 IF (ierr .NE. NF_NOERR) THEN 107 139 PRINT*, 'Pb de lecture pour les sources so2 bateau' 108 140 CALL exit(1) … … 110 142 c 111 143 ierr = NF_INQ_VARID (nid, "DMSB", nvarid) 112 ierr = nf90_get_var(nid, nvarid, lmt_dmsbio, debut, epais) 113 IF (ierr /= NF_NOERR) THEN 144 cnhl #ifdef NC_DOUBLE 145 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, lmt_dmsbio) 146 cnhl #else 147 cnhl ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_dmsbio) 148 cnhl #endif 149 IF (ierr .NE. NF_NOERR) THEN 114 150 PRINT*, 'Pb de lecture pour les sources dms bio' 115 151 CALL exit(1) … … 117 153 c 118 154 ierr = NF_INQ_VARID (nid, "H2SB", nvarid) 119 ierr = nf90_get_var(nid, nvarid, lmt_h2sbio, debut, epais) 120 IF (ierr /= NF_NOERR) THEN 155 cnhl #ifdef NC_DOUBLE 156 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, lmt_h2sbio) 157 cnhl #else 158 cnhl ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_h2sbio) 159 cnhl #endif 160 IF (ierr .NE. NF_NOERR) THEN 121 161 PRINT*, 'Pb de lecture pour les sources h2s bio' 122 162 CALL exit(1) 123 163 ENDIF 124 164 c 125 IF (flag_dms ==1) THEN165 IF (flag_dms.EQ.1) THEN 126 166 c 127 167 ierr = NF_INQ_VARID (nid, "DMSL", nvarid) 128 ierr = nf90_get_var(nid, nvarid, lmt_dms, debut, epais) 129 IF (ierr /= NF_NOERR) THEN 168 cnhl #ifdef NC_DOUBLE 169 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, lmt_dms) 170 cnhl #else 171 cnhl ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_dms) 172 cnhl #endif 173 IF (ierr .NE. NF_NOERR) THEN 130 174 PRINT*, 'Pb de lecture pour les sources dms liss' 131 175 CALL exit(1) 132 176 ENDIF 133 177 c 134 ELSEIF (flag_dms ==2) THEN178 ELSEIF (flag_dms.EQ.2) THEN 135 179 c 136 180 ierr = NF_INQ_VARID (nid, "DMSW", nvarid) 137 ierr = nf90_get_var(nid, nvarid, lmt_dms, debut, epais) 138 IF (ierr /= NF_NOERR) THEN 181 cnhl #ifdef NC_DOUBLE 182 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, lmt_dms) 183 cnhl #else 184 cnhl ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_dms) 185 cnhl #endif 186 IF (ierr .NE. NF_NOERR) THEN 139 187 PRINT*, 'Pb de lecture pour les sources dms wann' 140 188 CALL exit(1) 141 189 ENDIF 142 190 c 143 ELSEIF (flag_dms ==3) THEN191 ELSEIF (flag_dms.EQ.3) THEN 144 192 c 145 193 ierr = NF_INQ_VARID (nid, "DMSC1", nvarid) 146 ierr = nf90_get_var(nid, nvarid, lmt_dmsconc, debut, epais) 147 IF (ierr /= NF_NOERR) THEN 194 cnhl #ifdef NC_DOUBLE 195 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut,epais,lmt_dmsconc) 196 cnhl #else 197 cnhl ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_dmsconc) 198 cnhl #endif 199 IF (ierr .NE. NF_NOERR) THEN 148 200 PRINT*, 'Pb de lecture pour les sources dmsconc old' 149 201 CALL exit(1) 150 202 ENDIF 151 203 c 152 ELSEIF (flag_dms ==4) THEN204 ELSEIF (flag_dms.EQ.4) THEN 153 205 c 154 206 ierr = NF_INQ_VARID (nid, "DMSC2", nvarid) 155 ierr = nf90_get_var(nid, nvarid, lmt_dmsconc, debut, epais) 156 IF (ierr /= NF_NOERR) THEN 207 cnhl #ifdef NC_DOUBLE 208 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut,epais,lmt_dmsconc) 209 cnhl #else 210 cnhl ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_dmsconc) 211 cnhl #endif 212 IF (ierr .NE. NF_NOERR) THEN 157 213 PRINT*, 'Pb de lecture pour les sources dms conc 2' 158 214 CALL exit(1) 159 215 ENDIF 160 216 c 161 ELSEIF (flag_dms ==5) THEN217 ELSEIF (flag_dms.EQ.5) THEN 162 218 c 163 219 ierr = NF_INQ_VARID (nid, "DMSC3", nvarid) 164 ierr = nf90_get_var(nid, nvarid, lmt_dmsconc, debut, epais) 165 IF (ierr /= NF_NOERR) THEN 220 cnhl #ifdef NC_DOUBLE 221 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut,epais,lmt_dmsconc) 222 cnhl #else 223 cnhl ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_dmsconc) 224 cnhl #endif 225 IF (ierr .NE. NF_NOERR) THEN 166 226 PRINT*, 'Pb de lecture pour les sources dms conc 3' 167 227 CALL exit(1) 168 228 ENDIF 169 229 c 170 ELSEIF (flag_dms ==6) THEN230 ELSEIF (flag_dms.EQ.6) THEN 171 231 c 172 232 ierr = NF_INQ_VARID (nid, "DMSC4", nvarid) 173 ierr = nf90_get_var(nid, nvarid, lmt_dmsconc, debut, epais) 174 IF (ierr /= NF_NOERR) THEN 233 cnhl #ifdef NC_DOUBLE 234 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut,epais,lmt_dmsconc) 235 cnhl #else 236 cnhl ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_dmsconc) 237 cnhl #endif 238 IF (ierr .NE. NF_NOERR) THEN 175 239 PRINT*, 'Pb de lecture pour les sources dms conc 4' 176 240 CALL exit(1) 177 241 ENDIF 178 242 c 179 ELSEIF (flag_dms ==7) THEN243 ELSEIF (flag_dms.EQ.7) THEN 180 244 c 181 245 ierr = NF_INQ_VARID (nid, "DMSC5", nvarid) 182 ierr = nf90_get_var(nid, nvarid, lmt_dmsconc, debut, epais) 183 IF (ierr /= NF_NOERR) THEN 246 cnhl #ifdef NC_DOUBLE 247 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut,epais,lmt_dmsconc) 248 cnhl #else 249 cnhl ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_dmsconc) 250 cnhl #endif 251 IF (ierr .NE. NF_NOERR) THEN 184 252 PRINT*, 'Pb de lecture pour les sources dms conc 5' 185 253 CALL exit(1) 186 254 ENDIF 187 255 c 188 ELSEIF (flag_dms ==8) THEN256 ELSEIF (flag_dms.EQ.8) THEN 189 257 c 190 258 ierr = NF_INQ_VARID (nid, "DMSC6", nvarid) 191 ierr = nf90_get_var(nid, nvarid, lmt_dmsconc, debut, epais) 192 IF (ierr /= NF_NOERR) THEN 259 cnhl #ifdef NC_DOUBLE 260 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut,epais,lmt_dmsconc) 261 cnhl #else 262 cnhl ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_dmsconc) 263 cnhl #endif 264 IF (ierr .NE. NF_NOERR) THEN 193 265 PRINT*, 'Pb de lecture pour les sources dms conc 6' 194 266 CALL exit(1) 195 267 ENDIF 196 268 c 197 ELSEIF (flag_dms ==9) THEN269 ELSEIF (flag_dms.EQ.9) THEN 198 270 c 199 271 ierr = NF_INQ_VARID (nid, "DMSC7", nvarid) 200 ierr = nf90_get_var(nid, nvarid, lmt_dmsconc, debut, epais) 201 IF (ierr /= NF_NOERR) THEN 272 cnhl #ifdef NC_DOUBLE 273 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut,epais,lmt_dmsconc) 274 cnhl #else 275 cnhl ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_dmsconc) 276 cnhl #endif 277 IF (ierr .NE. NF_NOERR) THEN 202 278 PRINT*, 'Pb de lecture pour les sources dms conc 7' 203 279 CALL exit(1) 204 280 ENDIF 205 281 c 206 ELSEIF (flag_dms ==10) THEN282 ELSEIF (flag_dms.EQ.10) THEN 207 283 c 208 284 ierr = NF_INQ_VARID (nid, "DMSC8", nvarid) 209 ierr = nf90_get_var(nid, nvarid, lmt_dmsconc, debut, epais) 210 IF (ierr /= NF_NOERR) THEN 285 cnhl #ifdef NC_DOUBLE 286 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut,epais,lmt_dmsconc) 287 cnhl #else 288 cnhl ierr = NF_GET_VARA_REAL (nid, nvarid, debut, epais, lmt_dmsconc) 289 cnhl #endif 290 IF (ierr .NE. NF_NOERR) THEN 211 291 PRINT*, 'Pb de lecture pour les sources dms conc 8' 212 292 CALL exit(1) … … 222 302 ierr = NF_CLOSE(nid) 223 303 c 224 IF (flag_dms <=2) THEN304 IF (flag_dms.LE.2) THEN 225 305 DO i=1, klon 226 306 lmt_dmsconc(i)=0.0 -
LMDZ6/trunk/libf/phylmd/Dust/condsurfs_new.F
r5075 r5084 9 9 USE mod_phys_lmdz_para 10 10 USE dimphy 11 USE lmdz_netcdf, ONLY: nf90_get_var,nf_inq_varid,nf_close,nf_noerr,nf_open,nf_nowrite12 11 IMPLICIT none 13 12 c … … 16 15 c 17 16 INCLUDE "dimensions.h" 17 INCLUDE "netcdf.inc" 18 18 c 19 19 REAL lmt_so2b(klon), lmt_so2h(klon), lmt_so2nff(klon) … … 40 40 INTEGER debut(2),epais(2) 41 41 c 42 IF (jour <0 .OR. jour>(366-1)) THEN42 IF (jour.LT.0 .OR. jour.GT.(366-1)) THEN 43 43 PRINT*,'Le jour demande n est pas correcte:', jour 44 44 print *,'JE: FORCED TO CONTINUE (emissions have … … 62 62 ! 63 63 ierr = NF_OPEN ("sulphur_emissions_antro.nc", NF_NOWRITE, nid) 64 if (ierr /=NF_NOERR) then64 if (ierr.ne.NF_NOERR) then 65 65 write(6,*)' Pb d''ouverture du fichier sulphur_emissions_antro' 66 66 write(6,*)' ierr = ', ierr … … 72 72 ! 73 73 ierr = NF_INQ_VARID (nid, "SO2FF_LOW", nvarid) 74 ierr = nf90_get_var(nid, nvarid, lmt_so2b_glo, debut, epais)75 IF (ierr /=NF_NOERR) THEN74 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais,lmt_so2b_glo) 75 IF (ierr .NE. NF_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 … … 84 84 ! 85 85 ierr = NF_INQ_VARID (nid, "SO2FF_HIGH", nvarid) 86 ierr = nf90_get_var(nid, nvarid, lmt_so2h_glo, debut, epais)87 IF (ierr /=NF_NOERR) THEN86 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais,lmt_so2h_glo) 87 IF (ierr .NE. NF_NOERR) THEN 88 88 PRINT*, 'Pb de lecture pour les sources so2 high' 89 89 CALL exit(1) … … 93 93 ! 94 94 ierr = NF_INQ_VARID (nid, "SO2BBH", nvarid) 95 ierr = nf90_get_var(nid, nvarid, lmt_so2bb_h_glo, debut, epais) 96 IF (ierr /= NF_NOERR) THEN 95 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, 96 . epais, lmt_so2bb_h_glo) 97 IF (ierr .NE. NF_NOERR) THEN 97 98 PRINT*, 'Pb de lecture pour les sources so2 BB high' 98 99 CALL exit(1) … … 102 103 ! 103 104 ierr = NF_INQ_VARID (nid, "SO2BBL", nvarid) 104 ierr = nf90_get_var(nid, nvarid, lmt_so2bb_l_glo, debut, epais) 105 IF (ierr /= NF_NOERR) THEN 105 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, 106 . epais, lmt_so2bb_l_glo) 107 IF (ierr .NE. NF_NOERR) THEN 106 108 PRINT*, 'Pb de lecture pour les sources so2 BB low' 107 109 CALL exit(1) … … 111 113 ! 112 114 ierr = NF_INQ_VARID (nid, "SO2BA", nvarid) 113 ierr = nf90_get_var(nid, nvarid, lmt_so2ba_glo, debut, epais)114 IF (ierr /=NF_NOERR) THEN115 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut,epais,lmt_so2ba_glo) 116 IF (ierr .NE. NF_NOERR) THEN 115 117 PRINT*, 'Pb de lecture pour les sources so2 ship' 116 118 CALL exit(1) … … 120 122 ! 121 123 ierr = NF_INQ_VARID (nid, "SO2NFF", nvarid) 122 ierr = nf90_get_var(nid, nvarid, lmt_so2nff_glo, debut, epais) 123 IF (ierr /= NF_NOERR) THEN 124 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, 125 . lmt_so2nff_glo) 126 IF (ierr .NE. NF_NOERR) THEN 124 127 PRINT*, 'Pb de lecture pour les sources so2 non FF' 125 128 CALL exit(1) … … 132 135 !======================================================================= 133 136 ierr = NF_OPEN ("sulphur_emissions_nat.nc", NF_NOWRITE, nid) 134 if (ierr /=NF_NOERR) then137 if (ierr.ne.NF_NOERR) then 135 138 write(6,*)' Pb d''ouverture du fichier sulphur_emissions_nat' 136 139 write(6,*)' ierr = ', ierr … … 141 144 c 142 145 ierr = NF_INQ_VARID (nid, "DMSB", nvarid) 143 ierr = nf90_get_var(nid, nvarid, lmt_dmsbio_glo, debut, epais)144 IF (ierr /=NF_NOERR) THEN146 ierr = NF_GET_VARA_DOUBLE (nid, nvarid,debut,epais,lmt_dmsbio_glo) 147 IF (ierr .NE. NF_NOERR) THEN 145 148 PRINT*, 'Pb de lecture pour les sources dms bio' 146 149 CALL exit(1) … … 150 153 c 151 154 ierr = NF_INQ_VARID (nid, "H2SB", nvarid) 152 ierr = nf90_get_var(nid, nvarid, lmt_h2sbio_glo, debut, epais)153 IF (ierr /=NF_NOERR) THEN155 ierr = NF_GET_VARA_DOUBLE (nid, nvarid,debut,epais,lmt_h2sbio_glo) 156 IF (ierr .NE. NF_NOERR) THEN 154 157 PRINT*, 'Pb de lecture pour les sources h2s bio' 155 158 CALL exit(1) … … 158 161 c Ocean surface concentration of dms (emissions are computed later) 159 162 c 160 IF (flag_dms ==4) THEN163 IF (flag_dms.EQ.4) THEN 161 164 c 162 165 ierr = NF_INQ_VARID (nid, "DMSC2", nvarid) 163 ierr = nf90_get_var(nid, nvarid, lmt_dmsconc_glo, debut, epais)164 IF (ierr /=NF_NOERR) THEN166 ierr = NF_GET_VARA_DOUBLE (nid,nvarid,debut,epais,lmt_dmsconc_glo) 167 IF (ierr .NE. NF_NOERR) THEN 165 168 PRINT*, 'Pb de lecture pour les sources dms conc 2' 166 169 CALL exit(1) … … 187 190 print *,' Jour = ',jour 188 191 ierr = NF_OPEN ("sulphur_emissions_volc.nc", NF_NOWRITE, nid) 189 if (ierr /=NF_NOERR) then192 if (ierr.ne.NF_NOERR) then 190 193 write(6,*)' Pb d''ouverture du fichier sulphur_emissions_volc' 191 194 write(6,*)' ierr = ', ierr … … 197 200 ! ierr = NF_INQ_VARID (nid, "VOLC", nvarid) 198 201 ierr = NF_INQ_VARID (nid, "flx_volc_cont", nvarid) 199 ierr = nf90_get_var(nid, nvarid, lmt_so2volc_cont_glo, debut, epais) 200 IF (ierr /= NF_NOERR) THEN 202 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, 203 . lmt_so2volc_cont_glo) 204 IF (ierr .NE. NF_NOERR) THEN 201 205 PRINT*, 'Pb de lecture pour les sources so2 volcan (cont)' 202 206 CALL exit(1) … … 210 214 ! ierr = NF_INQ_VARID (nid, "ALTI", nvarid) 211 215 ierr = NF_INQ_VARID (nid, "flx_volc_altcont", nvarid) 212 ierr = nf90_get_var(nid, nvarid, lmt_altvolc_cont_glo, debut, epais) 213 IF (ierr /= NF_NOERR) THEN 216 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, 217 . lmt_altvolc_cont_glo) 218 IF (ierr .NE. NF_NOERR) THEN 214 219 PRINT*, 'Pb de lecture pour les altitudes volcan (cont)' 215 220 CALL exit(1) … … 219 224 c 220 225 ierr = NF_INQ_VARID (nid, "flx_volc_expl", nvarid) 221 ierr = nf90_get_var(nid, nvarid, lmt_so2volc_expl_glo, debut, epais) 222 IF (ierr /= NF_NOERR) THEN 226 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, 227 . lmt_so2volc_expl_glo) 228 IF (ierr .NE. NF_NOERR) THEN 223 229 PRINT*, 'Pb de lecture pour les sources so2 volcan (expl)' 224 230 CALL exit(1) … … 231 237 c 232 238 ierr = NF_INQ_VARID (nid, "flx_volc_altexpl", nvarid) 233 ierr = nf90_get_var(nid, nvarid, lmt_altvolc_expl_glo, debut, epais) 234 IF (ierr /= NF_NOERR) THEN 239 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debut, epais, 240 . lmt_altvolc_expl_glo) 241 IF (ierr .NE. NF_NOERR) THEN 235 242 PRINT*, 'Pb de lecture pour les altitudes volcan' 236 243 CALL exit(1) -
LMDZ6/trunk/libf/phylmd/Dust/phys_output_write_spl_mod.F90
r5075 r5084 390 390 USE ioipsl, ONLY: histend, histsync 391 391 USE iophy, ONLY: set_itau_iophy, histwrite_phy 392 USE lmdz_netcdf, ONLY: nf90_fill_real392 USE netcdf, ONLY: nf90_fill_real 393 393 ! ug Pour les sorties XIOS 394 394 USE lmdz_xios, ONLY: xios_update_calendar, using_xios -
LMDZ6/trunk/libf/phylmd/Dust/phytracr_spl_mod.F90
r5075 r5084 1441 1441 call abort_gcm('phytracr_mod', 'pb in ok_chimdust 1 SCDU',1) 1442 1442 endif 1443 if ( (id_codu <= 0) .or. ( id_fine<=0) ) then1443 if ( (id_codu .le. 0) .or. ( id_fine.le.0) ) then 1444 1444 call abort_gcm('phytracr_mod', 'pb in ok_chimdust 1',1) 1445 1445 endif … … 2437 2437 ENDDO 2438 2438 ENDDO 2439 IF (iflag_conv ==2) THEN2439 IF (iflag_conv.EQ.2) THEN 2440 2440 ! Tiedke 2441 2441 CALL cltrac_spl(pdtphys,coefh,yu1,yv1,t_seri,tmp_var, & 2442 2442 aux_var2,paprs,pplay,aux_var3) 2443 2443 2444 ELSE IF (iflag_conv >=3) THEN2444 ELSE IF (iflag_conv.GE.3) THEN 2445 2445 !KE 2446 2446 CALL cltrac(pdtphys, coefh,t_seri,tmp_var,aux_var2,paprs,pplay, & … … 2494 2494 2495 2495 2496 IF (iflag_conv >=3) THEN2496 IF (iflag_conv.GE.3) THEN 2497 2497 2498 2498 IF (logitime) THEN … … 2786 2786 2787 2787 2788 IF (iflag_conv ==2) THEN2788 IF (iflag_conv.EQ.2) THEN 2789 2789 2790 2790 IF (logitime) THEN … … 2839 2839 print *,'iflag_conv bef incloud',iflag_conv 2840 2840 2841 IF (iflag_conv ==2) THEN2841 IF (iflag_conv.EQ.2) THEN 2842 2842 ! Tiedke 2843 2843 CALL incloud_scav(.false.,qmin,qmax,masse,henry,kk,prfl, & … … 2877 2877 ! . his_dhbclsc,his_dhbccon,tr_seri) 2878 2878 2879 IF (iflag_conv ==2) THEN2879 IF (iflag_conv.EQ.2) THEN 2880 2880 ! Tiedke 2881 2881 … … 2991 2991 ! . dtrconv,tr_seri) 2992 2992 ! ------------------------------------------------------------- 2993 IF (iflag_conv ==2) THEN2993 IF (iflag_conv.EQ.2) THEN 2994 2994 ! Tiedke 2995 2995 CALL trconvect(pplay,t_seri,pdtphys,pmfu,pmfd,pen_u,pde_u, & … … 3000 3000 ENDDO 3001 3001 3002 ELSE IF (iflag_conv >=3) THEN3002 ELSE IF (iflag_conv.GE.3) THEN 3003 3003 ! KE 3004 3004 print *,'JE: KE in phytracr_spl' … … 3164 3164 3165 3165 3166 IF (iflag_conv >=3) THEN3166 IF (iflag_conv.GE.3) THEN 3167 3167 IF (logitime) THEN 3168 3168 CALL SYSTEM_CLOCK(COUNT=clock_start) … … 3195 3195 ql_incl = ql_incloud_ref 3196 3196 ! choix du lessivage 3197 IF (iflag_lscav == 3 .OR. iflag_lscav ==4) THEN3197 IF (iflag_lscav .EQ. 3 .OR. iflag_lscav .EQ. 4) THEN 3198 3198 !IF (.false.) THEN ! test #DFB (Binta) sans lsc_scav_spl 3199 3199 print *,'JE iflag_lscav',iflag_lscav … … 3362 3362 CALL satellite_out_spla(jD_cur,jH_cur,pdtphys,rlat,rlon, & 3363 3363 masque_aqua_cur, masque_terra_cur ) 3364 IF (jH_cur-pdtphys/86400. <0.) THEN3364 IF (jH_cur-pdtphys/86400. .LT. 0.) THEN 3365 3365 !new utc day: put in 0 everything 3366 3366 !JE20150518<< … … 3470 3470 ENDDO 3471 3471 3472 IF (jH_cur+pdtphys/86400. >= 1.) THEN3472 IF (jH_cur+pdtphys/86400. .GE. 1.) THEN 3473 3473 ! print *,'last step of the day' 3474 3474 DO i=1,klon 3475 IF (masque_aqua(i) >0) THEN3475 IF (masque_aqua(i).GT. 0) THEN 3476 3476 aod550_aqua(i)=aod550_aqua(i)/masque_aqua(i) 3477 3477 aod670_aqua(i)=aod670_aqua(i)/masque_aqua(i) … … 3506 3506 aod865_dustsco_aqua(i)= -999. 3507 3507 ENDIF 3508 IF (masque_terra(i) >0) THEN3508 IF (masque_terra(i).GT. 0) THEN 3509 3509 aod550_terra(i)=aod550_terra(i)/masque_terra(i) 3510 3510 aod670_terra(i)=aod670_terra(i)/masque_terra(i) … … 3635 3635 fluxss(:)=0.0 3636 3636 DO i=1, klon 3637 IF (iregion_ind(i) >0) THEN ! LAND3637 IF (iregion_ind(i).GT.0) THEN ! LAND 3638 3638 ! SULFUR EMISSIONS 3639 3639 fluxh2sff(i)= (lmt_so2ff_l(i)+lmt_so2ff_h(i))*frach2sofso2* & … … 3656 3656 fluxff(i)=fluxbcff(i)+fluxomff(i) 3657 3657 ENDIF 3658 IF (iregion_bb(i) >0) THEN ! LAND3658 IF (iregion_bb(i).GT.0) THEN ! LAND 3659 3659 ! SULFUR EMISSIONS 3660 3660 fluxso2bb(i) =scale_param_bb(iregion_bb(i)) * fracso2emis * & … … 4515 4515 ENDIF 4516 4516 4517 IF (test_sca ==0 ) THEN4517 IF (test_sca .EQ. 0 ) THEN 4518 4518 ! READ file!! 4519 4519 call read_scalenc(filescaleparams,paramname_ind, & … … 4556 4556 4557 4557 jH_sca=jH_sca+pdtphys/(24.*3600.) 4558 IF (jH_sca >(sca_resol)/24.) THEN4558 IF (jH_sca.GT.(sca_resol)/24.) THEN 4559 4559 test_sca=0 4560 4560 jH_sca=jH_ini … … 4568 4568 USE mod_grid_phy_lmdz 4569 4569 USE mod_phys_lmdz_para 4570 USE lmdz_netcdf, ONLY:nf_open,nf_close,nf_inq_varid,nf_nowrite,nf_noerr,nf90_get_var4571 4570 IMPLICIT NONE 4571 4572 include "netcdf.inc" 4572 4573 4573 4574 CHARACTER*800 filescaleparams … … 4588 4589 !nci=NCOPN(trim(adjustl(filescaleparams)),NCNOWRIT,rcode) 4589 4590 ierr = NF_OPEN (trim(adjustl(filescaleparams)),NF_NOWRITE, nid) 4590 if (ierr ==NF_NOERR) THEN4591 if (ierr .EQ. NF_NOERR) THEN 4591 4592 debutread=step_sca 4592 4593 countread=1 … … 4597 4598 print *,varname 4598 4599 ierr = NF_INQ_VARID (nid,trim(adjustl(varname)), nvarid) 4599 ierr = nf90_get_var (nid, nvarid, auxreal, debutread, countread) 4600 IF (ierr /= NF_NOERR) THEN 4600 ierr = NF_GET_VARA_DOUBLE (nid, nvarid, debutread, & 4601 countread, auxreal) 4602 IF (ierr .NE. NF_NOERR) THEN 4601 4603 PRINT*, 'Pb de lecture pour modvalues' 4602 4604 print *,'JE scale_var, step_sca',trim(adjustl(varname)),step_sca -
LMDZ6/trunk/libf/phylmd/Dust/read_dust.F
r5075 r5084 3 3 USE mod_grid_phy_lmdz 4 4 USE mod_phys_lmdz_para 5 USE lmdz_netcdf, ONLY:nf90_get_var6 5 IMPLICIT NONE 7 6 c 8 7 INCLUDE "dimensions.h" 9 8 INCLUDE "paramet.h" 9 INCLUDE "netcdf.inc" 10 10 c 11 11 INTEGER step, nbjour … … 45 45 c 46 46 start(3)=step 47 48 status=nf90_get_var(ncid1,varid1,dust_nc_glo,start,count) 49 47 c 48 #ifdef NC_DOUBLE 49 ! status=NF_GET_VARA_DOUBLE(ncid1,varid1,start,count,dust_nc) 50 status=NF_GET_VARA_DOUBLE(ncid1,varid1,start,count,dust_nc_glo) 51 #else 52 ! status=NF_GET_VARA_REAL(ncid1,varid1,start,count,dust_nc) 53 status=NF_GET_VARA_REAL(ncid1,varid1,start,count,dust_nc_glo) 54 #endif 55 c 50 56 ! call correctbid(iim,jjp1,dust_nc) 51 57 call correctbid(nbp_lon,nbp_lat,dust_nc_glo) -
LMDZ6/trunk/libf/phylmd/Dust/read_surface.F90
r5075 r5084 10 10 USE mod_phys_lmdz_para 11 11 USE iophy 12 USE lmdz_netcdf, ONLY:nf_inq_varid,nf_noerr,nf90_get_var 12 ! USE netcdf 13 13 IMPLICIT NONE 14 14 15 INCLUDE "netcdf.inc" 15 16 INCLUDE "dimensions.h" 16 17 INCLUDE "paramet.h" … … 64 65 ! print *,'stat,i',status,i,outcycle,aux4s 65 66 ! print *,'ifclause',status.NE. NF_NOERR ,outcycle == .false. 66 IF ((.not.(status /=NF_NOERR) ).and.( .not. outcycle )) THEN67 IF ((.not.(status.NE. NF_NOERR) ).and.( .not. outcycle )) THEN 67 68 outcycle=.true. 68 69 latstr=aux4s … … 74 75 varid=NCVID(ncid,latstr,rcode) 75 76 76 status=nf90_get_var(ncid,varid,lats_glo,startj,endj) 77 #ifdef NC_DOUBLE 78 status=NF_GET_VARA_DOUBLE(ncid,varid,startj,endj,lats_glo) 79 #else 80 status=NF_GET_VARA_REAL(ncid,varid,startj,endj,lats_glo) 81 #endif 77 82 ! print *,latstr,varid,status,jjp1,rcode 78 83 ! IF (status .NE. NF_NOERR) print*,'NOOOOOOO' … … 108 113 ! Lecture 109 114 ! ----------------------- 110 status=nf90_get_var(ncid,varid,tmp_dyn_glo,start,count) 115 #ifdef NC_DOUBLE 116 status=NF_GET_VARA_DOUBLE(ncid,varid,start,count,tmp_dyn_glo) 117 #else 118 status=NF_GET_VARA_REAL(ncid,varid,start,count,tmp_dyn_glo) 119 #endif 111 120 112 121 ! call dump2d(iip1,jjp1,tmp_dyn,'tmp_dyn ') -
LMDZ6/trunk/libf/phylmd/Dust/read_vent.F
r5075 r5084 3 3 USE mod_grid_phy_lmdz 4 4 USE mod_phys_lmdz_para 5 USE lmdz_netcdf, ONLY: nf90_get_var6 5 ! USE write_field_phy 7 6 IMPLICIT NONE … … 9 8 c INCLUDE "dimphy.h" 10 9 INCLUDE "paramet.h" 10 INCLUDE "netcdf.inc" 11 11 c 12 12 INTEGER step, nbjour … … 51 51 c 52 52 start(3)=step 53 54 status=nf90_get_var(ncidu1,varidu1,u10m_nc_glo,start,count) 55 56 status=nf90_get_var(ncidv1,varidv1,v10m_nc_glo,start,count) 57 53 c 54 #ifdef NC_DOUBLE 55 ! status=NF_GET_VARA_DOUBLE(ncidu1,varidu1,start,count,u10m_nc) 56 status=NF_GET_VARA_DOUBLE(ncidu1,varidu1,start,count,u10m_nc_glo) 57 #else 58 ! status=NF_GET_VARA_REAL(ncidu1,varidu1,start,count,u10m_nc) 59 status=NF_GET_VARA_REAL(ncidu1,varidu1,start,count,u10m_nc_glo) 60 #endif 61 ! print *,status 62 c 63 #ifdef NC_DOUBLE 64 ! status=NF_GET_VARA_DOUBLE(ncidv1,varidv1,start,count,v10m_nc) 65 status=NF_GET_VARA_DOUBLE(ncidv1,varidv1,start,count,v10m_nc_glo) 66 #else 67 ! status=NF_GET_VARA_REAL(ncidv1,varidv1,start,count,v10m_nc) 68 status=NF_GET_VARA_REAL(ncidv1,varidv1,start,count,v10m_nc_glo) 69 #endif 70 c 58 71 59 72 ! print *,'beforebidcor u10m_nc', u10m_nc(1,jjp1) … … 118 131 do l=1,nl 119 132 do i=2,iim-1 120 if(abs(x(i,l)) >1.e10) then133 if(abs(x(i,l)).gt.1.e10) then 121 134 zz=0.5*(x(i-1,l)+x(i+1,l)) 122 135 c print*,'correction ',i,l,x(i,l),zz
Note: See TracChangeset
for help on using the changeset viewer.