def areGridsEqual(varA, varB): """ Tests if the grids of two variables are the same """ varAGrid = varA.getGrid() varBGrid = varB.getGrid() #if one grid exists and the other doesn't if (varAGrid == None and varBGrid != None ) or \ (varAGrid != None and varBGrid == None): return False #if both have no grids elif varAGrid == None and varBGrid == None: return True equal = True if equal: equal = varAGrid.__class__ == varBGrid.__class__ if equal: equal = array_utils.areArraysEqual(varA.getLongitude()[:], varB.getLongitude()[:]) if equal: equal = array_utils.areArraysEqual(varA.getLatitude()[:], varB.getLatitude()[:]) return equal
def test_005_floatArraysAreIdenticle(self): a = N.array(N.arange(0.5,10.5,0.25)) a = a.reshape( (10,4) ) b = N.array(N.arange(0.5,10.5,0.25)) b = b.reshape( (10,4) ) b[5,0] = 5.5 + 1e-6 nt.assert_true( array_utils.areArraysEqual(a,b)) b[9,3] = 11.24 nt.assert_true( array_utils.areArraysEqual(a,b, delta=1.0))
def test_004_arraysAreIdenticle(self): a = N.array(range(12)) a = a.reshape((3,4)) b = N.array(range(12)) b = b.reshape((3,4)) nt.assert_true( array_utils.areArraysEqual(a,b)) a = N.array([[False,False,True,True],[False,True,False,True]]) b = N.array([[False,False,True,True],[False,True,False,True]]) nt.assert_true( array_utils.areArraysEqual(a,b))
def test_003_arrayDataIsDifferent(self): a = N.array([[True, False, True],[False,False,True]]) b = N.array([[False, False, True],[False,False,True]]) nt.assert_false( array_utils.areArraysEqual(a,b)) a = N.array(range(10)) a = a.reshape((2,5)) b = N.array(range(10)) b = b.reshape((2,5)) b[1,4] = 99 nt.assert_false( array_utils.areArraysEqual(a,b)) a = N.array(N.arange(0.5,10.5,0.25)) a = a.reshape( (10,4) ) b = N.array(N.arange(0.5,10.5,0.25)) b = b.reshape( (10,4) ) b[5,0] = 5.6 nt.assert_false( array_utils.areArraysEqual(a,b))
def isVariableDataEqual(varA, varB): """ Tests if the data contained in two variables is the same """ return array_utils.areArraysEqual(varA[:], varB[:])
def test_002_arrayTypesAreDifferent(self): a = N.array(range(10), N.float32) b = N.array(range(10), N.float64) nt.assert_false( array_utils.areArraysEqual(a,b))
def test_001_arrayShapesAreDifferent(self): a = N.array(range(10)) b = N.array(range(10)) b = b.reshape((2,5)) nt.assert_false( array_utils.areArraysEqual(a,b))