Changeset 4473
- Timestamp:
- 06/24/19 13:46:05 (5 years ago)
- Location:
- TOOLS/CMIP6_FORCING/AER_STRAT
- Files:
-
- 3 added
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
TOOLS/CMIP6_FORCING/AER_STRAT/README
r4183 r4473 59 59 Revised 18/09/2018 60 60 Revised 11/12/2018 61 Revised 06/2019 by Th. Lurton to add support for VLR-L39. -
TOOLS/CMIP6_FORCING/AER_STRAT/volc.sh
r4183 r4473 1 1 dirpwd=`pwd` 2 2 3 vv='v 3'3 vv='v4' 4 4 5 5 #--choose the resolution … … 8 8 #lmdz='VLR_L79' 9 9 #lmdz='VLR' 10 #lmdz='LR'11 lmdz='MR'10 lmdz='LR' 11 #lmdz='MR' 12 12 #--added for Frederique Cheruy 13 13 #lmdz='zoom_128x89' … … 99 99 ;--script only works on ciclad 100 100 dir='/prodigfs/project/input4MIPs/VOLC/${vv}/' 101 filename=dir+'CMIP_1850_2014_extinction_550nm_${vv}.nc' 102 NETCDFREAD,filename,'altitude',altitude,dimaltitude 103 NETCDFREAD,filename,'ext550',ext550,dimext 101 ;;;not available for v4 102 ;;;filename=dir+'CMIP_1850_2014_extinction_550nm_${vv}.nc' 103 ;;;NETCDFREAD,filename,'altitude',altitude,dimaltitude 104 ;;;NETCDFREAD,filename,'ext550',ext550,dimext 104 105 ; 105 106 filename=dir+'CMIP_IPSL-CM6_radiation_${vv}.nc' … … 188 189 endif 189 190 ; 191 if (dimz eq 39) then begin 192 filename='./zalt_zonmean_${lmdz}_l39_rev.nc' 193 NETCDFREAD,filename,'GEOP',zz,dimzz 194 NETCDFREAD,filename,'LAT',zzlat,dimzzlat 195 NETCDFREAD,filename,'TIME_COUNTER',zztime,dimzztime 196 dimzzilat=dimzzlat[0] 197 dimzzitime=dimzztime[0] 198 ;--becareful zz comes with four dimensions 199 ;--lon lat k time 200 print, 'GEOP size=', size(zz) 201 ;--becareful zzlat comes with South Pole first 202 print, 'LAT from zalt field=', zzlat 203 if (dimzzilat ne dimlatlmdz) then begin 204 print , 'PB dimension latitude' 205 endif 206 endif 207 ; 190 208 ; 191 209 ;--reconstructing the vertical coordinate at interfaces (in unit km) … … 216 234 ; 217 235 ;--550 nm properties 218 tau_550_lmdz=fltarr(dimlatlmdz,dimz,month_in_year) 236 ;;;not available for v4 237 ;;;tau_550_lmdz=fltarr(dimlatlmdz,dimz,month_in_year) 219 238 ; 220 239 ;--SW properties … … 243 262 tau_ear_lmdz_ave(*,*,*,0)=1.e-15 244 263 ; 245 for year=0, dimtime/month_in_year-1 do begin 246 ; 247 tau_550_lmdz(*,*,*)=1.e-15 264 yearend=dimtime/month_in_year-1 265 ; 266 for year=0, yearend do begin 267 ; 268 ;;;not available for v4 269 ;;;tau_550_lmdz(*,*,*)=1.e-15 248 270 tau_sun_lmdz(*,*,*,*)=1.e-15 249 271 ome_sun_lmdz(*,*,*,*)=1.e-15 … … 276 298 frac= max([0.0,min([zzi(j,mth,k+1),zziori(kori+1)])-max([zzi(j,mth,k),zziori(kori)])])/(zziori(kori+1)-zziori(kori)) 277 299 ; 278 tau_550_lmdz(j,k,mth)=tau_550_lmdz(j,k,mth)+ext550(l,kori,jj)*dz*frac 300 ;;;not available for v4 301 ;;;tau_550_lmdz(j,k,mth)=tau_550_lmdz(j,k,mth)+ext550(l,kori,jj)*dz*frac 279 302 ; 280 303 for nl=0, NSW-1 do begin … … 376 399 attributes=attributes, dimensions=dimensions 377 400 ; 378 opticstruct={lat:fltarr(dimlatlmdz),lev:fltarr(dimz), $ 379 time:fltarr(month_in_year), $ 380 tau550:fltarr(dimlatlmdz,dimz,month_in_year) } 381 ; 382 opticstruct.lat=latitudelmdz 383 opticstruct.lev=lev 384 opticstruct.time=float(indgen(month_in_year)+1) 385 opticstruct.tau550=tau_550_lmdz 386 ; 387 attributes = {units:strarr(4),long_name:strarr(4)} 388 attributes.units = ['degrees_north','level','month','-'] 389 attributes.long_name = ['latitude','level','time','tau550'] 390 ; 391 dimensions = {isdim:intarr(4), links:intarr(3,4)} 392 dimensions.isdim = [1,1,1,0] ; (1=dimension, 0=variable) 393 dimensions.links = [ [-1,-1,-1],[-1,-1,-1], $ 394 [-1,-1,-1],[0,1,2] ] 395 ; 396 netcdfwrite,output+'tau550strat.2D.'+chyr+'.nc',opticstruct,clobber=1, $ 397 attributes=attributes, dimensions=dimensions 401 ;;;not available in v4 402 ;;;opticstruct={lat:fltarr(dimlatlmdz),lev:fltarr(dimz), $ 403 ;;; time:fltarr(month_in_year), $ 404 ;;; tau550:fltarr(dimlatlmdz,dimz,month_in_year) } 405 ; 406 ;;;opticstruct.lat=latitudelmdz 407 ;;;opticstruct.lev=lev 408 ;;;opticstruct.time=float(indgen(month_in_year)+1) 409 ;;;opticstruct.tau550=tau_550_lmdz 410 ; 411 ;;;attributes = {units:strarr(4),long_name:strarr(4)} 412 ;;;attributes.units = ['degrees_north','level','month','-'] 413 ;;;attributes.long_name = ['latitude','level','time','tau550'] 414 ; 415 ;;;dimensions = {isdim:intarr(4), links:intarr(3,4)} 416 ;;; dimensions.isdim = [1,1,1,0] ; (1=dimension, 0=variable) 417 ;;; dimensions.links = [ [-1,-1,-1],[-1,-1,-1], $ 418 ;;; [-1,-1,-1],[0,1,2] ] 419 ; 420 ;;;netcdfwrite,output+'tau550strat.2D.'+chyr+'.nc',opticstruct,clobber=1, $ 421 ;;; attributes=attributes, dimensions=dimensions 398 422 ; 399 423 endfor … … 463 487 attributes=attributes, dimensions=dimensions 464 488 ; 465 ;--finally prepare the transition period 2015-2023 489 ;--finally prepare the 10-year transition period 490 ;--that is 2015-2023 for v3 or 2017-2025 for v4 466 491 ;--we mix the last year of the period with the climatology 467 492 ; 468 for year= 2015,2023do begin493 for year=1850+yearend+1,1850+yearend+9 do begin 469 494 ; 470 495 chyr=strcompress(year,/rem) 496 print,'year =',chyr 471 497 ;--compute weights 472 w1=float( 2024-year)/10.498 w1=float(1850+yearend+10-year)/10. 473 499 w2=1.0-w1 474 500 ;--SW properties … … 552 578 cd $dirpwd 553 579 580 module load idl 581 554 582 idl << eof 555 583 .r netcdf
Note: See TracChangeset
for help on using the changeset viewer.