Hi Jake,
Instead of using DODSNetcdfFile directly, try using the
NetcdfFile.open(...) method.
There are some examples of reading data in the NetCDF-Java tutorial:
http://www.unidata.ucar.edu/software/netcdf-java/tutorial/
In particular, see the NetcdfFile section:
http://www.unidata.ucar.edu/software/netcdf-java/tutorial/NetcdfFile.html
which describes a few ways that subsets of data can be read.
Hope that helps,
Ethan
On 10/20/2011 9:17 PM, Jake Sheck wrote:
>
> UCAR NetCDF mail group,
>
> I am working on acquiring small amounts of GFS, NAM and RUC data
> from nomads.ncdc.noaa.gov. As a test I am trying to collect
>Temperature variable for a particular point. I can easily acquire
> this data via my web browser with this link.
>
http://nomads.ncdc.noaa.gov/thredds/dodsC/ruc13/201110/20111018/ruc2_130_20111018_1300_000.grb2.asc?Temperature[0][2][100][300]
>
> I would like to collect this variable via the netcdf java library.
> However I can't seem to find documentation on the correct use of the
> dimensions variables in the readSection or readArrays methods of the
> DODSNetcdfFile. Could anyone please direct me to documentation for
> these? I have found that even when I specifiy dimenions for a variable
> it still downloads the complete grid and takes much longer than the link
> above.
>
> Here is an example of what I am trying to do.
>
> String modelFile =
> "http://nomads.ncdc.noaa.gov/thredds/dodsC/ruc13/201110/20111018/ruc2_130_20111018_1300_000.grb2";
> DODSNetcdfFile ncfile = new DODSNetcdfFile( modelFile );
>
> Dimension time = new Dimension("time", 1);
> Dimension pressure = new Dimension("pressure",1);
> Dimension xd = new Dimension("x", 126);
> Dimension yd = new Dimension("y", 557);
>
> List<Dimension> ds = new ArrayList<Dimension>();
> ds.add(time);
> ds.add(pressure);
> ds.add(xd);
> ds.add(yd);
>
> for(Variable v : ncfile.getVariables()){
> if(v.getName.equals("Temperature_height_above_ground"))
> preloadVariables.add(v);
> }
>
>
> List<Array> arrays = ncfile.readArrays( preloadVariables );
>
> Here I get the variable for temperature, but I get the whole set, and
> not a set limited by the dimensions that I set.
>
> Thanks
> Jacob Sheck