[ncl-talk] problems with loop
Vanúcia Schumacher
vanucia-schumacher at hotmail.com
Mon Jun 26 08:55:50 MDT 2017
Hi NCL users,
I need to calculate a variable based on a parameter that varies with time.
For the first year the value of the parameter is 0.7
For the second year the parameter is 0.4
For the third year onwards the parameter is 0.3
So I must multiply the variable with the value of the parameter and I want to get a new variable with all the coordinates (time, lat and lon), but I'm having the variable only with lat and lon and getting the following warning:
warning:VarVarWrite: rhs has no coordinate variable for dimension number (0), destroying coordinate var, use "(/../)" if this is not desired outcome
warning:["Execute.c":8640]:Execute: Error occurred at or near line 17 in file test.ncl
My script:
( here in this test, my time is 3 days (average from 12 files), so the parameter is varying for 1 day = 0.7, 2 day = 0.4, and 3 day =0.3
files = systemfunc("ls -1 wrfout_d01_*") + ".nc"
a = addfiles(files,"r")
nfiles = dimsizes(files)
do k = 0,nfiles-1
rad = wrf_user_getvar(a[k],"SWDDNI",-1)
rad&Time = wrf_times_c(a[k]->Times, 0)
Rad_in = calculate_daily_values(rad, "avg", 0, False)
times = wrf_user_getvar(a[k],"times",-1)
ntimes = dimsizes(times)
do i = 0, ntimes-1
if (i.lt.2) then
alb = 0.7*Rad_in(i,:,:)
end if
if (i.gt.2.and.i.lt.3) then
alb = 0.4*Rad_in(i,:,:)
end if
if (i.gt.3) then
alb = 0.3*Rad_in(i,:,:)
end if
end do
end do
Variable: nfiles
Type: integer
Total Size: 4 bytes
1 values
Number of Dimensions: 1
Dimensions and sizes: [1]
Coordinates:
(0) 12
Variable: rad
Type: float
Total Size: 5600 bytes
1400 values
Number of Dimensions: 3
Dimensions and sizes: [Time | 1] x [south_north | 50] x [west_east | 28]
Coordinates:
Number Of Attributes: 6
coordinates : XLONG XLAT
stagger :
units : W/m^2
description : Shortwave surface downward direct normal irradiance
MemoryOrder : XY
FieldType : 104
Variable: Rad_in
Type: float
Total Size: 5600 bytes
1400 values
Number of Dimensions: 3
Dimensions and sizes: [Time | 1] x [south_north | 50] x [west_east | 28]
Coordinates:
Time: [ 0.. 0]
Number Of Attributes: 9
NCL_tag : calculate_daily_values: arith=avg
Time : 0
FieldType : 104
MemoryOrder : XY
description : Shortwave surface downward direct normal irradiance
units : W/m^2
stagger :
coordinates : XLONG XLAT
_FillValue : 9.96921e+36
Variable: ntimes
Type: integer
Total Size: 4 bytes
1 values
Number of Dimensions: 1
Dimensions and sizes: [1]
Coordinates:
(0) 1
Variable: alb
Type: float
Total Size: 5600 bytes
1400 values
Number of Dimensions: 2
Dimensions and sizes: [50] x [28]
Coordinates:
Number Of Attributes: 1
_FillValue : 9.96921e+36
Is there any other way I can do this? Thanks any help
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20170626/383d9998/attachment.html
More information about the ncl-talk
mailing list