Skip to content
Snippets Groups Projects
Commit 9dd46c62 authored by Gaelle DELAUTIER's avatar Gaelle DELAUTIER
Browse files

M.Leriche F.Brosse 09/12/2016 : add production/destruction terms computation

parent 23303edc
No related branches found
No related tags found
No related merge requests found
set -x
rm -f zsection_1250.ps *.nc4
rm -f *.png *.nc4
......@@ -8,8 +8,8 @@ begin
;=================================================;
; open file and read in data
;=================================================;
a = addfile("ICART.1.SEG01.001.nc4", "r")
a2 = addfile("ICART.1.SEG01.002.nc4", "r")
a = addfile("ICART.1.SEG01.001dg.nc4", "r")
a2 = addfile("ICART.1.SEG01.002dg.nc4", "r")
;=================================================;
; Get informations on variable sizes
......@@ -38,7 +38,7 @@ zs@lon2d = lon2d
printMinMax(zs,0)
rc_t1 = a->RCT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)*1.e3
rc_t1 = a->MRC(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
rc_t1@long_name="Cloud mixing ratio"
rc_t1@units="g/kg"
rc_t1@lat2d=lat2d
......@@ -46,46 +46,114 @@ printMinMax(zs,0)
printMinMax(rc_t1,0)
;
o3_t1 = a->O3T(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)*1.e9
o3_t1 = a->O3T(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
o3_t1@long_name="Ozone"
o3_t1@units="ppbv"
o3_t1@lat2d=lat2d
o3_t1@lon2d=lon2d
;
co_t1 = a->COT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)*1.e9
co_t1 = a->COT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
co_t1@long_name="carbon monoxide"
co_t1@units="ppbv"
co_t1@lat2d=lat2d
co_t1@lon2d=lon2d
;
o3p_t1=a->O3_PROD(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
o3p_t1 = o3p_t1*1e9*3600
o3p_t1@long_name="ozone production"
o3p_t1@units="ppbv/h"
o3p_t1@lat2d=lat2d
o3p_t1@lon2d=lon2d
;
o3l_t1=a->O3_LOSS(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
o3l_t1 = o3l_t1*1e9*3600
o3l_t1@long_name="ozone loss"
o3l_t1@units="ppbv/h"
o3l_t1@lat2d=lat2d
o3l_t1@lon2d=lon2d
;
cop_t1=a->CO_PROD(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
cop_t1 = cop_t1*1e9*3600
cop_t1@long_name="carbon monoxide production"
cop_t1@units="ppbv/h"
cop_t1@lat2d=lat2d
cop_t1@lon2d=lon2d
;
col_t1=a->CO_LOSS(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
col_t1 = col_t1*1e9*3600
col_t1@long_name="carbon monoxide loss"
col_t1@units="ppbv/h"
col_t1@lat2d=lat2d
col_t1@lon2d=lon2d
;
;
rc_t2 = a2->RCT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)*1.e3
rc_t2 = a2->MRC(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
rc_t2@long_name="Cloud mixing ratio"
rc_t2@units="g/kg"
rc_t2@lat2d=lat2d
rc_t2@lon2d=lon2d
;
o3_t2 = a2->O3T(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)*1.e9
o3_t2 = a2->O3T(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
o3_t2@long_name="Ozone"
o3_t2@units="ppbv"
o3_t2@lat2d=lat2d
o3_t2@lon2d=lon2d
;
co_t2 = a2->COT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)*1.e9
co_t2 = a2->COT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
co_t2@long_name="carbon monoxide"
co_t2@units="ppbv"
co_t2@lat2d=lat2d
co_t2@lon2d=lon2d
;
o3p_t2=a2->O3_PROD(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
o3p_t2=o3p_t2*1e9*3600
o3p_t2@long_name="ozone production"
o3p_t2@units="pptv/h"
o3p_t2@lat2d=lat2d
o3p_t2@lon2d=lon2d
;
o3l_t2=a2->O3_LOSS(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
o3l_t2=o3l_t2*1e9*3600
o3l_t2@long_name="ozone loss"
o3l_t2@units="pptv/h"
o3l_t2@lat2d=lat2d
o3l_t2@lon2d=lon2d
;
cop_t2=a2->CO_PROD(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
cop_t2=cop_t2*1e9*3600
cop_t2@long_name="carbon monoxide production"
cop_t2@units="pptv/h"
cop_t2@lat2d=lat2d
cop_t2@lon2d=lon2d
;
col_t2=a2->CO_LOSS(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
col_t2=col_t2*1e9*3600
col_t2@long_name="carbon monoxide loss"
col_t2@units="ppbv/h"
col_t2@lat2d=lat2d
col_t2@lon2d=lon2d
;-----------------------------------------------;
;=================================================;
; On calcule l'altitude des champs modèle
;=================================================;
zhat= a->ZHAT(1:kmax+1)
zhat= a2->ZHAT(1:kmax+1)
; Unstagger zhat (from grid 4 to 1)
nzhat=new(kmax,double)
......@@ -94,7 +162,7 @@ zhat= a->ZHAT(1:kmax+1)
end do
; Create Z3D == ALT
alt=new(dimsizes(rc_t1),double)
alt=new(dimsizes(o3_t2),double)
zcoef=1.-zs/nzhat(kmax-1)
do i=0,imax-1
......@@ -114,9 +182,9 @@ alt@lon2d = lon2d
;-----------------------------------------------;
; Read projection parameters
; --------------------
RPK = a->RPK
BETA = a->BETA
LON0 = a->LON0
RPK = a2->RPK
BETA = a2->BETA
LON0 = a2->LON0
resmap=True
if (RPK.gt.0)
......@@ -189,8 +257,16 @@ printMinMax(alt,0)
rc_t2_plane = wrf_user_intrp3d(rc_t2,alt,"h",1250,0.,False)
co_t1_plane = wrf_user_intrp3d(co_t1,alt,"h",1250,0.,False)
co_t2_plane = wrf_user_intrp3d(co_t2,alt,"h",1250,0.,False)
cop_t1_plane= wrf_user_intrp3d(cop_t1,alt,"h",1250,0.,False)
cop_t2_plane= wrf_user_intrp3d(cop_t2,alt,"h",1250,0.,False)
col_t1_plane= wrf_user_intrp3d(col_t1,alt,"h",1250,0.,False)
col_t2_plane= wrf_user_intrp3d(col_t2,alt,"h",1250,0.,False)
o3_t1_plane = wrf_user_intrp3d(o3_t1,alt,"h",1250,0.,False)
o3_t2_plane = wrf_user_intrp3d(o3_t2,alt,"h",1250,0.,False)
o3l_t1_plane= wrf_user_intrp3d(o3l_t1,alt,"h",1250,0.,False)
o3l_t2_plane= wrf_user_intrp3d(o3l_t2,alt,"h",1250,0.,False)
o3p_t1_plane= wrf_user_intrp3d(o3p_t1,alt,"h",1250,0.,False)
o3p_t2_plane= wrf_user_intrp3d(o3p_t2,alt,"h",1250,0.,False)
figname ="zsection_1250"
......@@ -270,6 +346,50 @@ o3_t2_plane = wrf_user_intrp3d(o3_t2,alt,"h",1250,0.,False)
delete(res@cnLevels)
delete(res@cnFillColors)
; plot ozone production
res@cnLevelSelectionMode = "ExplicitLevels" ; method for selecting the contour
res@cnLevels = (/75,80,85,90,95,100,105,110,115,120,125/)
res@cnFillColors = (/75,80,85,90,95,100,105,110,115,120,125,130/) ; color of a contour
; res@cnLevelSelectionMode = "AutomaticLevels"
plot_o3p = gsn_csm_contour_map(wks,o3p_t1_plane(:,:),res)
draw(plot_o3p)
frame(wks)
delete(res@cnLevels)
delete(res@cnFillColors)
; plot ozone loss
res@cnLevelSelectionMode = "ExplicitLevels" ; method for selecting the contour
res@cnLevels = (/75,80,85,90,95,100,105,110,115,120,125/)
res@cnFillColors = (/75,80,85,90,95,100,105,110,115,120,125,130/) ; color of a contour
; res@cnLevelSelectionMode = "AutomaticLevels"
plot_o3l = gsn_csm_contour_map(wks,o3l_t1_plane(:,:),res)
draw(plot_o3l)
frame(wks)
delete(res@cnLevels)
delete(res@cnFillColors)
; plot carbon monoxide production
res@cnLevelSelectionMode = "ExplicitLevels" ; method for selecting the contour
res@cnLevels = (/0.6,0.7,0.8,0.9,1.0,1.1,1.2,1.3,1.4,1.5,1.6/)
res@cnFillColors := (/0.6,0.7,0.8,0.9,1.0,1.1,1.2,1.3,1.4,1.5,1.6/) ; color of a contour
; res@cnLevelSelectionMode = "AutomaticLevels"
plot_cop = gsn_csm_contour_map(wks,cop_t1_plane(:,:),res)
draw(plot_cop)
frame(wks)
delete(res@cnLevels)
delete(res@cnFillColors)
; plot carbon monoxide loss
res@cnLevelSelectionMode = "ExplicitLevels" ; method for selecting the contour
res@cnLevels = (/0.6,0.7,0.8,0.9,1.0,1.1,1.2,1.3,1.4,1.5,1.6/)
res@cnFillColors := (/0.6,0.7,0.8,0.9,1.0,1.1,1.2,1.3,1.4,1.5,1.6/) ; color of a contour
; res@cnLevelSelectionMode = "AutomaticLevels"
plot_col = gsn_csm_contour_map(wks,col_t1_plane(:,:),res)
draw(plot_col)
frame(wks)
delete(res@cnLevels)
delete(res@cnFillColors)
res@gsnCenterString="heure=20"
; plot cloud mixing ratio
......@@ -302,6 +422,50 @@ o3_t2_plane = wrf_user_intrp3d(o3_t2,alt,"h",1250,0.,False)
draw(plot_co1)
frame(wks)
; plot ozone production
res@cnLevelSelectionMode = "ExplicitLevels" ; method for selecting the contour
res@cnLevels = (/75,80,85,90,95,100,105,110,115,120,125/)
res@cnFillColors = (/75,80,85,90,95,100,105,110,115,120,125,130/) ; color of a contour
; res@cnLevelSelectionMode = "AutomaticLevels"
plot_o3p1 = gsn_csm_contour_map(wks,o3p_t2_plane(:,:),res)
draw(plot_o3p1)
frame(wks)
delete(res@cnLevels)
delete(res@cnFillColors)
; plot ozone loss
res@cnLevelSelectionMode = "ExplicitLevels" ; method for selecting the contour
res@cnLevels = (/75,80,85,90,95,100,105,110,115,120,125/)
res@cnFillColors = (/75,80,85,90,95,100,105,110,115,120,125,130/) ; color of a contour
; res@cnLevelSelectionMode = "AutomaticLevels"
plot_o3l1 = gsn_csm_contour_map(wks,o3l_t2_plane(:,:),res)
draw(plot_o3l1)
frame(wks)
delete(res@cnLevels)
delete(res@cnFillColors)
; plot carbon monoxide production
res@cnLevelSelectionMode = "ExplicitLevels" ; method for selecting the contour
res@cnLevels = (/0.6,0.7,0.8,0.9,1.0,1.1,1.2,1.3,1.4,1.5,1.6/)
res@cnFillColors := (/0.6,0.7,0.8,0.9,1.0,1.1,1.2,1.3,1.4,1.5,1.6/) ; color of a contour
; res@cnLevelSelectionMode = "AutomaticLevels"
plot_cop1 = gsn_csm_contour_map(wks,cop_t2_plane(:,:),res)
draw(plot_cop1)
frame(wks)
delete(res@cnLevels)
delete(res@cnFillColors)
; plot carbon monoxide loss
res@cnLevelSelectionMode = "ExplicitLevels" ; method for selecting the contour
res@cnLevels = (/0.6,0.7,0.8,0.9,1.0,1.1,1.2,1.3,1.4,1.5,1.6/)
res@cnFillColors := (/0.6,0.7,0.8,0.9,1.0,1.1,1.2,1.3,1.4,1.5,1.6/) ; color of a contour
; res@cnLevelSelectionMode = "AutomaticLevels"
plot_col1 = gsn_csm_contour_map(wks,col_t2_plane(:,:),res)
draw(plot_col1)
frame(wks)
delete(res@cnLevels)
delete(res@cnFillColors)
;;;;;;;;;;;;;;;;;;;;;;;;
end
......
......@@ -5,16 +5,14 @@
set -x
#set -e
ln -sf ../003_mesonh/ICART.1.SEG01.001.nc4 .
ln -sf ../003_mesonh/ICART.1.SEG01.002.nc4 .
ln -sf ../004_diag/ICART.1.SEG01.001dg.nc4 .
ln -sf ../004_diag/ICART.1.SEG01.002dg.nc4 .
rm -f *.png
ncl plot_ICARTT.ncl
ncl plot_ICARTT_budget.ncl
display zsection_1250.*.png
display zsection_1250_bud.*.png
display zsection_1250.000001.png
display zsection_1250.000002.png
display zsection_1250.000003.png
display zsection_1250.000004.png
display zsection_1250.000005.png
display zsection_1250.000006.png
exit 0
all: E001_pgd1 E002_arp2lfi E003_mesonh E006_ncl
all: E001_pgd1 E002_arp2lfi E003_mesonh E004_diag E006_ncl
E001_pgd1 :
cd 001_pgd1 && get_chimie_files
......@@ -7,6 +7,8 @@ E002_arp2lfi :
cd 002_arp2lfi && run_arp2lfi_xyz
E003_mesonh:
cd 003_mesonh && run_mesonh_xyz
E004_diag:
cd 004_diag && run_diag_xyz
E006_ncl:
cd 006_ncl && run_ncl
......@@ -14,5 +16,6 @@ clean:
cd 001_pgd1 && clean_prep_pgd_xyz
cd 002_arp2lfi && clean_arp2lfi_xyz
cd 003_mesonh && clean_mesonh_xyz
cd 004_diag && clean_diag_xyz
cd 006_ncl && clean_ncl
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment