Ola
There are several issues:
[1] The version of NCL you have has the skewT data arguments
prototyped as 'float'. The reason for this is that the
"wmbarb" function used by skewT is prototyped as 'float'.
The raob data you are passing is type 'double'.
NCL will not automatically convert a double to float (coerce).
Hence, the "type mismatch". It becomes the user responsibility
to perform the conversion ( tofloat ).
[2] The first rule of data processing is to 'look at your data.'
%> ncdump -h CHUVA_VARS_FOR_INM.nc
inetcdf CHUVA_VARS_FOR_INM {
dimensions:
time = 36 ;
levelist = 1021 ;
variables:
int time(time) ;
time:units = "hours since 2011-04-08 18:00:00" ;
time:long_name = "time" ;
int levelist(levelist) ;
levelist:units = "millibars" ;
levelist:long_name = "pressure_level" ;
double hght(time, levelist) ;
hght:long_name = "Height " ;
hght:units = "meters" ;
hght:location_id = "INM" ;
hght:lon = -38.54 ;
hght:lat = -3.82 ;
[SNIP]
There is no indication of missing or bogus values via
the _FillValue attribute or the missing_value attribute.
However, if you perform a simple ncdump of selected variables
%> ncdump -v levelist,temp,uwnd CHUVA_VARS_FOR_INM.nc | less
you would see
[SNIP]
data:
levelist = 1020, 1019, 1018, 1017, 1016, 1015, 1014, 1013, 1012, 1011,
1010,
1009, 1008, 1007, 1006, 1005, 1004, 1003, 1002, 1001, 1000, 999, 998,
997, 996, 995, 994, 993, 992, 991, 990, 989, 988, 987, 986, 985, 984,
[SNIP]
29, 28, 27, 26, 25, 24, 23, 22, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12,
11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 ;
temp =
NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN,
NaN,
NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, 28.3,
28.3714285714286, 28.24, 28.14, 28.06, 28, 28, 27.9, 27.8230769230769,
27.7583333333333, 27.6583333333333, 27.55, 27.4, 27.3916666666667,
27.2916666666667, 27.1, 27.0466666666667, 27.0166666666667, 26.9,
---
NaN's are not recognized by NCL. It is the user responsibility to
fix this. Please read the function descriptions for:
isnan_ieee and replace ieeenan
; local function
undef("fix_NaN")
function fix_NaN(x:numeric)
begin
if (any(isnan_ieee(x))) then
if (typeof(x).eq."double") then
value = 1d20
else
value = 1e20
end if
replace_ieeenan (x, value, 0)
x@_FillValue = value
return(x)
end if
end
;-------------------------------------
begin
; Let's read the data
datadir = "/media/LIN_EXT/Datasets/CHUVA/fortaleza/radiossondas/netcdf"
flslist = systemfunc("ls " + datadir + "/CHUVA_VARS_FOR_*.nc")
print(flslist)
chuvars = addfiles(flslist,"r")
ListSetType(chuvars,"join")
; Setting up variables, time averaging
p = tofloat(chuvars[0]->levelist) ; no NaN
z = tofloat(dim_avg_n(fix_NaN(chuvars[0]->hght),0))
t = tofloat(dim_avg_n(fix_NaN(chuvars[0]->temp),0))
d = tofloat(dim_avg_n(fix_NaN(chuvars[0]->dewp),0))
q = tofloat(dim_avg_n(fix_NaN(chuvars[0]->shum),0))
u = tofloat(dim_avg_n(fix_NaN(chuvars[0]->uwnd),0))
v = tofloat(dim_avg_n(fix_NaN(chuvars[0]->vwnd),0))
[snip]
Good luck
On 12/31/12 5:33 AM, Paulo Santiago wrote:
> Dear Dennis Shea,
>
> Thank you for your response.
>
> I put the .nc files into the FTP server following your instructions.
>
> Since I received "500 Illegal PORT command." messages after each "put"
> command, I'm not sure the transfer ocurred sucessfully.
>
>
> Cheers,
>
> Paulo Santiago
>
>
> 2012/12/30 Dennis Shea <shea@ucar.edu>
>
>> ncl-talk@ucar.edu
>
>
>
>
_______________________________________________
ncl-talk mailing list
List instructions, subscriber options, unsubscribe:
http://mailman.ucar.edu/mailman/listinfo/ncl-talk
Received on Wed Jan 2 13:10:44 2013
This archive was generated by hypermail 2.1.8 : Fri Jan 04 2013 - 15:29:49 MST