NOTICE: This version of the NSF Unidata web site (archive.unidata.ucar.edu) is no longer being updated.
Current content can be found at unidata.ucar.edu.

To learn about what's going on, see About the Archive Site.

[netcdf-java] problem getting axistype

Hi,

I am trying to read data from a netcdf file. But I am getting an "java.lang.IllegalArgumentException: Illegal axis type null" error message.

Our application java code is as follows:

       AxisType axisType = axis1D.getAxisType();
if (axisType == AxisType.Lon || axisType == AxisType.Lat ||
           axisType == AxisType.GeoX || axisType == AxisType.GeoY)
       {
           OneDCoordAxis theAxis = null;
           if (axis1D.isRegular())
           {
               theAxis = new Regular1DCoordAxis(axis1D.getStart(),
                   axis1D.getIncrement(), (int)axis1D.getSize(), axisType);
           }
           else
           {
theAxis = new Irregular1DCoordAxis(axis1D.getCoordValues(), axisType);
           }
           return theAxis;
       }
       else
       {
throw new IllegalArgumentException("Illegal axis type " + axisType);
       }

I have attached the dataset metadata. Could you please advise?

Cheers,

Adit

netcdf  {
 dimensions:
   x = 609;
   y = 881;
   depth = 12;
   time = 717;
 variables:
   int polar_stereographic;
     :grid_mapping_name = "polar_stereographic";
     :latitude_of_projection_origin = 90.0; // double
     :longitude_of_projection_origin = 45.0; // double
     :scale_factor_at_projection_origin = 1.0; // double
     :false_easting = 0.0; // double
     :false_northing = 0.0; // double
   float x(x=609);
     :axis = "X";
     :standard_name = "projection_x_coordinate";
     :units = "100  km";
   float y(y=881);
     :standard_name = "projection_y_coordinate";
     :axis = "Y";
   float depth(depth=12);
     :long_name = "depth";
     :units = "m";
     :valid_range = 0.0, 3001.0; // double
     :standard_name = "depth";
     :positive = "down";
     :axis = "Z";
   int time(time=717);
     :units = "secs since 1970-01-01 00:00:00";
     :long_name = "forecast time";
     :_CoordinateAxisType = "time";
   float longitude(y=881, x=609);
     :_CoordinateAxes = "y x ";
     :units = "degrees";
     :valid_range = -180.0, 180.0; // double
     :long_name = "longitude";
     :missing_value = -1.0E14; // double
   float latitude(y=881, x=609);
     :_CoordinateAxes = "y x ";
     :units = "degrees";
     :valid_range = -90.0, 90.0; // double
     :standard_name = "latitude";
     :long_name = "latitude";
     :missing_value = -1.0E14; // double
   float model_depth(y=881, x=609);
     :_CoordinateAxes = "longitude latitude y x ";
     :units = "meters";
     :valid_range = 0.0, 9000.0; // double
     :long_name = "model_depth";
     :missing_value = -1.0E14; // double
     :standard_name = "sea_floor_depth_below_sea_level";
     :coordinates = "longitude latitude";
   double fwflux(y=881, x=609);
     :_CoordinateAxes = "longitude latitude y x ";
     :missing_value = -32767s; // short
     :_FillValue = -32767.0; // double
     :long_name = "Freshwater flux into ocean";
     :units = "kg m-2 s-1";
     :standard_name = "water_flux_into_ocean";
     :grid_mapping = "polar_stereographic";
     :coordinates = "longitude latitude";
     :cell_methods = "lat: lon: time: mean";
   double temperature(time=717, depth=12, y=881, x=609);
     :_CoordinateAxes = "longitude latitude time depth y x ";
     :missing_value = -32767s; // short
     :_FillValue = -32767.0; // double
     :long_name = "Potential temperature of sea water";
     :units = "degrees_celsius";
     :standard_name = "sea_water_potential_temperature";
     :grid_mapping = "polar_stereographic";
     :coordinates = "longitude latitude";
     :cell_methods = "lat: lon: time: mean";
   double salinity(time=717, depth=12, y=881, x=609);
     :_CoordinateAxes = "longitude latitude time depth y x ";
     :missing_value = -32767s; // short
     :_FillValue = -32767.0; // double
     :long_name = "Salinity of sea water";
     :units = "psu";
     :standard_name = "sea_water_salinity";
     :grid_mapping = "polar_stereographic";
     :coordinates = "longitude latitude";
     :cell_methods = "lat: lon: time: mean";
   double u(time=717, depth=12, y=881, x=609);
     :_CoordinateAxes = "longitude latitude time depth y x ";
     :missing_value = -32767s; // short
     :_FillValue = -32767.0; // double
     :long_name = "X velocity component of sea water";
     :units = "m s-1";
     :standard_name = "x_sea_water_velocity";
     :grid_mapping = "polar_stereographic";
     :coordinates = "longitude latitude";
     :cell_methods = "lat: lon: time: mean";
   double v(time=717, depth=12, y=881, x=609);
     :_CoordinateAxes = "longitude latitude time depth y x ";
     :missing_value = -32767s; // short
     :_FillValue = -32767.0; // double
     :long_name = "Y velocity component of sea water";
     :units = "m s-1";
     :standard_name = "x_sea_water_velocity";
     :grid_mapping = "polar_stereographic";
     :coordinates = "longitude latitude";
     :cell_methods = "lat: lon: time: mean";
   double ssh(time=717, y=881, x=609);
     :_CoordinateAxes = "longitude latitude time y x ";
     :missing_value = -32767s; // short
     :_FillValue = -32767.0; // double
     :long_name = "Sea Surface height";
     :units = "m";
     :standard_name = "sea_surface_elevation";
     :grid_mapping = "polar_stereographic";
     :coordinates = "longitude latitude";
     :cell_methods = "lat: lon: time: mean";
   double bsfd(time=717, y=881, x=609);
     :_CoordinateAxes = "longitude latitude time y x ";
     :missing_value = -32767s; // short
     :_FillValue = -32767.0; // double
     :long_name = "Barotropic Streamfunction of the ocean";
     :units = "m3 s-1";
     :standard_name = "ocean_barotropic_streamfunction";
     :grid_mapping = "polar_stereographic";
     :coordinates = "longitude latitude";
     :cell_methods = "lat: lon: time: mean";
   double mlp(time=717, y=881, x=609);
     :_CoordinateAxes = "longitude latitude time y x ";
     :missing_value = -32767s; // short
     :_FillValue = -32767.0; // double
     :long_name = "Density Defined Mixed Layer Depth";
     :units = "m";
     :standard_name = "ocean_mixed_layer_thickness";
     :grid_mapping = "polar_stereographic";
     :coordinates = "longitude latitude";
     :cell_methods = "lat: lon: time: mean";
   double taux(time=717, y=881, x=609);
     :_CoordinateAxes = "longitude latitude time y x ";
     :missing_value = -32767s; // short
     :_FillValue = -32767.0; // double
     :long_name = "Area averaged x-component of atmospheric stress";
     :units = "pascal";
     :standard_name = "surface_downward_x_stress";
     :grid_mapping = "polar_stereographic";
     :coordinates = "longitude latitude";
     :cell_methods = "lat: lon: time: mean";
   double tauy(time=717, y=881, x=609);
     :_CoordinateAxes = "longitude latitude time y x ";
     :missing_value = -32767s; // short
     :_FillValue = -32767.0; // double
     :long_name = "Area averaged y-component of atmospheric stress";
     :units = "pascal";
     :standard_name = "surface_downward_y_stress";
     :grid_mapping = "polar_stereographic";
     :coordinates = "longitude latitude";
     :cell_methods = "lat: lon: time: mean";
   double tauxice(time=717, y=881, x=609);
     :_CoordinateAxes = "longitude latitude time y x ";
     :missing_value = -32767s; // short
     :_FillValue = -32767.0; // double
     :long_name = "Area averaged x-component of ice stress on ocean";
     :units = "pascal";
     :standard_name = "downward_x_stress_at_sea_ice_base";
     :grid_mapping = "polar_stereographic";
     :coordinates = "longitude latitude";
     :cell_methods = "lat: lon: time: mean";
   double tauyice(time=717, y=881, x=609);
     :_CoordinateAxes = "longitude latitude time y x ";
     :missing_value = -32767s; // short
     :_FillValue = -32767.0; // double
     :long_name = "Area averaged y-component of ice stress on ocean";
     :units = "pascal";
     :standard_name = "downward_y_stress_at_sea_ice_base";
     :grid_mapping = "polar_stereographic";
     :coordinates = "longitude latitude";
     :cell_methods = "lat: lon: time: mean";
   double qtot(time=717, y=881, x=609);
     :_CoordinateAxes = "longitude latitude time y x ";
     :missing_value = -32767s; // short
     :_FillValue = -32767.0; // double
     :long_name = "Net heat flux into ocean";
     :units = "w m-2";
     :standard_name = "surface_downward_heat_flux_in_sea_water";
     :grid_mapping = "polar_stereographic";
     :coordinates = "longitude latitude";
     :cell_methods = "lat: lon: time: mean";
   double qtotair(time=717, y=881, x=609);
     :_CoordinateAxes = "longitude latitude time y x ";
     :missing_value = -32767s; // short
     :_FillValue = -32767.0; // double
     :long_name = "Net surface atmospheric heat flux";
     :units = "w m-2";
     :standard_name = "surface_downward_heat_flux_in_air";
     :grid_mapping = "polar_stereographic";
     :coordinates = "longitude latitude";
     :cell_methods = "lat: lon: time: mean";
   double qsw(time=717, y=881, x=609);
     :_CoordinateAxes = "longitude latitude time y x ";
     :missing_value = -32767s; // short
     :_FillValue = -32767.0; // double
     :long_name = "Net surface shortwave heat flux";
     :units = "w m-2";
     :standard_name = "net_downward_shortwave_flux_in_air";
     :grid_mapping = "polar_stereographic";
     :coordinates = "longitude latitude";
     :cell_methods = "lat: lon: time: mean";
   double fice(time=717, y=881, x=609);
     :_CoordinateAxes = "longitude latitude time y x ";
     :missing_value = -32767s; // short
     :_FillValue = -32767.0; // double
     :long_name = "Sea Ice Concentration";
     :units = "";
     :standard_name = "sea_ice_area_fraction";
     :grid_mapping = "polar_stereographic";
     :coordinates = "longitude latitude";
     :cell_methods = "lat: lon: time: mean";
   double hice(time=717, y=881, x=609);
     :_CoordinateAxes = "longitude latitude time y x ";
     :missing_value = -32767s; // short
     :_FillValue = -32767.0; // double
     :long_name = "Sea Ice Thickness (area average)";
     :units = "m";
     :standard_name = "sea_ice_thickness";
     :grid_mapping = "polar_stereographic";
     :coordinates = "longitude latitude";
     :cell_methods = "lat: lon: time: mean";
   double hsnow(time=717, y=881, x=609);
     :_CoordinateAxes = "longitude latitude time y x ";
     :missing_value = -32767s; // short
     :_FillValue = -32767.0; // double
     :long_name = "Thickness of snow on top of sea ice (area average)";
     :units = "m";
     :standard_name = "surface_snow_thickness";
     :grid_mapping = "polar_stereographic";
     :coordinates = "longitude latitude";
     :cell_methods = "lat: lon: time: mean";
   double uice(time=717, y=881, x=609);
     :_CoordinateAxes = "longitude latitude time y x ";
     :missing_value = -32767s; // short
     :_FillValue = -32767.0; // double
     :long_name = "X velocity component of sea ice (area average)";
     :units = "m s-1";
     :standard_name = "x_sea_ice_velocity";
     :grid_mapping = "polar_stereographic";
     :coordinates = "longitude latitude";
     :cell_methods = "lat: lon: time: mean";
   double vice(time=717, y=881, x=609);
     :_CoordinateAxes = "longitude latitude time y x ";
     :missing_value = -32767s; // short
     :_FillValue = -32767.0; // double
     :long_name = "y velocity component of sea ice (area average)";
     :units = "m s-1";
     :standard_name = "y_sea_ice_velocity";
     :grid_mapping = "polar_stereographic";
     :coordinates = "longitude latitude";
     :cell_methods = "lat: lon: time: mean";

 :field_type = "Daily average fields";
 :Conventions = "CF-1.0";
 :field_date = "2008-12-15";
 :bulletin_date = "2008-12-17";
 :bulletin_type = "Hindcast";
 :nco_openmp_thread_number = 1; // int
}
  • 2009 messages navigation, sorted by:
    1. Thread
    2. Subject
    3. Author
    4. Date
    5. ↑ Table Of Contents
  • Search the netcdf-java archives: