;==================================================;
; Open the workstation
;==================================================;
- type = "x11"
+ type = "png"
wks = gsn_open_wks(type,"visu_2Drelief")
;=================================================;
; lecture des différents champs
;=================================================;
-zs = fichier1->ZS(0,:) ; ZS
-zhat = fichier1->ZHAT(:) ; ZHAT
-xhat = fichier1->XHAT(:) ; XHAT
-lsum1_old = fichier1->LSUM(:,0,:) ; LSUM
-lsthm1 = fichier1->LSTHM(:,0,:) ; LSTHM
+ jphext = fichier1->JPHEXT
+ mdims = getfilevardimsizes(fichier1,"UT")
+ nd = dimsizes(mdims)
+ imax=mdims(nd-1)-2*jphext
+ jmax=mdims(nd-2)-2*jphext
+ kmax=mdims(nd-3)-2
+
+
+zs = fichier1->ZS(0,jphext:imax+jphext-1) ; ZS
+zhat = fichier1->ZHAT(1:kmax+1) ; ZHAT
+xhat = fichier1->XHAT(jphext:imax+jphext-1+1) ; XHAT
+
+lsthm1 = fichier1->LSTHM(1:kmax,0,jphext:imax+jphext-1) ; LSTHM
lsthm1@long_name="LSTHM"
lsthm1@units="K"
-wt1_old= fichier1->WT(:,0,:) ; WT
-ut1_old= fichier1->UT(:,0,:) ; UT
-tht1= fichier1->THT(:,0,:) ; THT
+lsum1_old = fichier1->LSUM(1:kmax,0,jphext:imax+jphext-1+1) ; LSUM
+wt1_old= fichier1->WT(1:kmax+1,0,jphext:imax+jphext-1) ; WT
+ut1_old= fichier1->UT(1:kmax,0,jphext:imax+jphext-1+1) ; UT
+
+tht1= fichier1->THT(1:kmax,0,jphext:imax+jphext-1) ; THT
tht1@long_name="Potential Temperature"
tht1@units="K"
-rvt1= fichier1->RVT(:,0,:) ; RVT
+
+rvt1= fichier1->RVT(1:kmax,0,jphext:imax+jphext-1) ; RVT
rvt1@long_name="Vapor mixing ratio"
rvt1@units="g/kg"
-cflu1= fichier1->CFLU(:,0,:) ; CFLU
+
+cflu1= fichier1->CFLU(1:kmax,0,jphext:imax+jphext-1) ; CFLU
cflu1@long_name="CFLU"
cflu1@units="-"
-cflw1= fichier1->CFLW(:,0,:) ; CFLW
+
+cflw1= fichier1->CFLW(1:kmax,0,jphext:imax+jphext-1) ; CFLW
cflw1@long_name="CFLW"
cflw1@units=" "
YYYYDDMM2= fichier2->DTCUR__TDATE
SS2=fichier2->DTCUR__TIME
-lsum2_old = fichier2->LSUM(:,0,:) ; LSUM
-lsthm2 = fichier2->LSTHM(:,0,:) ; LSTHM
+lsthm2 = fichier2->LSTHM(1:kmax,0,jphext:imax+jphext-1) ; LSTHM
lsthm2@long_name="LSTHM"
lsthm2@units="K"
-wt2_old= fichier2->WT(:,0,:) ; WT
-ut2_old= fichier2->UT(:,0,:) ; UT
-tht2= fichier2->THT(:,0,:) ; THT
+
+lsum2_old = fichier2->LSUM(1:kmax,0,jphext:imax+jphext-1+1) ; LSUM
+wt2_old= fichier2->WT(1:kmax+1,0,jphext:imax+jphext-1) ; WT
+ut2_old= fichier2->UT(1:kmax,0,jphext:imax+jphext-1+1) ; UT
+
+tht2= fichier2->THT(1:kmax,0,jphext:imax+jphext-1) ; THT
tht2@long_name="Potential Temperature"
tht2@units="K"
-rvt2= fichier2->RVT(:,0,:) ; RVT
+
+rvt2= fichier2->RVT(1:kmax,0,jphext:imax+jphext-1) ; RVT
rvt2@long_name="Vapor mixing ratio"
rvt2@units="g/kg"
-cflu2= fichier2->CFLU(:,0,:) ; CFLU
+
+cflu2= fichier2->CFLU(1:kmax,0,jphext:imax+jphext-1) ; CFLU
cflu2@long_name="CFLU"
cflu2@units="-"
-cflw2= fichier2->CFLW(:,0,:) ; CFLW
+
+cflw2= fichier2->CFLW(1:kmax,0,jphext:imax+jphext-1) ; CFLW
cflw2@long_name="CFLW"
cflw2@units=" "
;=================================================;
-; Récupération des dimensions des tableaux
-;=================================================;
- mdims = dimsizes(tht1)
- print (mdims)
- nd=dimsizes(mdims)
- imax=mdims(nd-1)
- kmax=mdims(nd-2)
-;=================================================;
; Récupération de la date
;=================================================;
year1=YYYYDDMM1(0)
ut1 = wrf_user_unstagger(ut1_old,"X")
ut1@long_name="Zonal wind"
ut1@units="m/s"
-printVarSummary(ut1_old)
-printVarSummary(ut1)
lsum2 = wrf_user_unstagger(lsum1_old,"X")
lsum2@long_name="LSUM"
z(:,i) = nzh*zcoef(i)+zs(i)
end do
- printVarSummary(ut1)
- printVarSummary(z)
- printVarSummary(xhat)
-
- xconf=conform(tht1,xhat,1)
- printVarSummary(xconf)
+ xconf=conform(tht1,xhat(0:imax-1),1)
;=================================================;
; Set some other basic resources
;=================================================;
resmap@sfXArray = xconf ; 2D
resmap@trGridType = "TriangularMesh"
-; resmap@cnInfoLabelOn = False ; turn off contour info label
resmap@tiXAxisPosition="Left"
resmap@tiXAxisFontHeightF=0.015
plot_cflu1 = gsn_csm_contour(wks,cflu1,opts)
draw(plot_cflu1)
frame(wks)
+
opts@tiXAxisString="time="+time2+"s"
plot_cflu2 = gsn_csm_contour(wks,cflu2,opts)
draw(plot_cflu2)
res_t@gsnLeftString = "THT-LSTHM" ; title
res_t@gsnLeftStringFontHeightF = 0.015
-plot = gsn_csm_x2y (wks,wt1(:,128),tht1(:,128)-lsthm1(:,128),z(:,128),res_w,res_t)
+plot = gsn_csm_x2y (wks,wt1(:,127),tht1(:,127)-lsthm1(:,127),z(:,127),res_w,res_t)
draw(plot)
frame(wks)
res_t@trXMinF=-1
res_t@trXMaxF=0.2
res_w@gsnRightString="time="+time2+"s"
-plot = gsn_csm_x2y (wks,wt2(:,128),tht2(:,128)-lsthm2(:,128),z(:,128),res_w,res_t)
+plot = gsn_csm_x2y (wks,wt2(:,127),tht2(:,127)-lsthm2(:,127),z(:,127),res_w,res_t)
draw(plot)
frame(wks)
res_lsu@tiMainFontHeightF = 0.015
res_w@gsnRightString="time="+time1+"s"
-plot = gsn_csm_x2y (wks,wt1(:,128),ut1(:,128)-lsum1(:,128),z(:,128),res_w,res_lsu)
+plot = gsn_csm_x2y (wks,wt1(:,127),ut1(:,127)-lsum1(:,127),z(:,127),res_w,res_lsu)
draw(plot)
frame(wks)
res_lsu@trXMinF=-2
res_lsu@trXMaxF=2
res_w@gsnRightString="time="+time2+"s"
-plot = gsn_csm_x2y (wks,wt2(:,128),ut2(:,128)-lsum2(:,128),z(:,128),res_w,res_lsu)
+plot = gsn_csm_x2y (wks,wt2(:,127),ut2(:,127)-lsum2(:,127),z(:,127),res_w,res_lsu)
draw(plot)
frame(wks)
ln -sf ../002_mesonh/EXPER.1.HYD2D.003.nc4 .
ncl plot_2Drelief.ncl
+display visu_2Drelief.000001.png
+display visu_2Drelief.000002.png
+display visu_2Drelief.000003.png
+display visu_2Drelief.000004.png
+display visu_2Drelief.000005.png
+display visu_2Drelief.000006.png
+display visu_2Drelief.000007.png
+display visu_2Drelief.000008.png
+display visu_2Drelief.000009.png
+display visu_2Drelief.000010.png
+display visu_2Drelief.000011.png
+display visu_2Drelief.000012.png
+display visu_2Drelief.000013.png
+display visu_2Drelief.000014.png
+display visu_2Drelief.000015.png
+display visu_2Drelief.000016.png
;==================================================;
; Open the workstation
;==================================================;
- type = "x11"
+ type = "png"
wks = gsn_open_wks(type,"visu_3Drelief")
;=================================================;
; lecture des différents champs
;=================================================;
- zs = fichier1->ZS(0,:) ; ZS
- zhat = fichier1->ZHAT(:) ; ZHAT
- xhat = fichier1->XHAT(:) ; XHAT
+ jphext = fichier1->JPHEXT
+ mdims = getfilevardimsizes(fichier1,"UT")
+ nd = dimsizes(mdims)
+ imax=mdims(nd-1)-2*jphext
+ jmax=mdims(nd-2)-2*jphext
+ kmax=mdims(nd-3)-2
- ut= fichier1->UT(:,:,:) ; UT
+
+
+ ut= fichier1->UT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1+1) ; UT
ut@long_name="Zonal wind"
ut@units="m/s"
-;=================================================;
-; Récupération des dimensions des tableaux
-;=================================================;
- mdims = dimsizes(ut)
- nd=dimsizes(mdims)
- imax=mdims(nd-1)
- jmax=mdims(nd-2)
- kmax=mdims(nd-3)
;=================================================;
; Unstagger U
resmap@cnLevelSpacingF = 0.25
resmap@cnMinLevelValF = 8
resmap@cnMaxLevelValF = 14
- plot_ut = gsn_csm_contour(wks,u(1,:,1:),resmap)
+ plot_ut = gsn_csm_contour(wks,u(0,:,:),resmap)
draw(plot_ut)
frame(wks)
ln -sf ../002_mesonh/REL3D.1.EXP01.002.nc4 .
ncl plot_3Drelief.ncl
+display visu_3Drelief.png
;==================================================;
; Open the workstation
;==================================================;
- type = "x11"
+ type = "png"
wks = gsn_open_wks(type,"visu_KW78")
;=================================================;
; Get informations on variable sizes
; dims are dims-2 to remove non-physical values
;=================================================;
- mdims = getfilevardimsizes(fichier1,"UM") ; get dimension sizes
+ jphext = fichier1->JPHEXT
+ mdims = getfilevardimsizes(fichier1,"UT")
nd = dimsizes(mdims)
- imax=mdims(nd-1)-2
- jmax=mdims(nd-2)-2
+ imax=mdims(nd-1)-2*jphext
+ jmax=mdims(nd-2)-2*jphext
kmax=mdims(nd-3)-2
+
+
;=================================================;
; lecture des différents champs
;=================================================;
- zs = fichier1->ZS(1:jmax,1:imax) ; ZS
+ zs = fichier1->ZS(jphext:jmax+jphext-1,jphext:imax+jphext-1) ; ZS
zhat = fichier1->ZHAT(1:kmax+1) ; ZHAT
- yhat = fichier1->YHAT(1:jmax+1) ; YHAT
- xhat = fichier1->XHAT(1:imax+1) ; XHAT
+ yhat = fichier1->YHAT(1:jmax+jphext-1+1) ; YHAT
+ xhat = fichier1->XHAT(1:imax+jphext-1+1) ; XHAT
- wt= fichier1->WT(1:kmax+1,1:jmax,1:imax) ; WT
- vt= fichier1->VT(1:kmax,1:jmax+1,1:imax) ; VT
- ut= fichier1->UT(1:kmax,1:jmax,1:imax+1) ; UT
- tht1= fichier1->THT(1:kmax,1:jmax,1:imax) ; THT
+ wt= fichier1->WT(1:kmax+1,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; WT
+ vt= fichier1->VT(1:kmax,jphext:jmax+jphext-1+1,jphext:imax+jphext-1) ; VT
+ ut= fichier1->UT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1+1) ; UT
+ tht1= fichier1->THT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; THT
tht1@long_name="Potential Temperature"
tht1@units="K"
- lsthm1= fichier1->LSTHM(1:kmax,1:jmax,1:imax)
+ lsthm1= fichier1->LSTHM(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
lsthm1@long_name="Large SCale Potential Temperature"
lsthm1@units="K"
- pabst1= fichier1->PABST(1:kmax,1:jmax,1:imax) ; PABST
+ pabst1= fichier1->PABST(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; PABST
pabst1@long_name="Pressure"
pabst1@units="Pa"
- rvt1= fichier1->RVT(1:kmax,1:jmax,1:imax) ; RVT
+ rvt1= fichier1->RVT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; RVT
rvt1@long_name="Vapor mixing ratio"
rvt1@units="kg/kg"
- rct1= fichier1->RCT(1:kmax,1:jmax,1:imax) ; RCT
+ rct1= fichier1->RCT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; RCT
rct1@long_name="Cloud mixing ratio"
rct1@units="kg/kg"
- rrt1= fichier1->RRT(1:kmax,1:jmax,1:imax) ; RRT
+ rrt1= fichier1->RRT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; RRT
rrt1@long_name="Rain mixing ratio"
rrt1@units="kg/kg"
- inprr= fichier1->INPRR(1:jmax,1:imax)
+ inprr= fichier1->INPRR(jphext:jmax+jphext-1,jphext:imax+jphext-1)
inprr@long_name="Instantaneous Precipitation Rain Rate"
inprr@units="mm/h"
- acprr= fichier1->ACPRR(1:jmax,1:imax)
+ acprr= fichier1->ACPRR(jphext:jmax+jphext-1,jphext:imax+jphext-1)
acprr@long_name="Accumulated Precipitation Rain Rate"
acprr@units="mm"
-
YYYYDDMM1= fichier1->DTCUR__TDATE
SS1=fichier1->DTCUR__TIME
ln -sf ../002_mesonh/KWRAI.1.SEG01.004.nc4 .
ncl plot_KW78.ncl
+display visu_KW78.000001.png
+display visu_KW78.000002.png
+display visu_KW78.000003.png
+display visu_KW78.000004.png
+display visu_KW78.000005.png
+display visu_KW78.000006.png
+display visu_KW78.000007.png
+display visu_KW78.000008.png
+display visu_KW78.000009.png
+display visu_KW78.000010.png
+display visu_KW78.000011.png
+display visu_KW78.000012.png
+display visu_KW78.000013.png
+
if(isfilevar(in_file,"IMAX"))\r
XHAT=in_file->XHAT\r
YHAT=in_file->YHAT\r
- IMAX= dimsizes(XHAT)-2\r
- JMAX= dimsizes(YHAT)-2\r
+ jphext = in_file->JPHEXT\r
+ IMAX= dimsizes(XHAT)-2*JPHEXT\r
+ JMAX= dimsizes(YHAT)-2*JPHEXT\r
zdx=XHAT(2)-XHAT(1)\r
zdy=YHAT(2)-YHAT(1)\r
\r
; Get information on variable sizes
;=================================================;
+ jphext = a->JPHEXT
mdims = getfilevardimsizes(a,"ZS") ; get some dimension sizes for the file
nd = dimsizes(mdims)
- imax=mdims(nd-1)-2 ; -2 : to remove non-physical values
- jmax=mdims(nd-2)-2 ; -2 : to remove non-physical values
+ imax=mdims(nd-1)-2*jphext ; -2*jphext : to remove non-physical values
+ jmax=mdims(nd-2)-2*jphext ; -2*jphext : to remove non-physical values
;=================================================;
; Read the variables
; Note: do not read first and last value which are non physical values
; -------------------------------------
- lat2d=a->LAT(1:jmax,1:imax)
- lon2d=a->LON(1:jmax,1:imax)
+ lat2d=a->LAT(jphext:jmax+jphext-1,jphext:imax+jphext-1)
+ lon2d=a->LON(jphext:jmax+jphext-1,jphext:imax+jphext-1)
- ZS = a->ZS(1:jmax,1:imax)
+ ZS = a->ZS(jphext:jmax+jphext-1,jphext:imax+jphext-1)
ZS@long_name="Orography"
ZS@units="m"
;=================================================;
; Get informations on variable sizes
;=================================================;
-
+ jphext = a->JPHEXT
mdims = getfilevardimsizes(a,"UT") ; get some dimension sizes for the file
nd = dimsizes(mdims)
- imax=mdims(nd-1)-2
- jmax=mdims(nd-2)-2
+ imax=mdims(nd-1)-2*jphext
+ jmax=mdims(nd-2)-2*jphext
kmax=mdims(nd-3)-2
; -2 : to remove non-physical values
; Read latitude and longitude fields
; -----------------------------------------
- lat2d = a->LAT(1:jmax,1:imax)
+ lat2d = a->LAT(jphext:jmax+jphext-1,jphext:imax+jphext-1)
lat2d@units="degrees_north"
- lon2d = a->LON(1:jmax,1:imax)
+ lon2d = a->LON(jphext:jmax+jphext-1,jphext:imax+jphext-1)
lon2d@units="degrees_east"
; Read water wapor mixing ratio if it exists
; -----------------------------------------
if(isfilevar(a,"RVT"))
- qv = a->RVT(1:kmax,1:jmax,1:imax)
+ qv = a->RVT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
qv = qv*1000.
qv@units = "g/kg"
qv@description="Water vapor mixing ratio"
; Read cloud mixing ratio if it exists
; -----------------------------------------
if(isfilevar(a,"RCT"))
- qc = a->RCT(1:kmax,1:jmax,1:imax)
+ qc = a->RCT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
qc = qc*1000.
qc@units = "g/kg"
qc@description="Cloud mixing ratio"
; Read rain mixing ratio if it exists
; -----------------------------------------
if(isfilevar(a,"RRT"))
- qr = a->RRT(1:kmax,1:jmax,1:imax)
+ qr = a->RRT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
qr = qr*1000.
qr@units = "g/kg"
qr@description="Rain mixing ratio"
; Read ice mixing ratio if it exists
; -----------------------------------------
if(isfilevar(a,"RIT"))
- qi = a->RIT(1:kmax,1:jmax,1:imax)
+ qi = a->RIT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
qi = qi*1000.
qi@units = "g/kg"
qi@description="Ice mixing ratio"
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_csm.ncl"
+load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl"
+load "$NCARG_ROOT/lib/ncarg/nclscripts/wrf/WRFUserARW.ncl"
load "MESONHtools.ncl"
begin
; For paper quality plot do not use ncgm or eps
;=================================================;
type = "x11"
-; type = "png"
-; type = "pdf"
-; type = "ps"
+
;=================================================;
; Open the workstation and choose colormap
;=================================================;
; Get informations on variable sizes
;=================================================;
+ jphext = a->JPHEXT
mdims = getfilevardimsizes(a,"UT") ; get some dimension sizes for the file
nd = dimsizes(mdims)
- imax=mdims(nd-1)-2
- jmax=mdims(nd-2)-2
+ imax=mdims(nd-1)-2*jphext
+ jmax=mdims(nd-2)-2*jphext
kmax=mdims(nd-3)-2
;=================================================;
; Read some variables from mnh_file
;=================================================;
- ZS =a->ZS(1:jmax,1:imax)
+ ZS =a->ZS(jphext:jmax+jphext-1,jphext:imax+jphext-1)
- th = a->THT(1:kmax,1:jmax,1:imax)
+ th = a->THT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
th@long_name="Potential Temperature"
th@description="TH"
- um = a->UT(1:kmax,1:jmax,1:imax+1)
+ um = a->UT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1+1)
um@description="U"
zh= a->ZHAT(0:kmax)
- lat2d = a->LAT(1:jmax,1:imax)
+ lat2d = a->LAT(jphext:jmax+jphext-1,jphext:imax+jphext-1)
lat2d@units="degrees_north"
- lon2d = a->LON(1:jmax,1:imax)
+ lon2d = a->LON(jphext:jmax+jphext-1,jphext:imax+jphext-1)
lon2d@units="degrees_east"
ZS@lat2d=lat2d
; Define the plane where the cross-section will be done
; ------------------------------------------------------
plane = new(2,float)
- plane = (/ (mdims(nd-1)-2)/2, (mdims(nd-2)-2)/2 /) ; pivot point is center of domain (x,y)
+ plane = (/ (imax)/2, (jmax)/2 /) ; pivot point is center of domain (x,y)
; Resource for the interpolation
; --------------------------------
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"
+load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl"
+load "$NCARG_ROOT/lib/ncarg/nclscripts/wrf/WRFUserARW.ncl"
load "MESONHtools.ncl"
;=============================================================;
; Get informations on variable sizes
; dims are dims-2 to remove non-physical values
;=================================================;
+ jphext = a->JPHEXT
mdims = getfilevardimsizes(a,"THT") ; get dimension sizes
nd = dimsizes(mdims)
- imax=mdims(nd-1)-2
- jmax=mdims(nd-2)-2
+ imax=mdims(nd-1)-2*jphext
+ jmax=mdims(nd-2)-2*jphext
kmax=mdims(nd-3)-2
;=================================================;
; Read the variables we need
;=================================================;
- lat2d = a->LAT(1:jmax,1:imax)
+ lat2d = a->LAT(jphext:jmax+jphext-1,jphext:imax+jphext-1)
lat2d@units="degrees_north"
- lon2d = a->LON(1:jmax,1:imax)
+ lon2d = a->LON(jphext:jmax+jphext-1,jphext:imax+jphext-1)
lon2d@units="degrees_east"
- th = a->THT(1:kmax,1:jmax,1:imax) ; theta
+ th = a->THT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; theta
th@long_name="Potential Temperature"
th@units = "K"
th@lat2d=lat2d
th@lon2d=lon2d
- qv = a->RVT(1:kmax,1:jmax,1:imax) ; Qv
+ qv = a->RVT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; Qv
qv = qv*1000.
qv@long_name="Water vapor mixing ratio"
qv@units = "g/kg"
qv@lat2d=lat2d
qv@lon2d=lon2d
- ut = a->UT(1:kmax,1:jmax,1:imax+1) ; u
+ ut = a->UT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1+1) ; u
ut@long_name="U"
ut@units="m/s"
ut@lat2d=lat2d
ut@lon2d=lon2d
- vt = a->VT(1:kmax,1:jmax+1,1:imax) ; v
+ vt = a->VT(1:kmax,jphext:jmax+jphext-1+1,jphext:imax+jphext-1) ; v
vt@long_name="V"
vt@units="m/s"
vt@lat2d=lat2d
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_csm.ncl"
+load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl"
+load "$NCARG_ROOT/lib/ncarg/nclscripts/wrf/WRFUserARW.ncl"
load "MESONHtools.ncl"
;=================================================;
; dims are dims-2 to remove non-physical values
;=================================================;
print("Reading dims")
+ jphext = a->JPHEXT
mdims = getfilevardimsizes(a,"UT") ; get dimension sizes
nd = dimsizes(mdims)
- imax=mdims(nd-1)-2
- jmax=mdims(nd-2)-2
+ imax=mdims(nd-1)-2*jphext
+ jmax=mdims(nd-2)-2*jphext
kmax=mdims(nd-3)-2
;=================================================;
print("Reading THT")
- tk = a->THT(1:kmax,1:jmax,1:imax) ; potential temperature
+ tk = a->THT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; potential temperature
tk@description="Potential Temperature"
print("Reading wind")
- u = a->UT(1:kmax,1:jmax,1:imax+1) ; u
- v = a->VT(1:kmax,1:jmax+1,1:imax) ; v
+ u = a->UT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1+1) ; u
+ v = a->VT(1:kmax,jphext:jmax+jphext-1+1,jphext:imax+jphext-1) ; v
; Unstagger u,v
u!0="Z"
v_unst = wrf_user_unstagger(v,"Y")
print("Reading pressure")
- p = a->PABST(1:kmax,1:jmax,1:imax) ; pressure
+ p = a->PABST(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; pressure
p@description="Pressure"
print("Reading water vapor mixing ratio")
- rv = a->RVT(1:kmax,1:jmax,1:imax) ; water vapor mixing ratio
+ rv = a->RVT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; water vapor mixing ratio
rv = rv*1000. ; water vapor mixing ratio
rv@description="Water vapor mixing ratio"
print("Reading orography")
- zs = a->ZS(1:jmax,1:imax) ; terrain
+ zs = a->ZS(jphext:jmax+jphext-1,jphext:imax+jphext-1) ; terrain
zh = a->ZHAT(1:kmax+1) ; heigth without terrain
print("End of variables reading")
;==================================================;
; Open the workstation
;==================================================;
- ; type = "ps"
- type = "x11"
+ type = "png"
wks = gsn_open_wks(type,"visu_Reunion")
;=================================================;
; Get informations on variable sizes
; dims are dims-2 to remove non-physical values
;=================================================;
- mdims = getfilevardimsizes(fichier1,"UT") ; get dimension sizes
+ jphext = fichier1->JPHEXT
+ mdims = getfilevardimsizes(fichier1,"UT")
nd = dimsizes(mdims)
- imax=mdims(nd-1)-2
- jmax=mdims(nd-2)-2
+ imax=mdims(nd-1)-2*jphext
+ jmax=mdims(nd-2)-2*jphext
kmax=mdims(nd-3)-2
+
+
;=================================================;
; Set map projection
;=================================================;
- lat2d=fichier1->LAT(1:jmax,1:imax)
- lon2d=fichier1->LON(1:jmax,1:imax)
+ lat2d=fichier1->LAT(jphext:jmax+jphext-1,jphext:imax+jphext-1)
+ lon2d=fichier1->LON(jphext:jmax+jphext-1,jphext:imax+jphext-1)
; Resources for the map projection
;-----------------------------------------------;
;=================================================;
; lecture des différents champs
;=================================================;
- zs = fichier1->ZS(1:jmax,1:imax) ; ZS
+ zs = fichier1->ZS(jphext:jmax+jphext-1,jphext:imax+jphext-1) ; ZS
zs@lat2d = lat2d
zs@lon2d = lon2d
- wt= fichier1->WT(1:kmax+1,1:jmax,1:imax) ; WT
- vt= fichier1->VT(1:kmax,1:jmax+1,1:imax) ; VT
- ut= fichier1->UT(1:kmax,1:jmax,1:imax+1) ; UT
- tht= fichier1->THT(1:kmax,1:jmax,1:imax) ; THT
+ wt= fichier1->WT(1:kmax+1,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; WT
+ vt= fichier1->VT(1:kmax,jphext:jmax+jphext-1+1,jphext:imax+jphext-1); VT
+ ut= fichier1->UT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1+1) ; UT
+ tht= fichier1->THT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; THT
tht@long_name="Potential Temperature"
tht@units="K"
tht@lat2d = lat2d
tht@lon2d = lon2d
- lsthm= fichier1->LSTHM(1:kmax,1:jmax,1:imax) ;LSTHM
+ lsthm= fichier1->LSTHM(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ;LSTHM
lsthm@long_name="Large SCale Potential Temperature"
lsthm@units="K"
lsthm@lat2d = lat2d
lsthm@lon2d = lon2d
- lsvm= fichier1->LSVM(1:kmax,1:jmax+1,1:imax) ; LSVM
+ lsvm= fichier1->LSVM(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; LSVM
lsvm@long_name="Large SCale Merdian Wind"
lsvm@units="m/s"
lsvm@lat2d = lat2d
lsvm@lon2d = lon2d
- pabst= fichier1->PABST(1:kmax,1:jmax,1:imax) ; PABST
+ pabst= fichier1->PABST(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; PABST
pabst@long_name="Pressure"
pabst@units="Pa"
pabst@lat2d = lat2d
set -e
ln -sf ../003_mesonh/REUNI.1.00A20.004.nc4 .
ncl plot_Reunion.ncl
+display visu_Reunion.000001.png
+display visu_Reunion.000002.png
+display visu_Reunion.000003.png
+display visu_Reunion.000004.png
+display visu_Reunion.000005.png
+display visu_Reunion.000006.png
+display visu_Reunion.000007.png
;==================================================;
; Open the workstation
;==================================================;
- type = "x11"
+ type = "png"
wks = gsn_open_wks(type,"visu_16j")
;=================================================;
; Get informations on variable sizes
; dims are dims-2 to remove non-physical values
;=================================================;
- mdims = getfilevardimsizes(fichier1,"UT") ; get dimension sizes
+ jphext = fichier1->JPHEXT
+ mdims = getfilevardimsizes(fichier1,"UT")
nd = dimsizes(mdims)
- imax=mdims(nd-1)-2
- jmax=mdims(nd-2)-2
+ imax=mdims(nd-1)-2*jphext
+ jmax=mdims(nd-2)-2*jphext
kmax=mdims(nd-3)-2
+
;=================================================;
; Set map projection
;=================================================;
- lat2d=fichier1->LAT(1:jmax,1:imax)
- lon2d=fichier1->LON(1:jmax,1:imax)
+ lat2d=fichier1->LAT(jphext:jmax+jphext-1,jphext:imax+jphext-1)
+ lon2d=fichier1->LON(jphext:jmax+jphext-1,jphext:imax+jphext-1)
; Resources for the map projection
;-----------------------------------------------;
resmap=True
;=================================================;
; lecture des différents champs
;=================================================;
-zs = fichier1->ZS(1:jmax,1:imax) ; ZS
+zs = fichier1->ZS(jphext:jmax+jphext-1,jphext:imax+jphext-1) ; ZS
zs@long_name="Orography"
zs@units="m"
zs@lat2d = lat2d
zs@lon2d = lon2d
-wt= fichier1->WT(1:kmax+1,1:jmax,1:imax) ; WT
-vt= fichier1->VT(1:kmax,1:jmax+1,1:imax) ; VT
-ut= fichier1->UT(1:kmax,1:jmax,1:imax+1) ; UT
+wt= fichier1->WT(1:kmax+1,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; WT
+vt= fichier1->VT(1:kmax,jphext:jmax+jphext-1+1,jphext:imax+jphext-1) ; VT
+ut= fichier1->UT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1+1) ; UT
-tht1= fichier1->THT(1:kmax,1:jmax,1:imax) ; THT
+tht1= fichier1->THT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; THT
tht1@long_name="Potential Temperature"
tht1@units="K"
tht1@lat2d = lat2d
-pabst1= fichier1->PABST(1:kmax,1:jmax,1:imax) ; PABST
+pabst1= fichier1->PABST(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; PABST
pabst1@long_name="Pressure"
pabst1@units="Pa"
pabst1@lat2d = lat2d
pabst1@lon2d = lon2d
-rvt1= fichier1->RVT(1:kmax,1:jmax,1:imax) ; RVT
+rvt1= fichier1->RVT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; RVT
rvt1=rvt1*1000
rvt1@long_name="Vapor mixing ratio"
rvt1@units="kg/kg"
;==================================================;
; Open the workstation
;==================================================;
- type = "x11"
+ type = "png"
wks = gsn_open_wks(type,"visu_16j_2")
;=================================================;
; Get informations on variable sizes
; dims are dims-2 to remove non-physical values
;=================================================;
- mdims = getfilevardimsizes(fichier1,"UT") ; get dimension sizes
+ jphext = fichier1->JPHEXT
+ mdims = getfilevardimsizes(fichier1,"UT")
nd = dimsizes(mdims)
- imax=mdims(nd-1)-2
- jmax=mdims(nd-2)-2
+ imax=mdims(nd-1)-2*jphext
+ jmax=mdims(nd-2)-2*jphext
kmax=mdims(nd-3)-2
;=================================================;
; Set map projection
;=================================================;
- lat2d=fichier1->LAT(1:jmax,1:imax)
- lon2d=fichier1->LON(1:jmax,1:imax)
+ lat2d=fichier1->LAT(jphext:jmax+jphext-1,jphext:imax+jphext-1)
+ lon2d=fichier1->LON(jphext:jmax+jphext-1,jphext:imax+jphext-1)
; Resources for the map projection
;-----------------------------------------------;
resmap=True
;=================================================;
; lecture des différents champs
;=================================================;
-zs = fichier1->ZS(1:jmax,1:imax) ; ZS
+zs = fichier1->ZS(jphext:jmax+jphext-1,jphext:imax+jphext-1) ; ZS
zs@long_name="Orography"
zs@units="m"
zs@lat2d = lat2d
zs@lon2d = lon2d
-wt= fichier1->WT(1:kmax+1,1:jmax,1:imax) ; WT
-vt= fichier1->VT(1:kmax,1:jmax+1,1:imax) ; VT
-ut= fichier1->UT(1:kmax,1:jmax,1:imax+1) ; UT
+wt= fichier1->WT(1:kmax+1,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; WT
+vt= fichier1->VT(1:kmax,jphext:jmax+jphext-1+1,jphext:imax+jphext-1) ; VT
+ut= fichier1->UT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1+1) ; UT
-tht1= fichier1->THT(1:kmax,1:jmax,1:imax) ; THT
+tht1= fichier1->THT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; THT
tht1@long_name="Potential Temperature"
tht1@units="K"
tht1@lat2d = lat2d
-pabst1= fichier1->PABST(1:kmax,1:jmax,1:imax) ; PABST
+pabst1= fichier1->PABST(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; PABST
pabst1@long_name="Pressure"
pabst1@units="Pa"
pabst1@lat2d = lat2d
pabst1@lon2d = lon2d
-rvt1= fichier1->RVT(1:kmax,1:jmax,1:imax) ; RVT
+rvt1= fichier1->RVT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; RVT
rvt1=rvt1*1000
rvt1@long_name="Vapor mixing ratio"
rvt1@units="kg/kg"
ln -sf ../008_run2/16JAN.1.12B18.001.nc4 .
ln -sf ../008_run2/16JAN.2.12B18.001.nc4 .
ncl plot_16j.ncl
+
+display visu_16j.000001.png
+display visu_16j.000002.png
+display visu_16j.000003.png
+display visu_16j.000004.png
+
ncl plot_16j_2.ncl
+display visu_16j_2.000001.png
+display visu_16j_2.000002.png
+display visu_16j_2.000003.png
+
if(isfilevar(in_file,"IMAX"))\r
XHAT=in_file->XHAT\r
YHAT=in_file->YHAT\r
- IMAX= dimsizes(XHAT)-2\r
- JMAX= dimsizes(YHAT)-2\r
+ jphext = in_file->JPHEXT\r
+ IMAX= dimsizes(XHAT)-2*JPHEXT\r
+ JMAX= dimsizes(YHAT)-2*JPHEXT\r
zdx=XHAT(2)-XHAT(1)\r
zdy=YHAT(2)-YHAT(1)\r
\r
; Get information on variable sizes
;=================================================;
+ jphext = a->JPHEXT
mdims = getfilevardimsizes(a,"ZS") ; get some dimension sizes for the file
nd = dimsizes(mdims)
- imax=mdims(nd-1)-2 ; -2 : to remove non-physical values
- jmax=mdims(nd-2)-2 ; -2 : to remove non-physical values
+ imax=mdims(nd-1)-2*jphext ; -2*jphext : to remove non-physical values
+ jmax=mdims(nd-2)-2*jphext ; -2*jphext : to remove non-physical values
;=================================================;
; Read the variables
; Note: do not read first and last value which are non physical values
; -------------------------------------
- lat2d=a->LAT(1:jmax,1:imax)
- lon2d=a->LON(1:jmax,1:imax)
+ lat2d=a->LAT(jphext:jmax+jphext-1,jphext:imax+jphext-1)
+ lon2d=a->LON(jphext:jmax+jphext-1,jphext:imax+jphext-1)
- ZS = a->ZS(1:jmax,1:imax)
+ ZS = a->ZS(jphext:jmax+jphext-1,jphext:imax+jphext-1)
ZS@long_name="Orography"
ZS@units="m"
;=================================================;
; Get informations on variable sizes
;=================================================;
-
+ jphext = a->JPHEXT
mdims = getfilevardimsizes(a,"UT") ; get some dimension sizes for the file
nd = dimsizes(mdims)
- imax=mdims(nd-1)-2
- jmax=mdims(nd-2)-2
+ imax=mdims(nd-1)-2*jphext
+ jmax=mdims(nd-2)-2*jphext
kmax=mdims(nd-3)-2
; -2 : to remove non-physical values
; Read latitude and longitude fields
; -----------------------------------------
- lat2d = a->LAT(1:jmax,1:imax)
+ lat2d = a->LAT(jphext:jmax+jphext-1,jphext:imax+jphext-1)
lat2d@units="degrees_north"
- lon2d = a->LON(1:jmax,1:imax)
+ lon2d = a->LON(jphext:jmax+jphext-1,jphext:imax+jphext-1)
lon2d@units="degrees_east"
; Read cloud mixing ratio if it exists
; -----------------------------------------
if(isfilevar(a,"RCT"))
- qc = a->RCT(1:kmax,1:jmax,1:imax)
+ qc = a->RCT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
qc = qc*1000.
qc@units = "g/kg"
qc@description="Cloud mixing ratio"
; Read rain mixing ratio if it exists
; -----------------------------------------
if(isfilevar(a,"RRT"))
- qr = a->RRT(1:kmax,1:jmax,1:imax)
+ qr = a->RRT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
qr = qr*1000.
qr@units = "g/kg"
qr@description="Rain mixing ratio"
; Read ice mixing ratio if it exists
; -----------------------------------------
if(isfilevar(a,"RIT"))
- qi = a->RIT(1:kmax,1:jmax,1:imax)
+ qi = a->RIT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
qi = qi*1000.
qi@units = "g/kg"
qi@description="Ice mixing ratio"
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_csm.ncl"
+load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl"
+load "$NCARG_ROOT/lib/ncarg/nclscripts/wrf/WRFUserARW.ncl"
load "MESONHtools.ncl"
begin
; For paper quality plot do not use ncgm or eps
;=================================================;
type = "x11"
-; type = "ps"
-; type = "pdf"
-; type = "ps"
;=================================================;
; Open the workstation and choose colormap
;=================================================;
; Get informations on variable sizes
;=================================================;
+ jphext = a->JPHEXT
mdims = getfilevardimsizes(a,"UT") ; get some dimension sizes for the file
nd = dimsizes(mdims)
- imax=mdims(nd-1)-2
- jmax=mdims(nd-2)-2
+ imax=mdims(nd-1)-2*jphext
+ jmax=mdims(nd-2)-2*jphext
kmax=mdims(nd-3)-2
;=================================================;
; Read some variables from mnh_file
;=================================================;
- ZS =a->ZS(1:jmax,1:imax)
+ ZS =a->ZS(jphext:jmax+jphext-1,jphext:imax+jphext-1)
- th = a->THT(1:kmax,1:jmax,1:imax)
+ th = a->THT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
th@long_name="Potential Temperature"
th@description="TH"
- um = a->UT(1:kmax,1:jmax,1:imax+1)
+ um = a->UT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1+1)
um@description="U"
zh= a->ZHAT(0:kmax)
- lat2d = a->LAT(1:jmax,1:imax)
+ lat2d = a->LAT(jphext:jmax+jphext-1,jphext:imax+jphext-1)
lat2d@units="degrees_north"
- lon2d = a->LON(1:jmax,1:imax)
+ lon2d = a->LON(jphext:jmax+jphext-1,jphext:imax+jphext-1)
lon2d@units="degrees_east"
ZS@lat2d=lat2d
;-----------------------------------------------;
resmap=True
-
-
;=================================================;
; Define Other Resources for map ploting
;=================================================;
; Defining the corners for projection
;====================================
- resmap@mpLimitMode = "Corners"
- resmap@mpLeftCornerLatF = lat2d(0,0)
- resmap@mpLeftCornerLonF = lon2d(0,0)
+ resmap@mpLimitMode = "Corners"
+ resmap@mpLeftCornerLatF = lat2d(0,0)
+ resmap@mpLeftCornerLonF = lon2d(0,0)
resmap@mpRightCornerLatF = lat2d(jmax-1,imax-1)
resmap@mpRightCornerLonF = lon2d(jmax-1,imax-1)
; Define the plane where the cross-section will be done
; ------------------------------------------------------
plane = new(2,float)
- plane = (/ (mdims(nd-1)-2)/2, (mdims(nd-2)-2)/2 /) ; pivot point is center of domain (x,y)
+ plane = (/ (imax)/2, (jmax)/2 /) ; pivot point is center of domain (x,y)
; Resource for the interpolation
; --------------------------------
end do ; make next cross section
-print(resmap)
end
; For paper quality plot do not use ncgm or eps
;=================================================;
type = "x11"
-; type = "png"
-; type = "pdf"
-; type = "ps"
;=================================================;
; Open the workstation and choose colormap
;=================================================;
; Get informations on variable sizes
;=================================================;
+ jphext = a->JPHEXT
mdims = getfilevardimsizes(a,"UT") ; get some dimension sizes for the file
nd = dimsizes(mdims)
- imax=mdims(nd-1)-2
- jmax=mdims(nd-2)-2
+ imax=mdims(nd-1)-2*jphext
+ jmax=mdims(nd-2)-2*jphext
kmax=mdims(nd-3)-2
;=================================================;
; Read some variables from mnh_file
;=================================================;
- lat2d=a->LAT(1:jmax,1:imax)
+ lat2d = a->LAT(jphext:jmax+jphext-1,jphext:imax+jphext-1)
lat2d@units="degrees_north"
- lon2d=a->LON(1:jmax,1:imax)
+ lon2d = a->LON(jphext:jmax+jphext-1,jphext:imax+jphext-1)
lon2d@units="degrees_east"
- ZS =a->ZS(1:jmax,1:imax)
+ ZS =a->ZS(jphext:jmax+jphext-1,jphext:imax+jphext-1)
ZS@lat2d = lat2d
ZS@lon2d = lon2d
- rv = a->RVT(1:kmax,1:jmax,1:imax)
+ rv = a->RVT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
rv = rv*1000.
rv@description="RVT"
rv@lat2d = lat2d
; Define the plane where the cross-section will be done
; ------------------------------------------------------
plane = new(2,float)
- ;plane = (/ (mdims(nd-1)-2)/2, (mdims(nd-2)-2)/2 /) ; pivot point is center of domain (x,y)
- plane = (/ ((mdims(nd-1)-2)/2)+10, (mdims(nd-2)-2)/2 /) ; pivot point is center of domain (x,y)
-
+ plane = (/ (imax/2)+10, (jmax)/2 /)
; Resource for the interpolation
; --------------------------------
opts = False
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"
+load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl"
+load "$NCARG_ROOT/lib/ncarg/nclscripts/wrf/WRFUserARW.ncl"
load "MESONHtools.ncl"
;=============================================================;
; Get informations on variable sizes
; dims are dims-2 to remove non-physical values
;=================================================;
+ jphext = a->JPHEXT
mdims = getfilevardimsizes(a,"THT") ; get dimension sizes
nd = dimsizes(mdims)
- imax=mdims(nd-1)-2
- jmax=mdims(nd-2)-2
+ imax=mdims(nd-1)-2*jphext
+ jmax=mdims(nd-2)-2*jphext
kmax=mdims(nd-3)-2
;=================================================;
; Read the variables we need
;=================================================;
- lat2d = a->LAT(1:jmax,1:imax)
+ lat2d = a->LAT(jphext:jmax+jphext-1,jphext:imax+jphext-1)
lat2d@units="degrees_north"
- lon2d = a->LON(1:jmax,1:imax)
+ lon2d = a->LON(jphext:jmax+jphext-1,jphext:imax+jphext-1)
lon2d@units="degrees_east"
- th = a->THT(1:kmax,1:jmax,1:imax) ; theta
+ th = a->THT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; theta
th@long_name="Potential Temperature"
th@units = "K"
th@lat2d=lat2d
th@lon2d=lon2d
- qv = a->RVT(1:kmax,1:jmax,1:imax) ; Qv
+ qv = a->RVT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; Qv
qv = qv*1000.
qv@long_name="Water vapor mixing ratio"
qv@units = "g/kg"
qv@lat2d=lat2d
qv@lon2d=lon2d
- ut = a->UT(1:kmax,1:jmax,1:imax+1) ; u
+ ut = a->UT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1+1) ; u
ut@long_name="U"
ut@units="m/s"
ut@lat2d=lat2d
ut@lon2d=lon2d
- vt = a->VT(1:kmax,1:jmax+1,1:imax) ; v
+ vt = a->VT(1:kmax,jphext:jmax+jphext-1+1,jphext:imax+jphext-1) ; v
vt@long_name="V"
vt@units="m/s"
vt@lat2d=lat2d
; Get informations on variable sizes
; dims are dims-2 to remove non-physical values
;=================================================;
-;print("Reading dims")
+ jphext = a->JPHEXT
mdims = getfilevardimsizes(a,"UT") ; get dimension sizes
nd = dimsizes(mdims)
- imax=mdims(nd-1)-2
- jmax=mdims(nd-2)-2
+ imax=mdims(nd-1)-2*jphext
+ jmax=mdims(nd-2)-2*jphext
kmax=mdims(nd-3)-2
; Read the variables we need
;=================================================;
-; print("Reading THT")
- tk = a->THT(1:kmax,1:jmax,1:imax) ; potential temperature
+ tk = a->THT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; potential temperature
tk@description="Potential Temperature"
-; print("Reading wind")
- u = a->UT(1:kmax,1:jmax,1:imax+1) ; u
- v = a->VT(1:kmax,1:jmax+1,1:imax) ; v
+ u = a->UT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1+1) ; u
+ v = a->VT(1:kmax,jphext:jmax+jphext-1+1,jphext:imax+jphext-1) ; v
+
; Unstagger u,v
u!0="Z"
v!2="X"
v_unst = wrf_user_unstagger(v,"Y")
-; print("Reading pressure")
- p = a->PABST(1:kmax,1:jmax,1:imax) ; pressure
+ p = a->PABST(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; pressure
p@description="Pressure"
-; print("Reading water vapor mixing ratio")
- rv = a->RVT(1:kmax,1:jmax,1:imax) ; water vapor mixing ratio
+ rv = a->RVT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; water vapor mixing ratio
rv = rv*1000. ; water vapor mixing ratio
rv@description="Water vapor mixing ratio"
-; print("Reading orography")
- zs = a->ZS(1:jmax,1:imax) ; terrain
+ zs = a->ZS(jphext:jmax+jphext-1,jphext:imax+jphext-1) ; terrain
zh = a->ZHAT(1:kmax+1) ; heigth without terrain
;==========================================
; Get informations on variable sizes\r
; dims are dims-2 to remove non-physical values\r
;=================================================;\r
- mdims = getfilevardimsizes(a,"THT") ; get dimension sizes\r
+ jphext = a->JPHEXT\r
+ mdims = getfilevardimsizes(a,"UT") \r
nd = dimsizes(mdims)\r
- imax=mdims(nd-1)-2\r
- jmax=mdims(nd-2)-2\r
+ imax=mdims(nd-1)-2*jphext\r
+ jmax=mdims(nd-2)-2*jphext\r
kmax=mdims(nd-3)-2\r
\r
;-------------------------------------------------;\r
; Read data.\r
;-------------------------------------------------;\r
- lat2d = a->LAT(1:jmax,1:imax)\r
+ lat2d = a->LAT(jphext:jmax+jphext-1,jphext:imax+jphext-1)\r
lat2d@units="degrees_north"\r
- lon2d = a->LON(1:jmax,1:imax)\r
+ lon2d = a->LON(jphext:jmax+jphext-1,jphext:imax+jphext-1)\r
lon2d@units="degrees_east"\r
\r
-zs = a->ZS(1:jmax,1:imax) ; ZS\r
+zs = a->ZS(jphext:jmax+jphext-1,jphext:imax+jphext-1) ; ZS\r
zs@long_name="Orography"\r
zs@units="m"\r
zs@lat2d = lat2d\r
\r
printMinMax(zs,0)\r
\r
- rc_t1 = a->RCT(1:kmax,1:jmax,1:imax)*1.e3\r
+ rc_t1 = a->RCT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)*1.e3\r
rc_t1@long_name="Cloud mixing ratio"\r
rc_t1@units="g/kg"\r
rc_t1@lat2d=lat2d\r
printMinMax(rc_t1,0)\r
\r
;\r
- o3_t1 = a->O3T(1:kmax,1:jmax,1:imax)*1.e9\r
+ o3_t1 = a->O3T(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)*1.e9\r
o3_t1@long_name="Ozone"\r
o3_t1@units="ppbv"\r
o3_t1@lat2d=lat2d\r
o3_t1@lon2d=lon2d\r
\r
;\r
- co_t1 = a->COT(1:kmax,1:jmax,1:imax)*1.e9\r
+ co_t1 = a->COT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)*1.e9\r
co_t1@long_name="carbon monoxide"\r
co_t1@units="ppbv"\r
co_t1@lat2d=lat2d\r
co_t1@lon2d=lon2d\r
;\r
;\r
- rc_t2 = a2->RCT(1:kmax,1:jmax,1:imax)*1.e3\r
+ rc_t2 = a2->RCT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)*1.e3\r
rc_t2@long_name="Cloud mixing ratio"\r
rc_t2@units="g/kg"\r
rc_t2@lat2d=lat2d\r
rc_t2@lon2d=lon2d\r
\r
;\r
- o3_t2 = a2->O3T(1:kmax,1:jmax,1:imax)*1.e9\r
+ o3_t2 = a2->O3T(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)*1.e9\r
o3_t2@long_name="Ozone"\r
o3_t2@units="ppbv"\r
o3_t2@lat2d=lat2d\r
o3_t2@lon2d=lon2d\r
\r
;\r
- co_t2 = a2->COT(1:kmax,1:jmax,1:imax)*1.e9\r
+ co_t2 = a2->COT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)*1.e9\r
co_t2@long_name="carbon monoxide"\r
co_t2@units="ppbv"\r
co_t2@lat2d=lat2d\r
\r
\r
figname ="zsection_1250"\r
- wks = gsn_open_wks("ps",figname) ; open a ncgm file\r
+ wks = gsn_open_wks("png",figname) ; open a ncgm file\r
gsn_define_colormap(wks,"WhBlGrYeRe") ; Choose colormap\r
\r
res = resmap \r
ln -sf ../003_mesonh/ICART.1.SEG01.001.nc4 .
ln -sf ../003_mesonh/ICART.1.SEG01.002.nc4 .
-rm -f *.ps
+rm -f *.png
ncl plot_ICARTT.ncl
+
+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
;================================================;
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"
-load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_csm.ncl"
-load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl"
-load "$NCARG_ROOT/lib/ncarg/nclscripts/wrf/WRFUserARW.ncl"
+load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_csm.ncl"
+ load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl"
+ load "$NCARG_ROOT/lib/ncarg/nclscripts/wrf/WRFUserARW.ncl"
; ================================================;
;================================================;
begin
;==================================================;
; Open the workstation
;==================================================;
- type = "ps"
- ;type = "x11"
+ type = "png"
wks = gsn_open_wks(type,"visu_KW78_chem")
;=================================================;
; Get informations on variable sizes
; dims are dims-2 to remove non-physical values
;=================================================;
+ jphext = fichier1->JPHEXT
mdims = getfilevardimsizes(fichier1,"UT") ; get dimension sizes
nd = dimsizes(mdims)
- imax=mdims(nd-1)-2
- jmax=mdims(nd-2)-2
+ imax=mdims(nd-1)-2*jphext
+ jmax=mdims(nd-2)-2*jphext
kmax=mdims(nd-3)-2
;=================================================;
; lecture des différents champs
;=================================================;
-zs = fichier1->ZS(1:jmax,1:imax) ; ZS
+zs = fichier1->ZS(jphext:jmax+jphext-1,jphext:imax+jphext-1) ; ZS
zhat = fichier1->ZHAT(1:kmax+1) ; ZHAT
-yhat = fichier1->YHAT(1:jmax+1) ; YHAT
-xhat = fichier1->XHAT(1:imax+1) ; XHAT
+yhat = fichier1->YHAT(1:jmax+jphext-1+1) ; YHAT
+xhat = fichier1->XHAT(1:imax+jphext-1+1) ; XHAT
-wt= fichier1->WT(1:kmax+1,1:jmax,1:imax) ; WT
-vt= fichier1->VT(1:kmax,1:jmax+1,1:imax) ; VT
-ut= fichier1->UT(1:kmax,1:jmax,1:imax+1) ; UT
-tht1= fichier1->THT(1:kmax,1:jmax,1:imax) ; THT
+wt= fichier1->WT(1:kmax+1,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; WT
+vt= fichier1->VT(1:kmax,jphext:jmax+jphext-1+1,jphext:imax+jphext-1) ; VT
+ut= fichier1->UT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1+1) ; UT
+tht1= fichier1->THT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; THT
tht1@long_name="Potential Temperature"
tht1@units="K"
-lsthm1= fichier1->LSTHM(1:kmax,1:jmax,1:imax)
-tht1@long_name="Large SCale Potential Temperature"
-tht1@units="K"
+ lsthm1= fichier1->LSTHM(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
+lsthm1@long_name="Large SCale Potential Temperature"
+lsthm1@units="K"
-pabst1= fichier1->PABST(1:kmax,1:jmax,1:imax) ; PABST
+pabst1= fichier1->PABST(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; PABST
pabst1@long_name="Pressure"
pabst1@units="Pa"
-rvt1= fichier1->RVT(1:kmax,1:jmax,1:imax) ; RVT
+rvt1= fichier1->RVT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; RVT
rvt1@long_name="Vapor mixing ratio"
rvt1@units="kg/kg"
-rct1= fichier1->RCT(1:kmax,1:jmax,1:imax) ; RCT
+rct1= fichier1->RCT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; RCT
rct1@long_name="Cloud mixing ratio"
rct1@units="kg/kg"
-rrt1= fichier1->RRT(1:kmax,1:jmax,1:imax) ; RRT
+rrt1= fichier1->RRT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; RRT
rrt1@long_name="Rain mixing ratio"
rrt1@units="kg/kg"
-rst1= fichier1->RST(1:kmax,1:jmax,1:imax) ; RRT
+rst1= fichier1->RST(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; RRT
rst1@long_name="Snow mixing ratio"
rst1@units="kg/kg"
-rgt1= fichier1->RGT(1:kmax,1:jmax,1:imax) ; RRT
+rgt1= fichier1->RGT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; RRT
rgt1@long_name="Graupel mixing ratio"
rgt1@units="kg/kg"
-inprr= fichier1->INPRR(1:jmax,1:imax)
+inprr= fichier1->INPRR(jphext:jmax+jphext-1,jphext:imax+jphext-1)
inprr@long_name="Instantaneous Precipitation Rain Rate"
inprr@units="mm/h"
-acprr= fichier1->ACPRR(1:jmax,1:imax)
+acprr= fichier1->ACPRR(jphext:jmax+jphext-1,jphext:imax+jphext-1)
acprr@long_name="Accumulated Precipitation Rain Rate"
acprr@units="mm"
-cot1= fichier1->COT(1:kmax,1:jmax,1:imax) ; COT
+cot1= fichier1->COT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; COT
cot1@long_name="carbon monoxide"
cot1@units="ppp"
-o3t1= fichier1->O3T(1:kmax,1:jmax,1:imax) ; O3T
+o3t1= fichier1->O3T(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; O3T
o3t1@long_name="Ozone"
o3t1@units="ppp"
-hchot1= fichier1->HCHOT(1:kmax,1:jmax,1:imax) ; HCHOT
+hchot1= fichier1->HCHOT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; HCHOT
hchot1@long_name="HCHO"
hchot1@units="ppp"
-wc_hchot1= fichier1->WC_HCHOT(1:kmax,1:jmax,1:imax)
+wc_hchot1= fichier1->WC_HCHOT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
wc_hchot1@long_name="WC_HCHO"
wc_hchot1@units="ppp"
-wr_hchot1= fichier1->WR_HCHOT(1:kmax,1:jmax,1:imax)
+wr_hchot1= fichier1->WR_HCHOT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
wr_hchot1@long_name="WR_HCHO"
wr_hchot1@units="ppp"
-ic_hchot1= fichier1->IC_HCHOT(1:kmax,1:jmax,1:imax)
+ic_hchot1= fichier1->IC_HCHOT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
ic_hchot1@long_name="IC_HCHO"
ic_hchot1@units="ppp"
-so2t1= fichier1->SO2T(1:kmax,1:jmax,1:imax) ; SO2T
+so2t1= fichier1->SO2T(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; SO2T
so2t1@long_name="SO2"
so2t1@units="ppp"
-wc_so2t1= fichier1->WC_SO2T(1:kmax,1:jmax,1:imax)
+wc_so2t1= fichier1->WC_SO2T(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
wc_so2t1@long_name="WC_SO2"
wc_so2t1@units="ppp"
-wr_so2t1= fichier1->WR_SO2T(1:kmax,1:jmax,1:imax)
+wr_so2t1= fichier1->WR_SO2T(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
wr_so2t1@long_name="WR_SO2"
wr_so2t1@units="ppp"
-ic_so2t1= fichier1->IC_SO2T(1:kmax,1:jmax,1:imax)
+ic_so2t1= fichier1->IC_SO2T(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
ic_so2t1@long_name="IC_SO2"
ic_so2t1@units="ppp"
-hno3t1= fichier1->HNO3T(1:kmax,1:jmax,1:imax) ; HNO3T
+hno3t1= fichier1->HNO3T(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; HNO3T
hno3t1@long_name="HNO3"
hno3t1@units="ppp"
-wc_hno3t1= fichier1->WC_HNO3T(1:kmax,1:jmax,1:imax)
+wc_hno3t1= fichier1->WC_HNO3T(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
wc_hno3t1@long_name="WC_HNO3"
wc_hno3t1@units="ppp"
-wr_hno3t1= fichier1->WR_HNO3T(1:kmax,1:jmax,1:imax)
+wr_hno3t1= fichier1->WR_HNO3T(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
wr_hno3t1@long_name="WR_HNO3"
wr_hno3t1@units="ppp"
-ic_hno3t1= fichier1->IC_HNO3T(1:kmax,1:jmax,1:imax)
+ic_hno3t1= fichier1->IC_HNO3T(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
ic_hno3t1@long_name="IC_HNO3"
ic_hno3t1@units="ppp"
-phc1= fichier1->PHC(1:kmax,1:jmax,1:imax)
+phc1= fichier1->PHC(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
phc1@long_name="PHC"
phc1@units=" "
-phr1= fichier1->PHR(1:kmax,1:jmax,1:imax)
+phr1= fichier1->PHR(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
phr1@long_name="PHR"
phr1@units=" "
ln -sf ../002_mesonh/KWRAI.1.SEGCH.004.nc4 .
ncl plot_KW78_chem.ncl
+for ECH in '000001' '000002' '000003' '000004' '000005' '000006' '000007' '000008' '000009' '000010' '000011' '000012' '000013' '000014' '000015' '000016' '000017' '000018' '000019' '000020' '000021' '000022' '000023' '000024' '000025' '000026' '000027'
+do
+display visu_KW78_chem.${ECH}.png
+done
;================================================;
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_csm.ncl"
+load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl"
+load "$NCARG_ROOT/lib/ncarg/nclscripts/wrf/WRFUserARW.ncl"
; ================================================;
;================================================;
begin
;==================================================;
; Open the workstation
;==================================================;
- type = "ps"
+ type = "png"
wks = gsn_open_wks(type,"visu_dust")
;=================================================;
; Get informations on variable sizes
; dims are dims-2 to remove non-physical values
;=================================================;
+ jphext = fichier1->JPHEXT
mdims = getfilevardimsizes(fichier1,"UT") ; get dimension sizes
nd = dimsizes(mdims)
- imax=mdims(nd-1)-2
- jmax=mdims(nd-2)-2
+ imax=mdims(nd-1)-2*jphext
+ jmax=mdims(nd-2)-2*jphext
kmax=mdims(nd-3)-2
;=================================================;
; Set map projection
;=================================================;
- lat2d=fichier1->LAT(1:jmax,1:imax)
- lon2d=fichier1->LON(1:jmax,1:imax)
+ lat2d=fichier1->LAT(jphext:jmax+jphext-1,jphext:imax+jphext-1)
+ lon2d=fichier1->LON(jphext:jmax+jphext-1,jphext:imax+jphext-1)
; Resources for the map projection
;-----------------------------------------------;
resmap=True
;=================================================;
; lecture des différents champs
;=================================================;
-wt= fichier1->WT(1:kmax+1,1:jmax,1:imax) ; WT
-vt= fichier1->VT(1:kmax,1:jmax+1,1:imax) ; VT
-ut= fichier1->UT(1:kmax,1:jmax,1:imax+1) ; UT
+wt= fichier1->WT(1:kmax+1,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; WT
+vt= fichier1->VT(1:kmax,jphext:jmax+jphext-1+1,jphext:imax+jphext-1) ; VT
+ut= fichier1->UT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1+1) ; UT
-tht= fichier1->THT(1:kmax,1:jmax,1:imax) ; THT
+tht= fichier1->THT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1) ; THT
tht@long_name="Potential Temperature"
tht@units="K"
tht@lat2d = lat2d
-dstm03t= fichier1->DSTM03T(1:kmax,1:jmax,1:imax)
+dstm03t= fichier1->DSTM03T(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
dstm03t@long_name="DSTM03T"
dstm03t@units="ppp"
dstm03t@lat2d = lat2d
dstm03t@lon2d = lon2d
-dstm33t= fichier1->DSTM33T(1:kmax,1:jmax,1:imax)
+dstm33t= fichier1->DSTM33T(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
dstm33t@long_name="DSTM33T"
dstm33t@units="ppp"
dstm33t@lat2d = lat2d
dstm33t@lon2d = lon2d
-dstm02t= fichier1->DSTM02T(1:kmax,1:jmax,1:imax)
+dstm02t= fichier1->DSTM02T(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
dstm02t@long_name="DSTM02T"
dstm02t@units="ppp"
dstm02t@lat2d = lat2d
dstm02t@lon2d = lon2d
-dstm32t= fichier1->DSTM32T(1:kmax,1:jmax,1:imax)
+dstm32t= fichier1->DSTM32T(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
dstm32t@long_name="DSTM32T"
dstm32t@units="ppp"
dstm32t@lat2d = lat2d
dstm32t@lon2d = lon2d
-dstm01t= fichier1->DSTM01T(1:kmax,1:jmax,1:imax)
+dstm01t= fichier1->DSTM01T(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
dstm01t@long_name="DSTM01T"
dstm01t@units="ppp"
dstm01t@lat2d = lat2d
dstm01t@lon2d = lon2d
-dstm31t= fichier1->DSTM31T(1:kmax,1:jmax,1:imax)
+dstm31t= fichier1->DSTM31T(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)
dstm31t@long_name="DSTM31T"
dstm31t@units="ppp"
dstm31t@lat2d = lat2d
dstm31t@lon2d = lon2d
-flx_dst001= fichier1->FLX_DST001(0,1:jmax,1:imax)
+flx_dst001= fichier1->FLX_DST001(jphext:jmax+jphext-1,jphext:imax+jphext-1)
flx_dst001@long_name="FLX_DST001"
flx_dst001@units="kg/m2/s"
flx_dst001@lat2d = lat2d
flx_dst001@lon2d = lon2d
-flx_dst002= fichier1->FLX_DST002(0,1:jmax,1:imax)
+flx_dst002= fichier1->FLX_DST002(jphext:jmax+jphext-1,jphext:imax+jphext-1)
flx_dst002@long_name="FLX_DST002"
flx_dst002@units="kg/m2/s"
flx_dst002@lat2d = lat2d
flx_dst002@lon2d = lon2d
-flx_dst003= fichier1->FLX_DST003(0,1:jmax,1:imax)
+flx_dst003= fichier1->FLX_DST003(jphext:jmax+jphext-1,jphext:imax+jphext-1)
flx_dst003@long_name="FLX_DST003"
flx_dst003@units="kg/m2/s"
flx_dst003@lat2d = lat2d
set -x
ln -sf ../004_restart/DUST7.1.SEG02.004.nc4 .
ncl plot_dust.ncl
+
+for ECH in '000001' '000002' '000003' '000004' '000005' '000006' '000007' '000008' '000009' '000010' '000011'
+
+
+
+do
+display visu_dust.${ECH}.png
+done