Post-Process Sotfware

Download Report

Transcript Post-Process Sotfware

Post-process
software
• Diagnostics of CESM Model
• NCL
Wen-Ien Yu
Diagnostics of CESM Model
CAM
POP2
CICE
The diagnostics package produces over 600 postscript plots and
tables in a variety of formats from CESM (CCSM) monthly netcdf
files. Climatological means for DJF, JJA, and ANN are used. The
diagnostics package can be used to compare two model
simulations or for comparing a model simulation to the
observational and reanalysis data.
Model output on gaussian or fixed grids can be used. The code
has been tested on gaussian T31, T42, T85 and T170 grids and on
fixed lat/lon grids.
The diagnostics package is written completely in NCL (NCAR
Command Language).
cam3_5_50_s01 vs cam3_5_49_s01
1996-2005 DJF Mean Surface Pressure
cam3_5_50_s01 vs NCEP Reanalysis
1996-2005 DJF Mean Zonal wind
cam3_5_50_s01 vs cam3_5_49_s01
Annual implied northward ocean heat
transport
cam3_5_50_s01 vs cam3_5_49_s01
1996-2005 200mb zonal wind
CESM Post-Processing Utilities:
http://www.cesm.ucar.edu/models/cesm1.0/model_diagnostics/
Registration:
(if you don’t have NCAR, NERSC, or NCSS account)
http://www.cgd.ucar.edu/amp/amwg/diagnostics/code.html
CAM:
http://www.cesm.ucar.edu/models/cesm1.0/register/register_cesm1.0.cgi
140.112.66.145
/home/comet/DIAGNOSTICS/
NCO:
http://nco.sourceforge.net/
The netCDF Operators, or NCO, are a suite of programs known as
operators. The operators facilitate manipulation and analysis of data
stored in the self-describing netCDF format. Each NCO operator (e.g.,
ncks) takes netCDF input file(s), performs an operation (e.g., averaging,
hyperslabbing, or renaming), and outputs a processed netCDF file.
NCAR Command
Language
NCL, a product of the Computational & Information Systems Laboratory at
the National Center for Atmospheric Research (NCAR), is a free interpreted
language designed specifically for scientific data processing and
visualization. Numerous analysis functions are built-in NCL.
NCL has robust file input and output. It can read and write netCDF-3,
netCDF-4 classic , HDF4, binary, and ASCII data, and read HDF-EOS2,HDFEOS5, GRIB1,GRIB2and OGR files (shapefile, MapInfo, GMT, TIGER) .
Overview:
http://www.ncl.ucar.edu/get_started.shtml
Getting Started:
http://www.ncl.ucar.edu/get_started.shtml
Examples:
http://www.ncl.ucar.edu/Applications/
Functions:
http://www.ncl.ucar.edu/Document/Functions/
Examples
Stream
Function
from U, V
netCDF
files
PS:
For 14(supermic) and 15(GPU),
please add
export NCARG_ROOT=/usr/local/
&
export NCARG_ROOT=
/opt/ncl_ncarg520.intel_11/
respectively in ~/.bashrc .
; Calculate 200mb daily Stream Functkon
begin
; load netcdf data
in = addfile("/home/comet/NOAA_NCEP_NCAR/v_daily/vwnd.1983_1989.nc","r")
in2 = addfile("/home/comet/NOAA_NCEP_NCAR/u_daily/uwnd.1983_1989.nc","r")
nlat = 73
nlon = 144
ntim = 2557 ; 1990-2008: 6940 days
v=in->vwnd
u=in2->uwnd
lon=in->lon
lat=in->lat
level=in->level
time=in->time
uvmsg = 1e+36 ; missing value of psi and vp matrix
psi = new ( (/ntim,nlat,nlon /), float, uvmsg ) ; stream function
vp = new ( (/ntim,nlat,nlon /), float, uvmsg ) ; velocity potential
; u, v => psi
do i=0,ntim-1,1
uv2sfvpg (u@scale_factor*u(i,10,:,:)+u@add_offset,v@scale_factor*v(i,10,:,:)+v@add_offset,psi(i,:,:),vp(i,:,:))
; form NCL website Functions
end do
; output netcdf data
system("/bin/rm -f /home/comet/NOAA_NCEP_NCAR/200psi.day.1983_1989.nc")
ncdf = addfile("/home/comet/NOAA_NCEP_NCAR/200psi.day.1983_1989.nc" ,"c")
ncdf->lon=lon
ncdf->lat=lat
ncdf->time=time
psi!0 = "time"
psi!1 = "lat"
psi!2 = "lon"
psi&time = time
psi&lat = lat
psi&lon = lon
psi@long_name = "200hPa Stream Function"
ncdf->psi=psi
end
; NCL Graphics Example
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_csm.ncl"
begin
in = addfile("/home/comet/NOAA_NCEP_NCAR/200psi.day.1983_1989.nc","r")
psi = in->psi
wks = gsn_open_wks("ps","example") ; open a workstation to draw graphics
gsn_define_colormap (wks,"BlAqGrYeOrRe")
; choose colormap
res
= True
; plot mods desired
res@cnFillOn
res@cnLinesOn
res@gsnSpreadColors
res@lbBoxLinesOn
res@lbLabelAutoStride
res@cnLabelDrawOrder
= True
; turn on color
= False ; no contour lines
= True
; use full color map
= False ; turn off box between colors
= True
= "PostDraw" ; draw lables over lines
res@cnLevelSelectionMode = "ManualLevels"
res@cnMinLevelValF
= -1.25e+08
res@cnMaxLevelValF
=0
; 1.2e+08
res@cnLevelSpacingF
= 1e+07
res@pmTickMarkDisplayMode
; manual levels
= "Always" ; turn on tick marks
res@mpProjection
res@mpCenterLonF
res@mpCenterLatF
res@mpSatelliteDistF
= "Satellite" ; choose map projection
= 150.0
; choose center lon
= 30
; choose center lat
= 3.0
; choose satellite view
res@mpOutlineOn
res@mpGridAndLimbOn
= True
= True
res@tiMainString
res@sfXCStartV
res@sfXCEndV
res@sfYCStartV
res@sfYCEndV
= "Stream Function Decenber 1st, 1983" ; add title
= min(psi&lon)
; where to start x
= max(psi&lon)
; where to end x etc
= min(psi&lat)
= max(psi&lat)
; turn on continental outlines
; turn on lat/lon lines
map = gsn_csm_contour_map(wks,psi(0,:,:),res)
end
Ploting netCDF file
Thank You