diff --git a/MY_RUN/KTEST/001_2Drelief/005_ncl/plot_2Drelief.ncl b/MY_RUN/KTEST/001_2Drelief/005_ncl/plot_2Drelief.ncl index c0df61947986429c79c9422cd9b0e117d8380d1a..bb19ddb7f92843f6396d8b480ac52e6eda7b998e 100644 --- a/MY_RUN/KTEST/001_2Drelief/005_ncl/plot_2Drelief.ncl +++ b/MY_RUN/KTEST/001_2Drelief/005_ncl/plot_2Drelief.ncl @@ -14,31 +14,44 @@ begin ;==================================================; ; 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=" " @@ -47,33 +60,30 @@ SS1=fichier1->DTCUR__TIME 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 ;=================================================; @@ -96,8 +106,6 @@ lsum1@units="m/s" 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" @@ -141,12 +149,7 @@ wt2@units="m/s" 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 ;=================================================; @@ -165,7 +168,6 @@ wt2@units="m/s" resmap@sfXArray = xconf ; 2D resmap@trGridType = "TriangularMesh" -; resmap@cnInfoLabelOn = False ; turn off contour info label resmap@tiXAxisPosition="Left" resmap@tiXAxisFontHeightF=0.015 @@ -246,6 +248,7 @@ opts@tiXAxisString="time="+time1+"s" 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) @@ -303,14 +306,14 @@ res_t@xyExplicitLegendLabels = (/"THT-LSTHM"/) 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) @@ -328,14 +331,14 @@ res_lsu@gsnLeftString = "UT-LSUM" ; title 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) diff --git a/MY_RUN/KTEST/001_2Drelief/005_ncl/run_ncl b/MY_RUN/KTEST/001_2Drelief/005_ncl/run_ncl index 7a4ab0f37d8ebce9cf0bbea198398c414dc561cf..067d6023f34541327747b64a03e397892e57901d 100755 --- a/MY_RUN/KTEST/001_2Drelief/005_ncl/run_ncl +++ b/MY_RUN/KTEST/001_2Drelief/005_ncl/run_ncl @@ -8,3 +8,19 @@ ln -sf ../002_mesonh/EXPER.1.HYD2D.002.nc4 . 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 diff --git a/MY_RUN/KTEST/002_3Drelief/005_ncl/plot_3Drelief.ncl b/MY_RUN/KTEST/002_3Drelief/005_ncl/plot_3Drelief.ncl index 574c95e27371dac6fa287794dc9ba2344765db23..e0b345802205f6b09c62da29010e6389ac36ee91 100644 --- a/MY_RUN/KTEST/002_3Drelief/005_ncl/plot_3Drelief.ncl +++ b/MY_RUN/KTEST/002_3Drelief/005_ncl/plot_3Drelief.ncl @@ -13,28 +13,25 @@ ;==================================================; ; 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 @@ -66,7 +63,7 @@ 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) diff --git a/MY_RUN/KTEST/002_3Drelief/005_ncl/run_ncl b/MY_RUN/KTEST/002_3Drelief/005_ncl/run_ncl index b9015024bded51b947662564eccf6c89fe9380c4..8fe45342523ced3cf87301ea92511fcf950a6a04 100755 --- a/MY_RUN/KTEST/002_3Drelief/005_ncl/run_ncl +++ b/MY_RUN/KTEST/002_3Drelief/005_ncl/run_ncl @@ -7,3 +7,4 @@ set -e ln -sf ../002_mesonh/REL3D.1.EXP01.002.nc4 . ncl plot_3Drelief.ncl +display visu_3Drelief.png diff --git a/MY_RUN/KTEST/003_KW78/005_ncl/plot_KW78.ncl b/MY_RUN/KTEST/003_KW78/005_ncl/plot_KW78.ncl index 6f66a2eb0b69a26af57d6eeabf034d688b2e2ee7..fc9f5f3f4b698381ead3f6a7c048683e04ea84ee 100644 --- a/MY_RUN/KTEST/003_KW78/005_ncl/plot_KW78.ncl +++ b/MY_RUN/KTEST/003_KW78/005_ncl/plot_KW78.ncl @@ -13,56 +13,58 @@ ;==================================================; ; 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 diff --git a/MY_RUN/KTEST/003_KW78/005_ncl/run_ncl b/MY_RUN/KTEST/003_KW78/005_ncl/run_ncl index 59c12f7cfcc85686e35c28e8026080db5ea7644d..89c62b879f2285eab4e181299770e3e3f6fa2139 100755 --- a/MY_RUN/KTEST/003_KW78/005_ncl/run_ncl +++ b/MY_RUN/KTEST/003_KW78/005_ncl/run_ncl @@ -7,3 +7,17 @@ set -e 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 + diff --git a/MY_RUN/KTEST/004_Reunion/005_ncl_nc4/MESONHtools.ncl b/MY_RUN/KTEST/004_Reunion/005_ncl_nc4/MESONHtools.ncl index 6f810bbfdb30b4e658f289d87d1680a80b5b66fe..7280ddc0c6f05aebe6b7a11afffed5449985f7bd 100644 --- a/MY_RUN/KTEST/004_Reunion/005_ncl_nc4/MESONHtools.ncl +++ b/MY_RUN/KTEST/004_Reunion/005_ncl_nc4/MESONHtools.ncl @@ -59,8 +59,9 @@ if(isfilevar(in_file,"RPK")) then if(isfilevar(in_file,"IMAX")) XHAT=in_file->XHAT YHAT=in_file->YHAT - IMAX= dimsizes(XHAT)-2 - JMAX= dimsizes(YHAT)-2 + jphext = in_file->JPHEXT + IMAX= dimsizes(XHAT)-2*JPHEXT + JMAX= dimsizes(YHAT)-2*JPHEXT zdx=XHAT(2)-XHAT(1) zdy=YHAT(2)-YHAT(1) diff --git a/MY_RUN/KTEST/004_Reunion/005_ncl_nc4/mnh_BasicMap.ncl b/MY_RUN/KTEST/004_Reunion/005_ncl_nc4/mnh_BasicMap.ncl index c8f4b66ec89d01fbdf9ac6868c485adcffe8c6a4..304529de8eeb4861879fb21a546c56b63e804cc8 100644 --- a/MY_RUN/KTEST/004_Reunion/005_ncl_nc4/mnh_BasicMap.ncl +++ b/MY_RUN/KTEST/004_Reunion/005_ncl_nc4/mnh_BasicMap.ncl @@ -19,10 +19,11 @@ begin ; 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 @@ -31,10 +32,10 @@ begin ; 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" diff --git a/MY_RUN/KTEST/004_Reunion/005_ncl_nc4/mnh_Cloud.ncl b/MY_RUN/KTEST/004_Reunion/005_ncl_nc4/mnh_Cloud.ncl index ac7a1e460bf41b5df24317af6648b86eac89a291..c6ad40235d52d9e87d19b8e48a9929d8053ef5ed 100644 --- a/MY_RUN/KTEST/004_Reunion/005_ncl_nc4/mnh_Cloud.ncl +++ b/MY_RUN/KTEST/004_Reunion/005_ncl_nc4/mnh_Cloud.ncl @@ -28,11 +28,11 @@ begin ;=================================================; ; 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 @@ -42,15 +42,15 @@ begin ; 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" @@ -61,7 +61,7 @@ begin ; 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" @@ -72,7 +72,7 @@ begin ; 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" @@ -83,7 +83,7 @@ begin ; 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" diff --git a/MY_RUN/KTEST/004_Reunion/005_ncl_nc4/mnh_CrossSection.ncl b/MY_RUN/KTEST/004_Reunion/005_ncl_nc4/mnh_CrossSection.ncl index 938c64d3ee4a3e1336e14092b061aa94a9a3a1d3..718c007dbbe2a1fdb2f6aab928ee2416bda0cd5c 100644 --- a/MY_RUN/KTEST/004_Reunion/005_ncl_nc4/mnh_CrossSection.ncl +++ b/MY_RUN/KTEST/004_Reunion/005_ncl_nc4/mnh_CrossSection.ncl @@ -1,5 +1,7 @@ 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 @@ -15,9 +17,7 @@ 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 @@ -28,29 +28,30 @@ begin ;=================================================; ; 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 @@ -158,7 +159,7 @@ begin ; 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 ; -------------------------------- diff --git a/MY_RUN/KTEST/004_Reunion/005_ncl_nc4/mnh_ModelLevels.ncl b/MY_RUN/KTEST/004_Reunion/005_ncl_nc4/mnh_ModelLevels.ncl index 49640eaf45bef9870202eb0badcab5b4533d2855..412300cce28a9d011c3c47975282bcaf626bff80 100644 --- a/MY_RUN/KTEST/004_Reunion/005_ncl_nc4/mnh_ModelLevels.ncl +++ b/MY_RUN/KTEST/004_Reunion/005_ncl_nc4/mnh_ModelLevels.ncl @@ -1,4 +1,6 @@ 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" ;=============================================================; @@ -29,40 +31,41 @@ begin ; 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 diff --git a/MY_RUN/KTEST/004_Reunion/005_ncl_nc4/mnh_PressureLevel.ncl b/MY_RUN/KTEST/004_Reunion/005_ncl_nc4/mnh_PressureLevel.ncl index a992ef2642b5d92058fbbfd773d5eecdeb22644e..0bfe503db0162f3b429dc5adf5d7b1cb9ca44e29 100644 --- a/MY_RUN/KTEST/004_Reunion/005_ncl_nc4/mnh_PressureLevel.ncl +++ b/MY_RUN/KTEST/004_Reunion/005_ncl_nc4/mnh_PressureLevel.ncl @@ -1,5 +1,7 @@ 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" ;=================================================; @@ -38,10 +40,11 @@ begin ; 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 @@ -50,12 +53,12 @@ begin ;=================================================; 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" @@ -69,16 +72,16 @@ begin 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") diff --git a/MY_RUN/KTEST/004_Reunion/006_ncl/plot_Reunion.ncl b/MY_RUN/KTEST/004_Reunion/006_ncl/plot_Reunion.ncl index b3bcb00d3efeb687c0511cbe14c05c786682d31c..b101f27c85d9151325c1e8bab3dbb0817126d85c 100644 --- a/MY_RUN/KTEST/004_Reunion/006_ncl/plot_Reunion.ncl +++ b/MY_RUN/KTEST/004_Reunion/006_ncl/plot_Reunion.ncl @@ -13,23 +13,25 @@ load "$NCARG_ROOT/lib/ncarg/nclscripts/wrf/WRFUserARW.ncl" ;==================================================; ; 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 ;-----------------------------------------------; @@ -96,32 +98,32 @@ load "$NCARG_ROOT/lib/ncarg/nclscripts/wrf/WRFUserARW.ncl" ;=================================================; ; 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 diff --git a/MY_RUN/KTEST/004_Reunion/006_ncl/run_ncl b/MY_RUN/KTEST/004_Reunion/006_ncl/run_ncl index 74e2d435ec9a0842c571d14cba86afd7a0b49d82..71d2cbb866a18d03cf7296fe6dbbc823ea2ac85f 100755 --- a/MY_RUN/KTEST/004_Reunion/006_ncl/run_ncl +++ b/MY_RUN/KTEST/004_Reunion/006_ncl/run_ncl @@ -6,3 +6,10 @@ set -x 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 diff --git a/MY_RUN/KTEST/007_16janvier/011_ncl/plot_16j.ncl b/MY_RUN/KTEST/007_16janvier/011_ncl/plot_16j.ncl index 2e2f0ac436b38c5d09d5bfeeb7cc4cf47c083253..fe7f5e802546155c5f8f974a371fedc517bcc9b0 100644 --- a/MY_RUN/KTEST/007_16janvier/011_ncl/plot_16j.ncl +++ b/MY_RUN/KTEST/007_16janvier/011_ncl/plot_16j.ncl @@ -13,23 +13,25 @@ begin ;==================================================; ; 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 @@ -101,18 +103,18 @@ BETA = fichier1->BETA ;=================================================; ; 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 @@ -120,13 +122,13 @@ tht1@lon2d = lon2d -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" diff --git a/MY_RUN/KTEST/007_16janvier/011_ncl/plot_16j_2.ncl b/MY_RUN/KTEST/007_16janvier/011_ncl/plot_16j_2.ncl index cc7d85846fea4cf8fccdf7432294e627dbee5dbf..ee22005c481eaa1cc2edcd298bc1957c23b4fb6b 100644 --- a/MY_RUN/KTEST/007_16janvier/011_ncl/plot_16j_2.ncl +++ b/MY_RUN/KTEST/007_16janvier/011_ncl/plot_16j_2.ncl @@ -13,23 +13,24 @@ begin ;==================================================; ; 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 @@ -101,18 +102,18 @@ BETA = fichier1->BETA ;=================================================; ; 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 @@ -120,13 +121,13 @@ tht1@lon2d = lon2d -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" diff --git a/MY_RUN/KTEST/007_16janvier/011_ncl/run_ncl b/MY_RUN/KTEST/007_16janvier/011_ncl/run_ncl index 837d32537d84416fe40cf5baf174befba88ee902..52d8c50d13fcb8eb048cfdb0e986ca09de0b4e7b 100755 --- a/MY_RUN/KTEST/007_16janvier/011_ncl/run_ncl +++ b/MY_RUN/KTEST/007_16janvier/011_ncl/run_ncl @@ -2,4 +2,14 @@ set -x 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 + diff --git a/MY_RUN/KTEST/007_16janvier/011_ncl_nc4/MESONHtools.ncl b/MY_RUN/KTEST/007_16janvier/011_ncl_nc4/MESONHtools.ncl index 6f810bbfdb30b4e658f289d87d1680a80b5b66fe..7280ddc0c6f05aebe6b7a11afffed5449985f7bd 100644 --- a/MY_RUN/KTEST/007_16janvier/011_ncl_nc4/MESONHtools.ncl +++ b/MY_RUN/KTEST/007_16janvier/011_ncl_nc4/MESONHtools.ncl @@ -59,8 +59,9 @@ if(isfilevar(in_file,"RPK")) then if(isfilevar(in_file,"IMAX")) XHAT=in_file->XHAT YHAT=in_file->YHAT - IMAX= dimsizes(XHAT)-2 - JMAX= dimsizes(YHAT)-2 + jphext = in_file->JPHEXT + IMAX= dimsizes(XHAT)-2*JPHEXT + JMAX= dimsizes(YHAT)-2*JPHEXT zdx=XHAT(2)-XHAT(1) zdy=YHAT(2)-YHAT(1) diff --git a/MY_RUN/KTEST/007_16janvier/011_ncl_nc4/mnh_BasicMap.ncl b/MY_RUN/KTEST/007_16janvier/011_ncl_nc4/mnh_BasicMap.ncl index d5bc9dab52ff5896b0451edf7d0dd388050a2144..583550c9e751f6b8e3c7d2c7eff9722a33662b02 100644 --- a/MY_RUN/KTEST/007_16janvier/011_ncl_nc4/mnh_BasicMap.ncl +++ b/MY_RUN/KTEST/007_16janvier/011_ncl_nc4/mnh_BasicMap.ncl @@ -19,10 +19,11 @@ begin ; 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 @@ -31,10 +32,10 @@ begin ; 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" diff --git a/MY_RUN/KTEST/007_16janvier/011_ncl_nc4/mnh_Cloud.ncl b/MY_RUN/KTEST/007_16janvier/011_ncl_nc4/mnh_Cloud.ncl index 7ab2100a5291b7bdf75f00fd0954c4f100712191..2c523d999231d1e959a4825463c9dcde79c23305 100644 --- a/MY_RUN/KTEST/007_16janvier/011_ncl_nc4/mnh_Cloud.ncl +++ b/MY_RUN/KTEST/007_16janvier/011_ncl_nc4/mnh_Cloud.ncl @@ -28,11 +28,11 @@ begin ;=================================================; ; 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 @@ -42,15 +42,15 @@ begin ; 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" @@ -61,7 +61,7 @@ begin ; 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" @@ -72,7 +72,7 @@ begin ; 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" diff --git a/MY_RUN/KTEST/007_16janvier/011_ncl_nc4/mnh_CrossSection.ncl b/MY_RUN/KTEST/007_16janvier/011_ncl_nc4/mnh_CrossSection.ncl index b8b8907f6ee802d8cb2383ab971dd51809906324..99ea808416848e03d91bc1577093408a33dc77a7 100644 --- a/MY_RUN/KTEST/007_16janvier/011_ncl_nc4/mnh_CrossSection.ncl +++ b/MY_RUN/KTEST/007_16janvier/011_ncl_nc4/mnh_CrossSection.ncl @@ -1,5 +1,7 @@ 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 @@ -15,9 +17,6 @@ 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 @@ -29,29 +28,30 @@ begin ;=================================================; ; 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 @@ -107,8 +107,6 @@ begin ;-----------------------------------------------; resmap=True - - ;=================================================; ; Define Other Resources for map ploting ;=================================================; @@ -126,9 +124,9 @@ begin ; 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) @@ -161,7 +159,7 @@ begin ; 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 ; -------------------------------- @@ -313,6 +311,5 @@ begin end do ; make next cross section -print(resmap) end diff --git a/MY_RUN/KTEST/007_16janvier/011_ncl_nc4/mnh_CrossSection_bis.ncl b/MY_RUN/KTEST/007_16janvier/011_ncl_nc4/mnh_CrossSection_bis.ncl index 02bdc0e8eee01e938c4dab2234050c312caae810..a6a6ddf0fa0b054d5a1e9ad31adc64e27b024209 100644 --- a/MY_RUN/KTEST/007_16janvier/011_ncl_nc4/mnh_CrossSection_bis.ncl +++ b/MY_RUN/KTEST/007_16janvier/011_ncl_nc4/mnh_CrossSection_bis.ncl @@ -17,9 +17,6 @@ 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 @@ -30,25 +27,26 @@ begin ;=================================================; ; 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 @@ -216,9 +214,7 @@ begin ; 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 diff --git a/MY_RUN/KTEST/007_16janvier/011_ncl_nc4/mnh_ModelLevels.ncl b/MY_RUN/KTEST/007_16janvier/011_ncl_nc4/mnh_ModelLevels.ncl index fabab8fef16415bc0059f8af680969b14d428ecb..030d04d683693e966e37150c16b14d095ba81cb4 100644 --- a/MY_RUN/KTEST/007_16janvier/011_ncl_nc4/mnh_ModelLevels.ncl +++ b/MY_RUN/KTEST/007_16janvier/011_ncl_nc4/mnh_ModelLevels.ncl @@ -1,4 +1,6 @@ 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" ;=============================================================; @@ -29,40 +31,41 @@ begin ; 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 diff --git a/MY_RUN/KTEST/007_16janvier/011_ncl_nc4/mnh_PressureLevel.ncl b/MY_RUN/KTEST/007_16janvier/011_ncl_nc4/mnh_PressureLevel.ncl index 0e9e9c0385a3761baaa798474b2bca2881def7f7..78edc590f291380ae9dbd1a3fc78a1873c854cd2 100644 --- a/MY_RUN/KTEST/007_16janvier/011_ncl_nc4/mnh_PressureLevel.ncl +++ b/MY_RUN/KTEST/007_16janvier/011_ncl_nc4/mnh_PressureLevel.ncl @@ -37,11 +37,11 @@ begin ; 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 @@ -49,13 +49,12 @@ begin ; 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" @@ -68,17 +67,14 @@ begin 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 ;========================================== diff --git a/MY_RUN/KTEST/009_ICARTT/006_ncl/plot_ICARTT.ncl b/MY_RUN/KTEST/009_ICARTT/006_ncl/plot_ICARTT.ncl index 4c7a999cad5d663a7310c4da68baf96e92d92468..c9d3c2ff374e87f312a78544a598df01841691aa 100644 --- a/MY_RUN/KTEST/009_ICARTT/006_ncl/plot_ICARTT.ncl +++ b/MY_RUN/KTEST/009_ICARTT/006_ncl/plot_ICARTT.ncl @@ -15,21 +15,22 @@ begin ; Get informations on variable sizes ; dims are dims-2 to remove non-physical values ;=================================================; - mdims = getfilevardimsizes(a,"THT") ; get dimension sizes + jphext = a->JPHEXT + mdims = getfilevardimsizes(a,"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 ;-------------------------------------------------; ; Read data. ;-------------------------------------------------; - 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 +zs = a->ZS(jphext:jmax+jphext-1,jphext:imax+jphext-1) ; ZS zs@long_name="Orography" zs@units="m" zs@lat2d = lat2d @@ -37,7 +38,7 @@ zs@lon2d = lon2d printMinMax(zs,0) - rc_t1 = a->RCT(1:kmax,1:jmax,1:imax)*1.e3 + rc_t1 = a->RCT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)*1.e3 rc_t1@long_name="Cloud mixing ratio" rc_t1@units="g/kg" rc_t1@lat2d=lat2d @@ -45,35 +46,35 @@ printMinMax(zs,0) printMinMax(rc_t1,0) ; - o3_t1 = a->O3T(1:kmax,1:jmax,1:imax)*1.e9 + o3_t1 = a->O3T(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)*1.e9 o3_t1@long_name="Ozone" o3_t1@units="ppbv" o3_t1@lat2d=lat2d o3_t1@lon2d=lon2d ; - co_t1 = a->COT(1:kmax,1:jmax,1:imax)*1.e9 + co_t1 = a->COT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)*1.e9 co_t1@long_name="carbon monoxide" co_t1@units="ppbv" co_t1@lat2d=lat2d co_t1@lon2d=lon2d ; ; - rc_t2 = a2->RCT(1:kmax,1:jmax,1:imax)*1.e3 + rc_t2 = a2->RCT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)*1.e3 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,1:jmax,1:imax)*1.e9 + o3_t2 = a2->O3T(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)*1.e9 o3_t2@long_name="Ozone" o3_t2@units="ppbv" o3_t2@lat2d=lat2d o3_t2@lon2d=lon2d ; - co_t2 = a2->COT(1:kmax,1:jmax,1:imax)*1.e9 + co_t2 = a2->COT(1:kmax,jphext:jmax+jphext-1,jphext:imax+jphext-1)*1.e9 co_t2@long_name="carbon monoxide" co_t2@units="ppbv" co_t2@lat2d=lat2d @@ -193,7 +194,7 @@ o3_t2_plane = wrf_user_intrp3d(o3_t2,alt,"h",1250,0.,False) figname ="zsection_1250" - wks = gsn_open_wks("ps",figname) ; open a ncgm file + wks = gsn_open_wks("png",figname) ; open a ncgm file gsn_define_colormap(wks,"WhBlGrYeRe") ; Choose colormap res = resmap diff --git a/MY_RUN/KTEST/009_ICARTT/006_ncl/run_ncl b/MY_RUN/KTEST/009_ICARTT/006_ncl/run_ncl index 09f1e796ce6b561b31cb88b9f6466ae20279209f..6e564c186ac0da72aa9870ee8f2e0e8f4a2d634f 100755 --- a/MY_RUN/KTEST/009_ICARTT/006_ncl/run_ncl +++ b/MY_RUN/KTEST/009_ICARTT/006_ncl/run_ncl @@ -8,5 +8,12 @@ set -e 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 diff --git a/MY_RUN/KTEST/011_KW78CHEM/005_ncl/plot_KW78_chem.ncl b/MY_RUN/KTEST/011_KW78CHEM/005_ncl/plot_KW78_chem.ncl index fbe85536a4c6e01366ba440219299e0b8ae179c3..52b4ef04f68443de7889c97d417fcdc8f02d9105 100644 --- a/MY_RUN/KTEST/011_KW78CHEM/005_ncl/plot_KW78_chem.ncl +++ b/MY_RUN/KTEST/011_KW78CHEM/005_ncl/plot_KW78_chem.ncl @@ -1,8 +1,8 @@ ;================================================; 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 @@ -13,114 +13,114 @@ 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=" " diff --git a/MY_RUN/KTEST/011_KW78CHEM/005_ncl/run_ncl b/MY_RUN/KTEST/011_KW78CHEM/005_ncl/run_ncl index e3dccfb1bf24363175b95ad15be400827c9a7a1f..93de66c712c936311bc118d9111c70b56b72c71a 100755 --- a/MY_RUN/KTEST/011_KW78CHEM/005_ncl/run_ncl +++ b/MY_RUN/KTEST/011_KW78CHEM/005_ncl/run_ncl @@ -7,3 +7,7 @@ set -e 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 diff --git a/MY_RUN/KTEST/012_dust/007_ncl/plot_dust.ncl b/MY_RUN/KTEST/012_dust/007_ncl/plot_dust.ncl index 36bbac6da30e47593816b2fe1bc1aa5f66bd82d3..d0669e403bf521fce3302e2f902f3246b47a6226 100644 --- a/MY_RUN/KTEST/012_dust/007_ncl/plot_dust.ncl +++ b/MY_RUN/KTEST/012_dust/007_ncl/plot_dust.ncl @@ -1,6 +1,8 @@ ;================================================; 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 @@ -11,23 +13,24 @@ 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 @@ -108,11 +111,11 @@ BETA = fichier1->BETA ;=================================================; ; 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 @@ -120,56 +123,56 @@ tht@lon2d = lon2d -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 diff --git a/MY_RUN/KTEST/012_dust/007_ncl/run_ncl b/MY_RUN/KTEST/012_dust/007_ncl/run_ncl index 942dc30eb729619f91033bd407f119d8d24bd852..cda94eef84b77a38c7553066300d00fbb14c4a26 100755 --- a/MY_RUN/KTEST/012_dust/007_ncl/run_ncl +++ b/MY_RUN/KTEST/012_dust/007_ncl/run_ncl @@ -1,3 +1,11 @@ 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