def test_get_base_units_different_exponent(self): sysname = 'mysys3' ureg = UnitRegistry() g = ureg.get_group('test-imperial') g.add_units('inch', 'yard', 'pint') c = ureg.get_compatible_units('meter', 'test-imperial') lines = ['@system %s using test-imperial' % sysname, 'pint:meter', ] s = System.from_lines(lines, ureg.get_base_units, g._groups_systems) # base_factor, destination_units c = ureg.get_base_units('inch', system=sysname) self.assertAlmostEqual(c[0], 0.326, places=3) self.assertEqual(c[1], {'pint': 1./3}) c = ureg.get_base_units('cm', system=sysname) self.assertAlmostEqual(c[0], 0.1283, places=3) self.assertEqual(c[1], {'pint': 1./3}) c = ureg.get_base_units('inch**2', system=sysname) self.assertAlmostEqual(c[0], 0.326**2, places=3) self.assertEqual(c[1], {'pint': 2./3}) c = ureg.get_base_units('cm**2', system=sysname) self.assertAlmostEqual(c[0], 0.1283**2, places=3) self.assertEqual(c[1], {'pint': 2./3})
def test_get_base_units_different_exponent(self): sysname = "mysys3" ureg = UnitRegistry() g = ureg.get_group("test-imperial") g.add_units("inch", "yard", "pint") c = ureg.get_compatible_units("meter", "test-imperial") lines = ["@system %s using test-imperial" % sysname, "pint:meter"] s = ureg.System.from_lines(lines, ureg.get_base_units) ureg._systems[s.name] = s # base_factor, destination_units c = ureg.get_base_units("inch", system=sysname) self.assertAlmostEqual(c[0], 0.326, places=3) self.assertEqual(c[1], {"pint": 1.0 / 3}) c = ureg.get_base_units("cm", system=sysname) self.assertAlmostEqual(c[0], 0.1283, places=3) self.assertEqual(c[1], {"pint": 1.0 / 3}) c = ureg.get_base_units("inch**2", system=sysname) self.assertAlmostEqual(c[0], 0.326 ** 2, places=3) self.assertEqual(c[1], {"pint": 2.0 / 3}) c = ureg.get_base_units("cm**2", system=sysname) self.assertAlmostEqual(c[0], 0.1283 ** 2, places=3) self.assertEqual(c[1], {"pint": 2.0 / 3})
def test_get_base_units_relation(self): sysname = "mysys4" ureg = UnitRegistry() g = ureg.get_group("test-imperial") g.add_units("inch", "yard", "pint") lines = ["@system %s using test-imperial" % sysname, "mph:meter"] s = ureg.System.from_lines(lines, ureg.get_base_units) ureg._systems[s.name] = s # base_factor, destination_units c = ureg.get_base_units("inch", system=sysname) self.assertAlmostEqual(c[0], 0.056, places=2) self.assertEqual(c[1], {"mph": 1, "second": 1}) c = ureg.get_base_units("kph", system=sysname) self.assertAlmostEqual(c[0], 0.6213, places=3) self.assertEqual(c[1], {"mph": 1})
def test_get_base_units(self): sysname = "mysys2" ureg = UnitRegistry() g = ureg.get_group("test-imperial") g.add_units("inch", "yard", "pint") lines = ["@system %s using test-imperial" % sysname, "inch"] s = ureg.System.from_lines(lines, ureg.get_base_units) ureg._systems[s.name] = s # base_factor, destination_units c = ureg.get_base_units("inch", system=sysname) self.assertAlmostEqual(c[0], 1) self.assertEqual(c[1], {"inch": 1}) c = ureg.get_base_units("cm", system=sysname) self.assertAlmostEqual(c[0], 1.0 / 2.54) self.assertEqual(c[1], {"inch": 1})
def test_get_base_units_relation(self): sysname = 'mysys4' ureg = UnitRegistry() g = ureg.get_group('test-imperial') g.add_units('inch', 'yard', 'pint') lines = ['@system %s using test-imperial' % sysname, 'mph:meter', ] s = System.from_lines(lines, ureg.get_base_units, g._groups_systems) # base_factor, destination_units c = ureg.get_base_units('inch', system=sysname) self.assertAlmostEqual(c[0], 0.0568, places=3) self.assertEqual(c[1], {'mph': 1, 'second': 1}) c = ureg.get_base_units('kph', system=sysname) self.assertAlmostEqual(c[0], .6214, places=4) self.assertEqual(c[1], {'mph': 1})
def test_get_base_units(self): sysname = 'mysys2' ureg = UnitRegistry() g = ureg.get_group('test-imperial') g.add_units('inch', 'yard', 'pint') lines = ['@system %s using test-imperial' % sysname, 'inch', ] s = System.from_lines(lines, ureg.get_base_units, g._groups_systems) # base_factor, destination_units c = ureg.get_base_units('inch', system=sysname) self.assertAlmostEqual(c[0], 1) self.assertEqual(c[1], {'inch': 1}) c = ureg.get_base_units('cm', system=sysname) self.assertAlmostEqual(c[0], 1./2.54) self.assertEqual(c[1], {'inch': 1})
def test_issue66b(self): ureg = UnitRegistry() self.assertEqual(ureg.get_base_units(ureg.kelvin), (1.0, ureg.Unit(UnitsContainer({'kelvin': 1})))) self.assertEqual(ureg.get_base_units(ureg.degC), (1.0, ureg.Unit(UnitsContainer({'kelvin': 1}))))
def test_issue66b(self): ureg = UnitRegistry() self.assertEqual(ureg.get_base_units(ureg.kelvin.units), (None, UnitsContainer({'kelvin': 1}))) self.assertEqual(ureg.get_base_units(ureg.degC.units), (None, UnitsContainer({'kelvin': 1})))
def test_issue66b(self): ureg = UnitRegistry() self.assertEqual(ureg.get_base_units(ureg.degK.units), (None, UnitsContainer({'degK': 1}))) self.assertEqual(ureg.get_base_units(ureg.degC.units), (None, UnitsContainer({'degK': 1})))
def test_issue66b(self): ureg = UnitRegistry() self.assertEqual(ureg.get_base_units(ureg.degK.units), (1., UnitsContainer({'degK': 1}))) self.assertEqual(ureg.get_base_units(ureg.degC.units), (1., UnitsContainer({'degC': 1})))