def test_prefix_unit(): length = Dimension("length") m = Quantity("meter", length, 1, abbrev="m") pref = {"m": PREFIXES["m"], "c": PREFIXES["c"], "d": PREFIXES["d"]} res = [Quantity("millimeter", length, PREFIXES["m"], "mm"), Quantity("centimeter", length, PREFIXES["c"], "cm"), Quantity("decimeter", length, PREFIXES["d"], "dm")] prefs = prefix_unit(m, pref) assert set(prefs) == set(res) assert set(map(lambda x: x.abbrev, prefs)) == set(symbols("mm,cm,dm"))
def test_prefix_unit(): length = Dimension("length") m = Quantity("meter", length, 1, abbrev="m") pref = {"m": PREFIXES["m"], "c": PREFIXES["c"], "d": PREFIXES["d"]} res = [Quantity("millimeter", length, PREFIXES["m"], abbrev="mm"), Quantity("centimeter", length, PREFIXES["c"], abbrev="cm"), Quantity("decimeter", length, PREFIXES["d"], abbrev="dm")] prefs = prefix_unit(m, pref) assert set(prefs) == set(res) assert set(map(lambda x: x.abbrev, prefs)) == set(symbols("mm,cm,dm"))
def test_prefix_unit(): m = Quantity("fake_meter", abbrev="m") m.set_global_relative_scale_factor(1, meter) pref = {"m": PREFIXES["m"], "c": PREFIXES["c"], "d": PREFIXES["d"]} q1 = Quantity("millifake_meter", abbrev="mm") q2 = Quantity("centifake_meter", abbrev="cm") q3 = Quantity("decifake_meter", abbrev="dm") SI.set_quantity_dimension(q1, length) SI.set_quantity_scale_factor(q1, PREFIXES["m"]) SI.set_quantity_scale_factor(q1, PREFIXES["c"]) SI.set_quantity_scale_factor(q1, PREFIXES["d"]) res = [q1, q2, q3] prefs = prefix_unit(m, pref) assert set(prefs) == set(res) assert set(map(lambda v: v.abbrev, prefs)) == set(symbols("mm,cm,dm"))
def test_prefix_unit(): m = Quantity("fake_meter", abbrev="m") m.set_dimension(length) m.set_scale_factor(1) pref = {"m": PREFIXES["m"], "c": PREFIXES["c"], "d": PREFIXES["d"]} q1 = Quantity("millifake_meter", abbrev="mm") q2 = Quantity("centifake_meter", abbrev="cm") q3 = Quantity("decifake_meter", abbrev="dm") q1.set_dimension(length) q1.set_dimension(length) q1.set_dimension(length) q1.set_scale_factor(PREFIXES["m"]) q1.set_scale_factor(PREFIXES["c"]) q1.set_scale_factor(PREFIXES["d"]) res = [q1, q2, q3] prefs = prefix_unit(m, pref) assert set(prefs) == set(res) assert set(map(lambda x: x.abbrev, prefs)) == set(symbols("mm,cm,dm"))
def test_prefix_unit(): m = Quantity("fake_meter", abbrev="m") m.set_dimension(length) m.set_scale_factor(1) pref = {"m": PREFIXES["m"], "c": PREFIXES["c"], "d": PREFIXES["d"]} q1 = Quantity("millifake_meter", abbrev="mm") q2 = Quantity("centifake_meter", abbrev="cm") q3 = Quantity("decifake_meter", abbrev="dm") q1.set_dimension(length) q1.set_dimension(length) q1.set_dimension(length) q1.set_scale_factor(PREFIXES["m"]) q1.set_scale_factor(PREFIXES["c"]) q1.set_scale_factor(PREFIXES["d"]) res = [q1, q2, q3] prefs = prefix_unit(m, pref) assert set(prefs) == set(res) assert set(map(lambda x: x.abbrev, prefs)) == set(symbols("mm,cm,dm"))
energy, power, pressure, frequency, action, ) units = [m, g, s, J, N, W, Pa, Hz] all_units = [] # Prefixes of units like g, J, N etc get added using `prefix_unit` # in the for loop, but the actual units have to be added manually. all_units.extend([g, J, N, W, Pa, Hz]) for u in units: all_units.extend(prefix_unit(u, PREFIXES)) all_units.extend([G, c]) # unit system MKS = UnitSystem( base_units=(m, kg, s), units=all_units, name="MKS", dimension_system=dimsys_length_weight_time, ) __all__ = [ "force", "division", "DimensionSystem", "energy",
1.38064852e-23*kilogram*meter**2/(kelvin*second**2) >>> SI.print_unit_base(lux) candela/meter**2 """ from __future__ import division from sympy.physics.units.definitions import cd, K, mol, lux from sympy.physics.units.dimensions import ( amount_of_substance, luminous_intensity, temperature) from sympy.physics.units.prefixes import PREFIXES, prefix_unit from sympy.physics.units.systems.mksa import MKSA, _mksa_dim derived_dims = () base_dims = (amount_of_substance, luminous_intensity, temperature) # dimension system _si_dim = _mksa_dim.extend(base=base_dims, dims=derived_dims, name='SI') units = [mol, cd, K, lux] all_units = [] for u in units: all_units.extend(prefix_unit(u, PREFIXES)) all_units.extend([mol, cd, K, lux]) SI = MKSA.extend(base=(mol, cd, K), units=all_units, name='SI')
""" Naturalunit system. The natural system comes from "setting c = 1, hbar = 1". From the computer point of view it means that we use velocity and action instead of length and time. Moreover instead of mass we use energy. """ from __future__ import division from sympy.physics.units import DimensionSystem from sympy.physics.units.definitions import c, eV, hbar from sympy.physics.units.definitions.dimension_definitions import ( action, energy, force, frequency, length, mass, momentum, power, time, velocity) from sympy.physics.units.prefixes import PREFIXES, prefix_unit from sympy.physics.units.unitsystem import UnitSystem # dimension system _natural_dim = DimensionSystem(base_dims=(action, energy, velocity), derived_dims=(length, mass, time, momentum, force, power, frequency)) units = prefix_unit(eV, PREFIXES) # unit system natural = UnitSystem(base_units=(hbar, eV, c), units=units, name="Natural system")
""" Naturalunit system. The natural system comes from "setting c = 1, hbar = 1". From the computer point of view it means that we use velocity and action instead of length and time. Moreover instead of mass we use energy. """ from __future__ import division from sympy.physics.units.definitions import c, eV, hbar from sympy.physics.units.dimensions import ( DimensionSystem, action, energy, force, frequency, length, mass, momentum, power, time, velocity) from sympy.physics.units.prefixes import PREFIXES, prefix_unit from sympy.physics.units.unitsystem import UnitSystem # dimension system _natural_dim = DimensionSystem( base_dims=(action, energy, velocity), derived_dims=(length, mass, time, momentum, force, power, frequency) ) units = prefix_unit(eV, PREFIXES) # unit system natural = UnitSystem(base=(hbar, eV, c), units=units, name="Natural system")