private void addAttributeInfo(NetcdfDataset result, String attName, String info) { Attribute att = result.findGlobalAttribute(attName); if (att == null) result.addAttribute(null, new Attribute(attName, info)); else { String oldValue = att.getStringValue(); result.addAttribute(null, new Attribute(attName, oldValue +" ;\n"+ info)); } }
private void addAttributeInfo(NetcdfDataset result, String attName, String info) { Attribute att = result.findGlobalAttribute(attName); if (att == null) result.addAttribute(null, new Attribute(attName, info)); else { String oldValue = att.getStringValue(); result.addAttribute(null, new Attribute(attName, oldValue +" ;\n"+ info)); } }
private void addAttributeInfo(NetcdfDataset result, String attName, String info) { Attribute att = result.findGlobalAttribute(attName); if (att == null) result.addAttribute(null, new Attribute(attName, info)); else { String oldValue = att.getStringValue(); result.addAttribute(null, new Attribute(attName, oldValue +" ;\n"+ info)); } }
public NetcdfDataset getRunTimeDataset(Date wantRuntime) throws IOException { if (wantRuntime == null) return null; if (!runtimes.contains(wantRuntime)) return null; DateFormatter df = new DateFormatter(); String runTimeString = df.toDateTimeStringISO(wantRuntime); NetcdfDataset ncd = createDataset(new RuntimeInvGetter(wantRuntime), RUN, runTimeString); ncd.addAttribute(null, new Attribute(_Coordinate.ModelRunDate, runTimeString)); ncd.finish(); return ncd; }
public void augmentDataset(NetcdfDataset ds, CancelTask cancelTask) throws IOException { addTimeCoord = addTimeCoordinate(ds); augmentGroup(ds, ds.getRootGroup()); ds.addAttribute(ds.getRootGroup(), new Attribute(CDM.CONVENTIONS, "CF-1.0")); ds.finish(); }
public void augmentDataset(NetcdfDataset ds, CancelTask cancelTask) throws IOException { addTimeCoord = addTimeCoordinate(ds); augmentGroup(ds, ds.getRootGroup()); ds.addAttribute(ds.getRootGroup(), new Attribute(CDM.CONVENTIONS, "CF-1.0")); ds.finish(); }
public void augmentDataset(NetcdfDataset ds, CancelTask cancelTask) throws IOException { addTimeCoord = addTimeCoordinate(ds); augmentGroup(ds, ds.getRootGroup()); ds.addAttribute(ds.getRootGroup(), new Attribute(CDM.CONVENTIONS, "CF-1.0")); ds.finish(); }
static public boolean isValidFile( NetcdfDataset ds) { Attribute conventionsAtt = ds.findGlobalAttribute( "Conventions"); if ( conventionsAtt == null) conventionsAtt = ds.findGlobalAttributeIgnoreCase( "Conventions"); if ( conventionsAtt == null) return( false); if ( ! conventionsAtt.isString()) return( false); if ( ! conventionsAtt.getStringValue().equals( "NCAR-RAF/nimbus" ) ) return( false ); Attribute versionAtt = ds.findGlobalAttributeIgnoreCase( "Version" ); if ( versionAtt == null ) { // A bit of a hack for some UWYO KingAir files. versionAtt = new Attribute( "Version", "1.3" ); ds.addAttribute( null, versionAtt ); ds.finish(); return ( true ); } if ( ! versionAtt.isString() ) return ( false ); if ( versionAtt.getStringValue( ).equals( "1.2")) return( true ); if ( versionAtt.getStringValue( ).equals( "1.3")) return( true ); return( false ); }
static public boolean isValidFile( NetcdfDataset ds) { Attribute conventionsAtt = ds.findGlobalAttribute( "Conventions"); if ( conventionsAtt == null) conventionsAtt = ds.findGlobalAttributeIgnoreCase( "Conventions"); if ( conventionsAtt == null) return( false); if ( ! conventionsAtt.isString()) return( false); if ( ! conventionsAtt.getStringValue().equals( "NCAR-RAF/nimbus" ) ) return( false ); Attribute versionAtt = ds.findGlobalAttributeIgnoreCase( "Version" ); if ( versionAtt == null ) { // A bit of a hack for some UWYO KingAir files. versionAtt = new Attribute( "Version", "1.3" ); ds.addAttribute( null, versionAtt ); ds.finish(); return ( true ); } if ( ! versionAtt.isString() ) return ( false ); if ( versionAtt.getStringValue( ).equals( "1.2")) return( true ); if ( versionAtt.getStringValue( ).equals( "1.3")) return( true ); return( false ); }
static public boolean isValidFile( NetcdfDataset ds) { Attribute conventionsAtt = ds.findGlobalAttribute( "Conventions"); if ( conventionsAtt == null) conventionsAtt = ds.findGlobalAttributeIgnoreCase( "Conventions"); if ( conventionsAtt == null) return( false); if ( ! conventionsAtt.isString()) return( false); if ( ! conventionsAtt.getStringValue().equals( "NCAR-RAF/nimbus" ) ) return( false ); Attribute versionAtt = ds.findGlobalAttributeIgnoreCase( "Version" ); if ( versionAtt == null ) { // A bit of a hack for some UWYO KingAir files. versionAtt = new Attribute( "Version", "1.3" ); ds.addAttribute( null, versionAtt ); ds.finish(); return ( true ); } if ( ! versionAtt.isString() ) return ( false ); if ( versionAtt.getStringValue( ).equals( "1.2")) return( true ); if ( versionAtt.getStringValue( ).equals( "1.3")) return( true ); return( false ); }
private void augment3D(NetcdfDataset ds, CancelTask cancelTask) throws IOException { ds.addAttribute(null, new Attribute(CDM.CONVENTIONS, "NSSL National Reflectivity Mosaic")); addLongName(ds, "mrefl_mosaic", "3-D reflectivity mosaic grid"); addCoordinateAxisType(ds, "Height", AxisType.Height); addCoordSystem(ds); Variable var = ds.findVariable("mrefl_mosaic"); assert var != null; float scale_factor = Float.NaN; Attribute att = var.findAttributeIgnoreCase("Scale"); if (att != null) { scale_factor = att.getNumericValue().floatValue(); var.addAttribute(new Attribute(CDM.SCALE_FACTOR, 1.0f / scale_factor)); } att = ds.findGlobalAttributeIgnoreCase("MissingData"); if (null != att) { float val = att.getNumericValue().floatValue(); if (!Float.isNaN(scale_factor)) val *= scale_factor; var.addAttribute(new Attribute(CDM.MISSING_VALUE, (short) val)); } // hack Array missingData = Array.factory(DataType.SHORT, new int[] {2}, new short[] {-990, -9990}); var.addAttribute(new Attribute(CDM.MISSING_VALUE, missingData)); var.addAttribute(new Attribute(_Coordinate.Axes, "Height Lat Lon")); }
private void augment3D(NetcdfDataset ds, CancelTask cancelTask) throws IOException { ds.addAttribute(null, new Attribute(CDM.CONVENTIONS, "NSSL National Reflectivity Mosaic")); addLongName(ds, "mrefl_mosaic", "3-D reflectivity mosaic grid"); addCoordinateAxisType(ds, "Height", AxisType.Height); addCoordSystem(ds); Variable var = ds.findVariable("mrefl_mosaic"); assert var != null; float scale_factor = Float.NaN; Attribute att = var.findAttributeIgnoreCase("Scale"); if (att != null) { scale_factor = att.getNumericValue().floatValue(); var.addAttribute(new Attribute(CDM.SCALE_FACTOR, 1.0f / scale_factor)); } att = ds.findGlobalAttributeIgnoreCase("MissingData"); if (null != att) { float val = att.getNumericValue().floatValue(); if (!Float.isNaN(scale_factor)) val *= scale_factor; var.addAttribute(new Attribute(CDM.MISSING_VALUE, (short) val)); } // hack Array missingData = Array.factory(DataType.SHORT.getPrimitiveClassType(), new int[] {2}, new short[] {-990, -9990}); var.addAttribute(new Attribute(CDM.MISSING_VALUE, missingData)); var.addAttribute(new Attribute(_Coordinate.Axes, "Height Lat Lon")); }
ds.addAttribute(null, new Attribute("IsRadial", new Integer(1))); attr = ds.findGlobalAttributeIgnoreCase("vcp-value"); String vcp; vcp = attr.getStringValue(); ds.addAttribute(null, new Attribute("VolumeCoveragePatternName", vcp)); ds.finish();
private void augment3D(NetcdfDataset ds, CancelTask cancelTask) throws IOException { ds.addAttribute(null, new Attribute(CDM.CONVENTIONS, "NSSL National Reflectivity Mosaic")); addLongName(ds, "mrefl_mosaic", "3-D reflectivity mosaic grid"); addCoordinateAxisType(ds, "Height", AxisType.Height); addCoordSystem(ds); Variable var = ds.findVariable("mrefl_mosaic"); assert var != null; float scale_factor = Float.NaN; Attribute att = var.findAttributeIgnoreCase("Scale"); if (att != null) { scale_factor = att.getNumericValue().floatValue(); var.addAttribute(new Attribute(CDM.SCALE_FACTOR, 1.0f / scale_factor)); } att = ds.findGlobalAttributeIgnoreCase("MissingData"); if (null != att) { float val = att.getNumericValue().floatValue(); if (!Float.isNaN(scale_factor)) val *= scale_factor; var.addAttribute(new Attribute(CDM.MISSING_VALUE, (short) val)); } // hack Array missingData = Array.factory(DataType.SHORT.getPrimitiveClassType(), new int[] {2}, new short[] {-990, -9990}); var.addAttribute(new Attribute(CDM.MISSING_VALUE, missingData)); var.addAttribute(new Attribute(_Coordinate.Axes, "Height Lat Lon")); }
String name = p.getName(); if (null == ncDataset.findGlobalAttribute(name)) { ncDataset.addAttribute(null, new Attribute(name, p.getValue()));
String name = p.getName(); if (null == ncDataset.findGlobalAttribute(name)) { ncDataset.addAttribute(null, new Attribute(name, p.getValue()));
private void augment2D(NetcdfDataset ds, CancelTask cancelTask) throws IOException { ds.addAttribute(null, new Attribute(CDM.CONVENTIONS, "NSSL National Reflectivity Mosaic"));
private boolean addTimeCoordinate(NetcdfDataset ds) { // add time coordinate CalendarDate cd = parseFilenameForDate(ds.getLocation()); if (cd == null) return false; ds.addAttribute(ds.getRootGroup(), new Attribute("_MODIS_Date", cd.toString())); // add the time dimension int nTimesDim = 1; Dimension newDim = new Dimension(TIME_NAME, nTimesDim); ds.addDimension( null, newDim); // add the coordinate variable String units = "seconds since "+cd.toString(); String desc = "time coordinate"; Array data = Array.makeArray(DataType.DOUBLE, 1, 0.0, 0.0) ; CoordinateAxis1D timeCoord = new CoordinateAxis1D( ds, null, TIME_NAME, DataType.DOUBLE, "", units, desc); timeCoord.setCachedData(data, true); timeCoord.addAttribute(new Attribute(_Coordinate.AxisType, AxisType.Time.toString())); ds.addCoordinateAxis(timeCoord); return true; }
private boolean addTimeCoordinate(NetcdfDataset ds) { // add time coordinate CalendarDate cd = parseFilenameForDate(ds.getLocation()); if (cd == null) return false; ds.addAttribute(ds.getRootGroup(), new Attribute("_MODIS_Date", cd.toString())); // add the time dimension int nTimesDim = 1; Dimension newDim = new Dimension(TIME_NAME, nTimesDim); ds.addDimension( null, newDim); // add the coordinate variable String units = "seconds since "+cd.toString(); String desc = "time coordinate"; Array data = Array.makeArray(DataType.DOUBLE, 1, 0.0, 0.0) ; CoordinateAxis1D timeCoord = new CoordinateAxis1D( ds, null, TIME_NAME, DataType.DOUBLE, "", units, desc); timeCoord.setCachedData(data, true); timeCoord.addAttribute(new Attribute(_Coordinate.AxisType, AxisType.Time.toString())); ds.addCoordinateAxis(timeCoord); return true; }
private boolean addTimeCoordinate(NetcdfDataset ds) { // add time coordinate CalendarDate cd = parseFilenameForDate(ds.getLocation()); if (cd == null) return false; ds.addAttribute(ds.getRootGroup(), new Attribute("_MODIS_Date", cd.toString())); // add the time dimension int nTimesDim = 1; Dimension newDim = new Dimension(TIME_NAME, nTimesDim); ds.addDimension( null, newDim); // add the coordinate variable String units = "seconds since "+cd.toString(); String desc = "time coordinate"; Array data = Array.makeArray(DataType.DOUBLE, 1, 0.0, 0.0) ; CoordinateAxis1D timeCoord = new CoordinateAxis1D( ds, null, TIME_NAME, DataType.DOUBLE, "", units, desc); timeCoord.setCachedData(data, true); timeCoord.addAttribute(new Attribute(_Coordinate.AxisType, AxisType.Time.toString())); ds.addCoordinateAxis(timeCoord); return true; }