[netcdf-java] appending data to the unlimited dimension

John Caron caron at unidata.ucar.edu
Mon Nov 5 15:11:04 MST 2007


Hi John:

You dont want to have to read the data in order to write the next time step.

Have a look at this example and let me know if that clarifies things:

  http://www.unidata.ucar.edu/software/netcdf-java/tutorial/NetcdfWriteable.html#RecordAtaTime



John Cartwright wrote:
> Hello All,
> 
> I have a question very similar to Chris' regarding appending data to a 
> previously created file.  I have a simple 3D file w/ longitude,latitude, 
> and time as the dimensions.  Time is the unlimited dimension.  I'm 
> having a little trouble getting my array indices correct in the program 
> that appends the data.  Do the x,y elements of the origins array need to 
> be incremented as well?  The code below does not seem to increment the 
> timestep. Can someone help me out w/ what I'm doing wrong?
> 
> Thanks!
> 
> -- john
> 
>       //add some data (1 days worth)
>       Variable time = ncfile.findVariable("time");
>       ArrayInt.D1 timeData = (ArrayInt.D1)time.read();
>       timeData.set(timeDim.getLength()-1, daysSinceEpoch);
>       ncfile.write("time", timeData);
> 
>       Variable atmp = ncfile.findVariable("atmp");
>       int[] origin = new int[3];
>       origin[0] = ncfile.findDimension("time").getLength() -1;
>       ArrayInt.D3 atmpData = (ArrayInt.D3)atmp.read();
>       int time_idx = timeDim.getLength()-1;
>       //generate a grid of dummy data to append at the new timestep
>       int counter = 0;
>       for (int lat_idx = 0; lat_idx < latDim.getLength(); lat_idx++) {
>          for (int lon_idx = 0; lon_idx < lonDim.getLength(); lon_idx++) {
>               atmpData.set(time_idx, lat_idx, lon_idx, counter);
>               counter++;
>          }
>       }
>       ncfile.write("atmp", origin, atmpData);
> 
> _______________________________________________
> netcdf-java mailing list
> netcdf-java at unidata.ucar.edu
> For list information or to unsubscribe, visit: http://www.unidata.ucar.edu/mailing_lists/ 


More information about the netcdf-java mailing list