public boolean compareData(String name, Array data1, Array data2, boolean justOne) { return compareData(name, data1, data2, TOL, justOne, true); }
public boolean compareData(String name, Array data1, Array data2) { return compareData(name, data1, data2, TOL, false, true); }
public boolean compareData(String name, Array data1, Array data2) { return compareData(name, data1, data2, false, true); }
public boolean compareData(String name, Array data1, Array data2, boolean justOne) { return compareData(name, data1, data2, TOL, justOne); }
public boolean compareData(String name, Array data1, Array data2, boolean justOne) { return compareData(name, data1, data2, justOne, true); }
public boolean compareData(String name, Array data1, double[] data2) { Array data2a = Array.factory(DataType.DOUBLE, new int[]{data2.length}, data2); return compareData(name, data1, data2a, false, false); }
public boolean compareData(String name, Array data1, double[] data2) { Array data2a = Array.factory(DataType.DOUBLE, new int[] {data2.length}, data2); return compareData(name, data1, data2a, TOL, false, false); }
public boolean compareData(String name, double[] data1, double[] data2) { Array data1a = Array.factory(DataType.DOUBLE, new int[]{data1.length}, data1); Array data2a = Array.factory(DataType.DOUBLE, new int[]{data2.length}, data2); return compareData(name, data1a, data2a, false, false); }
public boolean compareData(String name, double[] data1, double[] data2) { Array data1a = Array.factory(DataType.DOUBLE, new int[] {data1.length}, data1); Array data2a = Array.factory(DataType.DOUBLE, new int[] {data2.length}, data2); return compareData(name, data1a, data2a, TOL, false, false); }
private void compareVariableData(Variable var1, Variable var2, boolean showCompare, boolean justOne) throws IOException { Array data1 = var1.read(); Array data2 = var2.read(); if (showCompare) f.format(" compareArrays %s unlimited=%s size=%d%n", var1.getNameAndDimensions(), var1.isUnlimited(), data1.getSize()); compareData(var1.getFullName(), data1, data2, justOne); if (showCompare) f.format(" ok%n"); }
private void compareVariableData(Variable var1, Variable var2, boolean showCompare, boolean justOne) throws IOException { Array data1 = var1.read(); Array data2 = var2.read(); if (showCompare) f.format(" compareArrays %s unlimited=%s size=%d%n", var1.getNameAndDimensions(), var1.isUnlimited(), data1.getSize()); compareData(var1.getFullName(), data1, data2, justOne); if (showCompare) f.format(" ok%n"); }
private boolean compareVariableData(Variable var1, Variable var2, boolean showCompare, boolean justOne) throws IOException { Array data1 = var1.read(); Array data2 = var2.read(); if (showCompare) f.format(" compareArrays %s unlimited=%s size=%d%n", var1.getNameAndDimensions(), var1.isUnlimited(), data1.getSize()); boolean ok = compareData(var1.getFullName(), data1, data2, justOne); if (showCompare) f.format(" ok=%s%n", ok); return ok; }
public boolean compareStructureData(StructureData sdata1, StructureData sdata2, double tol, boolean justOne) { boolean ok = true; StructureMembers sm1 = sdata1.getStructureMembers(); StructureMembers sm2 = sdata2.getStructureMembers(); if (sm1.getMembers().size() != sm2.getMembers().size()) { f.format(" size %d !== %d%n", sm1.getMembers().size(), sm2.getMembers().size()); ok = false; } for (StructureMembers.Member m1 : sm1.getMembers()) { if (m1.getName().equals("time")) continue; StructureMembers.Member m2 = sm2.findMember(m1.getName()); Array data1 = sdata1.getArray(m1); Array data2 = sdata2.getArray(m2); ok &= compareData(m1.getName(), data1, data2, tol, justOne); } return ok; }
public boolean compareStructureData(StructureData sdata1, StructureData sdata2, double tol, boolean justOne) { boolean ok = true; StructureMembers sm1 = sdata1.getStructureMembers(); StructureMembers sm2 = sdata2.getStructureMembers(); if (sm1.getMembers().size() != sm2.getMembers().size()) { f.format(" size %d !== %d%n", sm1.getMembers().size(), sm2.getMembers().size()); ok = false; } for (StructureMembers.Member m1 : sm1.getMembers()) { if (m1.getName().equals("time")) continue; StructureMembers.Member m2 = sm2.findMember(m1.getName()); Array data1 = sdata1.getArray(m1); Array data2 = sdata2.getArray(m2); ok &= compareData(m1.getName(), data1, data2, tol, justOne, true); } return ok; }
public boolean compareStructureData(StructureData sdata1, StructureData sdata2, boolean justOne) { boolean ok = true; StructureMembers sm1 = sdata1.getStructureMembers(); StructureMembers sm2 = sdata2.getStructureMembers(); if (sm1.getMembers().size() != sm2.getMembers().size()) { f.format(" size %d !== %d%n", sm1.getMembers().size(), sm2.getMembers().size()); ok = false; } for (StructureMembers.Member m1 : sm1.getMembers()) { // if (m1.getName().equals("time")) continue; StructureMembers.Member m2 = sm2.findMember(m1.getName()); Array data1 = sdata1.getArray(m1); Array data2 = sdata2.getArray(m2); ok &= compareData(m1.getName(), data1, data2, justOne, true); } return ok; }
public void compare(Structure obs) throws IOException, InvalidRangeException { int start = 0; for (Message m : msgs) { Array data1; if (!m.isTablesComplete()) continue; if (!m.dds.isCompressed()) { MessageUncompressedDataReader reader = new MessageUncompressedDataReader(); data1 = reader.readEntireMessage(construct.recordStructure, protoMessage, m, raf, null); } else { MessageCompressedDataReader reader = new MessageCompressedDataReader(); data1 = reader.readEntireMessage(construct.recordStructure, protoMessage, m, raf, null); } int n = m.getNumberDatasets(); m.calcTotalBits(null); Array data2 = obs.read(new Section().appendRange(start, start + n - 1)); CompareNetcdf2 cn = new CompareNetcdf2( new Formatter(System.out), true, true, true); cn.compareData("all", data1, data2, true); start += n; } }
assert !nc.compareData(enhancedVar.getShortName(), enhancedData, deferredData, false); assert nc.compareData(enhancedVar.getShortName(), enhancedData, processedData, false);
ok = compare.compareData(varName, data_org, data_wrap); ok &= compare.compareData(varName, data_org, axis.getCoordValues());
@Test public void testMissingDataReplaced() throws Exception { // this one has misssing longitude data, but not getting set to NaN String filename = TestDir.cdmUnitTestDir + "/ft/point/netcdf/Surface_Synoptic_20090921_0000.nc"; NetcdfFile ncfile = null; NetcdfDataset ds = null; try { ncfile = NetcdfFile.open(filename); ds = NetcdfDataset.openDataset(filename); String varName = "Lon"; Variable wrap = ds.findVariable(varName); Array data_wrap = wrap.read(); CompareNetcdf2 compare = new CompareNetcdf2(); assert wrap instanceof CoordinateAxis1D; CoordinateAxis1D axis = (CoordinateAxis1D) wrap; assert compare.compareData(varName, data_wrap, axis.getCoordValues()); } finally { if (ncfile != null) ncfile.close(); if (ds != null) ds.close(); } }
double[] want = new double[]{0., 12., 24., 36.}; CompareNetcdf2 cn = new CompareNetcdf2(); assert cn.compareData("reftime", reftime.read(), Array.makeFromJavaArray(want), false);