working on getting baker to work in 3D. the code runs, but the numbers are odd. I suspect the rectangular grid, and am going to try a random cloud of points.
This commit is contained in:
+23
-24
@@ -10,7 +10,6 @@ import scipy.spatial
|
||||
class TestSequenceFunctions(unittest.TestCase):
|
||||
def setUp(self):
|
||||
self.l = [[-1, 1], [-1, 0], [-1, 1], [0, -1], [0, 0], [0, 1], [1, -1], [1, 0], [1, 1]]
|
||||
self.approx_fmt = "%0.6f"
|
||||
self.all_points = [
|
||||
[ 0, 0], # 0
|
||||
[ 1, 0], # 1
|
||||
@@ -37,9 +36,9 @@ class TestSequenceFunctions(unittest.TestCase):
|
||||
r = [[-1, -1], [0, 2], [1, -1]]
|
||||
|
||||
result = baker.get_phis(X, r)
|
||||
result = [self.approx_fmt % i for i in result]
|
||||
result = [round(i, 5) for i in result]
|
||||
|
||||
right_answer = [self.approx_fmt % i for i in [1/3.0, 1/3.0, 1/3.0]]
|
||||
right_answer = [round(i, 5) for i in [1/3.0, 1/3.0, 1/3.0]]
|
||||
|
||||
for a,b in zip(result, right_answer):
|
||||
self.assertEqual(a,b)
|
||||
@@ -78,13 +77,13 @@ class TestSequenceFunctions(unittest.TestCase):
|
||||
self.q[size_of_simplex:size_of_simplex + extra_points])
|
||||
|
||||
answer = baker.run_baker(self.X, R, S)
|
||||
a = self.approx_fmt % answer['a']
|
||||
b = self.approx_fmt % answer['b']
|
||||
c = self.approx_fmt % answer['c']
|
||||
a = round(answer['a'], 5)
|
||||
b = round(answer['b'], 5)
|
||||
c = round(answer['c'], 5)
|
||||
|
||||
self.assertEqual(a, c)
|
||||
self.assertEqual(c, self.approx_fmt % 0.00)
|
||||
self.assertEqual(b, self.approx_fmt % (1/3.0))
|
||||
self.assertEqual(c, round(0.00 , 5))
|
||||
self.assertEqual(b, round(1/3.0, 5))
|
||||
|
||||
def testRunBaker_2(self):
|
||||
size_of_simplex = 3
|
||||
@@ -98,12 +97,12 @@ class TestSequenceFunctions(unittest.TestCase):
|
||||
|
||||
answer = baker.run_baker(self.X, R, S)
|
||||
|
||||
a = self.approx_fmt % answer['a']
|
||||
b = self.approx_fmt % answer['b']
|
||||
c = self.approx_fmt % answer['c']
|
||||
a = round(answer['a'], 5)
|
||||
b = round(answer['b'], 5)
|
||||
c = round(answer['c'], 5)
|
||||
|
||||
self.assertEqual(a, c)
|
||||
self.assertEqual(c, self.approx_fmt % float(2/3.0))
|
||||
self.assertEqual(c, round(float(2/3.0), 5))
|
||||
|
||||
def testRunBaker_3(self):
|
||||
size_of_simplex = 3
|
||||
@@ -116,13 +115,13 @@ class TestSequenceFunctions(unittest.TestCase):
|
||||
self.q[size_of_simplex:size_of_simplex + extra_points])
|
||||
|
||||
answer = baker.run_baker(self.X, R, S)
|
||||
a = self.approx_fmt % answer['a']
|
||||
b = self.approx_fmt % answer['b']
|
||||
c = self.approx_fmt % answer['c']
|
||||
a = round(answer['a'], 5)
|
||||
b = round(answer['b'], 5)
|
||||
c = round(answer['c'], 5)
|
||||
|
||||
self.assertEqual(a, self.approx_fmt % float(13/14.0))
|
||||
self.assertEqual(b, self.approx_fmt % float(2 / 7.0))
|
||||
self.assertEqual(c, self.approx_fmt % float(15/14.0))
|
||||
self.assertEqual(a, round(float(13/14.0), 5))
|
||||
self.assertEqual(b, round(float(2 / 7.0), 5))
|
||||
self.assertEqual(c, round(float(15/14.0), 5))
|
||||
|
||||
def testRunBaker_4(self):
|
||||
size_of_simplex = 3
|
||||
@@ -135,13 +134,13 @@ class TestSequenceFunctions(unittest.TestCase):
|
||||
self.q[size_of_simplex:size_of_simplex + extra_points])
|
||||
|
||||
answer = baker.run_baker(self.X, R, S)
|
||||
a = self.approx_fmt % answer['a']
|
||||
b = self.approx_fmt % answer['b']
|
||||
c = self.approx_fmt % answer['c']
|
||||
a = round(answer['a'], 5)
|
||||
b = round(answer['b'], 5)
|
||||
c = round(answer['c'], 5)
|
||||
|
||||
self.assertEqual(a, self.approx_fmt % float(48/53.0))
|
||||
self.assertEqual(b, self.approx_fmt % float(15/53.0))
|
||||
self.assertEqual(c, self.approx_fmt % float(54/53.0))
|
||||
self.assertEqual(a, round(float(48/53.0), 5))
|
||||
self.assertEqual(b, round(float(15/53.0), 5))
|
||||
self.assertEqual(c, round(float(54/53.0), 5))
|
||||
|
||||
if __name__ == '__main__':
|
||||
suite = unittest.TestLoader().loadTestsFromTestCase(TestSequenceFunctions)
|
||||
|
||||
Reference in New Issue
Block a user