Dear Dr. Dennis;
Thanks for your reply. The following is detailed error comment:
Copyright (C) 1995-2011 - All Rights Reserved
University Corporation for Atmospheric Research
NCAR Command Language Version 6.0.0
The use of this software is governed by a License Agreement.
See http://www.ncl.ucar.edu/ for more details.
(0) Here we go! Tue Dec 13 08:06:35 TST 2011
(0) Reading the data...
fatal:NclMalloc Failed:[errno=12]
fatal:Could not coerce values for operation
fatal:Execute: Error occurred at or near line 1696 in file $NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl
fatal:Execute: Error occurred at or near line 33 in file test1.ncl
>You should send the output from print(dataShort)
I can not send it completely here because dataShort are from "olr.day.mean.nc", it is very big file, but the beginning part of the output is
Variable: dataShort
Type: short
Total Size: 249870240 bytes
124935120 values
Number of Dimensions: 3
Dimensions and sizes: [time | 11885] x [lat | 73] x [lon | 144]
Coordinates:
time: [17338824..17624040]
lat: [90..-90]
lon: [ 0..357.5]
Number Of Attributes: 15
long_name : Daily OLR
unpacked_valid_range : ( 0, 500 )
actual_range : ( 94.5, 328.25 )
units : W/m^2
add_offset : 327.65
scale_factor : 0.01
missing_value : 32766
var_desc : Outgoing Longwave Radiation
precision : 2
dataset : NOAA Interpolated OLR
level_desc : Other
statistic : Mean
parent_stat : Individual Obs
valid_range : ( -32765, 17235 )
_FillValue : 32766
(0,0,0) -17090
(0,0,1) -17090
(0,0,2) -17090
(0,0,3) -17090
(0,0,4) -17090
(0,0,5) -17090
(0,0,6) -17090
(0,0,7) -17090
(0,0,8) -17090
(0,0,9) -17090
........
Thanks again for best help.
Regards,
Juky
> inFile = addfile( fileName, "r" )
> obsPerDay = 1
>
>
> ; find our times
> time = inFile->time
> filtStart = ut_inv_calendar( 1979, 01, 01, 0, 0, 0, time_at_units, 0)
> filtEnd = max(time)
> startDate = filtStart + 192 * 24
> endDate = filtEnd - 192 * 24
>
> ; read in the unfiltered data
> print( "Reading the data..." )
> dataShort = inFile->olr({filtStart:filtEnd},:,:)
________________________________
From: Dennis Shea <shea_at_ucar.edu>
To: juki juki <juky_emc2_at_yahoo.com>
Cc: "ncl-talk_at_ucar.edu" <ncl-talk_at_ucar.edu>
Sent: Monday, December 12, 2011 11:40 PM
Subject: Re: convert nc file in sigma to pressure level
There is not enough information.
Not sure what "[errno=12] is.
> ;print(dataShort)
> data = short2flt( dataShort )
You should send the output from
print(dataShort)
On 12/11/11 10:45 PM, juki juki wrote:
> Hi Dr. Dennis;
>
> I want to read the OLR data with the following code:
>
> 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"
>
>
> begin
>
> print( "Here we go! " + systemfunc( "date" ) )
>
> mis = -999
> mis@_FillValue = -999
>
> ; open the file
>
> fileName = "olr.day.mean.nc"
> inFile = addfile( fileName, "r" )
> obsPerDay = 1
>
>
> ; find our times
> time = inFile->time
> filtStart = ut_inv_calendar( 1979, 01, 01, 0, 0, 0, time_at_units, 0)
> filtEnd = max(time)
> startDate = filtStart + 192 * 24
> endDate = filtEnd - 192 * 24
>
> ; read in the unfiltered data
> print( "Reading the data..." )
> dataShort = inFile->olr({filtStart:filtEnd},:,:)
> ;print(dataShort)
> data = short2flt( dataShort )
>
> ; ......many more
> end
>
> the code stop at data = short2flt( dataShort ), with the [errno=12]. I
> am working in cygwin, could you suggest some help ?
>
>
> thanks very much
> Juky
>
>
>
>
> ------------------------------------------------------------------------
> *From:* Dennis Shea <shea_at_ucar.edu>
> *To:* Coly SAR <colysar_at_gmail.com>
> *Cc:* ncl-talk_at_ucar.edu
> *Sent:* Sunday, September 4, 2011 11:21 PM
> *Subject:* Re: [ncl-talk] convert nc file in sigma to pressure level
>
> Not sure what to say. See Example 2 at
> http://www.ncl.ucar.edu/Applications/vert_interp.shtml
> or Example 5 at
> http://www.ncl.ucar.edu/Document/Functions/Built-in/vinth2p.shtml
>
> ===========================================
> You *MUST* have the surface pressure.
>
> Here is an excerpt:
>
> f = addfile(....)
> t = f->t
> ps= f->ps ; sfc pressure [hPa or Pa]
>
> sigma = f->sigma
> or
> sigma = t&lev
>
> dimt = dimsizes(t)
> ntim = dimt(0)
> ksig = dimt(1)
> nlat = dimt(2)
> mlon = dimt(3)
>
> ;***************************************************
> ; interpolate to pressure levels
> ;***************************************************
> plevs = (/1000,925, 850, 800, 700, 600, 500, 300 \
> , 200, 250, 200, 150, 100/)*1.0
> plevs_at_units = "hPa"
>
> if (ps_at_units.eq <mailto:ps_at_units.eq>."Pa" .or. ps_at_units.eq
> <mailto:ps_at_units.eq>."Pascals") then
> ps = ps*0.01
> ps_at_units = "hPa"
> end if
>
> hyam = fspan(0.,0.,ksig-1) ; create fake hyba array
> hybm = sigma
>
> tp = vinth2p(t,hyam,hybm,plevs,ps,1,1000,1,True)
> printVarSummary(tp)
>
>
> On 9/4/11 5:00 AM, Coly SAR wrote:
> > Below is the structure of the file i am trying to convert in pressure
> > levels. It 18 sigma levels and I want to have at standard pressure
> > levels : 1000 925 850 800 700 600 500 300 200 250 200 150 100
> >
> > CS
> >
> > netcdf atm99 {
> > dimensions:
> > lon = 190 ;
> > lat = 106 ;
> > lev = 18 ;
> > time = UNLIMITED ; // (124 currently)
> > variables:
> > double lon(lon) ;
> > lon:long_name = "longitude" ;
> > lon:units = "degrees_east" ;
> > lon:standard_name = "longitude" ;
> > lon:axis = "X" ;
> > double lat(lat) ;
> > lat:long_name = "latitude" ;
> > lat:units = "degrees_north" ;
> > lat:standard_name = "latitude" ;
> > lat:axis = "Y" ;
> > double lev(lev) ;
> > lev:long_name = "generic" ;
> > lev:units = "level" ;
> > lev:axis = "Z" ;
> > double time(time) ;
> > time:units = "hours since 1999-01-01 06:00:00" ;
> > time:calendar = "standard" ;
> > float u(time, lev, lat, lon) ;
> > u:long_name = "westerly wind (m/s)" ;
> > u:_FillValue = -1.e+34f ;
> > float v(time, lev, lat, lon) ;
> > v:long_name = "southerly wind (m/s)" ;
> > v:_FillValue = -1.e+34f ;
> > float w(time, lev, lat, lon) ;
> > w:long_name = "omega (hPa/s) p-velocity" ;
> > w:_FillValue = -1.e+34f ;
> > float t(time, lev, lat, lon) ;
> > t:long_name = "air temperature (degree)" ;
> > t:_FillValue = -1.e+34f ;
> >
> >
> > 2011/9/3 Coly SAR <colysar_at_gmail.com <mailto:colysar_at_gmail.com>
> <mailto:colysar_at_gmail.com <mailto:colysar_at_gmail.com>>>
> >
> >
> > It is essentially interpolating sigma levels at selected constant
> > pressure
> > levels and write it to a new nc file having pressure levels.
> >
> > CS
> >
> >
> > 2011/9/3 Dennis Shea <shea_at_ucar.edu <mailto:shea_at_ucar.edu>
> <mailto:shea_at_ucar.edu <mailto:shea_at_ucar.edu>>>
> >
> > This questions is a bit ambiguous. Are you talking about calculating
> > the pressure at each level and grid point or interpolating
> > sigm to constant pressure levels?
> >
> > See Example 2 at:
> > http://www.ncl.ucar.edu/__Applications/vert_interp.shtml
> > <http://www.ncl.ucar.edu/Applications/vert_interp.shtml>
> >
> > It shows how to do both.
> >
> >
> > 9/3/11 7:37 AM, Coly SAR wrote:
> >
> > Dear NCL users,
> > I have model output in netcdf with sigma levels and want to
> > convert
> > from sigma to pressure and wondering if a such
> > routine or script is available in ncl.
> >
> > CS
> >
> >
> > _________________________________________________
> > ncl-talk mailing list
> > List instructions, subscriber options, unsubscribe:
> > http://mailman.ucar.edu/__mailman/listinfo/ncl-talk
> > <http://mailman.ucar.edu/mailman/listinfo/ncl-talk>
> >
> >
> >
> >
> >
> > _______________________________________________
> > ncl-talk mailing list
> > List instructions, subscriber options, unsubscribe:
> > http://mailman.ucar.edu/mailman/listinfo/ncl-talk
> _______________________________________________
> ncl-talk mailing list
> List instructions, subscriber options, unsubscribe:
> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>
>
_______________________________________________
ncl-talk mailing list
List instructions, subscriber options, unsubscribe:
http://mailman.ucar.edu/mailman/listinfo/ncl-talk
Received on Mon Dec 12 16:14:11 2011
This archive was generated by hypermail 2.1.8 : Fri Dec 16 2011 - 10:27:49 MST