Пример #1
0
 def test__singular_unit(self):
     m_dim = Dimension(0, 1, 0, 0, 0, 0, 0)
     m = SingularUnit('metre',
                      'm',
                      m_dim,
                      identifier=OM.NAMESPACE + 'metre')
     self.assertEqual('metre', m.label().value)
     self.assertEqual('m', m.symbol().value)
     self.assertEqual(
         'http://www.ontology-of-units-of-measure.org/resource/om-2/metre',
         str(m.identifier))
     self.assertEqual(m_dim, m.dimensions)
Пример #2
0
 def test_singular_unit_conversion(self):
     m_dim = Dimension(0, 1, 0, 0, 0, 0, 0)
     m = SingularUnit('metre',
                      'm',
                      m_dim,
                      identifier=OM.NAMESPACE + 'metre')
     inch = SingularUnit('inch',
                         '\'',
                         base_unit=m,
                         factor=2.54e-2,
                         identifier=OM.NAMESPACE + 'inch')
     m_to_inch_factor = Unit.conversion_factor(m, inch)
     self.assertEqual(2.54e-2, m_to_inch_factor)
     inch_to_m_factor = Unit.conversion_factor(inch, m)
     self.assertEqual(39.3700787, inch_to_m_factor)
Пример #3
0
 def test__unit_multiplication(self):
     m_dim = Dimension(0, 1, 0, 0, 0, 0, 0)
     t_dim = Dimension(1, 0, 0, 0, 0, 0, 0)
     m = SingularUnit('metre',
                      'm',
                      m_dim,
                      identifier=OM.NAMESPACE + 'metre')
     s = SingularUnit('second',
                      's',
                      t_dim,
                      identifier=OM.NAMESPACE + 'second')
     ms = UnitMultiplication(m, s)
     ms_dim = Dimension(1, 1, 0, 0, 0, 0, 0)
     self.assertTrue(ms.label() is None)
     self.assertEqual('m.s', ms.symbol().value)
     self.assertEqual(ms_dim, ms.dimensions)
Пример #4
0
 def test__unit_compound_1(self):
     m_dim = Dimension(0, 1, 0, 0, 0, 0, 0)
     t_dim = Dimension(1, 0, 0, 0, 0, 0, 0)
     m = SingularUnit('metre',
                      'm',
                      m_dim,
                      identifier=OM.NAMESPACE + 'metre')
     s = SingularUnit('second',
                      's',
                      t_dim,
                      identifier=OM.NAMESPACE + 'second')
     ss = UnitMultiplication(s, s)
     ms2 = UnitDivision(m, ss)
     ms2_dim = Dimension(-2, 1, 0, 0, 0, 0, 0)
     self.assertTrue(ms2.label() is None)
     self.assertEqual('m/(s.s)', ms2.symbol().value)
     self.assertEqual(ms2_dim, ms2.dimensions)
Пример #5
0
 def test_unit_get(self):
     m_dim = Dimension(0, 1, 0, 0, 0, 0, 0)
     t_dim = Dimension(1, 0, 0, 0, 0, 0, 0)
     m = SingularUnit('metre',
                      'm',
                      m_dim,
                      identifier=OM.NAMESPACE + 'metre')
     s = SingularUnit('second',
                      's',
                      t_dim,
                      identifier=OM.NAMESPACE + 'second')
     units = Unit.with_label("metre")
     self.assertEqual(1, len(units))
     self.assertEqual('metre', units[0].label().value)
     self.assertEqual('m', units[0].symbol().value)
     self.assertEqual(
         'http://www.ontology-of-units-of-measure.org/resource/om-2/metre',
         str(units[0].identifier))
     self.assertEqual(m_dim, units[0].dimensions)
Пример #6
0
 def test__unit_exponentiation(self):
     m_dim = Dimension(0, 1, 0, 0, 0, 0, 0)
     m = SingularUnit('metre',
                      'm',
                      m_dim,
                      identifier=OM.NAMESPACE + 'metre')
     m3 = UnitExponentiation(m, 3)
     m3_dim = Dimension(0, 3, 0, 0, 0, 0, 0)
     self.assertTrue(m3.label() is None)
     self.assertEqual('m3', m3.symbol().value)
     self.assertEqual(m3_dim, m3.dimensions)
Пример #7
0
 def test__unit_multiple(self):
     m_dim = Dimension(0, 1, 0, 0, 0, 0, 0)
     m = SingularUnit('metre',
                      'm',
                      m_dim,
                      identifier=OM.NAMESPACE + 'metre')
     km = PrefixedUnit(SI.KILO, m, OM.NAMESPACE + 'kilometre')
     km100 = UnitMultiple(km, 100.0, symbol='100km')
     self.assertEqual('100.0 kilometre', km100.label().value)
     self.assertEqual('100km', km100.symbol().value)
     self.assertEqual(m_dim, km100.dimensions)
Пример #8
0
 def test__unit_division(self):
     m_dim = Dimension(0, 1, 0, 0, 0, 0, 0)
     m = SingularUnit('metre',
                      'm',
                      m_dim,
                      identifier=OM.NAMESPACE + 'metre')
     km = PrefixedUnit(SI.KILO, m, OM.NAMESPACE + 'kilometre')
     m_per_km = UnitDivision(m, km)
     m_per_km_dim = Dimension(0, 0, 0, 0, 0, 0, 0)
     self.assertTrue(m_per_km.label() is None)
     self.assertEqual('m/km', m_per_km.symbol().value)
     self.assertEqual(m_per_km_dim, m_per_km.dimensions)
Пример #9
0
 def test__prefixed_unit(self):
     m_dim = Dimension(0, 1, 0, 0, 0, 0, 0)
     m = SingularUnit('metre',
                      'm',
                      m_dim,
                      identifier=OM.NAMESPACE + 'metre')
     km = PrefixedUnit(SI.KILO, m, OM.NAMESPACE + 'kilometre')
     self.assertEqual('kilometre', km.label().value)
     self.assertEqual('km', km.symbol().value)
     self.assertEqual(
         'http://www.ontology-of-units-of-measure.org/resource/om-2/kilometre',
         str(km.identifier))
     self.assertEqual(m_dim, km.dimensions)
Пример #10
0
    dim3 = dim1 + dim2
    print('Added dimensions: {}'.format(dim3))
    try:
        dim4 = time_dim + dim2
        print('Added dimensions: {}'.format(dim4))
    except DimensionalException as error:
        print(error)
    try:
        dim4 = time_dim - dim2
        print('Subtracted dimensions: {}'.format(dim4))
    except DimensionalException as error:
        print(error)

    dim4 = dim1 * dim2
    print('Multiplied dimensions: {}'.format(dim4))
    dim5 = time_dim / dim2
    print('Divided dimensions: {}'.format(dim5))

    m = SingularUnit('metre',
                     'm',
                     Dimension(0, 1, 0, 0, 0, 0, 0),
                     identifier=OM.NAMESPACE + 'metre')
    print('Singular Unit: {}'.format(m))
    km = PrefixedUnit(SI.KILO, m, OM.NAMESPACE + 'kilometre')
    print('Prefixed Unit: {}'.format(km))
    km100 = UnitMultiple(km, 100.0, symbol='100km')
    print('Unit Multiple: {}'.format(km100))

    mpkm = UnitDivision(m, km)
    print('Unit Division: {}'.format(mpkm))