def test_cube(self): logging.debug("") logging.debug("test_cube") cube = create_cube((30, 20, 10), 5.0, 4.0, 3.0) # I face. surfaces = (("xyzzy", 2, 2, 0, -1, 0, -1),) variables = (("area", "inch**2"),) metrics = surface_probe(cube, surfaces, variables) area = metrics[0] logging.debug("area = %g (%g ft)", area, area / 144.0) self.assertEqual(area, 4.0 * 3.0 * 144.0) # J face. surfaces = (("xyzzy", 0, -1, 2, 2, 0, -1),) variables = (("area", "inch**2"),) metrics = surface_probe(cube, surfaces, variables) area = metrics[0] logging.debug("area = %g (%g ft)", area, area / 144.0) self.assertEqual(area, 5.0 * 3.0 * 144.0) # K face. surfaces = (("xyzzy", 0, -1, 0, -1, 2, 2),) variables = (("area", "inch**2"),) metrics = surface_probe(cube, surfaces, variables) area = metrics[0] logging.debug("area = %g (%g ft)", area, area / 144.0) self.assertEqual(area, 5.0 * 4.0 * 144.0)
def test_cube(self): logging.debug('') logging.debug('test_cube') cube = create_cube((41, 17, 9), 5., 4., 3.) # I face. regions = (('xyzzy', 2, 2, 0, -1, 0, -1),) variables = (('area', 'inch**2'), ('density', None)) area, density = mesh_probe(cube, regions, variables) logging.debug('I area = %g (%g ft**2)', area, area / 144.) logging.debug('I density = %g', density) self.assertEqual(area, 4. * 3. * 144.) self.assertEqual(density, 0.25) surface = cube.extract([(2, 2, 0, -1, 0, -1)]) surface.demote() regions = (('xyzzy', 0, -1, 0, -1),) area, density = mesh_probe(surface, regions, variables) self.assertEqual(area, 4. * 3. * 144.) self.assertEqual(density, 0.25) # J face. regions = (('xyzzy', 0, -1, 2, 2, 0, -1),) area, density = mesh_probe(cube, regions, variables) logging.debug('J area = %g (%g ft**2)', area, area / 144.) logging.debug('J density = %g', density) self.assertEqual(area, 5. * 3. * 144.) self.assertEqual(density, 2.5) surface = cube.extract([(0, -1, 2, 2, 0, -1)]) surface.demote() regions = (('xyzzy', 0, -1, 0, -1),) area, density = mesh_probe(surface, regions, variables) self.assertEqual(area, 5. * 3. * 144.) self.assertEqual(density, 2.5) # K face. regions = (('xyzzy', 0, -1, 0, -1, 2, 2),) area, density = mesh_probe(cube, regions, variables) logging.debug('K area = %g (%g ft**2)', area, area / 144.) logging.debug('K density = %g', density) self.assertEqual(area, 5. * 4. * 144.) self.assertEqual(density, 2.5) surface = cube.extract([(0, -1, 0, -1, 2, 2)]) surface.demote() regions = (('xyzzy', 0, -1, 0, -1),) area, density = mesh_probe(surface, regions, variables) self.assertEqual(area, 5. * 4. * 144.) self.assertEqual(density, 2.5) # 1D curve. variables = (('length', 'inch'), ('density', None)) curve = surface.extract([(0, -1, 5, 5)]) curve.demote() regions = (('xyzzy', 0, -1),) length, density = mesh_probe(curve, regions, variables) # It seems turning the value into a PhysicalQuantity isn't exact. assert_rel_error(self, length, 5. * 12., 0.00000001) self.assertEqual(density, 2.5) # 2D curves. regions = (('xyzzy', 0, -1, 5, 5),) length, density = mesh_probe(surface, regions, variables) assert_rel_error(self, length, 5. * 12., 0.00000001) self.assertEqual(density, 2.5) regions = (('xyzzy', 5, 5, 0, -1),) length, density = mesh_probe(surface, regions, variables) assert_rel_error(self, length, 4. * 12., 0.00000001) self.assertEqual(density, 0.625) # 3D curves. regions = (('xyzzy', 0, -1, 5, 5, 5, 5),) length, density = mesh_probe(cube, regions, variables) assert_rel_error(self, length, 5. * 12., 0.00000001) self.assertEqual(density, 2.5) regions = (('xyzzy', 5, 5, 0, -1, 5, 5),) length, density = mesh_probe(cube, regions, variables) assert_rel_error(self, length, 4. * 12., 0.00000001) self.assertEqual(density, 0.625) regions = (('xyzzy', 5, 5, 5, 5, 0, -1),) length, density = mesh_probe(cube, regions, variables) assert_rel_error(self, length, 3. * 12., 0.00000001) self.assertEqual(density, 0.625)