[ncl-talk] multiple ascii file outputs

Ramchandra Karki rammetro at hotmail.com
Sat May 7 08:52:23 MDT 2016


 Dear NCL help,I am trying to extract multiple stations time series (ascci output for each stations) from wrfoutput file but i could not succeed in doing so. Would you please kindly guide me to get the solution?
 ; --------------  LOAD FUNCTIONS AND PROCEDURES ----------------    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"    ; --------------  BEGINING OF NCL SCRIPT ----------------beginDATADir = "/mnt/gpfs1/data/private/fgvy024/Build_WRF/WRFV6/run/"FILES = systemfunc (" ls -1 " + DATADir + "wrfout_d03* ")numFILES = dimsizes(FILES)a = addfiles(FILES+".nc","r")times = wrf_user_list_times(a)     ; get times in the filentimes = dimsizes(times)           ; number of times in the file or 1584 for domain1 4750;new parameters namingtemp = new(ntimes,float) rain_expp = new(ntimes,float) rain_conn = new(ntimes,float) rain_tot = new(ntimes,float)wspd = new(ntimes,float)wdir = new(ntimes,float)snoww_eq = new(ntimes,float)snowh_h = new(ntimes,float);rhh = new(ntimes,float);******************************* time loopdo it = 0, ntimes-1                 time = it ;************************************************do ip = 0, 18             ;loop for number of station locationsip_lats = (/ 27.3081, 27.6331,	27.86,	27.959167, \          27.696667, 27.8024,	27.8953, 27.99,	27.9818, \             27.90506667, 27.89671667, 27.901, 27.8987, \          27.89261111, 27.87828333, 27.85911111, \          27.60111, 27.74661, 27.85722 /)ip_lons = (/ 86.5042, 86.2331, 86.46, 86.81278, 86.721389, 86.7144, \           86.8188, 86.83, 86.7649, 86.37536667, 86.37428333, 86.37625, 86.37911667, \	   86.37594444,	86.43361667, 86.43388889, 86.74028, 86.713, 86.79417 /)res = True      res at returnInt = True point = wrf_user_ll_to_ij(a, ip_lons(ip), ip_lats(ip), True)x = point(0) - 1y = point(1) - 1                   tc2 = wrf_user_getvar(a,"T2",it)       ; temp extractiontc2 = tc2 -273.16temp(it) = tc2(y,x) ; temperature extraction for station locationrain_exp = wrf_user_getvar(a,"RAINNC",it) rain_con = wrf_user_getvar(a,"RAINC",it) rain_expp(it) = rain_exp(y,x)rain_conn(it) = rain_con(y,x)rain_tot(it) = rain_exp(y,x) + rain_con(y,x)u10 = wrf_user_getvar(a,"U10",it)    ; u at 10 m, mass pointv10 = wrf_user_getvar(a,"V10",it)    ; v at 10 m, mass pointwspd(it) = ndtooned( sqrt(u10(y,x)^2 + v10(y,x)^2) )wdir(it) = ndtooned( atan2(u10(y,x),v10(y,x))/0.01745329 +180. ) snow_eq = wrf_user_getvar(a,"SNOW",it)snow_h = wrf_user_getvar(a,"SNOWH",it)snoww_eq(it) = snow_eq(y,x)snowh_h (it) = snow_h(y,x)end do    ; end of station loopend do    ; end of time loop    npts=ntimes    fName = ip+"T2oben_1kmtemp_rainnonc_rainc_raintot_wspd_wdir_snow_snowh.txt"    data  = new( npts, "string")       ;print(" Time temp ")   do  ip = 0, 18    do it = 0,ntimes-1 ;ntimes-1    data (it)= (sprintf("%5.0f",it)    +" " \          +sprintf("%21.2f", temp(it)) +"  " \          +sprintf("%22.2f", rain_expp(it)) +"  " \          +sprintf("%23.2f", rain_conn(it)) +"  " \          +sprintf("%24.2f", rain_tot(it)) +"  " \          +sprintf("%17.2f", wspd(it)) +"  " \           +sprintf("%25.2f", wdir(it)) +"  " \           +sprintf("%18.2f", snoww_eq(it)) +"  " \          +sprintf("%19.2f", snowh_h(it)) +"  " )end do end do                     ; end of time loop
 asciiwrite (fName , data)
end

 		 	   		  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20160507/fa1cbb3e/attachment.html 


More information about the ncl-talk mailing list