[Thread Prev][Thread Next][Index]
Re: [ferret_users] How to combine files ???
Hi Jaison,
Thank you for your reply.
The method works fine. But, there is one missing
value at each file boundaries in the combined
netcdf file. See the following table. The individual
files have values for all latitudes but one value
is missing in the combined netcdf file at each file boundaries.
2-Individual files combined netcdf file.
=================== ====================
22.5S / 8: -1.403 ----> 22.5S / 24: ....
25.3S / 7: -0.184 25.3S / 23: -0.18
28.1S / 6: 0.336 28.1S / 22: 0.34
30.9S / 5: 0.789 30.9S / 21: 0.79
33.8S / 4: 1.653 33.7S / 20: 1.65
36.6S / 3: 3.538 36.6S / 19: 3.54
39.4S / 2: 5.956 39.4S / 18: 5.96
42.2S / 1: 7.314 42.2S / 17: 7.31
45S / 8: 8.121 ----> 45S / 16: ....
47.8S / 7: 7.605 47.8S / 15: 7.60
50.6S / 6: 6.409 50.6S / 14: 6.41
53.4S / 5: 5.032 53.4S / 13: 5.03
56.2S / 4: 3.785 56.2S / 12: 3.79
59.1S / 3: 2.822 59.1S / 11: 2.82
61.9S / 2: 2.421 61.9S / 10: 2.42
64.7S / 1: 3.052 64.7S / 9: 3.05
The steps I used are here,
yes? use snapshots.000051.01.01.dta.nc.0000
yes? define axis/y=-87.187:90.:2.8125/units=latitudes ylat
yes? let u_model = u[d=1,gy=ylat]
yes? sp rm n1n.nc
yes? save/file=n1n.nc/JLIMITS=1:64/J=1:8/clobber u_model
yes? cancel data 1
yes? use snapshots.000051.01.01.dta.nc.0001
yes? let u_model = u[d=1,gy=ylat]
yes? save/file=n1n.nc/J=9:16/append u_model
.... and so on.
NOTE
The missing value fills correctly when I use @nrst regridding
mode. i.e. let u_model = u[d=1,gy=ylat@nrst]
So, is that necessary to put @nrst on regridding?
Thanks in advance,
-Vinu
On Wed, 2006-10-04 at 22:09 +0530, Jaison Kurian wrote:
> Hi Vinu,
> If you want to combine the NetCDF files decomposed
> on latitude, then (assuming the individual NetCDF files are
> on proper latitude axis)
>
> 1. define the destination latitude axis
>
> yes? define axis/y=-90:90:1/units=latitudes ylat ! 181 points
>
> 2 Assign the destination grid to the variables as follows,
>
> yes? let temp_1 = temp[d=1,gy=ylat]
>
> 3 Identify the start and end J, on 'ylat' axis, according
> to each input NetCDF file (ie. from first processor
> owards). Let it be J=1:20, then open a new file as
>
> yes? sp rm -f ncout.nc
> yes? save/file=ncout.nc/JLIMITS=1:181/J=1:20/CLOBBER temp_1
>
> 4 Close the first input file. Open the second input file then,
> (assuming J for this file is 21:40)
>
> yes? cancel data 1
> yes? set data inputncfile2.nc.0001
> yes? let temp_1 = temp[d=1,gy=ylat]
> yes? save/file=ncout.nc/J=21:40/APPEND temp_1
>
> 5 Repeat step 4 for other remaining input files.
>
> If the number of input files and variables in each input files
> are large, this method is not at all feasible. In this case you
> can try using the mppnccombine.c distributed with MOM4p0 code,
> (https://fms.gfdl.noaa.gov/) from GFDL. Which is fairly complex
> enough to handle a wide range of input files. But you may have
> to modify it, to suit for your input files.
>
> Hope this helps,
>
> Regards,
>
> Jaison
>
> On Wed, 4 Oct 2006, Vinu K. V. wrote:
>
> > Hi Ferreters,
> >
> > A parallel run produces out put as pieces (netcdf),
> > each file contains a portion of latitude. How can one combine
> > this individual files into one single file of entire
> > latitudes ?
> >
> > For example,
> >
> > 10 files are produced, each file containing output
> > for a portion of latitudes, say, -90 to -80, -80 to -70 and so on.
> >
> > I have tried save/file=my_file.nc/append over a dummy
> > file, whose grid is defined for entire globe, but didnt work.
> >
> > I suppose there are other methods exist in Ferret to
> > do this properly.
> >
> >
> > Please help me to find a solution. Thanks in advance
> >
> > -Vinu
> >
[Thread Prev][Thread Next][Index]
Dept of Commerce /
NOAA /
OAR /
PMEL /
TMAP
Contact Us | Privacy Policy | Disclaimer | Accessibility Statement