Changeset 1771 for trunk/LMDZ.MARS/libf/phymars/dimradmars_mod.F90
- Timestamp:
- Aug 27, 2017, 8:22:48 AM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.MARS/libf/phymars/dimradmars_mod.F90
r1266 r1771 98 98 REAL,SAVE,ALLOCATABLE :: albedo(:,:) ! Surface albedo in each solar band 99 99 REAL,SAVE,ALLOCATABLE :: tauscaling(:) ! Convertion factor for qdust and Ndust 100 REAL,SAVE,ALLOCATABLE :: totcloudfrac(:) ! total cloud fraction over the column 100 101 ! aerosol (dust or ice) extinction optical depth at reference wavelength 101 102 ! "longrefvis" set in dimradmars_mod , for one of the "naerkind" kind of … … 169 170 allocate(tauscaling(ngrid)) 170 171 allocate(nueffdust(ngrid,nlayer)) 172 allocate(totcloudfrac(ngrid)) 171 173 172 174 end subroutine ini_dimradmars_mod 175 176 subroutine end_dimradmars_mod 177 178 implicit none 179 180 if (allocated(albedo)) deallocate(albedo) 181 if (allocated(dtrad)) deallocate(dtrad) 182 if (allocated(fluxrad_sky)) deallocate(fluxrad_sky) 183 if (allocated(fluxrad)) deallocate(fluxrad) 184 if (allocated(tauscaling)) deallocate(tauscaling) 185 if (allocated(nueffdust)) deallocate(nueffdust) 186 if (allocated(totcloudfrac)) deallocate(totcloudfrac) 187 188 end subroutine end_dimradmars_mod 189 173 190 174 191 subroutine ini_scatterers(ngrid,nlayer) … … 179 196 integer,intent(in) :: nlayer ! number of atmospheric layers 180 197 181 allocate(name_iaer(naerkind)) 198 !! domain-dependent 199 !! -- only used in physiq_mod & intent(out) in callradite 200 if (allocated(aerosol)) deallocate(aerosol) 182 201 allocate(aerosol(ngrid,nlayer,naerkind)) 183 allocate(longrefir(naerkind)) 184 allocate(longrefvis(naerkind)) 185 allocate(iaerdust(naerkind)) 186 allocate(file_id(naerkind,2)) 187 188 allocate(QVISsQREF(nsun,naerkind,nsizemax)) 189 allocate(omegavis(nsun,naerkind,nsizemax)) 190 allocate(gvis(nsun,naerkind,nsizemax)) 191 allocate(QIRsQREF(nir,naerkind,nsizemax)) 192 allocate(omegaIR(nir,naerkind,nsizemax)) 193 allocate(gIR(nir,naerkind,nsizemax)) 194 allocate(nsize(naerkind,2)) 195 allocate(radiustab(naerkind,2,nsizemax)) 196 allocate(QREFvis(naerkind,nsizemax)) 197 allocate(QREFir(naerkind,nsizemax)) 198 allocate(omegaREFvis(naerkind,nsizemax)) 199 allocate(omegaREFir(naerkind,nsizemax)) 202 203 !! not domain-dependent 204 if (.not.allocated(name_iaer)) allocate(name_iaer(naerkind)) 205 if (.not.allocated(longrefir)) allocate(longrefir(naerkind)) 206 if (.not.allocated(longrefvis)) allocate(longrefvis(naerkind)) 207 if (.not.allocated(iaerdust)) allocate(iaerdust(naerkind)) 208 if (.not.allocated(file_id)) allocate(file_id(naerkind,2)) 209 if (.not.allocated(QVISsQREF)) allocate(QVISsQREF(nsun,naerkind,nsizemax)) 210 if (.not.allocated(omegavis)) allocate(omegavis(nsun,naerkind,nsizemax)) 211 if (.not.allocated(gvis)) allocate(gvis(nsun,naerkind,nsizemax)) 212 if (.not.allocated(QIRsQREF)) allocate(QIRsQREF(nir,naerkind,nsizemax)) 213 if (.not.allocated(omegaIR)) allocate(omegaIR(nir,naerkind,nsizemax)) 214 if (.not.allocated(gIR)) allocate(gIR(nir,naerkind,nsizemax)) 215 if (.not.allocated(nsize)) allocate(nsize(naerkind,2)) 216 if (.not.allocated(radiustab)) allocate(radiustab(naerkind,2,nsizemax)) 217 if (.not.allocated(QREFvis)) allocate(QREFvis(naerkind,nsizemax)) 218 if (.not.allocated(QREFir)) allocate(QREFir(naerkind,nsizemax)) 219 if (.not.allocated(omegaREFvis)) allocate(omegaREFvis(naerkind,nsizemax)) 220 if (.not.allocated(omegaREFir)) allocate(omegaREFir(naerkind,nsizemax)) 200 221 201 222 end subroutine ini_scatterers
Note: See TracChangeset
for help on using the changeset viewer.