diff --git a/sasdata/quantities/__init__.py b/sasdata/quantities/__init__.py index e69de29b..4f565242 100644 --- a/sasdata/quantities/__init__.py +++ b/sasdata/quantities/__init__.py @@ -0,0 +1,485 @@ +""" +Builds a data file containing details of units +""" + +import importlib +import os.path +import types +from collections import defaultdict, namedtuple +from io import StringIO + +import numpy as np + +from ._units_base import Dimensions + +Magnitude = namedtuple("Magnitude", ["symbol", "special_symbol", "latex_symbol", "name", "scale"]) + +bigger_magnitudes: list[Magnitude] = [ + Magnitude("E", None, None, "exa", 1e18), + Magnitude("P", None, None, "peta", 1e15), + Magnitude("T", None, None, "tera", 1e12), + Magnitude("G", None, None, "giga", 1e9), + Magnitude("M", None, None, "mega", 1e6), + Magnitude("k", None, None, "kilo", 1e3), +] + +smaller_magnitudes: list[Magnitude] = [ + Magnitude("m", None, None, "milli", 1e-3), + Magnitude("u", "µ", r"\mu", "micro", 1e-6), + Magnitude("n", None, None, "nano", 1e-9), + Magnitude("p", None, None, "pico", 1e-12), + Magnitude("f", None, None, "femto", 1e-15), + Magnitude("a", None, None, "atto", 1e-18), +] + +unusual_magnitudes: list[Magnitude] = [ + Magnitude("d", None, None, "deci", 1e-1), + Magnitude("c", None, None, "centi", 1e-2), +] + +all_magnitudes = bigger_magnitudes + smaller_magnitudes + +UnitData = namedtuple( + "UnitData", + [ + "symbol", + "special_symbol", + "latex_symbol", + "singular", + "plural", + "scale", + "length", + "time", + "mass", + "current", + "temperature", + "moles_hint", + "angle_hint", + "magnitudes", + ], +) + +# Length, time, mass, current, temperature +base_si_units = [ + UnitData("m", None, None, "meter", "meters", 1, 1, 0, 0, 0, 0, 0, 0, all_magnitudes + unusual_magnitudes), + UnitData("s", None, None, "second", "seconds", 1, 0, 1, 0, 0, 0, 0, 0, smaller_magnitudes), + UnitData("g", None, None, "gram", "grams", 1e-3, 0, 0, 1, 0, 0, 0, 0, all_magnitudes), + UnitData("A", None, None, "ampere", "amperes", 1, 0, 0, 0, 1, 0, 0, 0, all_magnitudes), + UnitData("K", None, None, "kelvin", "kelvin", 1, 0, 0, 0, 0, 1, 0, 0, all_magnitudes), +] + +derived_si_units = [ + UnitData("Hz", None, None, "hertz", "hertz", 1, 0, -1, 0, 0, 0, 0, 0, all_magnitudes), + UnitData("N", None, None, "newton", "newtons", 1, 1, -2, 1, 0, 0, 0, 0, all_magnitudes), + UnitData("Pa", None, None, "pascal", "pascals", 1, -1, -2, 1, 0, 0, 0, 0, all_magnitudes), + UnitData("J", None, None, "joule", "joules", 1, 2, -2, 1, 0, 0, 0, 0, all_magnitudes), + UnitData("W", None, None, "watt", "watts", 1, 2, -3, 1, 0, 0, 0, 0, all_magnitudes), + UnitData("C", None, None, "coulomb", "coulombs", 1, 0, 1, 0, 1, 0, 0, 0, all_magnitudes), + UnitData("V", None, None, "volts", "volts", 1, 2, -3, 1, -1, 0, 0, 0, all_magnitudes), + UnitData("Ohm", "Ω", r"\Omega", "ohm", "ohms", 1, 2, -3, 1, -2, 0, 0, 0, all_magnitudes), + UnitData("F", None, None, "farad", "farads", 1, -2, 4, -1, 2, 0, 0, 0, all_magnitudes), + UnitData("S", None, None, "siemens", "siemens", 1, -2, 3, -1, 2, 0, 0, 0, all_magnitudes), + UnitData("Wb", None, None, "weber", "webers", 1, 2, -2, 1, -1, 0, 0, 0, all_magnitudes), + UnitData("T", None, None, "tesla", "tesla", 1, 0, -2, 1, -1, 0, 0, 0, all_magnitudes), + UnitData("H", None, None, "henry", "henry", 1, 2, -2, 1, -2, 0, 0, 0, all_magnitudes), +] + +non_si_dimensioned_units: list[tuple[str, str | None, str, str, float, int, int, int, int, int, int, int, list]] = [ + UnitData("Ang", "Å", r"\AA", "angstrom", "angstroms", 1e-10, 1, 0, 0, 0, 0, 0, 0, []), + UnitData("micron", None, None, "micron", "microns", 1e-6, 1, 0, 0, 0, 0, 0, 0, []), + UnitData("min", None, None, "minute", "minutes", 60, 0, 1, 0, 0, 0, 0, 0, []), + UnitData("rpm", None, None, "revolutions per minute", "revolutions per minute", 1 / 60, 0, -1, 0, 0, 0, 0, 0, []), + UnitData("h", None, None, "hour", "hours", 3600, 0, 1, 0, 0, 0, 0, 0, []), + UnitData("d", None, None, "day", "days", 3600 * 24, 0, 1, 0, 0, 0, 0, 0, []), + UnitData("y", None, None, "year", "years", 3600 * 24 * 365.2425, 0, 1, 0, 0, 0, 0, 0, []), + UnitData("deg", None, None, "degree", "degrees", 180 / np.pi, 0, 0, 0, 0, 0, 0, 1, []), + UnitData("rad", None, None, "radian", "radians", 1, 0, 0, 0, 0, 0, 0, 1, []), + UnitData("rot", None, None, "rotation", "rotations", 2 * np.pi, 0, 0, 0, 0, 0, 0, 1, []), + UnitData("sr", None, None, "stradian", "stradians", 1, 0, 0, 0, 0, 0, 0, 2, []), + UnitData("l", None, None, "litre", "litres", 1e-3, 3, 0, 0, 0, 0, 0, 0, []), + UnitData("eV", None, None, "electronvolt", "electronvolts", 1.602176634e-19, 2, -2, 1, 0, 0, 0, 0, all_magnitudes), + UnitData("au", None, None, "atomic mass unit", "atomic mass units", 1.660538921e-27, 0, 0, 1, 0, 0, 0, 0, []), + UnitData("mol", None, None, "mole", "moles", 6.02214076e23, 0, 0, 0, 0, 0, 1, 0, smaller_magnitudes), + UnitData("kgForce", None, None, "kg force", "kg force", 9.80665, 1, -2, 1, 0, 0, 0, 0, []), + UnitData("C", None, None, "degree Celsius", "degrees Celsius", 1, 0, 0, 0, 0, 1, 0, 0, []), + UnitData("miles", None, None, "mile", "miles", 1760 * 3 * 0.3048, 1, 0, 0, 0, 0, 0, 0, []), + UnitData("yrd", None, None, "yard", "yards", 3 * 0.3048, 1, 0, 0, 0, 0, 0, 0, []), + UnitData("ft", None, None, "foot", "feet", 0.3048, 1, 0, 0, 0, 0, 0, 0, []), + UnitData("in", None, None, "inch", "inches", 0.0254, 1, 0, 0, 0, 0, 0, 0, []), + UnitData("lb", None, None, "pound", "pounds", 0.45359237, 0, 0, 1, 0, 0, 0, 0, []), + UnitData("lbf", None, None, "pound force", "pounds force", 4.448222, 1, -2, 1, 0, 0, 0, 0, []), + UnitData("oz", None, None, "ounce", "ounces", 0.45359237 / 16, 0, 0, 1, 0, 0, 0, 0, []), + UnitData( + "psi", + None, + None, + "pound force per square inch", + "pounds force per square inch", + 4.448222 / (0.0254**2), + -1, + -2, + 1, + 0, + 0, + 0, + 0, + [], + ), +] + +non_si_dimensionless_units: list[tuple[str, str | None, str, str, float, int, int, int, int, int, int, int, list]] = [ + UnitData("none", None, None, "none", "none", 1, 0, 0, 0, 0, 0, 0, 0, []), + UnitData("percent", "%", r"\%", "percent", "percent", 0.01, 0, 0, 0, 0, 0, 0, 0, []), +] + +non_si_units = non_si_dimensioned_units + non_si_dimensionless_units + +# TODO: +# Add Hartree? Rydberg? Bohrs? +# Add CGS + +# Two stages of aliases, to make sure units don't get lost + +aliases_1 = {"A": ["Amps", "amps"], "C": ["Coulombs", "coulombs"]} + +aliases_2 = { + "y": ["yr", "year"], + "d": ["day"], + "h": ["hr", "hour"], + "Ang": ["A", "Å"], + "au": ["amu"], + "percent": ["%"], + "deg": ["degr", "Deg", "degree", "degrees", "Degrees"], + "none": ["Counts", "counts", "cnts", "Cnts", "a.u.", "fraction", "Fraction"], + "K": ["C"], # Ugh, cansas +} + + +all_units = base_si_units + derived_si_units + non_si_units + +encoding = "utf-8" + + +def format_name(name: str): + return name.lower().replace(" ", "_") + + +with StringIO() as fid: + # Write in class definitions + fid.write("\n\n#\n# Included from _units_base.py\n#\n\n") + + path = os.path.join(os.path.dirname(__file__), "_units_base.py") + with open(path,encoding="utf8") as base: + for line in base: + fid.write(line) + + # Write in unit definitions + fid.write("\n\n#\n# Specific units\n#\n\n") + + symbol_lookup = {} + unit_types_temp = defaultdict(list) # Keep track of unit types + unit_types = defaultdict(list) + + for unit_def in all_units: + formatted_plural = format_name(unit_def.plural) + formatted_singular = format_name(unit_def.singular) + + dimensions = Dimensions( + unit_def.length, + unit_def.time, + unit_def.mass, + unit_def.current, + unit_def.temperature, + unit_def.moles_hint, + unit_def.angle_hint, + ) + fid.write( + f"{formatted_plural} = NamedUnit({unit_def.scale}, Dimensions({unit_def.length}, {unit_def.time}, {unit_def.mass}, {unit_def.current}, {unit_def.temperature}, {unit_def.moles_hint}, {unit_def.angle_hint})," + f"name='{formatted_plural}'," + f"ascii_symbol='{unit_def.symbol}'," + f"{'' if unit_def.latex_symbol is None else f"latex_symbol=r'{unit_def.latex_symbol}',"}" + f"symbol='{unit_def.symbol if unit_def.special_symbol is None else unit_def.special_symbol}')\n" + ) + + symbol_lookup[unit_def.symbol] = formatted_plural + if unit_def.special_symbol is not None: + symbol_lookup[unit_def.special_symbol] = formatted_plural + + unit_types_temp[hash(dimensions)].append( + (unit_def.symbol, unit_def.special_symbol, formatted_singular, formatted_plural, unit_def.scale, dimensions) + ) + + unit_types[hash(dimensions)].append(formatted_plural) + + for mag in unit_def.magnitudes: + # Work out the combined symbol, accounts for unicode or not + combined_special_symbol = (mag.symbol if mag.special_symbol is None else mag.special_symbol) + ( + unit_def.symbol if unit_def.special_symbol is None else unit_def.special_symbol + ) + + combined_symbol = mag.symbol + unit_def.symbol + + # Combined unit name + combined_name_singular = f"{mag.name}{formatted_singular}" + combined_name_plural = f"{mag.name}{formatted_plural}" + + combined_scale = unit_def.scale * mag.scale + + latex_symbol = None + if unit_def.latex_symbol is not None and mag.latex_symbol is not None: + latex_symbol = f"{{{mag.latex_symbol}}}{unit_def.latex_symbol}" + elif unit_def.latex_symbol is not None: + latex_symbol = f"{mag.symbol}{unit_def.latex_symbol}" + elif mag.latex_symbol is not None: + latex_symbol = f"{{{mag.latex_symbol}}}{unit_def.symbol}" + + # Units + dimensions = Dimensions( + unit_def.length, + unit_def.time, + unit_def.mass, + unit_def.current, + unit_def.temperature, + unit_def.moles_hint, + unit_def.angle_hint, + ) + fid.write( + f"{combined_name_plural} = NamedUnit({combined_scale}, " + f"Dimensions({unit_def.length}, {unit_def.time}, {unit_def.mass}, {unit_def.current}, {unit_def.temperature}, {unit_def.moles_hint}, {unit_def.angle_hint})," + f"name='{combined_name_plural}'," + f"ascii_symbol='{combined_symbol}'," + f"{'' if latex_symbol is None else f"latex_symbol=r'{latex_symbol}',"}" + f"symbol='{combined_special_symbol}')\n" + ) + + symbol_lookup[combined_symbol] = combined_name_plural + symbol_lookup[combined_special_symbol] = combined_name_plural + + unit_types_temp[hash(dimensions)].append( + ( + combined_symbol, + combined_special_symbol, + combined_name_singular, + combined_name_plural, + combined_scale, + dimensions, + ) + ) + + unit_types[hash(dimensions)].append(combined_name_plural) + + # + # Higher dimensioned types + # + + length_units = unit_types_temp[hash(Dimensions(length=1))] + time_units = unit_types_temp[hash(Dimensions(time=1))] + mass_units = unit_types_temp[hash(Dimensions(mass=1))] + amount_units = unit_types_temp[hash(Dimensions(moles_hint=1))] + + # Length based + for symbol, special_symbol, singular, plural, scale, _ in length_units: + for prefix, power, name, unicode_suffix in [ + ("square_", 2, plural, "²"), + ("cubic_", 3, plural, "³"), + ("per_", -1, singular, "⁻¹"), + ("per_square_", -2, singular, "⁻²"), + ("per_cubic_", -3, singular, "⁻³"), + ]: + dimensions = Dimensions(length=power) + unit_name = prefix + name + unit_special_symbol = (symbol if special_symbol is None else special_symbol) + unicode_suffix + unit_symbol = symbol + f"^{power}" + fid.write( + f"{unit_name} = NamedUnit({scale**power}, Dimensions(length={power}), " + f"name='{unit_name}', " + f"ascii_symbol='{unit_symbol}', " + f"symbol='{unit_special_symbol}')\n" + ) + + unit_types[hash(dimensions)].append(unit_name) + + # Speed and acceleration + for length_symbol, length_special_symbol, _, length_name, length_scale, _ in length_units: + for time_symbol, time_special_symbol, time_name, _, time_scale, _ in time_units: + speed_name = length_name + "_per_" + time_name + accel_name = length_name + "_per_square_" + time_name + + speed_dimensions = Dimensions(length=1, time=-1) + accel_dimensions = Dimensions(length=1, time=-2) + + length_special = length_special_symbol if length_special_symbol is not None else length_symbol + time_special = time_special_symbol if time_special_symbol is not None else time_symbol + + fid.write( + f"{speed_name} " + f"= NamedUnit({length_scale / time_scale}, " + f"Dimensions(length=1, time=-1), " + f"name='{speed_name}', " + f"ascii_symbol='{length_symbol}/{time_symbol}', " + f"symbol='{length_special}{time_special}⁻¹')\n" + ) + + fid.write( + f"{accel_name} = NamedUnit({length_scale / time_scale**2}, " + f"Dimensions(length=1, time=-2), " + f"name='{accel_name}', " + f"ascii_symbol='{length_symbol}/{time_symbol}^2', " + f"symbol='{length_special}{time_special}⁻²')\n" + ) + + unit_types[hash(speed_dimensions)].append(speed_name) + unit_types[hash(accel_dimensions)].append(accel_name) + + # Density + for length_symbol, length_special_symbol, length_name, _, length_scale, _ in length_units: + for mass_symbol, mass_special_symbol, _, mass_name, mass_scale, _ in mass_units: + name = mass_name + "_per_cubic_" + length_name + + dimensions = Dimensions(length=-3, mass=1) + + mass_special = mass_symbol if mass_special_symbol is None else mass_special_symbol + length_special = length_symbol if length_special_symbol is None else length_special_symbol + + fid.write( + f"{name} " + f"= NamedUnit({mass_scale / length_scale**3}, " + f"Dimensions(length=-3, mass=1), " + f"name='{name}', " + f"ascii_symbol='{mass_symbol} {length_symbol}^-3', " + f"symbol='{mass_special}{length_special}⁻³')\n" + ) + + unit_types[hash(dimensions)].append(name) + + # Concentration + for length_symbol, length_special_symbol, length_name, _, length_scale, _ in length_units: + for amount_symbol, amount_special_symbol, _, amount_name, amount_scale, _ in amount_units: + name = amount_name + "_per_cubic_" + length_name + + dimensions = Dimensions(length=-3, moles_hint=1) + + length_special = length_symbol if length_special_symbol is None else length_special_symbol + amount_special = amount_symbol if amount_special_symbol is None else amount_special_symbol + + fid.write( + f"{name} " + f"= NamedUnit({amount_scale / length_scale**3}, " + f"Dimensions(length=-3, moles_hint=1), " + f"name='{name}', " + f"ascii_symbol='{amount_symbol} {length_symbol}^-3', " + f"symbol='{amount_special}{length_special}⁻³')\n" + ) + + unit_types[hash(dimensions)].append(name) + + # TODO: Torque, Momentum, Entropy + + # + # Add aliases to symbol lookup table + # + + # Apply the alias transforms sequentially + for aliases in [aliases_1, aliases_2]: + for base_name in aliases: + alias_list = aliases[base_name] + for alias in alias_list: + symbol_lookup[alias] = symbol_lookup[base_name] + + # + # Write out the symbol lookup table + # + fid.write("\n#\n# Lookup table from symbols to units\n#\n\n") + fid.write("symbol_lookup = {\n") + for k in symbol_lookup: + if k != "none": + fid.write(f' "{k}": {symbol_lookup[k]},\n') + fid.write("}\n\n") + + # + # Collections of units by type + # + + dimension_names = [ + ("length", Dimensions(length=1)), + ("area", Dimensions(length=2)), + ("volume", Dimensions(length=3)), + ("inverse_length", Dimensions(length=-1)), + ("inverse_area", Dimensions(length=-2)), + ("inverse_volume", Dimensions(length=-3)), + ("time", Dimensions(time=1)), + ("rate", Dimensions(time=-1)), + ("speed", Dimensions(length=1, time=-1)), + ("acceleration", Dimensions(length=1, time=-2)), + ("density", Dimensions(length=-3, mass=1)), + ("force", Dimensions(1, -2, 1, 0, 0)), + ("pressure", Dimensions(-1, -2, 1, 0, 0)), + ("energy", Dimensions(2, -2, 1, 0, 0)), + ("power", Dimensions(2, -3, 1, 0, 0)), + ("charge", Dimensions(0, 1, 0, 1, 0)), + ("potential", Dimensions(2, -3, 1, -1, 0)), + ("resistance", Dimensions(2, -3, 1, -2, 0)), + ("capacitance", Dimensions(-2, 4, -1, 2, 0)), + ("conductance", Dimensions(-2, 3, -1, 2, 0)), + ("magnetic_flux", Dimensions(2, -2, 1, -1, 0)), + ("magnetic_flux_density", Dimensions(0, -2, 1, -1, 0)), + ("inductance", Dimensions(2, -2, 1, -2, 0)), + ("temperature", Dimensions(temperature=1)), + ("dimensionless", Dimensions()), + ("angle", Dimensions(angle_hint=1)), + ("solid_angle", Dimensions(angle_hint=2)), + ("amount", Dimensions(moles_hint=1)), + ("concentration", Dimensions(length=-3, moles_hint=1)), + ] + + fid.write("\n#\n# Units by type\n#\n\n") + + for dimension_name, dimensions in dimension_names: + fid.write(f"\n{dimension_name} = UnitGroup(\n name = '{dimension_name}',\n units = [\n") + + for unit_name in unit_types[hash(dimensions)]: + fid.write(" " + unit_name + ",\n") + + fid.write("])\n") + + # List of dimensions + fid.write("\n\n") + fid.write("unit_group_names = [\n") + for dimension_name, _ in dimension_names: + fid.write(f" '{dimension_name}',\n") + fid.write("]\n\n") + + fid.write("unit_groups = {\n") + for dimension_name, _ in dimension_names: + fid.write(f" '{dimension_name}': {dimension_name},\n") + fid.write("}\n\n") + + # Load the units module + units = importlib.import_module(".units", "sasdata.quantities") + # Execute the code that we've created within that module + exec(fid.getvalue(), units.__dict__) + + +with StringIO() as fid: + si_unit_names = [values.plural for values in base_si_units + derived_si_units if values.plural != "grams"] + [ + "kilograms" + ] + si_unit_names.sort() + + fid.write("from sasdata.quantities.units import (\n") + + for name in si_unit_names: + fid.write(f" {name},\n") + + fid.write(")\n") + fid.write("\nall_si = [\n") + + for name in si_unit_names: + fid.write(f" {name},\n") + + fid.write("]\n") + + # Load the units module + si = importlib.import_module(".si", "sasdata.quantities") + # Execute the code that we've created within that module + exec(fid.getvalue(), si.__dict__) diff --git a/sasdata/quantities/_autogen_warning.py b/sasdata/quantities/_autogen_warning.py deleted file mode 100644 index 9a8c9372..00000000 --- a/sasdata/quantities/_autogen_warning.py +++ /dev/null @@ -1,79 +0,0 @@ -warning_text = """ - -This file is autogenerated! - -Do not edit by hand, instead edit the files that build it (%s) - - - - -DDDDDDDDDDDDD NNNNNNNN NNNNNNNN tttt -D::::::::::::DDD N:::::::N N::::::N ttt:::t -D:::::::::::::::DD N::::::::N N::::::N t:::::t -DDD:::::DDDDD:::::D N:::::::::N N::::::N t:::::t - D:::::D D:::::D ooooooooooo N::::::::::N N::::::N ooooooooooo ttttttt:::::ttttttt - D:::::D D:::::D oo:::::::::::oo N:::::::::::N N::::::N oo:::::::::::oo t:::::::::::::::::t - D:::::D D:::::Do:::::::::::::::o N:::::::N::::N N::::::No:::::::::::::::ot:::::::::::::::::t - D:::::D D:::::Do:::::ooooo:::::o N::::::N N::::N N::::::No:::::ooooo:::::otttttt:::::::tttttt - D:::::D D:::::Do::::o o::::o N::::::N N::::N:::::::No::::o o::::o t:::::t - D:::::D D:::::Do::::o o::::o N::::::N N:::::::::::No::::o o::::o t:::::t - D:::::D D:::::Do::::o o::::o N::::::N N::::::::::No::::o o::::o t:::::t - D:::::D D:::::D o::::o o::::o N::::::N N:::::::::No::::o o::::o t:::::t tttttt -DDD:::::DDDDD:::::D o:::::ooooo:::::o N::::::N N::::::::No:::::ooooo:::::o t::::::tttt:::::t -D:::::::::::::::DD o:::::::::::::::o N::::::N N:::::::No:::::::::::::::o tt::::::::::::::t -D::::::::::::DDD oo:::::::::::oo N::::::N N::::::N oo:::::::::::oo tt:::::::::::tt -DDDDDDDDDDDDD ooooooooooo NNNNNNNN NNNNNNN ooooooooooo ttttttttttt - - - - - - - - - dddddddd -EEEEEEEEEEEEEEEEEEEEEE d::::::d iiii tttt BBBBBBBBBBBBBBBBB -E::::::::::::::::::::E d::::::d i::::i ttt:::t B::::::::::::::::B -E::::::::::::::::::::E d::::::d iiii t:::::t B::::::BBBBBB:::::B -EE::::::EEEEEEEEE::::E d:::::d t:::::t BB:::::B B:::::B - E:::::E EEEEEE ddddddddd:::::d iiiiiiittttttt:::::ttttttt B::::B B:::::Byyyyyyy yyyyyyy - E:::::E dd::::::::::::::d i:::::it:::::::::::::::::t B::::B B:::::B y:::::y y:::::y - E::::::EEEEEEEEEE d::::::::::::::::d i::::it:::::::::::::::::t B::::BBBBBB:::::B y:::::y y:::::y - E:::::::::::::::E d:::::::ddddd:::::d i::::itttttt:::::::tttttt B:::::::::::::BB y:::::y y:::::y - E:::::::::::::::E d::::::d d:::::d i::::i t:::::t B::::BBBBBB:::::B y:::::y y:::::y - E::::::EEEEEEEEEE d:::::d d:::::d i::::i t:::::t B::::B B:::::B y:::::y y:::::y - E:::::E d:::::d d:::::d i::::i t:::::t B::::B B:::::B y:::::y:::::y - E:::::E EEEEEEd:::::d d:::::d i::::i t:::::t tttttt B::::B B:::::B y:::::::::y -EE::::::EEEEEEEE:::::Ed::::::ddddd::::::ddi::::::i t::::::tttt:::::t BB:::::BBBBBB::::::B y:::::::y -E::::::::::::::::::::E d:::::::::::::::::di::::::i tt::::::::::::::t B:::::::::::::::::B y:::::y -E::::::::::::::::::::E d:::::::::ddd::::di::::::i tt:::::::::::tt B::::::::::::::::B y:::::y -EEEEEEEEEEEEEEEEEEEEEE ddddddddd dddddiiiiiiii ttttttttttt BBBBBBBBBBBBBBBBB y:::::y - y:::::y - y:::::y - y:::::y - y:::::y - yyyyyyy - - - - dddddddd -HHHHHHHHH HHHHHHHHH d::::::d -H:::::::H H:::::::H d::::::d -H:::::::H H:::::::H d::::::d -HH::::::H H::::::HH d:::::d - H:::::H H:::::H aaaaaaaaaaaaa nnnn nnnnnnnn ddddddddd:::::d - H:::::H H:::::H a::::::::::::a n:::nn::::::::nn dd::::::::::::::d - H::::::HHHHH::::::H aaaaaaaaa:::::an::::::::::::::nn d::::::::::::::::d - H:::::::::::::::::H a::::ann:::::::::::::::nd:::::::ddddd:::::d - H:::::::::::::::::H aaaaaaa:::::a n:::::nnnn:::::nd::::::d d:::::d - H::::::HHHHH::::::H aa::::::::::::a n::::n n::::nd:::::d d:::::d - H:::::H H:::::H a::::aaaa::::::a n::::n n::::nd:::::d d:::::d - H:::::H H:::::H a::::a a:::::a n::::n n::::nd:::::d d:::::d -HH::::::H H::::::HHa::::a a:::::a n::::n n::::nd::::::ddddd::::::dd -H:::::::H H:::::::Ha:::::aaaa::::::a n::::n n::::n d:::::::::::::::::d -H:::::::H H:::::::H a::::::::::aa:::a n::::n n::::n d:::::::::ddd::::d -HHHHHHHHH HHHHHHHHH aaaaaaaaaa aaaa nnnnnn nnnnnn ddddddddd ddddd - - - -""" diff --git a/sasdata/quantities/_build_tables.py b/sasdata/quantities/_build_tables.py deleted file mode 100644 index ded60c5d..00000000 --- a/sasdata/quantities/_build_tables.py +++ /dev/null @@ -1,454 +0,0 @@ -""" -Builds a data file containing details of units -""" - -from collections import defaultdict, namedtuple - -import numpy as np -from _autogen_warning import warning_text -from _units_base import Dimensions - -Magnitude = namedtuple("Magnitude", ["symbol", "special_symbol", "latex_symbol", "name", "scale"]) - -bigger_magnitudes: list[Magnitude] = [ - Magnitude("E", None, None, "exa", 1e18), - Magnitude("P", None, None, "peta", 1e15), - Magnitude("T", None, None, "tera", 1e12), - Magnitude("G", None, None, "giga", 1e9), - Magnitude("M", None, None, "mega", 1e6), - Magnitude("k", None, None, "kilo", 1e3) ] - -smaller_magnitudes: list[Magnitude] = [ - Magnitude("m", None, None, "milli", 1e-3), - Magnitude("u", "µ", r"\mu", "micro", 1e-6), - Magnitude("n", None, None, "nano", 1e-9), - Magnitude("p", None, None, "pico", 1e-12), - Magnitude("f", None, None, "femto", 1e-15), - Magnitude("a", None, None, "atto", 1e-18)] - -unusual_magnitudes: list[Magnitude] = [ - Magnitude("d", None, None, "deci", 1e-1), - Magnitude("c", None, None, "centi", 1e-2) -] - -all_magnitudes = bigger_magnitudes + smaller_magnitudes - -UnitData = namedtuple("UnitData", ["symbol", "special_symbol", "latex_symbol", "singular", "plural", "scale", "length", "time", "mass", "current", "temperature", "moles_hint", "angle_hint", "magnitudes"]) - -# Length, time, mass, current, temperature -base_si_units = [ - UnitData("m", None, None, "meter", "meters", 1, 1, 0, 0, 0, 0, 0, 0, all_magnitudes + unusual_magnitudes), - UnitData("s", None, None, "second", "seconds", 1, 0, 1, 0, 0, 0, 0, 0, smaller_magnitudes), - UnitData("g", None, None, "gram", "grams", 1e-3, 0, 0, 1, 0, 0, 0, 0, all_magnitudes), - UnitData("A", None, None, "ampere", "amperes", 1, 0, 0, 0, 1, 0, 0, 0, all_magnitudes), - UnitData("K", None, None, "kelvin", "kelvin", 1, 0, 0, 0, 0, 1, 0, 0, all_magnitudes) ] - -derived_si_units = [ - UnitData("Hz", None, None, "hertz", "hertz", 1, 0, -1, 0, 0, 0, 0, 0, all_magnitudes), - UnitData("N", None, None, "newton", "newtons", 1, 1, -2, 1, 0, 0, 0, 0, all_magnitudes), - UnitData("Pa", None, None, "pascal", "pascals", 1, -1, -2, 1, 0, 0, 0, 0, all_magnitudes), - UnitData("J", None, None, "joule", "joules", 1, 2, -2, 1, 0, 0, 0, 0, all_magnitudes), - UnitData("W", None, None, "watt", "watts", 1, 2, -3, 1, 0, 0, 0, 0, all_magnitudes), - UnitData("C", None, None, "coulomb", "coulombs", 1, 0, 1, 0, 1, 0, 0, 0, all_magnitudes), - UnitData("V", None, None, "volts", "volts", 1, 2, -3, 1, -1, 0, 0, 0, all_magnitudes), - UnitData("Ohm", "Ω", r"\Omega", "ohm", "ohms", 1, 2, -3, 1, -2, 0, 0, 0, all_magnitudes), - UnitData("F", None, None, "farad", "farads", 1, -2, 4, -1, 2, 0, 0, 0, all_magnitudes), - UnitData("S", None, None, "siemens", "siemens", 1, -2, 3, -1, 2, 0, 0, 0, all_magnitudes), - UnitData("Wb", None, None, "weber", "webers", 1, 2, -2, 1, -1, 0, 0, 0, all_magnitudes), - UnitData("T", None, None, "tesla", "tesla", 1, 0, -2, 1, -1, 0, 0, 0, all_magnitudes), - UnitData("H", None, None, "henry", "henry", 1, 2, -2, 1, -2, 0, 0, 0, all_magnitudes), -] - -non_si_dimensioned_units: list[tuple[str, str | None, str, str, float, int, int, int, int, int, int, int, list]] = [ - UnitData("Ang", "Å", r"\AA", "angstrom", "angstroms", 1e-10, 1, 0, 0, 0, 0, 0, 0, []), - UnitData("micron", None, None, "micron", "microns", 1e-6, 1, 0, 0, 0, 0, 0, 0, []), - UnitData("min", None, None, "minute", "minutes", 60, 0, 1, 0, 0, 0, 0, 0, []), - UnitData("rpm", None, None, "revolutions per minute", "revolutions per minute", 1/60, 0, -1, 0, 0, 0, 0, 0, []), - UnitData("h", None, None, "hour", "hours", 3600, 0, 1, 0, 0, 0, 0, 0, []), - UnitData("d", None, None, "day", "days", 3600*24, 0, 1, 0, 0, 0, 0, 0, []), - UnitData("y", None, None, "year", "years", 3600*24*365.2425, 0, 1, 0, 0, 0, 0, 0, []), - UnitData("deg", None, None, "degree", "degrees", 180/np.pi, 0, 0, 0, 0, 0, 0, 1, []), - UnitData("rad", None, None, "radian", "radians", 1, 0, 0, 0, 0, 0, 0, 1, []), - UnitData("rot", None, None, "rotation", "rotations", 2*np.pi, 0, 0, 0, 0, 0, 0, 1, []), - UnitData("sr", None, None, "stradian", "stradians", 1, 0, 0, 0, 0, 0, 0, 2, []), - UnitData("l", None, None, "litre", "litres", 1e-3, 3, 0, 0, 0, 0, 0, 0, []), - UnitData("eV", None, None, "electronvolt", "electronvolts", 1.602176634e-19, 2, -2, 1, 0, 0, 0, 0, all_magnitudes), - UnitData("au", None, None, "atomic mass unit", "atomic mass units", 1.660538921e-27, 0, 0, 1, 0, 0, 0, 0, []), - UnitData("mol", None, None, "mole", "moles", 6.02214076e23, 0, 0, 0, 0, 0, 1, 0, smaller_magnitudes), - UnitData("kgForce", None, None, "kg force", "kg force", 9.80665, 1, -2, 1, 0, 0, 0, 0, []), - UnitData("C", None, None, "degree Celsius", "degrees Celsius", 1, 0, 0, 0, 0, 1, 0, 0, []), - UnitData("miles", None, None, "mile", "miles", 1760*3*0.3048, 1, 0, 0, 0, 0, 0, 0, []), - UnitData("yrd", None, None, "yard", "yards", 3*0.3048, 1, 0, 0, 0, 0, 0, 0, []), - UnitData("ft", None, None, "foot", "feet", 0.3048, 1, 0, 0, 0, 0, 0, 0, []), - UnitData("in", None, None, "inch", "inches", 0.0254, 1, 0, 0, 0, 0, 0, 0, []), - UnitData("lb", None, None, "pound", "pounds", 0.45359237, 0, 0, 1, 0, 0, 0, 0, []), - UnitData("lbf", None, None, "pound force", "pounds force", 4.448222, 1, -2, 1, 0, 0, 0, 0, []), - UnitData("oz", None, None, "ounce", "ounces", 0.45359237/16, 0, 0, 1, 0, 0, 0, 0, []), - UnitData("psi", None, None, "pound force per square inch", "pounds force per square inch", 4.448222/(0.0254**2), -1, -2, 1, 0, 0, 0, 0, []), -] - -non_si_dimensionless_units: list[tuple[str, str | None, str, str, float, int, int, int, int, int, int, int, list]] = [ - UnitData("none", None, None, "none", "none", 1, 0, 0, 0, 0, 0, 0, 0, []), - UnitData("percent", "%", r"\%", "percent", "percent", 0.01, 0, 0, 0, 0, 0, 0, 0, []) -] - -non_si_units = non_si_dimensioned_units + non_si_dimensionless_units - -# TODO: -# Add Hartree? Rydberg? Bohrs? -# Add CGS - -# Two stages of aliases, to make sure units don't get lost - -aliases_1 = { - "A": ["Amps", "amps"], - "C": ["Coulombs", "coulombs"] -} - -aliases_2 = { - "y": ["yr", "year"], - "d": ["day"], - "h": ["hr", "hour"], - "Ang": ["A", "Å"], - "au": ["amu"], - "percent": ["%"], - "deg": ["degr", "Deg", "degree", "degrees", "Degrees"], - "none": ["Counts", "counts", "cnts", "Cnts", "a.u.", "fraction", "Fraction"], - "K": ["C"] # Ugh, cansas -} - - - -all_units = base_si_units + derived_si_units + non_si_units - -encoding = "utf-8" - -def format_name(name: str): - return name.lower().replace(" ", "_") - -with open("units.py", 'w', encoding=encoding) as fid: - - # Write warning header - fid.write('"""'+(warning_text%"_build_tables.py, _units_base.py")+'"""') - - # Write in class definitions - fid.write("\n\n" - "#\n" - "# Included from _units_base.py\n" - "#\n\n") - - with open("_units_base.py") as base: - for line in base: - # unicode_superscript is a local module when called from - # _unit_tables.py but a submodule of sasdata.quantities - # when called from units.py. This condition patches the - # line when the copy is made. - if line.startswith("from unicode_superscript"): - fid.write(line.replace("from unicode_superscript", "\nfrom sasdata.quantities.unicode_superscript")) - else: - fid.write(line) - - # Write in unit definitions - fid.write("\n\n" - "#\n" - "# Specific units\n" - "#\n\n") - - symbol_lookup = {} - unit_types_temp = defaultdict(list) # Keep track of unit types - unit_types = defaultdict(list) - - for unit_def in all_units: - - formatted_plural = format_name(unit_def.plural) - formatted_singular = format_name(unit_def.singular) - - dimensions = Dimensions(unit_def.length, unit_def.time, unit_def.mass, unit_def.current, unit_def.temperature, unit_def.moles_hint, unit_def.angle_hint) - fid.write(f"{formatted_plural} = NamedUnit({unit_def.scale}, Dimensions({unit_def.length}, {unit_def.time}, {unit_def.mass}, {unit_def.current}, {unit_def.temperature}, {unit_def.moles_hint}, {unit_def.angle_hint})," - f"name='{formatted_plural}'," - f"ascii_symbol='{unit_def.symbol}'," - f"{'' if unit_def.latex_symbol is None else f"""latex_symbol=r'{unit_def.latex_symbol}',""" }" - f"symbol='{unit_def.symbol if unit_def.special_symbol is None else unit_def.special_symbol}')\n") - - symbol_lookup[unit_def.symbol] = formatted_plural - if unit_def.special_symbol is not None: - symbol_lookup[unit_def.special_symbol] = formatted_plural - - unit_types_temp[hash(dimensions)].append( - (unit_def.symbol, unit_def.special_symbol, formatted_singular, formatted_plural, unit_def.scale, dimensions)) - - unit_types[hash(dimensions)].append(formatted_plural) - - for mag in unit_def.magnitudes: - - # Work out the combined symbol, accounts for unicode or not - combined_special_symbol = (mag.symbol if mag.special_symbol is None else mag.special_symbol) + \ - (unit_def.symbol if unit_def.special_symbol is None else unit_def.special_symbol) - - combined_symbol = mag.symbol + unit_def.symbol - - # Combined unit name - combined_name_singular = f"{mag.name}{formatted_singular}" - combined_name_plural = f"{mag.name}{formatted_plural}" - - combined_scale = unit_def.scale * mag.scale - - latex_symbol = None - if unit_def.latex_symbol is not None and mag.latex_symbol is not None: - latex_symbol = f"{{{mag.latex_symbol}}}{unit_def.latex_symbol}" - elif unit_def.latex_symbol is not None: - latex_symbol = f"{mag.symbol}{unit_def.latex_symbol}" - elif mag.latex_symbol is not None: - latex_symbol = f"{{{mag.latex_symbol}}}{unit_def.symbol}" - - # Units - dimensions = Dimensions(unit_def.length, unit_def.time, unit_def.mass, unit_def.current, unit_def.temperature, unit_def.moles_hint, unit_def.angle_hint) - fid.write(f"{combined_name_plural} = NamedUnit({combined_scale}, " - f"Dimensions({unit_def.length}, {unit_def.time}, {unit_def.mass}, {unit_def.current}, {unit_def.temperature}, {unit_def.moles_hint}, {unit_def.angle_hint})," - f"name='{combined_name_plural}'," - f"ascii_symbol='{combined_symbol}'," - f"{'' if latex_symbol is None else f"""latex_symbol=r'{latex_symbol}',""" }" - f"symbol='{combined_special_symbol}')\n") - - symbol_lookup[combined_symbol] = combined_name_plural - symbol_lookup[combined_special_symbol] = combined_name_plural - - unit_types_temp[hash(dimensions)].append( - (combined_symbol, combined_special_symbol, combined_name_singular, - combined_name_plural, combined_scale, dimensions)) - - unit_types[hash(dimensions)].append(combined_name_plural) - - # - # Higher dimensioned types - # - - length_units = unit_types_temp[hash(Dimensions(length=1))] - time_units = unit_types_temp[hash(Dimensions(time=1))] - mass_units = unit_types_temp[hash(Dimensions(mass=1))] - amount_units = unit_types_temp[hash(Dimensions(moles_hint=1))] - - # Length based - for symbol, special_symbol, singular, plural, scale, _ in length_units: - for prefix, power, name, unicode_suffix in [ - ("square_", 2, plural, '²'), - ("cubic_", 3, plural, '³'), - ("per_", -1, singular, '⁻¹'), - ("per_square_", -2, singular,'⁻²'), - ("per_cubic_", -3, singular,'⁻³')]: - - dimensions = Dimensions(length=power) - unit_name = prefix + name - unit_special_symbol = (symbol if special_symbol is None else special_symbol) + unicode_suffix - unit_symbol = symbol + f"^{power}" - fid.write(f"{unit_name} = NamedUnit({scale**power}, Dimensions(length={power}), " - f"name='{unit_name}', " - f"ascii_symbol='{unit_symbol}', " - f"symbol='{unit_special_symbol}')\n") - - unit_types[hash(dimensions)].append(unit_name) - - # Speed and acceleration - for length_symbol, length_special_symbol, _, length_name, length_scale, _ in length_units: - for time_symbol, time_special_symbol, time_name, _, time_scale, _ in time_units: - speed_name = length_name + "_per_" + time_name - accel_name = length_name + "_per_square_" + time_name - - speed_dimensions = Dimensions(length=1, time=-1) - accel_dimensions = Dimensions(length=1, time=-2) - - length_special = length_special_symbol if length_special_symbol is not None else length_symbol - time_special = time_special_symbol if time_special_symbol is not None else time_symbol - - fid.write(f"{speed_name} " - f"= NamedUnit({length_scale / time_scale}, " - f"Dimensions(length=1, time=-1), " - f"name='{speed_name}', " - f"ascii_symbol='{length_symbol}/{time_symbol}', " - f"symbol='{length_special}{time_special}⁻¹')\n") - - fid.write(f"{accel_name} = NamedUnit({length_scale / time_scale**2}, " - f"Dimensions(length=1, time=-2), " - f"name='{accel_name}', " - f"ascii_symbol='{length_symbol}/{time_symbol}^2', " - f"symbol='{length_special}{time_special}⁻²')\n") - - unit_types[hash(speed_dimensions)].append(speed_name) - unit_types[hash(accel_dimensions)].append(accel_name) - - # Density - for length_symbol, length_special_symbol, length_name, _, length_scale, _ in length_units: - for mass_symbol, mass_special_symbol, _, mass_name, mass_scale, _ in mass_units: - - name = mass_name + "_per_cubic_" + length_name - - dimensions = Dimensions(length=-3, mass=1) - - mass_special = mass_symbol if mass_special_symbol is None else mass_special_symbol - length_special = length_symbol if length_special_symbol is None else length_special_symbol - - fid.write(f"{name} " - f"= NamedUnit({mass_scale / length_scale**3}, " - f"Dimensions(length=-3, mass=1), " - f"name='{name}', " - f"ascii_symbol='{mass_symbol} {length_symbol}^-3', " - f"symbol='{mass_special}{length_special}⁻³')\n") - - unit_types[hash(dimensions)].append(name) - - # Concentration - for length_symbol, length_special_symbol, length_name, _, length_scale, _ in length_units: - for amount_symbol, amount_special_symbol, _, amount_name, amount_scale, _ in amount_units: - - name = amount_name + "_per_cubic_" + length_name - - dimensions = Dimensions(length=-3, moles_hint=1) - - length_special = length_symbol if length_special_symbol is None else length_special_symbol - amount_special = amount_symbol if amount_special_symbol is None else amount_special_symbol - - fid.write(f"{name} " - f"= NamedUnit({amount_scale / length_scale**3}, " - f"Dimensions(length=-3, moles_hint=1), " - f"name='{name}', " - f"ascii_symbol='{amount_symbol} {length_symbol}^-3', " - f"symbol='{amount_special}{length_special}⁻³')\n") - - unit_types[hash(dimensions)].append(name) - - # TODO: Torque, Momentum, Entropy - - # - # Add aliases to symbol lookup table - # - - # Apply the alias transforms sequentially - for aliases in [aliases_1, aliases_2]: - for base_name in aliases: - alias_list = aliases[base_name] - for alias in alias_list: - symbol_lookup[alias] = symbol_lookup[base_name] - - # - # Write out the symbol lookup table - # - fid.write("\n#\n# Lookup table from symbols to units\n#\n\n") - fid.write("symbol_lookup = {\n") - for k in symbol_lookup: - if k != "none": - fid.write(f' "{k}": {symbol_lookup[k]},\n') - fid.write("}\n\n") - - # - # Collections of units by type - # - - dimension_names = [ - ("length", Dimensions(length=1)), - ("area", Dimensions(length=2)), - ("volume", Dimensions(length=3)), - ("inverse_length", Dimensions(length=-1)), - ("inverse_area", Dimensions(length=-2)), - ("inverse_volume", Dimensions(length=-3)), - ("time", Dimensions(time=1)), - ("rate", Dimensions(time=-1)), - ("speed", Dimensions(length=1, time=-1)), - ("acceleration", Dimensions(length=1, time=-2)), - ("density", Dimensions(length=-3, mass=1)), - ("force", Dimensions(1, -2, 1, 0, 0)), - ("pressure", Dimensions(-1, -2, 1, 0, 0)), - ("energy", Dimensions(2, -2, 1, 0, 0)), - ("power", Dimensions(2, -3, 1, 0, 0)), - ("charge", Dimensions(0, 1, 0, 1, 0)), - ("potential", Dimensions(2, -3, 1, -1, 0)), - ("resistance", Dimensions(2, -3, 1, -2, 0)), - ("capacitance", Dimensions(-2, 4, -1, 2, 0)), - ("conductance", Dimensions(-2, 3, -1, 2, 0)), - ("magnetic_flux", Dimensions(2, -2, 1, -1, 0)), - ("magnetic_flux_density", Dimensions(0, -2, 1, -1, 0)), - ("inductance", Dimensions(2, -2, 1, -2, 0)), - ("temperature", Dimensions(temperature=1)), - ("dimensionless", Dimensions()), - ("angle", Dimensions(angle_hint=1)), - ("solid_angle", Dimensions(angle_hint=2)), - ("amount", Dimensions(moles_hint=1)), - ("concentration", Dimensions(length=-3, moles_hint=1)), - ] - - fid.write("\n#\n# Units by type\n#\n\n") - - for dimension_name, dimensions in dimension_names: - - - fid.write(f"\n" - f"{dimension_name} = UnitGroup(\n" - f" name = '{dimension_name}',\n" - f" units = [\n") - - for unit_name in unit_types[hash(dimensions)]: - fid.write(" " + unit_name + ",\n") - - fid.write("])\n") - - - # List of dimensions - fid.write("\n\n") - fid.write("unit_group_names = [\n") - for dimension_name, _ in dimension_names: - fid.write(f" '{dimension_name}',\n") - fid.write("]\n\n") - - fid.write("unit_groups = {\n") - for dimension_name, _ in dimension_names: - fid.write(f" '{dimension_name}': {dimension_name},\n") - fid.write("}\n\n") - - -with open("accessors.py", 'w', encoding=encoding) as fid: - - - fid.write('"""'+(warning_text%"_build_tables.py, _accessor_base.py")+'"""\n\n') - - with open("_accessor_base.py") as base: - for line in base: - fid.write(line) - - for dimension_name, dimensions in dimension_names: - - accessor_name = dimension_name.capitalize().replace("_", "") + "Accessor" - - fid.write(f"\n" - f"class {accessor_name}[T](QuantityAccessor[T]):\n" - f" dimension_name = '{dimension_name}'\n" - f"\n") - - for unit_name in unit_types[hash(dimensions)]: - fid.write(f" @property\n" - f" def {unit_name}(self) -> T:\n" - f" quantity = self.quantity\n" - f" if quantity is None:\n" - f" return None\n" - f" else:\n" - f" return quantity.in_units_of(units.{unit_name})\n" - f"\n") - - fid.write("\n") - -with open("si.py", 'w') as fid: - - si_unit_names = [values.plural for values in base_si_units + derived_si_units if values.plural != "grams"] + ["kilograms"] - si_unit_names.sort() - - fid.write('"""'+(warning_text%"_build_tables.py")+'"""\n\n') - fid.write("from sasdata.quantities.units import (\n") - - for name in si_unit_names: - fid.write(f" {name},\n") - - fid.write(")\n") - fid.write("\nall_si = [\n") - - for name in si_unit_names: - fid.write(f" {name},\n") - - fid.write("]\n") diff --git a/sasdata/quantities/_units_base.py b/sasdata/quantities/_units_base.py index a1865778..681857ca 100644 --- a/sasdata/quantities/_units_base.py +++ b/sasdata/quantities/_units_base.py @@ -3,8 +3,17 @@ from typing import Self import numpy as np -from unicode_superscript import int_as_unicode_superscript # type: ignore[import-untyped] +_ascii_version = "0123456789-" +_unicode_version = "⁰¹²³⁴⁵⁶⁷⁸⁹⁻" + +def int_as_unicode_superscript(number: int): + string = str(number) + + for old, new in zip(_ascii_version, _unicode_version): + string = string.replace(old, new) + + return string class DimensionError(Exception): pass diff --git a/sasdata/quantities/accessors.py b/sasdata/quantities/accessors.py deleted file mode 100644 index 159d33d4..00000000 --- a/sasdata/quantities/accessors.py +++ /dev/null @@ -1,10745 +0,0 @@ -""" - -This file is autogenerated! - -Do not edit by hand, instead edit the files that build it (_build_tables.py, _accessor_base.py) - - - - -DDDDDDDDDDDDD NNNNNNNN NNNNNNNN tttt -D::::::::::::DDD N:::::::N N::::::N ttt:::t -D:::::::::::::::DD N::::::::N N::::::N t:::::t -DDD:::::DDDDD:::::D N:::::::::N N::::::N t:::::t - D:::::D D:::::D ooooooooooo N::::::::::N N::::::N ooooooooooo ttttttt:::::ttttttt - D:::::D D:::::D oo:::::::::::oo N:::::::::::N N::::::N oo:::::::::::oo t:::::::::::::::::t - D:::::D D:::::Do:::::::::::::::o N:::::::N::::N N::::::No:::::::::::::::ot:::::::::::::::::t - D:::::D D:::::Do:::::ooooo:::::o N::::::N N::::N N::::::No:::::ooooo:::::otttttt:::::::tttttt - D:::::D D:::::Do::::o o::::o N::::::N N::::N:::::::No::::o o::::o t:::::t - D:::::D D:::::Do::::o o::::o N::::::N N:::::::::::No::::o o::::o t:::::t - D:::::D D:::::Do::::o o::::o N::::::N N::::::::::No::::o o::::o t:::::t - D:::::D D:::::D o::::o o::::o N::::::N N:::::::::No::::o o::::o t:::::t tttttt -DDD:::::DDDDD:::::D o:::::ooooo:::::o N::::::N N::::::::No:::::ooooo:::::o t::::::tttt:::::t -D:::::::::::::::DD o:::::::::::::::o N::::::N N:::::::No:::::::::::::::o tt::::::::::::::t -D::::::::::::DDD oo:::::::::::oo N::::::N N::::::N oo:::::::::::oo tt:::::::::::tt -DDDDDDDDDDDDD ooooooooooo NNNNNNNN NNNNNNN ooooooooooo ttttttttttt - - - - - - - - - dddddddd -EEEEEEEEEEEEEEEEEEEEEE d::::::d iiii tttt BBBBBBBBBBBBBBBBB -E::::::::::::::::::::E d::::::d i::::i ttt:::t B::::::::::::::::B -E::::::::::::::::::::E d::::::d iiii t:::::t B::::::BBBBBB:::::B -EE::::::EEEEEEEEE::::E d:::::d t:::::t BB:::::B B:::::B - E:::::E EEEEEE ddddddddd:::::d iiiiiiittttttt:::::ttttttt B::::B B:::::Byyyyyyy yyyyyyy - E:::::E dd::::::::::::::d i:::::it:::::::::::::::::t B::::B B:::::B y:::::y y:::::y - E::::::EEEEEEEEEE d::::::::::::::::d i::::it:::::::::::::::::t B::::BBBBBB:::::B y:::::y y:::::y - E:::::::::::::::E d:::::::ddddd:::::d i::::itttttt:::::::tttttt B:::::::::::::BB y:::::y y:::::y - E:::::::::::::::E d::::::d d:::::d i::::i t:::::t B::::BBBBBB:::::B y:::::y y:::::y - E::::::EEEEEEEEEE d:::::d d:::::d i::::i t:::::t B::::B B:::::B y:::::y y:::::y - E:::::E d:::::d d:::::d i::::i t:::::t B::::B B:::::B y:::::y:::::y - E:::::E EEEEEEd:::::d d:::::d i::::i t:::::t tttttt B::::B B:::::B y:::::::::y -EE::::::EEEEEEEE:::::Ed::::::ddddd::::::ddi::::::i t::::::tttt:::::t BB:::::BBBBBB::::::B y:::::::y -E::::::::::::::::::::E d:::::::::::::::::di::::::i tt::::::::::::::t B:::::::::::::::::B y:::::y -E::::::::::::::::::::E d:::::::::ddd::::di::::::i tt:::::::::::tt B::::::::::::::::B y:::::y -EEEEEEEEEEEEEEEEEEEEEE ddddddddd dddddiiiiiiii ttttttttttt BBBBBBBBBBBBBBBBB y:::::y - y:::::y - y:::::y - y:::::y - y:::::y - yyyyyyy - - - - dddddddd -HHHHHHHHH HHHHHHHHH d::::::d -H:::::::H H:::::::H d::::::d -H:::::::H H:::::::H d::::::d -HH::::::H H::::::HH d:::::d - H:::::H H:::::H aaaaaaaaaaaaa nnnn nnnnnnnn ddddddddd:::::d - H:::::H H:::::H a::::::::::::a n:::nn::::::::nn dd::::::::::::::d - H::::::HHHHH::::::H aaaaaaaaa:::::an::::::::::::::nn d::::::::::::::::d - H:::::::::::::::::H a::::ann:::::::::::::::nd:::::::ddddd:::::d - H:::::::::::::::::H aaaaaaa:::::a n:::::nnnn:::::nd::::::d d:::::d - H::::::HHHHH::::::H aa::::::::::::a n::::n n::::nd:::::d d:::::d - H:::::H H:::::H a::::aaaa::::::a n::::n n::::nd:::::d d:::::d - H:::::H H:::::H a::::a a:::::a n::::n n::::nd:::::d d:::::d -HH::::::H H::::::HHa::::a a:::::a n::::n n::::nd::::::ddddd::::::dd -H:::::::H H:::::::Ha:::::aaaa::::::a n::::n n::::n d:::::::::::::::::d -H:::::::H H:::::::H a::::::::::aa:::a n::::n n::::n d:::::::::ddd::::d -HHHHHHHHH HHHHHHHHH aaaaaaaaaa aaaa nnnnnn nnnnnn ddddddddd ddddd - - - -""" - -from typing import TypeVar - -import sasdata.quantities.units as units -from sasdata.data_backing import Dataset, Group -from sasdata.quantities.quantity import Quantity -from sasdata.quantities.unit_parser import parse_unit -from sasdata.quantities.units import Unit - - -# logger = logging.getLogger("Accessors") -class LoggerDummy: - def info(self, data): - print(data) -logger = LoggerDummy() - -DataType = TypeVar("DataType") -OutputType = TypeVar("OutputType") - - -class AccessorTarget: - def __init__(self, data: Group, verbose=False, prefix_tokens: tuple=()): - self._data = data - self.verbose = verbose - - self.prefix_tokens = list(prefix_tokens) - - def with_path_prefix(self, path_prexix: str): - """ Get an accessor that looks at a subtree of the metadata with the supplied prefix - - For example, accessors aiming at a.b, when the target it c.d will look at c.d.a.b - """ - return AccessorTarget(self._data, - verbose=self.verbose, - prefix_tokens=tuple(self.prefix_tokens + [path_prexix])) - - def get_value(self, path: str): - - tokens = self.prefix_tokens + path.split(".") - - if self.verbose: - logger.info(f"Finding: {path}") - logger.info(f"Full path: {tokens}") - - # Navigate the tree from the entry we need - - current_tree_position: Group | Dataset = self._data - - for token in tokens: - - options = token.split("|") - - if isinstance(current_tree_position, Group): - - found = False - for option in options: - if option in current_tree_position.children: - current_tree_position = current_tree_position.children[option] - found = True - - if self.verbose: - logger.info(f"Found option: {option}") - - if not found: - if self.verbose: - logger.info(f"Failed to find any of {options} on group {current_tree_position.name}. Options: " + - ",".join([key for key in current_tree_position.children])) - return None - - elif isinstance(current_tree_position, Dataset): - - found = False - for option in options: - if option in current_tree_position.attributes: - current_tree_position = current_tree_position.attributes[option] - found = True - - if self.verbose: - logger.info(f"Found option: {option}") - - if not found: - if self.verbose: - logger.info(f"Failed to find any of {options} on attribute {current_tree_position.name}. Options: " + - ",".join([key for key in current_tree_position.attributes])) - return None - - if self.verbose: - logger.info(f"Found value: {current_tree_position}") - - return current_tree_position.data - - - -class Accessor[DataType, OutputType]: - """ Base class """ - def __init__(self, target_object: AccessorTarget, value_target: str): - self.target_object = target_object - self.value_target = value_target - - @property - def value(self) -> OutputType | None: - return self.target_object.get_value(self.value_target) - -class StringAccessor(Accessor[str, str]): - """ String based fields """ - @property - def value(self) -> str | None: - return self.target_object.get_value(self.value_target) - -class FloatAccessor(Accessor[float, float]): - """ Float based fields """ - @property - def value(self) -> float | None: - return self.target_object.get_value(self.value_target) - - - - -class QuantityAccessor[DataType](Accessor[DataType, Quantity[DataType]]): - """ Base class for accessors that work with quantities that have units """ - def __init__(self, target_object: AccessorTarget, value_target: str, unit_target: str, default_unit=units.none): - super().__init__(target_object, value_target) - self._unit_target = unit_target - self.default_unit = default_unit - - def _numerical_part(self) -> DataType | None: - """ Numerical part of the data """ - return self.target_object.get_value(self.value_target) - - def _unit_part(self) -> str | None: - """ String form of units for the data """ - return self.target_object.get_value(self._unit_target) - - @property - def unit(self) -> Unit: - u = self._unit_part() - if u is None: - return self.default_unit - else: - return parse_unit(u) - - @property - def value(self) -> Quantity[DataType] | None: - if self._unit_part() is not None and self._numerical_part() is not None: - return Quantity(self._numerical_part(), self.unit) - return None - - @property - def quantity(self): - if self._unit_part() is not None and self._numerical_part() is not None: - return Quantity(self._numerical_part(), self.unit) - return None - - -class LengthAccessor[T](QuantityAccessor[T]): - dimension_name = 'length' - - @property - def meters(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.meters) - - @property - def exameters(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exameters) - - @property - def petameters(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petameters) - - @property - def terameters(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terameters) - - @property - def gigameters(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigameters) - - @property - def megameters(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megameters) - - @property - def kilometers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilometers) - - @property - def millimeters(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimeters) - - @property - def micrometers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrometers) - - @property - def nanometers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanometers) - - @property - def picometers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picometers) - - @property - def femtometers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtometers) - - @property - def attometers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attometers) - - @property - def decimeters(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.decimeters) - - @property - def centimeters(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.centimeters) - - @property - def angstroms(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.angstroms) - - @property - def microns(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microns) - - @property - def miles(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.miles) - - @property - def yards(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.yards) - - @property - def feet(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.feet) - - @property - def inches(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.inches) - - - -class AreaAccessor[T](QuantityAccessor[T]): - dimension_name = 'area' - - @property - def square_meters(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.square_meters) - - @property - def square_exameters(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.square_exameters) - - @property - def square_petameters(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.square_petameters) - - @property - def square_terameters(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.square_terameters) - - @property - def square_gigameters(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.square_gigameters) - - @property - def square_megameters(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.square_megameters) - - @property - def square_kilometers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.square_kilometers) - - @property - def square_millimeters(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.square_millimeters) - - @property - def square_micrometers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.square_micrometers) - - @property - def square_nanometers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.square_nanometers) - - @property - def square_picometers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.square_picometers) - - @property - def square_femtometers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.square_femtometers) - - @property - def square_attometers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.square_attometers) - - @property - def square_decimeters(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.square_decimeters) - - @property - def square_centimeters(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.square_centimeters) - - @property - def square_angstroms(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.square_angstroms) - - @property - def square_microns(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.square_microns) - - @property - def square_miles(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.square_miles) - - @property - def square_yards(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.square_yards) - - @property - def square_feet(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.square_feet) - - @property - def square_inches(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.square_inches) - - - -class VolumeAccessor[T](QuantityAccessor[T]): - dimension_name = 'volume' - - @property - def litres(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.litres) - - @property - def cubic_meters(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.cubic_meters) - - @property - def cubic_exameters(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.cubic_exameters) - - @property - def cubic_petameters(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.cubic_petameters) - - @property - def cubic_terameters(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.cubic_terameters) - - @property - def cubic_gigameters(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.cubic_gigameters) - - @property - def cubic_megameters(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.cubic_megameters) - - @property - def cubic_kilometers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.cubic_kilometers) - - @property - def cubic_millimeters(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.cubic_millimeters) - - @property - def cubic_micrometers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.cubic_micrometers) - - @property - def cubic_nanometers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.cubic_nanometers) - - @property - def cubic_picometers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.cubic_picometers) - - @property - def cubic_femtometers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.cubic_femtometers) - - @property - def cubic_attometers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.cubic_attometers) - - @property - def cubic_decimeters(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.cubic_decimeters) - - @property - def cubic_centimeters(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.cubic_centimeters) - - @property - def cubic_angstroms(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.cubic_angstroms) - - @property - def cubic_microns(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.cubic_microns) - - @property - def cubic_miles(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.cubic_miles) - - @property - def cubic_yards(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.cubic_yards) - - @property - def cubic_feet(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.cubic_feet) - - @property - def cubic_inches(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.cubic_inches) - - - -class InverselengthAccessor[T](QuantityAccessor[T]): - dimension_name = 'inverse_length' - - @property - def per_meter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_meter) - - @property - def per_exameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_exameter) - - @property - def per_petameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_petameter) - - @property - def per_terameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_terameter) - - @property - def per_gigameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_gigameter) - - @property - def per_megameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_megameter) - - @property - def per_kilometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_kilometer) - - @property - def per_millimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_millimeter) - - @property - def per_micrometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_micrometer) - - @property - def per_nanometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_nanometer) - - @property - def per_picometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_picometer) - - @property - def per_femtometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_femtometer) - - @property - def per_attometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_attometer) - - @property - def per_decimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_decimeter) - - @property - def per_centimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_centimeter) - - @property - def per_angstrom(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_angstrom) - - @property - def per_micron(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_micron) - - @property - def per_mile(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_mile) - - @property - def per_yard(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_yard) - - @property - def per_foot(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_foot) - - @property - def per_inch(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_inch) - - - -class InverseareaAccessor[T](QuantityAccessor[T]): - dimension_name = 'inverse_area' - - @property - def per_square_meter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_square_meter) - - @property - def per_square_exameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_square_exameter) - - @property - def per_square_petameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_square_petameter) - - @property - def per_square_terameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_square_terameter) - - @property - def per_square_gigameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_square_gigameter) - - @property - def per_square_megameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_square_megameter) - - @property - def per_square_kilometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_square_kilometer) - - @property - def per_square_millimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_square_millimeter) - - @property - def per_square_micrometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_square_micrometer) - - @property - def per_square_nanometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_square_nanometer) - - @property - def per_square_picometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_square_picometer) - - @property - def per_square_femtometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_square_femtometer) - - @property - def per_square_attometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_square_attometer) - - @property - def per_square_decimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_square_decimeter) - - @property - def per_square_centimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_square_centimeter) - - @property - def per_square_angstrom(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_square_angstrom) - - @property - def per_square_micron(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_square_micron) - - @property - def per_square_mile(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_square_mile) - - @property - def per_square_yard(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_square_yard) - - @property - def per_square_foot(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_square_foot) - - @property - def per_square_inch(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_square_inch) - - - -class InversevolumeAccessor[T](QuantityAccessor[T]): - dimension_name = 'inverse_volume' - - @property - def per_cubic_meter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_cubic_meter) - - @property - def per_cubic_exameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_cubic_exameter) - - @property - def per_cubic_petameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_cubic_petameter) - - @property - def per_cubic_terameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_cubic_terameter) - - @property - def per_cubic_gigameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_cubic_gigameter) - - @property - def per_cubic_megameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_cubic_megameter) - - @property - def per_cubic_kilometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_cubic_kilometer) - - @property - def per_cubic_millimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_cubic_millimeter) - - @property - def per_cubic_micrometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_cubic_micrometer) - - @property - def per_cubic_nanometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_cubic_nanometer) - - @property - def per_cubic_picometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_cubic_picometer) - - @property - def per_cubic_femtometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_cubic_femtometer) - - @property - def per_cubic_attometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_cubic_attometer) - - @property - def per_cubic_decimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_cubic_decimeter) - - @property - def per_cubic_centimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_cubic_centimeter) - - @property - def per_cubic_angstrom(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_cubic_angstrom) - - @property - def per_cubic_micron(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_cubic_micron) - - @property - def per_cubic_mile(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_cubic_mile) - - @property - def per_cubic_yard(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_cubic_yard) - - @property - def per_cubic_foot(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_cubic_foot) - - @property - def per_cubic_inch(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.per_cubic_inch) - - - -class TimeAccessor[T](QuantityAccessor[T]): - dimension_name = 'time' - - @property - def seconds(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.seconds) - - @property - def milliseconds(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.milliseconds) - - @property - def microseconds(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microseconds) - - @property - def nanoseconds(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanoseconds) - - @property - def picoseconds(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picoseconds) - - @property - def femtoseconds(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtoseconds) - - @property - def attoseconds(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attoseconds) - - @property - def minutes(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.minutes) - - @property - def hours(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.hours) - - @property - def days(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.days) - - @property - def years(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.years) - - - -class RateAccessor[T](QuantityAccessor[T]): - dimension_name = 'rate' - - @property - def hertz(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.hertz) - - @property - def exahertz(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exahertz) - - @property - def petahertz(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petahertz) - - @property - def terahertz(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terahertz) - - @property - def gigahertz(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigahertz) - - @property - def megahertz(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megahertz) - - @property - def kilohertz(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilohertz) - - @property - def millihertz(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millihertz) - - @property - def microhertz(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microhertz) - - @property - def nanohertz(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanohertz) - - @property - def picohertz(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picohertz) - - @property - def femtohertz(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtohertz) - - @property - def attohertz(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attohertz) - - @property - def revolutions_per_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.revolutions_per_minute) - - - -class SpeedAccessor[T](QuantityAccessor[T]): - dimension_name = 'speed' - - @property - def meters_per_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.meters_per_second) - - @property - def meters_per_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.meters_per_millisecond) - - @property - def meters_per_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.meters_per_microsecond) - - @property - def meters_per_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.meters_per_nanosecond) - - @property - def meters_per_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.meters_per_picosecond) - - @property - def meters_per_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.meters_per_femtosecond) - - @property - def meters_per_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.meters_per_attosecond) - - @property - def meters_per_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.meters_per_minute) - - @property - def meters_per_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.meters_per_hour) - - @property - def meters_per_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.meters_per_day) - - @property - def meters_per_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.meters_per_year) - - @property - def exameters_per_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exameters_per_second) - - @property - def exameters_per_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exameters_per_millisecond) - - @property - def exameters_per_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exameters_per_microsecond) - - @property - def exameters_per_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exameters_per_nanosecond) - - @property - def exameters_per_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exameters_per_picosecond) - - @property - def exameters_per_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exameters_per_femtosecond) - - @property - def exameters_per_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exameters_per_attosecond) - - @property - def exameters_per_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exameters_per_minute) - - @property - def exameters_per_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exameters_per_hour) - - @property - def exameters_per_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exameters_per_day) - - @property - def exameters_per_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exameters_per_year) - - @property - def petameters_per_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petameters_per_second) - - @property - def petameters_per_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petameters_per_millisecond) - - @property - def petameters_per_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petameters_per_microsecond) - - @property - def petameters_per_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petameters_per_nanosecond) - - @property - def petameters_per_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petameters_per_picosecond) - - @property - def petameters_per_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petameters_per_femtosecond) - - @property - def petameters_per_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petameters_per_attosecond) - - @property - def petameters_per_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petameters_per_minute) - - @property - def petameters_per_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petameters_per_hour) - - @property - def petameters_per_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petameters_per_day) - - @property - def petameters_per_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petameters_per_year) - - @property - def terameters_per_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terameters_per_second) - - @property - def terameters_per_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terameters_per_millisecond) - - @property - def terameters_per_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terameters_per_microsecond) - - @property - def terameters_per_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terameters_per_nanosecond) - - @property - def terameters_per_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terameters_per_picosecond) - - @property - def terameters_per_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terameters_per_femtosecond) - - @property - def terameters_per_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terameters_per_attosecond) - - @property - def terameters_per_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terameters_per_minute) - - @property - def terameters_per_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terameters_per_hour) - - @property - def terameters_per_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terameters_per_day) - - @property - def terameters_per_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terameters_per_year) - - @property - def gigameters_per_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigameters_per_second) - - @property - def gigameters_per_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigameters_per_millisecond) - - @property - def gigameters_per_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigameters_per_microsecond) - - @property - def gigameters_per_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigameters_per_nanosecond) - - @property - def gigameters_per_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigameters_per_picosecond) - - @property - def gigameters_per_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigameters_per_femtosecond) - - @property - def gigameters_per_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigameters_per_attosecond) - - @property - def gigameters_per_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigameters_per_minute) - - @property - def gigameters_per_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigameters_per_hour) - - @property - def gigameters_per_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigameters_per_day) - - @property - def gigameters_per_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigameters_per_year) - - @property - def megameters_per_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megameters_per_second) - - @property - def megameters_per_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megameters_per_millisecond) - - @property - def megameters_per_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megameters_per_microsecond) - - @property - def megameters_per_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megameters_per_nanosecond) - - @property - def megameters_per_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megameters_per_picosecond) - - @property - def megameters_per_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megameters_per_femtosecond) - - @property - def megameters_per_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megameters_per_attosecond) - - @property - def megameters_per_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megameters_per_minute) - - @property - def megameters_per_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megameters_per_hour) - - @property - def megameters_per_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megameters_per_day) - - @property - def megameters_per_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megameters_per_year) - - @property - def kilometers_per_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilometers_per_second) - - @property - def kilometers_per_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilometers_per_millisecond) - - @property - def kilometers_per_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilometers_per_microsecond) - - @property - def kilometers_per_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilometers_per_nanosecond) - - @property - def kilometers_per_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilometers_per_picosecond) - - @property - def kilometers_per_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilometers_per_femtosecond) - - @property - def kilometers_per_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilometers_per_attosecond) - - @property - def kilometers_per_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilometers_per_minute) - - @property - def kilometers_per_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilometers_per_hour) - - @property - def kilometers_per_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilometers_per_day) - - @property - def kilometers_per_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilometers_per_year) - - @property - def millimeters_per_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimeters_per_second) - - @property - def millimeters_per_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimeters_per_millisecond) - - @property - def millimeters_per_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimeters_per_microsecond) - - @property - def millimeters_per_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimeters_per_nanosecond) - - @property - def millimeters_per_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimeters_per_picosecond) - - @property - def millimeters_per_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimeters_per_femtosecond) - - @property - def millimeters_per_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimeters_per_attosecond) - - @property - def millimeters_per_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimeters_per_minute) - - @property - def millimeters_per_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimeters_per_hour) - - @property - def millimeters_per_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimeters_per_day) - - @property - def millimeters_per_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimeters_per_year) - - @property - def micrometers_per_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrometers_per_second) - - @property - def micrometers_per_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrometers_per_millisecond) - - @property - def micrometers_per_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrometers_per_microsecond) - - @property - def micrometers_per_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrometers_per_nanosecond) - - @property - def micrometers_per_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrometers_per_picosecond) - - @property - def micrometers_per_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrometers_per_femtosecond) - - @property - def micrometers_per_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrometers_per_attosecond) - - @property - def micrometers_per_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrometers_per_minute) - - @property - def micrometers_per_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrometers_per_hour) - - @property - def micrometers_per_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrometers_per_day) - - @property - def micrometers_per_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrometers_per_year) - - @property - def nanometers_per_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanometers_per_second) - - @property - def nanometers_per_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanometers_per_millisecond) - - @property - def nanometers_per_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanometers_per_microsecond) - - @property - def nanometers_per_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanometers_per_nanosecond) - - @property - def nanometers_per_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanometers_per_picosecond) - - @property - def nanometers_per_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanometers_per_femtosecond) - - @property - def nanometers_per_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanometers_per_attosecond) - - @property - def nanometers_per_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanometers_per_minute) - - @property - def nanometers_per_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanometers_per_hour) - - @property - def nanometers_per_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanometers_per_day) - - @property - def nanometers_per_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanometers_per_year) - - @property - def picometers_per_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picometers_per_second) - - @property - def picometers_per_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picometers_per_millisecond) - - @property - def picometers_per_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picometers_per_microsecond) - - @property - def picometers_per_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picometers_per_nanosecond) - - @property - def picometers_per_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picometers_per_picosecond) - - @property - def picometers_per_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picometers_per_femtosecond) - - @property - def picometers_per_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picometers_per_attosecond) - - @property - def picometers_per_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picometers_per_minute) - - @property - def picometers_per_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picometers_per_hour) - - @property - def picometers_per_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picometers_per_day) - - @property - def picometers_per_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picometers_per_year) - - @property - def femtometers_per_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtometers_per_second) - - @property - def femtometers_per_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtometers_per_millisecond) - - @property - def femtometers_per_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtometers_per_microsecond) - - @property - def femtometers_per_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtometers_per_nanosecond) - - @property - def femtometers_per_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtometers_per_picosecond) - - @property - def femtometers_per_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtometers_per_femtosecond) - - @property - def femtometers_per_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtometers_per_attosecond) - - @property - def femtometers_per_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtometers_per_minute) - - @property - def femtometers_per_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtometers_per_hour) - - @property - def femtometers_per_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtometers_per_day) - - @property - def femtometers_per_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtometers_per_year) - - @property - def attometers_per_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attometers_per_second) - - @property - def attometers_per_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attometers_per_millisecond) - - @property - def attometers_per_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attometers_per_microsecond) - - @property - def attometers_per_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attometers_per_nanosecond) - - @property - def attometers_per_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attometers_per_picosecond) - - @property - def attometers_per_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attometers_per_femtosecond) - - @property - def attometers_per_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attometers_per_attosecond) - - @property - def attometers_per_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attometers_per_minute) - - @property - def attometers_per_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attometers_per_hour) - - @property - def attometers_per_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attometers_per_day) - - @property - def attometers_per_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attometers_per_year) - - @property - def decimeters_per_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.decimeters_per_second) - - @property - def decimeters_per_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.decimeters_per_millisecond) - - @property - def decimeters_per_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.decimeters_per_microsecond) - - @property - def decimeters_per_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.decimeters_per_nanosecond) - - @property - def decimeters_per_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.decimeters_per_picosecond) - - @property - def decimeters_per_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.decimeters_per_femtosecond) - - @property - def decimeters_per_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.decimeters_per_attosecond) - - @property - def decimeters_per_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.decimeters_per_minute) - - @property - def decimeters_per_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.decimeters_per_hour) - - @property - def decimeters_per_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.decimeters_per_day) - - @property - def decimeters_per_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.decimeters_per_year) - - @property - def centimeters_per_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.centimeters_per_second) - - @property - def centimeters_per_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.centimeters_per_millisecond) - - @property - def centimeters_per_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.centimeters_per_microsecond) - - @property - def centimeters_per_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.centimeters_per_nanosecond) - - @property - def centimeters_per_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.centimeters_per_picosecond) - - @property - def centimeters_per_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.centimeters_per_femtosecond) - - @property - def centimeters_per_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.centimeters_per_attosecond) - - @property - def centimeters_per_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.centimeters_per_minute) - - @property - def centimeters_per_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.centimeters_per_hour) - - @property - def centimeters_per_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.centimeters_per_day) - - @property - def centimeters_per_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.centimeters_per_year) - - @property - def angstroms_per_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.angstroms_per_second) - - @property - def angstroms_per_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.angstroms_per_millisecond) - - @property - def angstroms_per_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.angstroms_per_microsecond) - - @property - def angstroms_per_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.angstroms_per_nanosecond) - - @property - def angstroms_per_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.angstroms_per_picosecond) - - @property - def angstroms_per_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.angstroms_per_femtosecond) - - @property - def angstroms_per_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.angstroms_per_attosecond) - - @property - def angstroms_per_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.angstroms_per_minute) - - @property - def angstroms_per_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.angstroms_per_hour) - - @property - def angstroms_per_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.angstroms_per_day) - - @property - def angstroms_per_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.angstroms_per_year) - - @property - def microns_per_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microns_per_second) - - @property - def microns_per_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microns_per_millisecond) - - @property - def microns_per_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microns_per_microsecond) - - @property - def microns_per_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microns_per_nanosecond) - - @property - def microns_per_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microns_per_picosecond) - - @property - def microns_per_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microns_per_femtosecond) - - @property - def microns_per_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microns_per_attosecond) - - @property - def microns_per_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microns_per_minute) - - @property - def microns_per_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microns_per_hour) - - @property - def microns_per_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microns_per_day) - - @property - def microns_per_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microns_per_year) - - @property - def miles_per_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.miles_per_second) - - @property - def miles_per_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.miles_per_millisecond) - - @property - def miles_per_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.miles_per_microsecond) - - @property - def miles_per_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.miles_per_nanosecond) - - @property - def miles_per_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.miles_per_picosecond) - - @property - def miles_per_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.miles_per_femtosecond) - - @property - def miles_per_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.miles_per_attosecond) - - @property - def miles_per_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.miles_per_minute) - - @property - def miles_per_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.miles_per_hour) - - @property - def miles_per_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.miles_per_day) - - @property - def miles_per_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.miles_per_year) - - @property - def yards_per_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.yards_per_second) - - @property - def yards_per_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.yards_per_millisecond) - - @property - def yards_per_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.yards_per_microsecond) - - @property - def yards_per_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.yards_per_nanosecond) - - @property - def yards_per_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.yards_per_picosecond) - - @property - def yards_per_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.yards_per_femtosecond) - - @property - def yards_per_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.yards_per_attosecond) - - @property - def yards_per_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.yards_per_minute) - - @property - def yards_per_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.yards_per_hour) - - @property - def yards_per_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.yards_per_day) - - @property - def yards_per_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.yards_per_year) - - @property - def feet_per_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.feet_per_second) - - @property - def feet_per_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.feet_per_millisecond) - - @property - def feet_per_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.feet_per_microsecond) - - @property - def feet_per_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.feet_per_nanosecond) - - @property - def feet_per_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.feet_per_picosecond) - - @property - def feet_per_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.feet_per_femtosecond) - - @property - def feet_per_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.feet_per_attosecond) - - @property - def feet_per_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.feet_per_minute) - - @property - def feet_per_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.feet_per_hour) - - @property - def feet_per_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.feet_per_day) - - @property - def feet_per_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.feet_per_year) - - @property - def inches_per_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.inches_per_second) - - @property - def inches_per_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.inches_per_millisecond) - - @property - def inches_per_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.inches_per_microsecond) - - @property - def inches_per_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.inches_per_nanosecond) - - @property - def inches_per_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.inches_per_picosecond) - - @property - def inches_per_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.inches_per_femtosecond) - - @property - def inches_per_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.inches_per_attosecond) - - @property - def inches_per_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.inches_per_minute) - - @property - def inches_per_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.inches_per_hour) - - @property - def inches_per_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.inches_per_day) - - @property - def inches_per_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.inches_per_year) - - - -class AccelerationAccessor[T](QuantityAccessor[T]): - dimension_name = 'acceleration' - - @property - def meters_per_square_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.meters_per_square_second) - - @property - def meters_per_square_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.meters_per_square_millisecond) - - @property - def meters_per_square_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.meters_per_square_microsecond) - - @property - def meters_per_square_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.meters_per_square_nanosecond) - - @property - def meters_per_square_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.meters_per_square_picosecond) - - @property - def meters_per_square_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.meters_per_square_femtosecond) - - @property - def meters_per_square_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.meters_per_square_attosecond) - - @property - def meters_per_square_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.meters_per_square_minute) - - @property - def meters_per_square_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.meters_per_square_hour) - - @property - def meters_per_square_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.meters_per_square_day) - - @property - def meters_per_square_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.meters_per_square_year) - - @property - def exameters_per_square_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exameters_per_square_second) - - @property - def exameters_per_square_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exameters_per_square_millisecond) - - @property - def exameters_per_square_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exameters_per_square_microsecond) - - @property - def exameters_per_square_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exameters_per_square_nanosecond) - - @property - def exameters_per_square_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exameters_per_square_picosecond) - - @property - def exameters_per_square_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exameters_per_square_femtosecond) - - @property - def exameters_per_square_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exameters_per_square_attosecond) - - @property - def exameters_per_square_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exameters_per_square_minute) - - @property - def exameters_per_square_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exameters_per_square_hour) - - @property - def exameters_per_square_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exameters_per_square_day) - - @property - def exameters_per_square_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exameters_per_square_year) - - @property - def petameters_per_square_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petameters_per_square_second) - - @property - def petameters_per_square_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petameters_per_square_millisecond) - - @property - def petameters_per_square_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petameters_per_square_microsecond) - - @property - def petameters_per_square_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petameters_per_square_nanosecond) - - @property - def petameters_per_square_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petameters_per_square_picosecond) - - @property - def petameters_per_square_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petameters_per_square_femtosecond) - - @property - def petameters_per_square_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petameters_per_square_attosecond) - - @property - def petameters_per_square_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petameters_per_square_minute) - - @property - def petameters_per_square_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petameters_per_square_hour) - - @property - def petameters_per_square_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petameters_per_square_day) - - @property - def petameters_per_square_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petameters_per_square_year) - - @property - def terameters_per_square_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terameters_per_square_second) - - @property - def terameters_per_square_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terameters_per_square_millisecond) - - @property - def terameters_per_square_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terameters_per_square_microsecond) - - @property - def terameters_per_square_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terameters_per_square_nanosecond) - - @property - def terameters_per_square_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terameters_per_square_picosecond) - - @property - def terameters_per_square_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terameters_per_square_femtosecond) - - @property - def terameters_per_square_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terameters_per_square_attosecond) - - @property - def terameters_per_square_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terameters_per_square_minute) - - @property - def terameters_per_square_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terameters_per_square_hour) - - @property - def terameters_per_square_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terameters_per_square_day) - - @property - def terameters_per_square_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terameters_per_square_year) - - @property - def gigameters_per_square_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigameters_per_square_second) - - @property - def gigameters_per_square_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigameters_per_square_millisecond) - - @property - def gigameters_per_square_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigameters_per_square_microsecond) - - @property - def gigameters_per_square_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigameters_per_square_nanosecond) - - @property - def gigameters_per_square_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigameters_per_square_picosecond) - - @property - def gigameters_per_square_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigameters_per_square_femtosecond) - - @property - def gigameters_per_square_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigameters_per_square_attosecond) - - @property - def gigameters_per_square_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigameters_per_square_minute) - - @property - def gigameters_per_square_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigameters_per_square_hour) - - @property - def gigameters_per_square_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigameters_per_square_day) - - @property - def gigameters_per_square_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigameters_per_square_year) - - @property - def megameters_per_square_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megameters_per_square_second) - - @property - def megameters_per_square_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megameters_per_square_millisecond) - - @property - def megameters_per_square_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megameters_per_square_microsecond) - - @property - def megameters_per_square_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megameters_per_square_nanosecond) - - @property - def megameters_per_square_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megameters_per_square_picosecond) - - @property - def megameters_per_square_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megameters_per_square_femtosecond) - - @property - def megameters_per_square_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megameters_per_square_attosecond) - - @property - def megameters_per_square_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megameters_per_square_minute) - - @property - def megameters_per_square_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megameters_per_square_hour) - - @property - def megameters_per_square_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megameters_per_square_day) - - @property - def megameters_per_square_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megameters_per_square_year) - - @property - def kilometers_per_square_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilometers_per_square_second) - - @property - def kilometers_per_square_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilometers_per_square_millisecond) - - @property - def kilometers_per_square_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilometers_per_square_microsecond) - - @property - def kilometers_per_square_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilometers_per_square_nanosecond) - - @property - def kilometers_per_square_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilometers_per_square_picosecond) - - @property - def kilometers_per_square_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilometers_per_square_femtosecond) - - @property - def kilometers_per_square_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilometers_per_square_attosecond) - - @property - def kilometers_per_square_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilometers_per_square_minute) - - @property - def kilometers_per_square_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilometers_per_square_hour) - - @property - def kilometers_per_square_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilometers_per_square_day) - - @property - def kilometers_per_square_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilometers_per_square_year) - - @property - def millimeters_per_square_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimeters_per_square_second) - - @property - def millimeters_per_square_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimeters_per_square_millisecond) - - @property - def millimeters_per_square_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimeters_per_square_microsecond) - - @property - def millimeters_per_square_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimeters_per_square_nanosecond) - - @property - def millimeters_per_square_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimeters_per_square_picosecond) - - @property - def millimeters_per_square_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimeters_per_square_femtosecond) - - @property - def millimeters_per_square_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimeters_per_square_attosecond) - - @property - def millimeters_per_square_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimeters_per_square_minute) - - @property - def millimeters_per_square_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimeters_per_square_hour) - - @property - def millimeters_per_square_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimeters_per_square_day) - - @property - def millimeters_per_square_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimeters_per_square_year) - - @property - def micrometers_per_square_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrometers_per_square_second) - - @property - def micrometers_per_square_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrometers_per_square_millisecond) - - @property - def micrometers_per_square_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrometers_per_square_microsecond) - - @property - def micrometers_per_square_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrometers_per_square_nanosecond) - - @property - def micrometers_per_square_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrometers_per_square_picosecond) - - @property - def micrometers_per_square_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrometers_per_square_femtosecond) - - @property - def micrometers_per_square_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrometers_per_square_attosecond) - - @property - def micrometers_per_square_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrometers_per_square_minute) - - @property - def micrometers_per_square_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrometers_per_square_hour) - - @property - def micrometers_per_square_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrometers_per_square_day) - - @property - def micrometers_per_square_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrometers_per_square_year) - - @property - def nanometers_per_square_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanometers_per_square_second) - - @property - def nanometers_per_square_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanometers_per_square_millisecond) - - @property - def nanometers_per_square_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanometers_per_square_microsecond) - - @property - def nanometers_per_square_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanometers_per_square_nanosecond) - - @property - def nanometers_per_square_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanometers_per_square_picosecond) - - @property - def nanometers_per_square_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanometers_per_square_femtosecond) - - @property - def nanometers_per_square_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanometers_per_square_attosecond) - - @property - def nanometers_per_square_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanometers_per_square_minute) - - @property - def nanometers_per_square_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanometers_per_square_hour) - - @property - def nanometers_per_square_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanometers_per_square_day) - - @property - def nanometers_per_square_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanometers_per_square_year) - - @property - def picometers_per_square_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picometers_per_square_second) - - @property - def picometers_per_square_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picometers_per_square_millisecond) - - @property - def picometers_per_square_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picometers_per_square_microsecond) - - @property - def picometers_per_square_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picometers_per_square_nanosecond) - - @property - def picometers_per_square_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picometers_per_square_picosecond) - - @property - def picometers_per_square_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picometers_per_square_femtosecond) - - @property - def picometers_per_square_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picometers_per_square_attosecond) - - @property - def picometers_per_square_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picometers_per_square_minute) - - @property - def picometers_per_square_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picometers_per_square_hour) - - @property - def picometers_per_square_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picometers_per_square_day) - - @property - def picometers_per_square_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picometers_per_square_year) - - @property - def femtometers_per_square_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtometers_per_square_second) - - @property - def femtometers_per_square_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtometers_per_square_millisecond) - - @property - def femtometers_per_square_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtometers_per_square_microsecond) - - @property - def femtometers_per_square_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtometers_per_square_nanosecond) - - @property - def femtometers_per_square_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtometers_per_square_picosecond) - - @property - def femtometers_per_square_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtometers_per_square_femtosecond) - - @property - def femtometers_per_square_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtometers_per_square_attosecond) - - @property - def femtometers_per_square_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtometers_per_square_minute) - - @property - def femtometers_per_square_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtometers_per_square_hour) - - @property - def femtometers_per_square_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtometers_per_square_day) - - @property - def femtometers_per_square_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtometers_per_square_year) - - @property - def attometers_per_square_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attometers_per_square_second) - - @property - def attometers_per_square_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attometers_per_square_millisecond) - - @property - def attometers_per_square_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attometers_per_square_microsecond) - - @property - def attometers_per_square_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attometers_per_square_nanosecond) - - @property - def attometers_per_square_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attometers_per_square_picosecond) - - @property - def attometers_per_square_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attometers_per_square_femtosecond) - - @property - def attometers_per_square_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attometers_per_square_attosecond) - - @property - def attometers_per_square_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attometers_per_square_minute) - - @property - def attometers_per_square_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attometers_per_square_hour) - - @property - def attometers_per_square_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attometers_per_square_day) - - @property - def attometers_per_square_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attometers_per_square_year) - - @property - def decimeters_per_square_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.decimeters_per_square_second) - - @property - def decimeters_per_square_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.decimeters_per_square_millisecond) - - @property - def decimeters_per_square_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.decimeters_per_square_microsecond) - - @property - def decimeters_per_square_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.decimeters_per_square_nanosecond) - - @property - def decimeters_per_square_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.decimeters_per_square_picosecond) - - @property - def decimeters_per_square_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.decimeters_per_square_femtosecond) - - @property - def decimeters_per_square_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.decimeters_per_square_attosecond) - - @property - def decimeters_per_square_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.decimeters_per_square_minute) - - @property - def decimeters_per_square_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.decimeters_per_square_hour) - - @property - def decimeters_per_square_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.decimeters_per_square_day) - - @property - def decimeters_per_square_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.decimeters_per_square_year) - - @property - def centimeters_per_square_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.centimeters_per_square_second) - - @property - def centimeters_per_square_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.centimeters_per_square_millisecond) - - @property - def centimeters_per_square_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.centimeters_per_square_microsecond) - - @property - def centimeters_per_square_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.centimeters_per_square_nanosecond) - - @property - def centimeters_per_square_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.centimeters_per_square_picosecond) - - @property - def centimeters_per_square_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.centimeters_per_square_femtosecond) - - @property - def centimeters_per_square_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.centimeters_per_square_attosecond) - - @property - def centimeters_per_square_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.centimeters_per_square_minute) - - @property - def centimeters_per_square_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.centimeters_per_square_hour) - - @property - def centimeters_per_square_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.centimeters_per_square_day) - - @property - def centimeters_per_square_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.centimeters_per_square_year) - - @property - def angstroms_per_square_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.angstroms_per_square_second) - - @property - def angstroms_per_square_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.angstroms_per_square_millisecond) - - @property - def angstroms_per_square_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.angstroms_per_square_microsecond) - - @property - def angstroms_per_square_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.angstroms_per_square_nanosecond) - - @property - def angstroms_per_square_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.angstroms_per_square_picosecond) - - @property - def angstroms_per_square_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.angstroms_per_square_femtosecond) - - @property - def angstroms_per_square_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.angstroms_per_square_attosecond) - - @property - def angstroms_per_square_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.angstroms_per_square_minute) - - @property - def angstroms_per_square_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.angstroms_per_square_hour) - - @property - def angstroms_per_square_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.angstroms_per_square_day) - - @property - def angstroms_per_square_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.angstroms_per_square_year) - - @property - def microns_per_square_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microns_per_square_second) - - @property - def microns_per_square_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microns_per_square_millisecond) - - @property - def microns_per_square_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microns_per_square_microsecond) - - @property - def microns_per_square_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microns_per_square_nanosecond) - - @property - def microns_per_square_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microns_per_square_picosecond) - - @property - def microns_per_square_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microns_per_square_femtosecond) - - @property - def microns_per_square_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microns_per_square_attosecond) - - @property - def microns_per_square_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microns_per_square_minute) - - @property - def microns_per_square_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microns_per_square_hour) - - @property - def microns_per_square_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microns_per_square_day) - - @property - def microns_per_square_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microns_per_square_year) - - @property - def miles_per_square_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.miles_per_square_second) - - @property - def miles_per_square_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.miles_per_square_millisecond) - - @property - def miles_per_square_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.miles_per_square_microsecond) - - @property - def miles_per_square_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.miles_per_square_nanosecond) - - @property - def miles_per_square_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.miles_per_square_picosecond) - - @property - def miles_per_square_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.miles_per_square_femtosecond) - - @property - def miles_per_square_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.miles_per_square_attosecond) - - @property - def miles_per_square_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.miles_per_square_minute) - - @property - def miles_per_square_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.miles_per_square_hour) - - @property - def miles_per_square_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.miles_per_square_day) - - @property - def miles_per_square_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.miles_per_square_year) - - @property - def yards_per_square_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.yards_per_square_second) - - @property - def yards_per_square_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.yards_per_square_millisecond) - - @property - def yards_per_square_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.yards_per_square_microsecond) - - @property - def yards_per_square_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.yards_per_square_nanosecond) - - @property - def yards_per_square_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.yards_per_square_picosecond) - - @property - def yards_per_square_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.yards_per_square_femtosecond) - - @property - def yards_per_square_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.yards_per_square_attosecond) - - @property - def yards_per_square_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.yards_per_square_minute) - - @property - def yards_per_square_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.yards_per_square_hour) - - @property - def yards_per_square_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.yards_per_square_day) - - @property - def yards_per_square_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.yards_per_square_year) - - @property - def feet_per_square_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.feet_per_square_second) - - @property - def feet_per_square_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.feet_per_square_millisecond) - - @property - def feet_per_square_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.feet_per_square_microsecond) - - @property - def feet_per_square_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.feet_per_square_nanosecond) - - @property - def feet_per_square_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.feet_per_square_picosecond) - - @property - def feet_per_square_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.feet_per_square_femtosecond) - - @property - def feet_per_square_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.feet_per_square_attosecond) - - @property - def feet_per_square_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.feet_per_square_minute) - - @property - def feet_per_square_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.feet_per_square_hour) - - @property - def feet_per_square_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.feet_per_square_day) - - @property - def feet_per_square_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.feet_per_square_year) - - @property - def inches_per_square_second(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.inches_per_square_second) - - @property - def inches_per_square_millisecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.inches_per_square_millisecond) - - @property - def inches_per_square_microsecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.inches_per_square_microsecond) - - @property - def inches_per_square_nanosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.inches_per_square_nanosecond) - - @property - def inches_per_square_picosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.inches_per_square_picosecond) - - @property - def inches_per_square_femtosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.inches_per_square_femtosecond) - - @property - def inches_per_square_attosecond(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.inches_per_square_attosecond) - - @property - def inches_per_square_minute(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.inches_per_square_minute) - - @property - def inches_per_square_hour(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.inches_per_square_hour) - - @property - def inches_per_square_day(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.inches_per_square_day) - - @property - def inches_per_square_year(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.inches_per_square_year) - - - -class DensityAccessor[T](QuantityAccessor[T]): - dimension_name = 'density' - - @property - def grams_per_cubic_meter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.grams_per_cubic_meter) - - @property - def exagrams_per_cubic_meter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exagrams_per_cubic_meter) - - @property - def petagrams_per_cubic_meter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petagrams_per_cubic_meter) - - @property - def teragrams_per_cubic_meter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.teragrams_per_cubic_meter) - - @property - def gigagrams_per_cubic_meter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigagrams_per_cubic_meter) - - @property - def megagrams_per_cubic_meter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megagrams_per_cubic_meter) - - @property - def kilograms_per_cubic_meter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilograms_per_cubic_meter) - - @property - def milligrams_per_cubic_meter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.milligrams_per_cubic_meter) - - @property - def micrograms_per_cubic_meter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrograms_per_cubic_meter) - - @property - def nanograms_per_cubic_meter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanograms_per_cubic_meter) - - @property - def picograms_per_cubic_meter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picograms_per_cubic_meter) - - @property - def femtograms_per_cubic_meter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtograms_per_cubic_meter) - - @property - def attograms_per_cubic_meter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attograms_per_cubic_meter) - - @property - def atomic_mass_units_per_cubic_meter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.atomic_mass_units_per_cubic_meter) - - @property - def pounds_per_cubic_meter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.pounds_per_cubic_meter) - - @property - def ounces_per_cubic_meter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.ounces_per_cubic_meter) - - @property - def grams_per_cubic_exameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.grams_per_cubic_exameter) - - @property - def exagrams_per_cubic_exameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exagrams_per_cubic_exameter) - - @property - def petagrams_per_cubic_exameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petagrams_per_cubic_exameter) - - @property - def teragrams_per_cubic_exameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.teragrams_per_cubic_exameter) - - @property - def gigagrams_per_cubic_exameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigagrams_per_cubic_exameter) - - @property - def megagrams_per_cubic_exameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megagrams_per_cubic_exameter) - - @property - def kilograms_per_cubic_exameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilograms_per_cubic_exameter) - - @property - def milligrams_per_cubic_exameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.milligrams_per_cubic_exameter) - - @property - def micrograms_per_cubic_exameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrograms_per_cubic_exameter) - - @property - def nanograms_per_cubic_exameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanograms_per_cubic_exameter) - - @property - def picograms_per_cubic_exameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picograms_per_cubic_exameter) - - @property - def femtograms_per_cubic_exameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtograms_per_cubic_exameter) - - @property - def attograms_per_cubic_exameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attograms_per_cubic_exameter) - - @property - def atomic_mass_units_per_cubic_exameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.atomic_mass_units_per_cubic_exameter) - - @property - def pounds_per_cubic_exameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.pounds_per_cubic_exameter) - - @property - def ounces_per_cubic_exameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.ounces_per_cubic_exameter) - - @property - def grams_per_cubic_petameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.grams_per_cubic_petameter) - - @property - def exagrams_per_cubic_petameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exagrams_per_cubic_petameter) - - @property - def petagrams_per_cubic_petameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petagrams_per_cubic_petameter) - - @property - def teragrams_per_cubic_petameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.teragrams_per_cubic_petameter) - - @property - def gigagrams_per_cubic_petameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigagrams_per_cubic_petameter) - - @property - def megagrams_per_cubic_petameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megagrams_per_cubic_petameter) - - @property - def kilograms_per_cubic_petameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilograms_per_cubic_petameter) - - @property - def milligrams_per_cubic_petameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.milligrams_per_cubic_petameter) - - @property - def micrograms_per_cubic_petameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrograms_per_cubic_petameter) - - @property - def nanograms_per_cubic_petameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanograms_per_cubic_petameter) - - @property - def picograms_per_cubic_petameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picograms_per_cubic_petameter) - - @property - def femtograms_per_cubic_petameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtograms_per_cubic_petameter) - - @property - def attograms_per_cubic_petameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attograms_per_cubic_petameter) - - @property - def atomic_mass_units_per_cubic_petameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.atomic_mass_units_per_cubic_petameter) - - @property - def pounds_per_cubic_petameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.pounds_per_cubic_petameter) - - @property - def ounces_per_cubic_petameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.ounces_per_cubic_petameter) - - @property - def grams_per_cubic_terameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.grams_per_cubic_terameter) - - @property - def exagrams_per_cubic_terameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exagrams_per_cubic_terameter) - - @property - def petagrams_per_cubic_terameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petagrams_per_cubic_terameter) - - @property - def teragrams_per_cubic_terameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.teragrams_per_cubic_terameter) - - @property - def gigagrams_per_cubic_terameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigagrams_per_cubic_terameter) - - @property - def megagrams_per_cubic_terameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megagrams_per_cubic_terameter) - - @property - def kilograms_per_cubic_terameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilograms_per_cubic_terameter) - - @property - def milligrams_per_cubic_terameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.milligrams_per_cubic_terameter) - - @property - def micrograms_per_cubic_terameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrograms_per_cubic_terameter) - - @property - def nanograms_per_cubic_terameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanograms_per_cubic_terameter) - - @property - def picograms_per_cubic_terameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picograms_per_cubic_terameter) - - @property - def femtograms_per_cubic_terameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtograms_per_cubic_terameter) - - @property - def attograms_per_cubic_terameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attograms_per_cubic_terameter) - - @property - def atomic_mass_units_per_cubic_terameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.atomic_mass_units_per_cubic_terameter) - - @property - def pounds_per_cubic_terameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.pounds_per_cubic_terameter) - - @property - def ounces_per_cubic_terameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.ounces_per_cubic_terameter) - - @property - def grams_per_cubic_gigameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.grams_per_cubic_gigameter) - - @property - def exagrams_per_cubic_gigameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exagrams_per_cubic_gigameter) - - @property - def petagrams_per_cubic_gigameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petagrams_per_cubic_gigameter) - - @property - def teragrams_per_cubic_gigameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.teragrams_per_cubic_gigameter) - - @property - def gigagrams_per_cubic_gigameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigagrams_per_cubic_gigameter) - - @property - def megagrams_per_cubic_gigameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megagrams_per_cubic_gigameter) - - @property - def kilograms_per_cubic_gigameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilograms_per_cubic_gigameter) - - @property - def milligrams_per_cubic_gigameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.milligrams_per_cubic_gigameter) - - @property - def micrograms_per_cubic_gigameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrograms_per_cubic_gigameter) - - @property - def nanograms_per_cubic_gigameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanograms_per_cubic_gigameter) - - @property - def picograms_per_cubic_gigameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picograms_per_cubic_gigameter) - - @property - def femtograms_per_cubic_gigameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtograms_per_cubic_gigameter) - - @property - def attograms_per_cubic_gigameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attograms_per_cubic_gigameter) - - @property - def atomic_mass_units_per_cubic_gigameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.atomic_mass_units_per_cubic_gigameter) - - @property - def pounds_per_cubic_gigameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.pounds_per_cubic_gigameter) - - @property - def ounces_per_cubic_gigameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.ounces_per_cubic_gigameter) - - @property - def grams_per_cubic_megameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.grams_per_cubic_megameter) - - @property - def exagrams_per_cubic_megameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exagrams_per_cubic_megameter) - - @property - def petagrams_per_cubic_megameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petagrams_per_cubic_megameter) - - @property - def teragrams_per_cubic_megameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.teragrams_per_cubic_megameter) - - @property - def gigagrams_per_cubic_megameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigagrams_per_cubic_megameter) - - @property - def megagrams_per_cubic_megameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megagrams_per_cubic_megameter) - - @property - def kilograms_per_cubic_megameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilograms_per_cubic_megameter) - - @property - def milligrams_per_cubic_megameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.milligrams_per_cubic_megameter) - - @property - def micrograms_per_cubic_megameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrograms_per_cubic_megameter) - - @property - def nanograms_per_cubic_megameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanograms_per_cubic_megameter) - - @property - def picograms_per_cubic_megameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picograms_per_cubic_megameter) - - @property - def femtograms_per_cubic_megameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtograms_per_cubic_megameter) - - @property - def attograms_per_cubic_megameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attograms_per_cubic_megameter) - - @property - def atomic_mass_units_per_cubic_megameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.atomic_mass_units_per_cubic_megameter) - - @property - def pounds_per_cubic_megameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.pounds_per_cubic_megameter) - - @property - def ounces_per_cubic_megameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.ounces_per_cubic_megameter) - - @property - def grams_per_cubic_kilometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.grams_per_cubic_kilometer) - - @property - def exagrams_per_cubic_kilometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exagrams_per_cubic_kilometer) - - @property - def petagrams_per_cubic_kilometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petagrams_per_cubic_kilometer) - - @property - def teragrams_per_cubic_kilometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.teragrams_per_cubic_kilometer) - - @property - def gigagrams_per_cubic_kilometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigagrams_per_cubic_kilometer) - - @property - def megagrams_per_cubic_kilometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megagrams_per_cubic_kilometer) - - @property - def kilograms_per_cubic_kilometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilograms_per_cubic_kilometer) - - @property - def milligrams_per_cubic_kilometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.milligrams_per_cubic_kilometer) - - @property - def micrograms_per_cubic_kilometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrograms_per_cubic_kilometer) - - @property - def nanograms_per_cubic_kilometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanograms_per_cubic_kilometer) - - @property - def picograms_per_cubic_kilometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picograms_per_cubic_kilometer) - - @property - def femtograms_per_cubic_kilometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtograms_per_cubic_kilometer) - - @property - def attograms_per_cubic_kilometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attograms_per_cubic_kilometer) - - @property - def atomic_mass_units_per_cubic_kilometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.atomic_mass_units_per_cubic_kilometer) - - @property - def pounds_per_cubic_kilometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.pounds_per_cubic_kilometer) - - @property - def ounces_per_cubic_kilometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.ounces_per_cubic_kilometer) - - @property - def grams_per_cubic_millimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.grams_per_cubic_millimeter) - - @property - def exagrams_per_cubic_millimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exagrams_per_cubic_millimeter) - - @property - def petagrams_per_cubic_millimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petagrams_per_cubic_millimeter) - - @property - def teragrams_per_cubic_millimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.teragrams_per_cubic_millimeter) - - @property - def gigagrams_per_cubic_millimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigagrams_per_cubic_millimeter) - - @property - def megagrams_per_cubic_millimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megagrams_per_cubic_millimeter) - - @property - def kilograms_per_cubic_millimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilograms_per_cubic_millimeter) - - @property - def milligrams_per_cubic_millimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.milligrams_per_cubic_millimeter) - - @property - def micrograms_per_cubic_millimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrograms_per_cubic_millimeter) - - @property - def nanograms_per_cubic_millimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanograms_per_cubic_millimeter) - - @property - def picograms_per_cubic_millimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picograms_per_cubic_millimeter) - - @property - def femtograms_per_cubic_millimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtograms_per_cubic_millimeter) - - @property - def attograms_per_cubic_millimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attograms_per_cubic_millimeter) - - @property - def atomic_mass_units_per_cubic_millimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.atomic_mass_units_per_cubic_millimeter) - - @property - def pounds_per_cubic_millimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.pounds_per_cubic_millimeter) - - @property - def ounces_per_cubic_millimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.ounces_per_cubic_millimeter) - - @property - def grams_per_cubic_micrometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.grams_per_cubic_micrometer) - - @property - def exagrams_per_cubic_micrometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exagrams_per_cubic_micrometer) - - @property - def petagrams_per_cubic_micrometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petagrams_per_cubic_micrometer) - - @property - def teragrams_per_cubic_micrometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.teragrams_per_cubic_micrometer) - - @property - def gigagrams_per_cubic_micrometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigagrams_per_cubic_micrometer) - - @property - def megagrams_per_cubic_micrometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megagrams_per_cubic_micrometer) - - @property - def kilograms_per_cubic_micrometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilograms_per_cubic_micrometer) - - @property - def milligrams_per_cubic_micrometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.milligrams_per_cubic_micrometer) - - @property - def micrograms_per_cubic_micrometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrograms_per_cubic_micrometer) - - @property - def nanograms_per_cubic_micrometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanograms_per_cubic_micrometer) - - @property - def picograms_per_cubic_micrometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picograms_per_cubic_micrometer) - - @property - def femtograms_per_cubic_micrometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtograms_per_cubic_micrometer) - - @property - def attograms_per_cubic_micrometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attograms_per_cubic_micrometer) - - @property - def atomic_mass_units_per_cubic_micrometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.atomic_mass_units_per_cubic_micrometer) - - @property - def pounds_per_cubic_micrometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.pounds_per_cubic_micrometer) - - @property - def ounces_per_cubic_micrometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.ounces_per_cubic_micrometer) - - @property - def grams_per_cubic_nanometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.grams_per_cubic_nanometer) - - @property - def exagrams_per_cubic_nanometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exagrams_per_cubic_nanometer) - - @property - def petagrams_per_cubic_nanometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petagrams_per_cubic_nanometer) - - @property - def teragrams_per_cubic_nanometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.teragrams_per_cubic_nanometer) - - @property - def gigagrams_per_cubic_nanometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigagrams_per_cubic_nanometer) - - @property - def megagrams_per_cubic_nanometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megagrams_per_cubic_nanometer) - - @property - def kilograms_per_cubic_nanometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilograms_per_cubic_nanometer) - - @property - def milligrams_per_cubic_nanometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.milligrams_per_cubic_nanometer) - - @property - def micrograms_per_cubic_nanometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrograms_per_cubic_nanometer) - - @property - def nanograms_per_cubic_nanometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanograms_per_cubic_nanometer) - - @property - def picograms_per_cubic_nanometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picograms_per_cubic_nanometer) - - @property - def femtograms_per_cubic_nanometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtograms_per_cubic_nanometer) - - @property - def attograms_per_cubic_nanometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attograms_per_cubic_nanometer) - - @property - def atomic_mass_units_per_cubic_nanometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.atomic_mass_units_per_cubic_nanometer) - - @property - def pounds_per_cubic_nanometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.pounds_per_cubic_nanometer) - - @property - def ounces_per_cubic_nanometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.ounces_per_cubic_nanometer) - - @property - def grams_per_cubic_picometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.grams_per_cubic_picometer) - - @property - def exagrams_per_cubic_picometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exagrams_per_cubic_picometer) - - @property - def petagrams_per_cubic_picometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petagrams_per_cubic_picometer) - - @property - def teragrams_per_cubic_picometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.teragrams_per_cubic_picometer) - - @property - def gigagrams_per_cubic_picometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigagrams_per_cubic_picometer) - - @property - def megagrams_per_cubic_picometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megagrams_per_cubic_picometer) - - @property - def kilograms_per_cubic_picometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilograms_per_cubic_picometer) - - @property - def milligrams_per_cubic_picometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.milligrams_per_cubic_picometer) - - @property - def micrograms_per_cubic_picometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrograms_per_cubic_picometer) - - @property - def nanograms_per_cubic_picometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanograms_per_cubic_picometer) - - @property - def picograms_per_cubic_picometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picograms_per_cubic_picometer) - - @property - def femtograms_per_cubic_picometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtograms_per_cubic_picometer) - - @property - def attograms_per_cubic_picometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attograms_per_cubic_picometer) - - @property - def atomic_mass_units_per_cubic_picometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.atomic_mass_units_per_cubic_picometer) - - @property - def pounds_per_cubic_picometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.pounds_per_cubic_picometer) - - @property - def ounces_per_cubic_picometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.ounces_per_cubic_picometer) - - @property - def grams_per_cubic_femtometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.grams_per_cubic_femtometer) - - @property - def exagrams_per_cubic_femtometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exagrams_per_cubic_femtometer) - - @property - def petagrams_per_cubic_femtometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petagrams_per_cubic_femtometer) - - @property - def teragrams_per_cubic_femtometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.teragrams_per_cubic_femtometer) - - @property - def gigagrams_per_cubic_femtometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigagrams_per_cubic_femtometer) - - @property - def megagrams_per_cubic_femtometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megagrams_per_cubic_femtometer) - - @property - def kilograms_per_cubic_femtometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilograms_per_cubic_femtometer) - - @property - def milligrams_per_cubic_femtometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.milligrams_per_cubic_femtometer) - - @property - def micrograms_per_cubic_femtometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrograms_per_cubic_femtometer) - - @property - def nanograms_per_cubic_femtometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanograms_per_cubic_femtometer) - - @property - def picograms_per_cubic_femtometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picograms_per_cubic_femtometer) - - @property - def femtograms_per_cubic_femtometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtograms_per_cubic_femtometer) - - @property - def attograms_per_cubic_femtometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attograms_per_cubic_femtometer) - - @property - def atomic_mass_units_per_cubic_femtometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.atomic_mass_units_per_cubic_femtometer) - - @property - def pounds_per_cubic_femtometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.pounds_per_cubic_femtometer) - - @property - def ounces_per_cubic_femtometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.ounces_per_cubic_femtometer) - - @property - def grams_per_cubic_attometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.grams_per_cubic_attometer) - - @property - def exagrams_per_cubic_attometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exagrams_per_cubic_attometer) - - @property - def petagrams_per_cubic_attometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petagrams_per_cubic_attometer) - - @property - def teragrams_per_cubic_attometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.teragrams_per_cubic_attometer) - - @property - def gigagrams_per_cubic_attometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigagrams_per_cubic_attometer) - - @property - def megagrams_per_cubic_attometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megagrams_per_cubic_attometer) - - @property - def kilograms_per_cubic_attometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilograms_per_cubic_attometer) - - @property - def milligrams_per_cubic_attometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.milligrams_per_cubic_attometer) - - @property - def micrograms_per_cubic_attometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrograms_per_cubic_attometer) - - @property - def nanograms_per_cubic_attometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanograms_per_cubic_attometer) - - @property - def picograms_per_cubic_attometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picograms_per_cubic_attometer) - - @property - def femtograms_per_cubic_attometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtograms_per_cubic_attometer) - - @property - def attograms_per_cubic_attometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attograms_per_cubic_attometer) - - @property - def atomic_mass_units_per_cubic_attometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.atomic_mass_units_per_cubic_attometer) - - @property - def pounds_per_cubic_attometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.pounds_per_cubic_attometer) - - @property - def ounces_per_cubic_attometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.ounces_per_cubic_attometer) - - @property - def grams_per_cubic_decimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.grams_per_cubic_decimeter) - - @property - def exagrams_per_cubic_decimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exagrams_per_cubic_decimeter) - - @property - def petagrams_per_cubic_decimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petagrams_per_cubic_decimeter) - - @property - def teragrams_per_cubic_decimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.teragrams_per_cubic_decimeter) - - @property - def gigagrams_per_cubic_decimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigagrams_per_cubic_decimeter) - - @property - def megagrams_per_cubic_decimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megagrams_per_cubic_decimeter) - - @property - def kilograms_per_cubic_decimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilograms_per_cubic_decimeter) - - @property - def milligrams_per_cubic_decimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.milligrams_per_cubic_decimeter) - - @property - def micrograms_per_cubic_decimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrograms_per_cubic_decimeter) - - @property - def nanograms_per_cubic_decimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanograms_per_cubic_decimeter) - - @property - def picograms_per_cubic_decimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picograms_per_cubic_decimeter) - - @property - def femtograms_per_cubic_decimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtograms_per_cubic_decimeter) - - @property - def attograms_per_cubic_decimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attograms_per_cubic_decimeter) - - @property - def atomic_mass_units_per_cubic_decimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.atomic_mass_units_per_cubic_decimeter) - - @property - def pounds_per_cubic_decimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.pounds_per_cubic_decimeter) - - @property - def ounces_per_cubic_decimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.ounces_per_cubic_decimeter) - - @property - def grams_per_cubic_centimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.grams_per_cubic_centimeter) - - @property - def exagrams_per_cubic_centimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exagrams_per_cubic_centimeter) - - @property - def petagrams_per_cubic_centimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petagrams_per_cubic_centimeter) - - @property - def teragrams_per_cubic_centimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.teragrams_per_cubic_centimeter) - - @property - def gigagrams_per_cubic_centimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigagrams_per_cubic_centimeter) - - @property - def megagrams_per_cubic_centimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megagrams_per_cubic_centimeter) - - @property - def kilograms_per_cubic_centimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilograms_per_cubic_centimeter) - - @property - def milligrams_per_cubic_centimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.milligrams_per_cubic_centimeter) - - @property - def micrograms_per_cubic_centimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrograms_per_cubic_centimeter) - - @property - def nanograms_per_cubic_centimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanograms_per_cubic_centimeter) - - @property - def picograms_per_cubic_centimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picograms_per_cubic_centimeter) - - @property - def femtograms_per_cubic_centimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtograms_per_cubic_centimeter) - - @property - def attograms_per_cubic_centimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attograms_per_cubic_centimeter) - - @property - def atomic_mass_units_per_cubic_centimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.atomic_mass_units_per_cubic_centimeter) - - @property - def pounds_per_cubic_centimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.pounds_per_cubic_centimeter) - - @property - def ounces_per_cubic_centimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.ounces_per_cubic_centimeter) - - @property - def grams_per_cubic_angstrom(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.grams_per_cubic_angstrom) - - @property - def exagrams_per_cubic_angstrom(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exagrams_per_cubic_angstrom) - - @property - def petagrams_per_cubic_angstrom(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petagrams_per_cubic_angstrom) - - @property - def teragrams_per_cubic_angstrom(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.teragrams_per_cubic_angstrom) - - @property - def gigagrams_per_cubic_angstrom(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigagrams_per_cubic_angstrom) - - @property - def megagrams_per_cubic_angstrom(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megagrams_per_cubic_angstrom) - - @property - def kilograms_per_cubic_angstrom(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilograms_per_cubic_angstrom) - - @property - def milligrams_per_cubic_angstrom(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.milligrams_per_cubic_angstrom) - - @property - def micrograms_per_cubic_angstrom(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrograms_per_cubic_angstrom) - - @property - def nanograms_per_cubic_angstrom(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanograms_per_cubic_angstrom) - - @property - def picograms_per_cubic_angstrom(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picograms_per_cubic_angstrom) - - @property - def femtograms_per_cubic_angstrom(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtograms_per_cubic_angstrom) - - @property - def attograms_per_cubic_angstrom(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attograms_per_cubic_angstrom) - - @property - def atomic_mass_units_per_cubic_angstrom(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.atomic_mass_units_per_cubic_angstrom) - - @property - def pounds_per_cubic_angstrom(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.pounds_per_cubic_angstrom) - - @property - def ounces_per_cubic_angstrom(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.ounces_per_cubic_angstrom) - - @property - def grams_per_cubic_micron(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.grams_per_cubic_micron) - - @property - def exagrams_per_cubic_micron(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exagrams_per_cubic_micron) - - @property - def petagrams_per_cubic_micron(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petagrams_per_cubic_micron) - - @property - def teragrams_per_cubic_micron(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.teragrams_per_cubic_micron) - - @property - def gigagrams_per_cubic_micron(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigagrams_per_cubic_micron) - - @property - def megagrams_per_cubic_micron(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megagrams_per_cubic_micron) - - @property - def kilograms_per_cubic_micron(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilograms_per_cubic_micron) - - @property - def milligrams_per_cubic_micron(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.milligrams_per_cubic_micron) - - @property - def micrograms_per_cubic_micron(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrograms_per_cubic_micron) - - @property - def nanograms_per_cubic_micron(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanograms_per_cubic_micron) - - @property - def picograms_per_cubic_micron(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picograms_per_cubic_micron) - - @property - def femtograms_per_cubic_micron(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtograms_per_cubic_micron) - - @property - def attograms_per_cubic_micron(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attograms_per_cubic_micron) - - @property - def atomic_mass_units_per_cubic_micron(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.atomic_mass_units_per_cubic_micron) - - @property - def pounds_per_cubic_micron(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.pounds_per_cubic_micron) - - @property - def ounces_per_cubic_micron(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.ounces_per_cubic_micron) - - @property - def grams_per_cubic_mile(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.grams_per_cubic_mile) - - @property - def exagrams_per_cubic_mile(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exagrams_per_cubic_mile) - - @property - def petagrams_per_cubic_mile(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petagrams_per_cubic_mile) - - @property - def teragrams_per_cubic_mile(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.teragrams_per_cubic_mile) - - @property - def gigagrams_per_cubic_mile(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigagrams_per_cubic_mile) - - @property - def megagrams_per_cubic_mile(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megagrams_per_cubic_mile) - - @property - def kilograms_per_cubic_mile(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilograms_per_cubic_mile) - - @property - def milligrams_per_cubic_mile(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.milligrams_per_cubic_mile) - - @property - def micrograms_per_cubic_mile(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrograms_per_cubic_mile) - - @property - def nanograms_per_cubic_mile(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanograms_per_cubic_mile) - - @property - def picograms_per_cubic_mile(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picograms_per_cubic_mile) - - @property - def femtograms_per_cubic_mile(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtograms_per_cubic_mile) - - @property - def attograms_per_cubic_mile(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attograms_per_cubic_mile) - - @property - def atomic_mass_units_per_cubic_mile(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.atomic_mass_units_per_cubic_mile) - - @property - def pounds_per_cubic_mile(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.pounds_per_cubic_mile) - - @property - def ounces_per_cubic_mile(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.ounces_per_cubic_mile) - - @property - def grams_per_cubic_yard(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.grams_per_cubic_yard) - - @property - def exagrams_per_cubic_yard(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exagrams_per_cubic_yard) - - @property - def petagrams_per_cubic_yard(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petagrams_per_cubic_yard) - - @property - def teragrams_per_cubic_yard(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.teragrams_per_cubic_yard) - - @property - def gigagrams_per_cubic_yard(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigagrams_per_cubic_yard) - - @property - def megagrams_per_cubic_yard(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megagrams_per_cubic_yard) - - @property - def kilograms_per_cubic_yard(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilograms_per_cubic_yard) - - @property - def milligrams_per_cubic_yard(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.milligrams_per_cubic_yard) - - @property - def micrograms_per_cubic_yard(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrograms_per_cubic_yard) - - @property - def nanograms_per_cubic_yard(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanograms_per_cubic_yard) - - @property - def picograms_per_cubic_yard(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picograms_per_cubic_yard) - - @property - def femtograms_per_cubic_yard(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtograms_per_cubic_yard) - - @property - def attograms_per_cubic_yard(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attograms_per_cubic_yard) - - @property - def atomic_mass_units_per_cubic_yard(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.atomic_mass_units_per_cubic_yard) - - @property - def pounds_per_cubic_yard(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.pounds_per_cubic_yard) - - @property - def ounces_per_cubic_yard(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.ounces_per_cubic_yard) - - @property - def grams_per_cubic_foot(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.grams_per_cubic_foot) - - @property - def exagrams_per_cubic_foot(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exagrams_per_cubic_foot) - - @property - def petagrams_per_cubic_foot(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petagrams_per_cubic_foot) - - @property - def teragrams_per_cubic_foot(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.teragrams_per_cubic_foot) - - @property - def gigagrams_per_cubic_foot(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigagrams_per_cubic_foot) - - @property - def megagrams_per_cubic_foot(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megagrams_per_cubic_foot) - - @property - def kilograms_per_cubic_foot(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilograms_per_cubic_foot) - - @property - def milligrams_per_cubic_foot(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.milligrams_per_cubic_foot) - - @property - def micrograms_per_cubic_foot(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrograms_per_cubic_foot) - - @property - def nanograms_per_cubic_foot(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanograms_per_cubic_foot) - - @property - def picograms_per_cubic_foot(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picograms_per_cubic_foot) - - @property - def femtograms_per_cubic_foot(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtograms_per_cubic_foot) - - @property - def attograms_per_cubic_foot(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attograms_per_cubic_foot) - - @property - def atomic_mass_units_per_cubic_foot(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.atomic_mass_units_per_cubic_foot) - - @property - def pounds_per_cubic_foot(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.pounds_per_cubic_foot) - - @property - def ounces_per_cubic_foot(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.ounces_per_cubic_foot) - - @property - def grams_per_cubic_inch(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.grams_per_cubic_inch) - - @property - def exagrams_per_cubic_inch(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exagrams_per_cubic_inch) - - @property - def petagrams_per_cubic_inch(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petagrams_per_cubic_inch) - - @property - def teragrams_per_cubic_inch(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.teragrams_per_cubic_inch) - - @property - def gigagrams_per_cubic_inch(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigagrams_per_cubic_inch) - - @property - def megagrams_per_cubic_inch(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megagrams_per_cubic_inch) - - @property - def kilograms_per_cubic_inch(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilograms_per_cubic_inch) - - @property - def milligrams_per_cubic_inch(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.milligrams_per_cubic_inch) - - @property - def micrograms_per_cubic_inch(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micrograms_per_cubic_inch) - - @property - def nanograms_per_cubic_inch(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanograms_per_cubic_inch) - - @property - def picograms_per_cubic_inch(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picograms_per_cubic_inch) - - @property - def femtograms_per_cubic_inch(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtograms_per_cubic_inch) - - @property - def attograms_per_cubic_inch(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attograms_per_cubic_inch) - - @property - def atomic_mass_units_per_cubic_inch(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.atomic_mass_units_per_cubic_inch) - - @property - def pounds_per_cubic_inch(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.pounds_per_cubic_inch) - - @property - def ounces_per_cubic_inch(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.ounces_per_cubic_inch) - - - -class ForceAccessor[T](QuantityAccessor[T]): - dimension_name = 'force' - - @property - def newtons(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.newtons) - - @property - def exanewtons(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exanewtons) - - @property - def petanewtons(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petanewtons) - - @property - def teranewtons(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.teranewtons) - - @property - def giganewtons(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.giganewtons) - - @property - def meganewtons(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.meganewtons) - - @property - def kilonewtons(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilonewtons) - - @property - def millinewtons(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millinewtons) - - @property - def micronewtons(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micronewtons) - - @property - def nanonewtons(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanonewtons) - - @property - def piconewtons(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.piconewtons) - - @property - def femtonewtons(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtonewtons) - - @property - def attonewtons(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attonewtons) - - @property - def kg_force(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kg_force) - - @property - def pounds_force(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.pounds_force) - - - -class PressureAccessor[T](QuantityAccessor[T]): - dimension_name = 'pressure' - - @property - def pascals(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.pascals) - - @property - def exapascals(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exapascals) - - @property - def petapascals(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petapascals) - - @property - def terapascals(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terapascals) - - @property - def gigapascals(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigapascals) - - @property - def megapascals(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megapascals) - - @property - def kilopascals(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilopascals) - - @property - def millipascals(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millipascals) - - @property - def micropascals(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micropascals) - - @property - def nanopascals(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanopascals) - - @property - def picopascals(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picopascals) - - @property - def femtopascals(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtopascals) - - @property - def attopascals(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attopascals) - - @property - def pounds_force_per_square_inch(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.pounds_force_per_square_inch) - - - -class EnergyAccessor[T](QuantityAccessor[T]): - dimension_name = 'energy' - - @property - def joules(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.joules) - - @property - def exajoules(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exajoules) - - @property - def petajoules(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petajoules) - - @property - def terajoules(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terajoules) - - @property - def gigajoules(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigajoules) - - @property - def megajoules(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megajoules) - - @property - def kilojoules(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilojoules) - - @property - def millijoules(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millijoules) - - @property - def microjoules(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microjoules) - - @property - def nanojoules(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanojoules) - - @property - def picojoules(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picojoules) - - @property - def femtojoules(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtojoules) - - @property - def attojoules(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attojoules) - - @property - def electronvolts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.electronvolts) - - @property - def exaelectronvolts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exaelectronvolts) - - @property - def petaelectronvolts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petaelectronvolts) - - @property - def teraelectronvolts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.teraelectronvolts) - - @property - def gigaelectronvolts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigaelectronvolts) - - @property - def megaelectronvolts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megaelectronvolts) - - @property - def kiloelectronvolts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kiloelectronvolts) - - @property - def millielectronvolts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millielectronvolts) - - @property - def microelectronvolts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microelectronvolts) - - @property - def nanoelectronvolts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanoelectronvolts) - - @property - def picoelectronvolts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picoelectronvolts) - - @property - def femtoelectronvolts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtoelectronvolts) - - @property - def attoelectronvolts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attoelectronvolts) - - - -class PowerAccessor[T](QuantityAccessor[T]): - dimension_name = 'power' - - @property - def watts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.watts) - - @property - def exawatts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exawatts) - - @property - def petawatts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petawatts) - - @property - def terawatts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terawatts) - - @property - def gigawatts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigawatts) - - @property - def megawatts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megawatts) - - @property - def kilowatts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilowatts) - - @property - def milliwatts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.milliwatts) - - @property - def microwatts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microwatts) - - @property - def nanowatts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanowatts) - - @property - def picowatts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picowatts) - - @property - def femtowatts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtowatts) - - @property - def attowatts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attowatts) - - - -class ChargeAccessor[T](QuantityAccessor[T]): - dimension_name = 'charge' - - @property - def coulombs(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.coulombs) - - @property - def exacoulombs(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exacoulombs) - - @property - def petacoulombs(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petacoulombs) - - @property - def teracoulombs(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.teracoulombs) - - @property - def gigacoulombs(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigacoulombs) - - @property - def megacoulombs(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megacoulombs) - - @property - def kilocoulombs(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilocoulombs) - - @property - def millicoulombs(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millicoulombs) - - @property - def microcoulombs(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microcoulombs) - - @property - def nanocoulombs(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanocoulombs) - - @property - def picocoulombs(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picocoulombs) - - @property - def femtocoulombs(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtocoulombs) - - @property - def attocoulombs(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attocoulombs) - - - -class PotentialAccessor[T](QuantityAccessor[T]): - dimension_name = 'potential' - - @property - def volts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.volts) - - @property - def exavolts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exavolts) - - @property - def petavolts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petavolts) - - @property - def teravolts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.teravolts) - - @property - def gigavolts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigavolts) - - @property - def megavolts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megavolts) - - @property - def kilovolts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilovolts) - - @property - def millivolts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millivolts) - - @property - def microvolts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microvolts) - - @property - def nanovolts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanovolts) - - @property - def picovolts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picovolts) - - @property - def femtovolts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtovolts) - - @property - def attovolts(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attovolts) - - - -class ResistanceAccessor[T](QuantityAccessor[T]): - dimension_name = 'resistance' - - @property - def ohms(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.ohms) - - @property - def exaohms(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exaohms) - - @property - def petaohms(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petaohms) - - @property - def teraohms(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.teraohms) - - @property - def gigaohms(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigaohms) - - @property - def megaohms(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megaohms) - - @property - def kiloohms(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kiloohms) - - @property - def milliohms(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.milliohms) - - @property - def microohms(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microohms) - - @property - def nanoohms(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanoohms) - - @property - def picoohms(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picoohms) - - @property - def femtoohms(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtoohms) - - @property - def attoohms(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attoohms) - - - -class CapacitanceAccessor[T](QuantityAccessor[T]): - dimension_name = 'capacitance' - - @property - def farads(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.farads) - - @property - def exafarads(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exafarads) - - @property - def petafarads(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petafarads) - - @property - def terafarads(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terafarads) - - @property - def gigafarads(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigafarads) - - @property - def megafarads(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megafarads) - - @property - def kilofarads(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilofarads) - - @property - def millifarads(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millifarads) - - @property - def microfarads(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microfarads) - - @property - def nanofarads(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanofarads) - - @property - def picofarads(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picofarads) - - @property - def femtofarads(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtofarads) - - @property - def attofarads(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attofarads) - - - -class ConductanceAccessor[T](QuantityAccessor[T]): - dimension_name = 'conductance' - - @property - def siemens(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.siemens) - - @property - def exasiemens(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exasiemens) - - @property - def petasiemens(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petasiemens) - - @property - def terasiemens(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terasiemens) - - @property - def gigasiemens(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigasiemens) - - @property - def megasiemens(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megasiemens) - - @property - def kilosiemens(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilosiemens) - - @property - def millisiemens(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millisiemens) - - @property - def microsiemens(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microsiemens) - - @property - def nanosiemens(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanosiemens) - - @property - def picosiemens(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picosiemens) - - @property - def femtosiemens(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtosiemens) - - @property - def attosiemens(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attosiemens) - - - -class MagneticfluxAccessor[T](QuantityAccessor[T]): - dimension_name = 'magnetic_flux' - - @property - def webers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.webers) - - @property - def exawebers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exawebers) - - @property - def petawebers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petawebers) - - @property - def terawebers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terawebers) - - @property - def gigawebers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigawebers) - - @property - def megawebers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megawebers) - - @property - def kilowebers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilowebers) - - @property - def milliwebers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.milliwebers) - - @property - def microwebers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microwebers) - - @property - def nanowebers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanowebers) - - @property - def picowebers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picowebers) - - @property - def femtowebers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtowebers) - - @property - def attowebers(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attowebers) - - - -class MagneticfluxdensityAccessor[T](QuantityAccessor[T]): - dimension_name = 'magnetic_flux_density' - - @property - def tesla(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.tesla) - - @property - def exatesla(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exatesla) - - @property - def petatesla(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petatesla) - - @property - def teratesla(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.teratesla) - - @property - def gigatesla(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigatesla) - - @property - def megatesla(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megatesla) - - @property - def kilotesla(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilotesla) - - @property - def millitesla(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millitesla) - - @property - def microtesla(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microtesla) - - @property - def nanotesla(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanotesla) - - @property - def picotesla(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picotesla) - - @property - def femtotesla(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtotesla) - - @property - def attotesla(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attotesla) - - - -class InductanceAccessor[T](QuantityAccessor[T]): - dimension_name = 'inductance' - - @property - def henry(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.henry) - - @property - def exahenry(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exahenry) - - @property - def petahenry(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petahenry) - - @property - def terahenry(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terahenry) - - @property - def gigahenry(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigahenry) - - @property - def megahenry(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megahenry) - - @property - def kilohenry(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilohenry) - - @property - def millihenry(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millihenry) - - @property - def microhenry(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microhenry) - - @property - def nanohenry(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanohenry) - - @property - def picohenry(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picohenry) - - @property - def femtohenry(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtohenry) - - @property - def attohenry(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attohenry) - - - -class TemperatureAccessor[T](QuantityAccessor[T]): - dimension_name = 'temperature' - - @property - def kelvin(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kelvin) - - @property - def exakelvin(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.exakelvin) - - @property - def petakelvin(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.petakelvin) - - @property - def terakelvin(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.terakelvin) - - @property - def gigakelvin(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.gigakelvin) - - @property - def megakelvin(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.megakelvin) - - @property - def kilokelvin(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.kilokelvin) - - @property - def millikelvin(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millikelvin) - - @property - def microkelvin(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.microkelvin) - - @property - def nanokelvin(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanokelvin) - - @property - def picokelvin(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picokelvin) - - @property - def femtokelvin(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtokelvin) - - @property - def attokelvin(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attokelvin) - - @property - def degrees_celsius(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.degrees_celsius) - - - -class DimensionlessAccessor[T](QuantityAccessor[T]): - dimension_name = 'dimensionless' - - @property - def none(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.none) - - @property - def percent(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.percent) - - - -class AngleAccessor[T](QuantityAccessor[T]): - dimension_name = 'angle' - - @property - def degrees(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.degrees) - - @property - def radians(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.radians) - - @property - def rotations(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.rotations) - - - -class SolidangleAccessor[T](QuantityAccessor[T]): - dimension_name = 'solid_angle' - - @property - def stradians(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.stradians) - - - -class AmountAccessor[T](QuantityAccessor[T]): - dimension_name = 'amount' - - @property - def moles(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.moles) - - @property - def millimoles(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimoles) - - @property - def micromoles(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micromoles) - - @property - def nanomoles(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanomoles) - - @property - def picomoles(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picomoles) - - @property - def femtomoles(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtomoles) - - @property - def attomoles(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attomoles) - - - -class ConcentrationAccessor[T](QuantityAccessor[T]): - dimension_name = 'concentration' - - @property - def moles_per_cubic_meter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.moles_per_cubic_meter) - - @property - def millimoles_per_cubic_meter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimoles_per_cubic_meter) - - @property - def micromoles_per_cubic_meter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micromoles_per_cubic_meter) - - @property - def nanomoles_per_cubic_meter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanomoles_per_cubic_meter) - - @property - def picomoles_per_cubic_meter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picomoles_per_cubic_meter) - - @property - def femtomoles_per_cubic_meter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtomoles_per_cubic_meter) - - @property - def attomoles_per_cubic_meter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attomoles_per_cubic_meter) - - @property - def moles_per_cubic_exameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.moles_per_cubic_exameter) - - @property - def millimoles_per_cubic_exameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimoles_per_cubic_exameter) - - @property - def micromoles_per_cubic_exameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micromoles_per_cubic_exameter) - - @property - def nanomoles_per_cubic_exameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanomoles_per_cubic_exameter) - - @property - def picomoles_per_cubic_exameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picomoles_per_cubic_exameter) - - @property - def femtomoles_per_cubic_exameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtomoles_per_cubic_exameter) - - @property - def attomoles_per_cubic_exameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attomoles_per_cubic_exameter) - - @property - def moles_per_cubic_petameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.moles_per_cubic_petameter) - - @property - def millimoles_per_cubic_petameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimoles_per_cubic_petameter) - - @property - def micromoles_per_cubic_petameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micromoles_per_cubic_petameter) - - @property - def nanomoles_per_cubic_petameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanomoles_per_cubic_petameter) - - @property - def picomoles_per_cubic_petameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picomoles_per_cubic_petameter) - - @property - def femtomoles_per_cubic_petameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtomoles_per_cubic_petameter) - - @property - def attomoles_per_cubic_petameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attomoles_per_cubic_petameter) - - @property - def moles_per_cubic_terameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.moles_per_cubic_terameter) - - @property - def millimoles_per_cubic_terameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimoles_per_cubic_terameter) - - @property - def micromoles_per_cubic_terameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micromoles_per_cubic_terameter) - - @property - def nanomoles_per_cubic_terameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanomoles_per_cubic_terameter) - - @property - def picomoles_per_cubic_terameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picomoles_per_cubic_terameter) - - @property - def femtomoles_per_cubic_terameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtomoles_per_cubic_terameter) - - @property - def attomoles_per_cubic_terameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attomoles_per_cubic_terameter) - - @property - def moles_per_cubic_gigameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.moles_per_cubic_gigameter) - - @property - def millimoles_per_cubic_gigameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimoles_per_cubic_gigameter) - - @property - def micromoles_per_cubic_gigameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micromoles_per_cubic_gigameter) - - @property - def nanomoles_per_cubic_gigameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanomoles_per_cubic_gigameter) - - @property - def picomoles_per_cubic_gigameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picomoles_per_cubic_gigameter) - - @property - def femtomoles_per_cubic_gigameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtomoles_per_cubic_gigameter) - - @property - def attomoles_per_cubic_gigameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attomoles_per_cubic_gigameter) - - @property - def moles_per_cubic_megameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.moles_per_cubic_megameter) - - @property - def millimoles_per_cubic_megameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimoles_per_cubic_megameter) - - @property - def micromoles_per_cubic_megameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micromoles_per_cubic_megameter) - - @property - def nanomoles_per_cubic_megameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanomoles_per_cubic_megameter) - - @property - def picomoles_per_cubic_megameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picomoles_per_cubic_megameter) - - @property - def femtomoles_per_cubic_megameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtomoles_per_cubic_megameter) - - @property - def attomoles_per_cubic_megameter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attomoles_per_cubic_megameter) - - @property - def moles_per_cubic_kilometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.moles_per_cubic_kilometer) - - @property - def millimoles_per_cubic_kilometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimoles_per_cubic_kilometer) - - @property - def micromoles_per_cubic_kilometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micromoles_per_cubic_kilometer) - - @property - def nanomoles_per_cubic_kilometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanomoles_per_cubic_kilometer) - - @property - def picomoles_per_cubic_kilometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picomoles_per_cubic_kilometer) - - @property - def femtomoles_per_cubic_kilometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtomoles_per_cubic_kilometer) - - @property - def attomoles_per_cubic_kilometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attomoles_per_cubic_kilometer) - - @property - def moles_per_cubic_millimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.moles_per_cubic_millimeter) - - @property - def millimoles_per_cubic_millimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimoles_per_cubic_millimeter) - - @property - def micromoles_per_cubic_millimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micromoles_per_cubic_millimeter) - - @property - def nanomoles_per_cubic_millimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanomoles_per_cubic_millimeter) - - @property - def picomoles_per_cubic_millimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picomoles_per_cubic_millimeter) - - @property - def femtomoles_per_cubic_millimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtomoles_per_cubic_millimeter) - - @property - def attomoles_per_cubic_millimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attomoles_per_cubic_millimeter) - - @property - def moles_per_cubic_micrometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.moles_per_cubic_micrometer) - - @property - def millimoles_per_cubic_micrometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimoles_per_cubic_micrometer) - - @property - def micromoles_per_cubic_micrometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micromoles_per_cubic_micrometer) - - @property - def nanomoles_per_cubic_micrometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanomoles_per_cubic_micrometer) - - @property - def picomoles_per_cubic_micrometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picomoles_per_cubic_micrometer) - - @property - def femtomoles_per_cubic_micrometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtomoles_per_cubic_micrometer) - - @property - def attomoles_per_cubic_micrometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attomoles_per_cubic_micrometer) - - @property - def moles_per_cubic_nanometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.moles_per_cubic_nanometer) - - @property - def millimoles_per_cubic_nanometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimoles_per_cubic_nanometer) - - @property - def micromoles_per_cubic_nanometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micromoles_per_cubic_nanometer) - - @property - def nanomoles_per_cubic_nanometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanomoles_per_cubic_nanometer) - - @property - def picomoles_per_cubic_nanometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picomoles_per_cubic_nanometer) - - @property - def femtomoles_per_cubic_nanometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtomoles_per_cubic_nanometer) - - @property - def attomoles_per_cubic_nanometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attomoles_per_cubic_nanometer) - - @property - def moles_per_cubic_picometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.moles_per_cubic_picometer) - - @property - def millimoles_per_cubic_picometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimoles_per_cubic_picometer) - - @property - def micromoles_per_cubic_picometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micromoles_per_cubic_picometer) - - @property - def nanomoles_per_cubic_picometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanomoles_per_cubic_picometer) - - @property - def picomoles_per_cubic_picometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picomoles_per_cubic_picometer) - - @property - def femtomoles_per_cubic_picometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtomoles_per_cubic_picometer) - - @property - def attomoles_per_cubic_picometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attomoles_per_cubic_picometer) - - @property - def moles_per_cubic_femtometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.moles_per_cubic_femtometer) - - @property - def millimoles_per_cubic_femtometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimoles_per_cubic_femtometer) - - @property - def micromoles_per_cubic_femtometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micromoles_per_cubic_femtometer) - - @property - def nanomoles_per_cubic_femtometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanomoles_per_cubic_femtometer) - - @property - def picomoles_per_cubic_femtometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picomoles_per_cubic_femtometer) - - @property - def femtomoles_per_cubic_femtometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtomoles_per_cubic_femtometer) - - @property - def attomoles_per_cubic_femtometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attomoles_per_cubic_femtometer) - - @property - def moles_per_cubic_attometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.moles_per_cubic_attometer) - - @property - def millimoles_per_cubic_attometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimoles_per_cubic_attometer) - - @property - def micromoles_per_cubic_attometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micromoles_per_cubic_attometer) - - @property - def nanomoles_per_cubic_attometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanomoles_per_cubic_attometer) - - @property - def picomoles_per_cubic_attometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picomoles_per_cubic_attometer) - - @property - def femtomoles_per_cubic_attometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtomoles_per_cubic_attometer) - - @property - def attomoles_per_cubic_attometer(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attomoles_per_cubic_attometer) - - @property - def moles_per_cubic_decimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.moles_per_cubic_decimeter) - - @property - def millimoles_per_cubic_decimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimoles_per_cubic_decimeter) - - @property - def micromoles_per_cubic_decimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micromoles_per_cubic_decimeter) - - @property - def nanomoles_per_cubic_decimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanomoles_per_cubic_decimeter) - - @property - def picomoles_per_cubic_decimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picomoles_per_cubic_decimeter) - - @property - def femtomoles_per_cubic_decimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtomoles_per_cubic_decimeter) - - @property - def attomoles_per_cubic_decimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attomoles_per_cubic_decimeter) - - @property - def moles_per_cubic_centimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.moles_per_cubic_centimeter) - - @property - def millimoles_per_cubic_centimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimoles_per_cubic_centimeter) - - @property - def micromoles_per_cubic_centimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micromoles_per_cubic_centimeter) - - @property - def nanomoles_per_cubic_centimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanomoles_per_cubic_centimeter) - - @property - def picomoles_per_cubic_centimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picomoles_per_cubic_centimeter) - - @property - def femtomoles_per_cubic_centimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtomoles_per_cubic_centimeter) - - @property - def attomoles_per_cubic_centimeter(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attomoles_per_cubic_centimeter) - - @property - def moles_per_cubic_angstrom(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.moles_per_cubic_angstrom) - - @property - def millimoles_per_cubic_angstrom(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimoles_per_cubic_angstrom) - - @property - def micromoles_per_cubic_angstrom(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micromoles_per_cubic_angstrom) - - @property - def nanomoles_per_cubic_angstrom(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanomoles_per_cubic_angstrom) - - @property - def picomoles_per_cubic_angstrom(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picomoles_per_cubic_angstrom) - - @property - def femtomoles_per_cubic_angstrom(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtomoles_per_cubic_angstrom) - - @property - def attomoles_per_cubic_angstrom(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attomoles_per_cubic_angstrom) - - @property - def moles_per_cubic_micron(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.moles_per_cubic_micron) - - @property - def millimoles_per_cubic_micron(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimoles_per_cubic_micron) - - @property - def micromoles_per_cubic_micron(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micromoles_per_cubic_micron) - - @property - def nanomoles_per_cubic_micron(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanomoles_per_cubic_micron) - - @property - def picomoles_per_cubic_micron(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picomoles_per_cubic_micron) - - @property - def femtomoles_per_cubic_micron(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtomoles_per_cubic_micron) - - @property - def attomoles_per_cubic_micron(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attomoles_per_cubic_micron) - - @property - def moles_per_cubic_mile(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.moles_per_cubic_mile) - - @property - def millimoles_per_cubic_mile(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimoles_per_cubic_mile) - - @property - def micromoles_per_cubic_mile(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micromoles_per_cubic_mile) - - @property - def nanomoles_per_cubic_mile(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanomoles_per_cubic_mile) - - @property - def picomoles_per_cubic_mile(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picomoles_per_cubic_mile) - - @property - def femtomoles_per_cubic_mile(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtomoles_per_cubic_mile) - - @property - def attomoles_per_cubic_mile(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attomoles_per_cubic_mile) - - @property - def moles_per_cubic_yard(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.moles_per_cubic_yard) - - @property - def millimoles_per_cubic_yard(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimoles_per_cubic_yard) - - @property - def micromoles_per_cubic_yard(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micromoles_per_cubic_yard) - - @property - def nanomoles_per_cubic_yard(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanomoles_per_cubic_yard) - - @property - def picomoles_per_cubic_yard(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picomoles_per_cubic_yard) - - @property - def femtomoles_per_cubic_yard(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtomoles_per_cubic_yard) - - @property - def attomoles_per_cubic_yard(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attomoles_per_cubic_yard) - - @property - def moles_per_cubic_foot(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.moles_per_cubic_foot) - - @property - def millimoles_per_cubic_foot(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimoles_per_cubic_foot) - - @property - def micromoles_per_cubic_foot(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micromoles_per_cubic_foot) - - @property - def nanomoles_per_cubic_foot(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanomoles_per_cubic_foot) - - @property - def picomoles_per_cubic_foot(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picomoles_per_cubic_foot) - - @property - def femtomoles_per_cubic_foot(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtomoles_per_cubic_foot) - - @property - def attomoles_per_cubic_foot(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attomoles_per_cubic_foot) - - @property - def moles_per_cubic_inch(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.moles_per_cubic_inch) - - @property - def millimoles_per_cubic_inch(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.millimoles_per_cubic_inch) - - @property - def micromoles_per_cubic_inch(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.micromoles_per_cubic_inch) - - @property - def nanomoles_per_cubic_inch(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.nanomoles_per_cubic_inch) - - @property - def picomoles_per_cubic_inch(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.picomoles_per_cubic_inch) - - @property - def femtomoles_per_cubic_inch(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.femtomoles_per_cubic_inch) - - @property - def attomoles_per_cubic_inch(self) -> T: - quantity = self.quantity - if quantity is None: - return None - else: - return quantity.in_units_of(units.attomoles_per_cubic_inch) - - diff --git a/sasdata/quantities/si.py b/sasdata/quantities/si.py index 45961b0b..cd71771e 100644 --- a/sasdata/quantities/si.py +++ b/sasdata/quantities/si.py @@ -1,121 +1,3 @@ -""" - -This file is autogenerated! - -Do not edit by hand, instead edit the files that build it (_build_tables.py) - - - - -DDDDDDDDDDDDD NNNNNNNN NNNNNNNN tttt -D::::::::::::DDD N:::::::N N::::::N ttt:::t -D:::::::::::::::DD N::::::::N N::::::N t:::::t -DDD:::::DDDDD:::::D N:::::::::N N::::::N t:::::t - D:::::D D:::::D ooooooooooo N::::::::::N N::::::N ooooooooooo ttttttt:::::ttttttt - D:::::D D:::::D oo:::::::::::oo N:::::::::::N N::::::N oo:::::::::::oo t:::::::::::::::::t - D:::::D D:::::Do:::::::::::::::o N:::::::N::::N N::::::No:::::::::::::::ot:::::::::::::::::t - D:::::D D:::::Do:::::ooooo:::::o N::::::N N::::N N::::::No:::::ooooo:::::otttttt:::::::tttttt - D:::::D D:::::Do::::o o::::o N::::::N N::::N:::::::No::::o o::::o t:::::t - D:::::D D:::::Do::::o o::::o N::::::N N:::::::::::No::::o o::::o t:::::t - D:::::D D:::::Do::::o o::::o N::::::N N::::::::::No::::o o::::o t:::::t - D:::::D D:::::D o::::o o::::o N::::::N N:::::::::No::::o o::::o t:::::t tttttt -DDD:::::DDDDD:::::D o:::::ooooo:::::o N::::::N N::::::::No:::::ooooo:::::o t::::::tttt:::::t -D:::::::::::::::DD o:::::::::::::::o N::::::N N:::::::No:::::::::::::::o tt::::::::::::::t -D::::::::::::DDD oo:::::::::::oo N::::::N N::::::N oo:::::::::::oo tt:::::::::::tt -DDDDDDDDDDDDD ooooooooooo NNNNNNNN NNNNNNN ooooooooooo ttttttttttt - - - - - - - - - dddddddd -EEEEEEEEEEEEEEEEEEEEEE d::::::d iiii tttt BBBBBBBBBBBBBBBBB -E::::::::::::::::::::E d::::::d i::::i ttt:::t B::::::::::::::::B -E::::::::::::::::::::E d::::::d iiii t:::::t B::::::BBBBBB:::::B -EE::::::EEEEEEEEE::::E d:::::d t:::::t BB:::::B B:::::B - E:::::E EEEEEE ddddddddd:::::d iiiiiiittttttt:::::ttttttt B::::B B:::::Byyyyyyy yyyyyyy - E:::::E dd::::::::::::::d i:::::it:::::::::::::::::t B::::B B:::::B y:::::y y:::::y - E::::::EEEEEEEEEE d::::::::::::::::d i::::it:::::::::::::::::t B::::BBBBBB:::::B y:::::y y:::::y - E:::::::::::::::E d:::::::ddddd:::::d i::::itttttt:::::::tttttt B:::::::::::::BB y:::::y y:::::y - E:::::::::::::::E d::::::d d:::::d i::::i t:::::t B::::BBBBBB:::::B y:::::y y:::::y - E::::::EEEEEEEEEE d:::::d d:::::d i::::i t:::::t B::::B B:::::B y:::::y y:::::y - E:::::E d:::::d d:::::d i::::i t:::::t B::::B B:::::B y:::::y:::::y - E:::::E EEEEEEd:::::d d:::::d i::::i t:::::t tttttt B::::B B:::::B y:::::::::y -EE::::::EEEEEEEE:::::Ed::::::ddddd::::::ddi::::::i t::::::tttt:::::t BB:::::BBBBBB::::::B y:::::::y -E::::::::::::::::::::E d:::::::::::::::::di::::::i tt::::::::::::::t B:::::::::::::::::B y:::::y -E::::::::::::::::::::E d:::::::::ddd::::di::::::i tt:::::::::::tt B::::::::::::::::B y:::::y -EEEEEEEEEEEEEEEEEEEEEE ddddddddd dddddiiiiiiii ttttttttttt BBBBBBBBBBBBBBBBB y:::::y - y:::::y - y:::::y - y:::::y - y:::::y - yyyyyyy - - - - dddddddd -HHHHHHHHH HHHHHHHHH d::::::d -H:::::::H H:::::::H d::::::d -H:::::::H H:::::::H d::::::d -HH::::::H H::::::HH d:::::d - H:::::H H:::::H aaaaaaaaaaaaa nnnn nnnnnnnn ddddddddd:::::d - H:::::H H:::::H a::::::::::::a n:::nn::::::::nn dd::::::::::::::d - H::::::HHHHH::::::H aaaaaaaaa:::::an::::::::::::::nn d::::::::::::::::d - H:::::::::::::::::H a::::ann:::::::::::::::nd:::::::ddddd:::::d - H:::::::::::::::::H aaaaaaa:::::a n:::::nnnn:::::nd::::::d d:::::d - H::::::HHHHH::::::H aa::::::::::::a n::::n n::::nd:::::d d:::::d - H:::::H H:::::H a::::aaaa::::::a n::::n n::::nd:::::d d:::::d - H:::::H H:::::H a::::a a:::::a n::::n n::::nd:::::d d:::::d -HH::::::H H::::::HHa::::a a:::::a n::::n n::::nd::::::ddddd::::::dd -H:::::::H H:::::::Ha:::::aaaa::::::a n::::n n::::n d:::::::::::::::::d -H:::::::H H:::::::H a::::::::::aa:::a n::::n n::::n d:::::::::ddd::::d -HHHHHHHHH HHHHHHHHH aaaaaaaaaa aaaa nnnnnn nnnnnn ddddddddd ddddd - - - -""" - -from sasdata.quantities.units import ( - amperes, - coulombs, - farads, - henry, - hertz, - joules, - kelvin, - kilograms, - meters, - newtons, - ohms, - pascals, - seconds, - siemens, - tesla, - volts, - watts, - webers, -) - -all_si = [ - amperes, - coulombs, - farads, - henry, - hertz, - joules, - kelvin, - kilograms, - meters, - newtons, - ohms, - pascals, - seconds, - siemens, - tesla, - volts, - watts, - webers, -] +# This file is intentionally blank. It needs to exist so that the +# module loader can load it as a module, but the actual contents are +# dynamically created in __init__.py diff --git a/sasdata/quantities/unicode_superscript.py b/sasdata/quantities/unicode_superscript.py deleted file mode 100644 index 81f90f2d..00000000 --- a/sasdata/quantities/unicode_superscript.py +++ /dev/null @@ -1,12 +0,0 @@ - -_ascii_version = "0123456789-" -_unicode_version = "⁰¹²³⁴⁵⁶⁷⁸⁹⁻" - -def int_as_unicode_superscript(number: int): - string = str(number) - - for old, new in zip(_ascii_version, _unicode_version): - string = string.replace(old, new) - - return string - diff --git a/sasdata/quantities/units.py b/sasdata/quantities/units.py index c4ca8f12..cd71771e 100644 --- a/sasdata/quantities/units.py +++ b/sasdata/quantities/units.py @@ -1,3771 +1,3 @@ -""" - -This file is autogenerated! - -Do not edit by hand, instead edit the files that build it (_build_tables.py, _units_base.py) - - - - -DDDDDDDDDDDDD NNNNNNNN NNNNNNNN tttt -D::::::::::::DDD N:::::::N N::::::N ttt:::t -D:::::::::::::::DD N::::::::N N::::::N t:::::t -DDD:::::DDDDD:::::D N:::::::::N N::::::N t:::::t - D:::::D D:::::D ooooooooooo N::::::::::N N::::::N ooooooooooo ttttttt:::::ttttttt - D:::::D D:::::D oo:::::::::::oo N:::::::::::N N::::::N oo:::::::::::oo t:::::::::::::::::t - D:::::D D:::::Do:::::::::::::::o N:::::::N::::N N::::::No:::::::::::::::ot:::::::::::::::::t - D:::::D D:::::Do:::::ooooo:::::o N::::::N N::::N N::::::No:::::ooooo:::::otttttt:::::::tttttt - D:::::D D:::::Do::::o o::::o N::::::N N::::N:::::::No::::o o::::o t:::::t - D:::::D D:::::Do::::o o::::o N::::::N N:::::::::::No::::o o::::o t:::::t - D:::::D D:::::Do::::o o::::o N::::::N N::::::::::No::::o o::::o t:::::t - D:::::D D:::::D o::::o o::::o N::::::N N:::::::::No::::o o::::o t:::::t tttttt -DDD:::::DDDDD:::::D o:::::ooooo:::::o N::::::N N::::::::No:::::ooooo:::::o t::::::tttt:::::t -D:::::::::::::::DD o:::::::::::::::o N::::::N N:::::::No:::::::::::::::o tt::::::::::::::t -D::::::::::::DDD oo:::::::::::oo N::::::N N::::::N oo:::::::::::oo tt:::::::::::tt -DDDDDDDDDDDDD ooooooooooo NNNNNNNN NNNNNNN ooooooooooo ttttttttttt - - - - - - - - - dddddddd -EEEEEEEEEEEEEEEEEEEEEE d::::::d iiii tttt BBBBBBBBBBBBBBBBB -E::::::::::::::::::::E d::::::d i::::i ttt:::t B::::::::::::::::B -E::::::::::::::::::::E d::::::d iiii t:::::t B::::::BBBBBB:::::B -EE::::::EEEEEEEEE::::E d:::::d t:::::t BB:::::B B:::::B - E:::::E EEEEEE ddddddddd:::::d iiiiiiittttttt:::::ttttttt B::::B B:::::Byyyyyyy yyyyyyy - E:::::E dd::::::::::::::d i:::::it:::::::::::::::::t B::::B B:::::B y:::::y y:::::y - E::::::EEEEEEEEEE d::::::::::::::::d i::::it:::::::::::::::::t B::::BBBBBB:::::B y:::::y y:::::y - E:::::::::::::::E d:::::::ddddd:::::d i::::itttttt:::::::tttttt B:::::::::::::BB y:::::y y:::::y - E:::::::::::::::E d::::::d d:::::d i::::i t:::::t B::::BBBBBB:::::B y:::::y y:::::y - E::::::EEEEEEEEEE d:::::d d:::::d i::::i t:::::t B::::B B:::::B y:::::y y:::::y - E:::::E d:::::d d:::::d i::::i t:::::t B::::B B:::::B y:::::y:::::y - E:::::E EEEEEEd:::::d d:::::d i::::i t:::::t tttttt B::::B B:::::B y:::::::::y -EE::::::EEEEEEEE:::::Ed::::::ddddd::::::ddi::::::i t::::::tttt:::::t BB:::::BBBBBB::::::B y:::::::y -E::::::::::::::::::::E d:::::::::::::::::di::::::i tt::::::::::::::t B:::::::::::::::::B y:::::y -E::::::::::::::::::::E d:::::::::ddd::::di::::::i tt:::::::::::tt B::::::::::::::::B y:::::y -EEEEEEEEEEEEEEEEEEEEEE ddddddddd dddddiiiiiiii ttttttttttt BBBBBBBBBBBBBBBBB y:::::y - y:::::y - y:::::y - y:::::y - y:::::y - yyyyyyy - - - - dddddddd -HHHHHHHHH HHHHHHHHH d::::::d -H:::::::H H:::::::H d::::::d -H:::::::H H:::::::H d::::::d -HH::::::H H::::::HH d:::::d - H:::::H H:::::H aaaaaaaaaaaaa nnnn nnnnnnnn ddddddddd:::::d - H:::::H H:::::H a::::::::::::a n:::nn::::::::nn dd::::::::::::::d - H::::::HHHHH::::::H aaaaaaaaa:::::an::::::::::::::nn d::::::::::::::::d - H:::::::::::::::::H a::::ann:::::::::::::::nd:::::::ddddd:::::d - H:::::::::::::::::H aaaaaaa:::::a n:::::nnnn:::::nd::::::d d:::::d - H::::::HHHHH::::::H aa::::::::::::a n::::n n::::nd:::::d d:::::d - H:::::H H:::::H a::::aaaa::::::a n::::n n::::nd:::::d d:::::d - H:::::H H:::::H a::::a a:::::a n::::n n::::nd:::::d d:::::d -HH::::::H H::::::HHa::::a a:::::a n::::n n::::nd::::::ddddd::::::dd -H:::::::H H:::::::Ha:::::aaaa::::::a n::::n n::::n d:::::::::::::::::d -H:::::::H H:::::::H a::::::::::aa:::a n::::n n::::n d:::::::::ddd::::d -HHHHHHHHH HHHHHHHHH aaaaaaaaaa aaaa nnnnnn nnnnnn ddddddddd ddddd - - - -""" - -# -# Included from _units_base.py -# - -import re -from fractions import Fraction -from typing import Self - -import numpy as np - -from sasdata.quantities.unicode_superscript import int_as_unicode_superscript # type: ignore[import-untyped] - - -class DimensionError(Exception): - pass - -class Dimensions: - """ - - Note that some SI Base units are not useful from the perspecive of the sasview project, and make things - behave badly. In particular: moles and angular measures are dimensionless, and candelas are really a weighted - measure of power. - - We do however track angle and amount, because its really useful for formatting units - - """ - def __init__(self, - length: int = 0, - time: int = 0, - mass: int = 0, - current: int = 0, - temperature: int = 0, - moles_hint: int = 0, - angle_hint: int = 0): - - self.length = length - self.time = time - self.mass = mass - self.current = current - self.temperature = temperature - self.moles_hint = moles_hint - self.angle_hint = angle_hint - - @property - def is_dimensionless(self): - """ Is this dimension dimensionless (ignores moles_hint and angle_hint) """ - return self.length == 0 and self.time == 0 and self.mass == 0 and self.current == 0 and self.temperature == 0 - - def __mul__(self: Self, other: Self): - - if not isinstance(other, Dimensions): - return NotImplemented - - return Dimensions( - self.length + other.length, - self.time + other.time, - self.mass + other.mass, - self.current + other.current, - self.temperature + other.temperature, - self.moles_hint + other.moles_hint, - self.angle_hint + other.angle_hint) - - def __truediv__(self: Self, other: Self): - - if not isinstance(other, Dimensions): - return NotImplemented - - return Dimensions( - self.length - other.length, - self.time - other.time, - self.mass - other.mass, - self.current - other.current, - self.temperature - other.temperature, - self.moles_hint - other.moles_hint, - self.angle_hint - other.angle_hint) - - def __pow__(self, power: int | float): - - if not isinstance(power, (int, float)): - return NotImplemented - - frac = Fraction(power).limit_denominator(500) # Probably way bigger than needed, 10 would probably be fine - denominator = frac.denominator - numerator = frac.numerator - - # Throw errors if dimension is not a multiple of the denominator - - if self.length % denominator != 0: - raise DimensionError(f"Cannot apply power of {frac} to unit with length dimensionality {self.length}") - - if self.time % denominator != 0: - raise DimensionError(f"Cannot apply power of {frac} to unit with time dimensionality {self.time}") - - if self.mass % denominator != 0: - raise DimensionError(f"Cannot apply power of {frac} to unit with mass dimensionality {self.mass}") - - if self.current % denominator != 0: - raise DimensionError(f"Cannot apply power of {frac} to unit with current dimensionality {self.current}") - - if self.temperature % denominator != 0: - raise DimensionError(f"Cannot apply power of {frac} to unit with temperature dimensionality {self.temperature}") - - if self.moles_hint % denominator != 0: - raise DimensionError(f"Cannot apply power of {frac} to unit with moles hint dimensionality of {self.moles_hint}") - - if self.angle_hint % denominator != 0: - raise DimensionError(f"Cannot apply power of {frac} to unit with angle hint dimensionality of {self.angle_hint}") - - return Dimensions( - (self.length * numerator) // denominator, - (self.time * numerator) // denominator, - (self.mass * numerator) // denominator, - (self.current * numerator) // denominator, - (self.temperature * numerator) // denominator, - (self.moles_hint * numerator) // denominator, - (self.angle_hint * numerator) // denominator) - - def __eq__(self: Self, other: object) -> bool: - if isinstance(other, Dimensions): - return (self.length == other.length - and self.time == other.time - and self.mass == other.mass - and self.current == other.current - and self.temperature == other.temperature - and self.moles_hint == other.moles_hint - and self.angle_hint == other.angle_hint) - - return NotImplemented - - def __hash__(self): - """ Unique representation of units using Godel like encoding""" - - two_powers = 0 - if self.length < 0: - two_powers += 1 - - if self.time < 0: - two_powers += 2 - - if self.mass < 0: - two_powers += 4 - - if self.current < 0: - two_powers += 8 - - if self.temperature < 0: - two_powers += 16 - - if self.moles_hint < 0: - two_powers += 32 - - if self.angle_hint < 0: - two_powers += 64 - - return 2**two_powers * 3**abs(self.length) * 5**abs(self.time) * \ - 7**abs(self.mass) * 11**abs(self.current) * 13**abs(self.temperature) * \ - 17**abs(self.moles_hint) * 19**abs(self.angle_hint) - - def __repr__(self): - tokens = [] - for name, size in [ - ("length", self.length), - ("time", self.time), - ("mass", self.mass), - ("current", self.current), - ("temperature", self.temperature), - ("amount", self.moles_hint), - ("angle", self.angle_hint)]: - - if size == 0: - pass - elif size == 1: - tokens.append(f"{name}") - else: - tokens.append(f"{name}{int_as_unicode_superscript(size)}") - - return ' '.join(tokens) - - def si_repr(self): - tokens = [] - for name, size in [ - ("kg", self.mass), - ("m", self.length), - ("s", self.time), - ("A", self.current), - ("K", self.temperature), - ("mol", self.moles_hint)]: - - if size == 0: - pass - elif size == 1: - tokens.append(f"{name}") - else: - tokens.append(f"{name}{int_as_unicode_superscript(size)}") - - match self.angle_hint: - case 0: - pass - case 2: - tokens.append("sr") - case -2: - tokens.append("sr" + int_as_unicode_superscript(-1)) - case _: - tokens.append("rad" + int_as_unicode_superscript(self.angle_hint)) - - return ''.join(tokens) - - -class Unit: - def __init__(self, - si_scaling_factor: float, - dimensions: Dimensions): - - self.scale = si_scaling_factor - self.dimensions = dimensions - - def __mul__(self: Self, other: "Unit"): - if isinstance(other, Unit): - return Unit(self.scale * other.scale, self.dimensions * other.dimensions) - elif isinstance(other, (int, float)): - return Unit(other * self.scale, self.dimensions) - return NotImplemented - - def __truediv__(self: Self, other: "Unit"): - if isinstance(other, Unit): - return Unit(self.scale / other.scale, self.dimensions / other.dimensions) - elif isinstance(other, (int, float)): - return Unit(self.scale / other, self.dimensions) - else: - return NotImplemented - - def __rtruediv__(self: Self, other: "Unit"): - if isinstance(other, Unit): - return Unit(other.scale / self.scale, other.dimensions / self.dimensions) - elif isinstance(other, (int, float)): - return Unit(other / self.scale, self.dimensions ** -1) - else: - return NotImplemented - - def __pow__(self, power: int | float): - if not isinstance(power, int | float): - return NotImplemented - - return Unit(self.scale**power, self.dimensions**power) - - - def equivalent(self: Self, other: "Unit"): - return self.dimensions == other.dimensions - - def __eq__(self: Self, other: object) -> bool: - if isinstance(other, Unit): - return self.equivalent(other) and np.abs(np.log(self.scale/other.scale)) < 1e-5 - return False - - def si_equivalent(self): - """ Get the SI unit corresponding to this unit""" - return Unit(1, self.dimensions) - - def __repr__(self): - if self.scale == 1: - # We're in SI - return self.dimensions.si_repr() - - else: - return f"Unit[{self.scale}, {self.dimensions}]" - - -class NamedUnit(Unit): - """ Units, but they have a name, and a symbol - - :si_scaling_factor: Number of these units per SI equivalent - :param dimensions: Dimensions object representing the dimensionality of these units - :param name: Name of unit - string without unicode - :param ascii_symbol: Symbol for unit without unicode - :param symbol: Unicode symbol - """ - def __init__(self, - si_scaling_factor: float, - dimensions: Dimensions, - name: str | None = None, - ascii_symbol: str | None = None, - latex_symbol: str | None = None, - symbol: str | None = None): - - super().__init__(si_scaling_factor, dimensions) - self.name = name - self.ascii_symbol = ascii_symbol - self.symbol = symbol - self.latex_symbol = latex_symbol if latex_symbol is not None else ascii_symbol - - def __repr__(self): - return self.name - - def __eq__(self, other): - """Match other units exactly or match strings against ANY of our names""" - match other: - case str(): - return self.name == other or self.name == f"{other}s" or self.ascii_symbol == other or self.symbol == other - case NamedUnit(): - return self.name == other.name \ - and self.ascii_symbol == other.ascii_symbol and self.symbol == other.symbol - case Unit(): - return self.equivalent(other) and np.abs(np.log(self.scale/other.scale)) < 1e-5 - case _: - return False - - def startswith(self, prefix: str) -> bool: - """Check if any representation of the unit begins with the prefix string""" - prefix = prefix.lower() - return (self.name is not None and self.name.lower().startswith(prefix)) \ - or (self.ascii_symbol is not None and self.ascii_symbol.lower().startswith(prefix)) \ - or (self.symbol is not None and self.symbol.lower().startswith(prefix)) - - -class UnknownUnit(NamedUnit): - """A unit for an unknown quantity - - While this library attempts to handle all known SI units, it is - likely that users will want to express quantities of arbitrary - units (for example, calculating donuts per person for a meeting). - The arbitrary unit allows for these unforseeable quantities.""" - - def __init__(self, - numerator: str | list[str] | dict[str, int | float], - denominator: None | list[str] | dict[str, int | float] = None): - if numerator is None: - return TypeError - self._numerator = UnknownUnit._parse_arg(numerator) - self._denominator = UnknownUnit._parse_arg(denominator) - self._unit = NamedUnit(1, Dimensions(), "") # Unitless - - super().__init__(si_scaling_factor=1, dimensions=self._unit.dimensions, symbol=self._name()) - - @staticmethod - def _parse_arg(arg: str | list[str] | dict[str, int | float] | None) -> dict[str, int | float]: - """Parse the different possibilities for constructor arguments - - Both the numerator and the denominator could be a string, a - list of strings, or a dict. Parse any of these values into a - dictionary of names and powers. - - """ - match arg: - case None: - return {} - case str(): - return {UnknownUnit._valid_name(arg): 1} - case list(): - result: dict[str, int | float] = {} - for key in arg: - if key in result: - result[key] += 1 - else: - UnknownUnit._valid_name(key) - result[key] = 1 - return result - case dict(): - for key in arg: - UnknownUnit._valid_name(key) - return arg - case _: - raise TypeError - - @staticmethod - def _valid_name(name: str) -> str: - """Confirms that the name of a unit is appropriate - - This mostly confirms that the unit does not contain math - operators that would act on other units, like / or ^ - """ - - if re.search(r"[*/^\s]", name): - raise RuntimeError(f'Unit name "{name}" contains invalid characters (*, /, ^, or whitespace)') - - return name - - def _name(self): - num = [] - for key, value in self._numerator.items(): - if value == 1: - num.append(key) - else: - num.append(f"{key}^{value}") - den = [] - for key, value in self._denominator.items(): - den.append(f"{key}^{-value}") - num.sort() - den.sort() - return " ".join(num + den) - - def __eq__(self, other): - match other: - case UnknownUnit(): - return self._numerator == other._numerator and self._denominator == other._denominator and self._unit == other._unit - case Unit(): - return not self._numerator and not self._denominator and self._unit == other - case _: - return False - - def __mul__(self: Self, other: "Unit"): - match other: - case UnknownUnit(): - num = dict(self._numerator) - for key in other._numerator: - if key in num: - num[key] += other._numerator[key] - else: - num[key] = other._numerator[key] - den = dict(self._denominator) - for key in other._denominator: - if key in den: - den[key] += other._denominator[key] - else: - den[key] = other._denominator[key] - result = UnknownUnit(num, den) - result._unit *= other._unit - return result._reduce() - case NamedUnit() | Unit() | int() | float(): - result = UnknownUnit(self._numerator, self._denominator) - result._unit *= other - return result - case _: - return NotImplemented - - def __rmul__(self: Self, other): - return self * other - - def __truediv__(self: Self, other: "Unit") -> "UnknownUnit": - match other: - case UnknownUnit(): - num = dict(self._numerator) - for key in other._denominator: - if key in num: - num[key] += other._denominator[key] - else: - num[key] = other._denominator[key] - den = dict(self._denominator) - for key in other._numerator: - if key in den: - den[key] += other._numerator[key] - else: - den[key] = other._numerator[key] - result = UnknownUnit(num, den) - result._unit /= other._unit - return result._reduce() - case NamedUnit() | Unit() | int() | float(): - result = UnknownUnit(self._numerator, self._denominator) - result._unit /= other - return result - case _: - return NotImplemented - - def __rtruediv__(self: Self, other: "Unit") -> "UnknownUnit": - return (self/other) ** -1 - - def __pow__(self, power: int | float) -> "UnknownUnit": - match power: - case int() | float(): - num = {key: value * power for key, value in self._numerator.items()} - den = {key: value * power for key, value in self._denominator.items()} - if power < 0: - num, den = den, num - num = {k: -v for k,v in num.items()} - den = {k: -v for k,v in den.items()} - - result = UnknownUnit(num, den) - result._unit = self._unit ** power - return result - case _: - return NotImplemented - - def equivalent(self: Self, other: "Unit"): - match other: - case UnknownUnit(): - return self._unit.equivalent(other._unit) and sorted(self._numerator) == sorted(other._numerator) and sorted(self._denominator) == sorted(other._denominator) - case _: - return False - - def _reduce(self): - """Remove redundant units""" - for k in self._denominator: - if k in self._numerator: - common = min(self._numerator[k], self._denominator[k]) - self._numerator[k] -= common - self._denominator[k] -= common - dead_nums = [k for k in self._numerator if self._numerator[k] == 0] - for k in dead_nums: - del self._numerator[k] - dead_dens = [k for k in self._denominator if self._denominator[k] == 0] - for k in dead_dens: - del self._denominator[k] - return self - - def __str__(self): - result = self._name() - if type(self._unit) is NamedUnit and self._unit.name.strip(): - result += f" {self._unit.name.strip()}" - if type(self._unit) is Unit and str(self._unit).strip(): - result += f" {str(self._unit).strip()}" - return result - - def __repr__(self): - return str(self) - - -class UnitGroup: - """ A group of units that all have the same dimensionality """ - def __init__(self, name: str, units: list[NamedUnit]): - self.name = name - self.units = sorted(units, key=lambda unit: unit.scale) - - - -# -# Specific units -# - -meters = NamedUnit(1, Dimensions(1, 0, 0, 0, 0, 0, 0),name='meters',ascii_symbol='m',symbol='m') -exameters = NamedUnit(1e+18, Dimensions(1, 0, 0, 0, 0, 0, 0),name='exameters',ascii_symbol='Em',symbol='Em') -petameters = NamedUnit(1000000000000000.0, Dimensions(1, 0, 0, 0, 0, 0, 0),name='petameters',ascii_symbol='Pm',symbol='Pm') -terameters = NamedUnit(1000000000000.0, Dimensions(1, 0, 0, 0, 0, 0, 0),name='terameters',ascii_symbol='Tm',symbol='Tm') -gigameters = NamedUnit(1000000000.0, Dimensions(1, 0, 0, 0, 0, 0, 0),name='gigameters',ascii_symbol='Gm',symbol='Gm') -megameters = NamedUnit(1000000.0, Dimensions(1, 0, 0, 0, 0, 0, 0),name='megameters',ascii_symbol='Mm',symbol='Mm') -kilometers = NamedUnit(1000.0, Dimensions(1, 0, 0, 0, 0, 0, 0),name='kilometers',ascii_symbol='km',symbol='km') -millimeters = NamedUnit(0.001, Dimensions(1, 0, 0, 0, 0, 0, 0),name='millimeters',ascii_symbol='mm',symbol='mm') -micrometers = NamedUnit(1e-06, Dimensions(1, 0, 0, 0, 0, 0, 0),name='micrometers',ascii_symbol='um',latex_symbol=r'{\mu}m',symbol='µm') -nanometers = NamedUnit(1e-09, Dimensions(1, 0, 0, 0, 0, 0, 0),name='nanometers',ascii_symbol='nm',symbol='nm') -picometers = NamedUnit(1e-12, Dimensions(1, 0, 0, 0, 0, 0, 0),name='picometers',ascii_symbol='pm',symbol='pm') -femtometers = NamedUnit(1e-15, Dimensions(1, 0, 0, 0, 0, 0, 0),name='femtometers',ascii_symbol='fm',symbol='fm') -attometers = NamedUnit(1e-18, Dimensions(1, 0, 0, 0, 0, 0, 0),name='attometers',ascii_symbol='am',symbol='am') -decimeters = NamedUnit(0.1, Dimensions(1, 0, 0, 0, 0, 0, 0),name='decimeters',ascii_symbol='dm',symbol='dm') -centimeters = NamedUnit(0.01, Dimensions(1, 0, 0, 0, 0, 0, 0),name='centimeters',ascii_symbol='cm',symbol='cm') -seconds = NamedUnit(1, Dimensions(0, 1, 0, 0, 0, 0, 0),name='seconds',ascii_symbol='s',symbol='s') -milliseconds = NamedUnit(0.001, Dimensions(0, 1, 0, 0, 0, 0, 0),name='milliseconds',ascii_symbol='ms',symbol='ms') -microseconds = NamedUnit(1e-06, Dimensions(0, 1, 0, 0, 0, 0, 0),name='microseconds',ascii_symbol='us',latex_symbol=r'{\mu}s',symbol='µs') -nanoseconds = NamedUnit(1e-09, Dimensions(0, 1, 0, 0, 0, 0, 0),name='nanoseconds',ascii_symbol='ns',symbol='ns') -picoseconds = NamedUnit(1e-12, Dimensions(0, 1, 0, 0, 0, 0, 0),name='picoseconds',ascii_symbol='ps',symbol='ps') -femtoseconds = NamedUnit(1e-15, Dimensions(0, 1, 0, 0, 0, 0, 0),name='femtoseconds',ascii_symbol='fs',symbol='fs') -attoseconds = NamedUnit(1e-18, Dimensions(0, 1, 0, 0, 0, 0, 0),name='attoseconds',ascii_symbol='as',symbol='as') -grams = NamedUnit(0.001, Dimensions(0, 0, 1, 0, 0, 0, 0),name='grams',ascii_symbol='g',symbol='g') -exagrams = NamedUnit(1000000000000000.0, Dimensions(0, 0, 1, 0, 0, 0, 0),name='exagrams',ascii_symbol='Eg',symbol='Eg') -petagrams = NamedUnit(1000000000000.0, Dimensions(0, 0, 1, 0, 0, 0, 0),name='petagrams',ascii_symbol='Pg',symbol='Pg') -teragrams = NamedUnit(1000000000.0, Dimensions(0, 0, 1, 0, 0, 0, 0),name='teragrams',ascii_symbol='Tg',symbol='Tg') -gigagrams = NamedUnit(1000000.0, Dimensions(0, 0, 1, 0, 0, 0, 0),name='gigagrams',ascii_symbol='Gg',symbol='Gg') -megagrams = NamedUnit(1000.0, Dimensions(0, 0, 1, 0, 0, 0, 0),name='megagrams',ascii_symbol='Mg',symbol='Mg') -kilograms = NamedUnit(1.0, Dimensions(0, 0, 1, 0, 0, 0, 0),name='kilograms',ascii_symbol='kg',symbol='kg') -milligrams = NamedUnit(1e-06, Dimensions(0, 0, 1, 0, 0, 0, 0),name='milligrams',ascii_symbol='mg',symbol='mg') -micrograms = NamedUnit(1e-09, Dimensions(0, 0, 1, 0, 0, 0, 0),name='micrograms',ascii_symbol='ug',latex_symbol=r'{\mu}g',symbol='µg') -nanograms = NamedUnit(1.0000000000000002e-12, Dimensions(0, 0, 1, 0, 0, 0, 0),name='nanograms',ascii_symbol='ng',symbol='ng') -picograms = NamedUnit(1e-15, Dimensions(0, 0, 1, 0, 0, 0, 0),name='picograms',ascii_symbol='pg',symbol='pg') -femtograms = NamedUnit(1e-18, Dimensions(0, 0, 1, 0, 0, 0, 0),name='femtograms',ascii_symbol='fg',symbol='fg') -attograms = NamedUnit(1.0000000000000001e-21, Dimensions(0, 0, 1, 0, 0, 0, 0),name='attograms',ascii_symbol='ag',symbol='ag') -amperes = NamedUnit(1, Dimensions(0, 0, 0, 1, 0, 0, 0),name='amperes',ascii_symbol='A',symbol='A') -exaamperes = NamedUnit(1e+18, Dimensions(0, 0, 0, 1, 0, 0, 0),name='exaamperes',ascii_symbol='EA',symbol='EA') -petaamperes = NamedUnit(1000000000000000.0, Dimensions(0, 0, 0, 1, 0, 0, 0),name='petaamperes',ascii_symbol='PA',symbol='PA') -teraamperes = NamedUnit(1000000000000.0, Dimensions(0, 0, 0, 1, 0, 0, 0),name='teraamperes',ascii_symbol='TA',symbol='TA') -gigaamperes = NamedUnit(1000000000.0, Dimensions(0, 0, 0, 1, 0, 0, 0),name='gigaamperes',ascii_symbol='GA',symbol='GA') -megaamperes = NamedUnit(1000000.0, Dimensions(0, 0, 0, 1, 0, 0, 0),name='megaamperes',ascii_symbol='MA',symbol='MA') -kiloamperes = NamedUnit(1000.0, Dimensions(0, 0, 0, 1, 0, 0, 0),name='kiloamperes',ascii_symbol='kA',symbol='kA') -milliamperes = NamedUnit(0.001, Dimensions(0, 0, 0, 1, 0, 0, 0),name='milliamperes',ascii_symbol='mA',symbol='mA') -microamperes = NamedUnit(1e-06, Dimensions(0, 0, 0, 1, 0, 0, 0),name='microamperes',ascii_symbol='uA',latex_symbol=r'{\mu}A',symbol='µA') -nanoamperes = NamedUnit(1e-09, Dimensions(0, 0, 0, 1, 0, 0, 0),name='nanoamperes',ascii_symbol='nA',symbol='nA') -picoamperes = NamedUnit(1e-12, Dimensions(0, 0, 0, 1, 0, 0, 0),name='picoamperes',ascii_symbol='pA',symbol='pA') -femtoamperes = NamedUnit(1e-15, Dimensions(0, 0, 0, 1, 0, 0, 0),name='femtoamperes',ascii_symbol='fA',symbol='fA') -attoamperes = NamedUnit(1e-18, Dimensions(0, 0, 0, 1, 0, 0, 0),name='attoamperes',ascii_symbol='aA',symbol='aA') -kelvin = NamedUnit(1, Dimensions(0, 0, 0, 0, 1, 0, 0),name='kelvin',ascii_symbol='K',symbol='K') -exakelvin = NamedUnit(1e+18, Dimensions(0, 0, 0, 0, 1, 0, 0),name='exakelvin',ascii_symbol='EK',symbol='EK') -petakelvin = NamedUnit(1000000000000000.0, Dimensions(0, 0, 0, 0, 1, 0, 0),name='petakelvin',ascii_symbol='PK',symbol='PK') -terakelvin = NamedUnit(1000000000000.0, Dimensions(0, 0, 0, 0, 1, 0, 0),name='terakelvin',ascii_symbol='TK',symbol='TK') -gigakelvin = NamedUnit(1000000000.0, Dimensions(0, 0, 0, 0, 1, 0, 0),name='gigakelvin',ascii_symbol='GK',symbol='GK') -megakelvin = NamedUnit(1000000.0, Dimensions(0, 0, 0, 0, 1, 0, 0),name='megakelvin',ascii_symbol='MK',symbol='MK') -kilokelvin = NamedUnit(1000.0, Dimensions(0, 0, 0, 0, 1, 0, 0),name='kilokelvin',ascii_symbol='kK',symbol='kK') -millikelvin = NamedUnit(0.001, Dimensions(0, 0, 0, 0, 1, 0, 0),name='millikelvin',ascii_symbol='mK',symbol='mK') -microkelvin = NamedUnit(1e-06, Dimensions(0, 0, 0, 0, 1, 0, 0),name='microkelvin',ascii_symbol='uK',latex_symbol=r'{\mu}K',symbol='µK') -nanokelvin = NamedUnit(1e-09, Dimensions(0, 0, 0, 0, 1, 0, 0),name='nanokelvin',ascii_symbol='nK',symbol='nK') -picokelvin = NamedUnit(1e-12, Dimensions(0, 0, 0, 0, 1, 0, 0),name='picokelvin',ascii_symbol='pK',symbol='pK') -femtokelvin = NamedUnit(1e-15, Dimensions(0, 0, 0, 0, 1, 0, 0),name='femtokelvin',ascii_symbol='fK',symbol='fK') -attokelvin = NamedUnit(1e-18, Dimensions(0, 0, 0, 0, 1, 0, 0),name='attokelvin',ascii_symbol='aK',symbol='aK') -hertz = NamedUnit(1, Dimensions(0, -1, 0, 0, 0, 0, 0),name='hertz',ascii_symbol='Hz',symbol='Hz') -exahertz = NamedUnit(1e+18, Dimensions(0, -1, 0, 0, 0, 0, 0),name='exahertz',ascii_symbol='EHz',symbol='EHz') -petahertz = NamedUnit(1000000000000000.0, Dimensions(0, -1, 0, 0, 0, 0, 0),name='petahertz',ascii_symbol='PHz',symbol='PHz') -terahertz = NamedUnit(1000000000000.0, Dimensions(0, -1, 0, 0, 0, 0, 0),name='terahertz',ascii_symbol='THz',symbol='THz') -gigahertz = NamedUnit(1000000000.0, Dimensions(0, -1, 0, 0, 0, 0, 0),name='gigahertz',ascii_symbol='GHz',symbol='GHz') -megahertz = NamedUnit(1000000.0, Dimensions(0, -1, 0, 0, 0, 0, 0),name='megahertz',ascii_symbol='MHz',symbol='MHz') -kilohertz = NamedUnit(1000.0, Dimensions(0, -1, 0, 0, 0, 0, 0),name='kilohertz',ascii_symbol='kHz',symbol='kHz') -millihertz = NamedUnit(0.001, Dimensions(0, -1, 0, 0, 0, 0, 0),name='millihertz',ascii_symbol='mHz',symbol='mHz') -microhertz = NamedUnit(1e-06, Dimensions(0, -1, 0, 0, 0, 0, 0),name='microhertz',ascii_symbol='uHz',latex_symbol=r'{\mu}Hz',symbol='µHz') -nanohertz = NamedUnit(1e-09, Dimensions(0, -1, 0, 0, 0, 0, 0),name='nanohertz',ascii_symbol='nHz',symbol='nHz') -picohertz = NamedUnit(1e-12, Dimensions(0, -1, 0, 0, 0, 0, 0),name='picohertz',ascii_symbol='pHz',symbol='pHz') -femtohertz = NamedUnit(1e-15, Dimensions(0, -1, 0, 0, 0, 0, 0),name='femtohertz',ascii_symbol='fHz',symbol='fHz') -attohertz = NamedUnit(1e-18, Dimensions(0, -1, 0, 0, 0, 0, 0),name='attohertz',ascii_symbol='aHz',symbol='aHz') -newtons = NamedUnit(1, Dimensions(1, -2, 1, 0, 0, 0, 0),name='newtons',ascii_symbol='N',symbol='N') -exanewtons = NamedUnit(1e+18, Dimensions(1, -2, 1, 0, 0, 0, 0),name='exanewtons',ascii_symbol='EN',symbol='EN') -petanewtons = NamedUnit(1000000000000000.0, Dimensions(1, -2, 1, 0, 0, 0, 0),name='petanewtons',ascii_symbol='PN',symbol='PN') -teranewtons = NamedUnit(1000000000000.0, Dimensions(1, -2, 1, 0, 0, 0, 0),name='teranewtons',ascii_symbol='TN',symbol='TN') -giganewtons = NamedUnit(1000000000.0, Dimensions(1, -2, 1, 0, 0, 0, 0),name='giganewtons',ascii_symbol='GN',symbol='GN') -meganewtons = NamedUnit(1000000.0, Dimensions(1, -2, 1, 0, 0, 0, 0),name='meganewtons',ascii_symbol='MN',symbol='MN') -kilonewtons = NamedUnit(1000.0, Dimensions(1, -2, 1, 0, 0, 0, 0),name='kilonewtons',ascii_symbol='kN',symbol='kN') -millinewtons = NamedUnit(0.001, Dimensions(1, -2, 1, 0, 0, 0, 0),name='millinewtons',ascii_symbol='mN',symbol='mN') -micronewtons = NamedUnit(1e-06, Dimensions(1, -2, 1, 0, 0, 0, 0),name='micronewtons',ascii_symbol='uN',latex_symbol=r'{\mu}N',symbol='µN') -nanonewtons = NamedUnit(1e-09, Dimensions(1, -2, 1, 0, 0, 0, 0),name='nanonewtons',ascii_symbol='nN',symbol='nN') -piconewtons = NamedUnit(1e-12, Dimensions(1, -2, 1, 0, 0, 0, 0),name='piconewtons',ascii_symbol='pN',symbol='pN') -femtonewtons = NamedUnit(1e-15, Dimensions(1, -2, 1, 0, 0, 0, 0),name='femtonewtons',ascii_symbol='fN',symbol='fN') -attonewtons = NamedUnit(1e-18, Dimensions(1, -2, 1, 0, 0, 0, 0),name='attonewtons',ascii_symbol='aN',symbol='aN') -pascals = NamedUnit(1, Dimensions(-1, -2, 1, 0, 0, 0, 0),name='pascals',ascii_symbol='Pa',symbol='Pa') -exapascals = NamedUnit(1e+18, Dimensions(-1, -2, 1, 0, 0, 0, 0),name='exapascals',ascii_symbol='EPa',symbol='EPa') -petapascals = NamedUnit(1000000000000000.0, Dimensions(-1, -2, 1, 0, 0, 0, 0),name='petapascals',ascii_symbol='PPa',symbol='PPa') -terapascals = NamedUnit(1000000000000.0, Dimensions(-1, -2, 1, 0, 0, 0, 0),name='terapascals',ascii_symbol='TPa',symbol='TPa') -gigapascals = NamedUnit(1000000000.0, Dimensions(-1, -2, 1, 0, 0, 0, 0),name='gigapascals',ascii_symbol='GPa',symbol='GPa') -megapascals = NamedUnit(1000000.0, Dimensions(-1, -2, 1, 0, 0, 0, 0),name='megapascals',ascii_symbol='MPa',symbol='MPa') -kilopascals = NamedUnit(1000.0, Dimensions(-1, -2, 1, 0, 0, 0, 0),name='kilopascals',ascii_symbol='kPa',symbol='kPa') -millipascals = NamedUnit(0.001, Dimensions(-1, -2, 1, 0, 0, 0, 0),name='millipascals',ascii_symbol='mPa',symbol='mPa') -micropascals = NamedUnit(1e-06, Dimensions(-1, -2, 1, 0, 0, 0, 0),name='micropascals',ascii_symbol='uPa',latex_symbol=r'{\mu}Pa',symbol='µPa') -nanopascals = NamedUnit(1e-09, Dimensions(-1, -2, 1, 0, 0, 0, 0),name='nanopascals',ascii_symbol='nPa',symbol='nPa') -picopascals = NamedUnit(1e-12, Dimensions(-1, -2, 1, 0, 0, 0, 0),name='picopascals',ascii_symbol='pPa',symbol='pPa') -femtopascals = NamedUnit(1e-15, Dimensions(-1, -2, 1, 0, 0, 0, 0),name='femtopascals',ascii_symbol='fPa',symbol='fPa') -attopascals = NamedUnit(1e-18, Dimensions(-1, -2, 1, 0, 0, 0, 0),name='attopascals',ascii_symbol='aPa',symbol='aPa') -joules = NamedUnit(1, Dimensions(2, -2, 1, 0, 0, 0, 0),name='joules',ascii_symbol='J',symbol='J') -exajoules = NamedUnit(1e+18, Dimensions(2, -2, 1, 0, 0, 0, 0),name='exajoules',ascii_symbol='EJ',symbol='EJ') -petajoules = NamedUnit(1000000000000000.0, Dimensions(2, -2, 1, 0, 0, 0, 0),name='petajoules',ascii_symbol='PJ',symbol='PJ') -terajoules = NamedUnit(1000000000000.0, Dimensions(2, -2, 1, 0, 0, 0, 0),name='terajoules',ascii_symbol='TJ',symbol='TJ') -gigajoules = NamedUnit(1000000000.0, Dimensions(2, -2, 1, 0, 0, 0, 0),name='gigajoules',ascii_symbol='GJ',symbol='GJ') -megajoules = NamedUnit(1000000.0, Dimensions(2, -2, 1, 0, 0, 0, 0),name='megajoules',ascii_symbol='MJ',symbol='MJ') -kilojoules = NamedUnit(1000.0, Dimensions(2, -2, 1, 0, 0, 0, 0),name='kilojoules',ascii_symbol='kJ',symbol='kJ') -millijoules = NamedUnit(0.001, Dimensions(2, -2, 1, 0, 0, 0, 0),name='millijoules',ascii_symbol='mJ',symbol='mJ') -microjoules = NamedUnit(1e-06, Dimensions(2, -2, 1, 0, 0, 0, 0),name='microjoules',ascii_symbol='uJ',latex_symbol=r'{\mu}J',symbol='µJ') -nanojoules = NamedUnit(1e-09, Dimensions(2, -2, 1, 0, 0, 0, 0),name='nanojoules',ascii_symbol='nJ',symbol='nJ') -picojoules = NamedUnit(1e-12, Dimensions(2, -2, 1, 0, 0, 0, 0),name='picojoules',ascii_symbol='pJ',symbol='pJ') -femtojoules = NamedUnit(1e-15, Dimensions(2, -2, 1, 0, 0, 0, 0),name='femtojoules',ascii_symbol='fJ',symbol='fJ') -attojoules = NamedUnit(1e-18, Dimensions(2, -2, 1, 0, 0, 0, 0),name='attojoules',ascii_symbol='aJ',symbol='aJ') -watts = NamedUnit(1, Dimensions(2, -3, 1, 0, 0, 0, 0),name='watts',ascii_symbol='W',symbol='W') -exawatts = NamedUnit(1e+18, Dimensions(2, -3, 1, 0, 0, 0, 0),name='exawatts',ascii_symbol='EW',symbol='EW') -petawatts = NamedUnit(1000000000000000.0, Dimensions(2, -3, 1, 0, 0, 0, 0),name='petawatts',ascii_symbol='PW',symbol='PW') -terawatts = NamedUnit(1000000000000.0, Dimensions(2, -3, 1, 0, 0, 0, 0),name='terawatts',ascii_symbol='TW',symbol='TW') -gigawatts = NamedUnit(1000000000.0, Dimensions(2, -3, 1, 0, 0, 0, 0),name='gigawatts',ascii_symbol='GW',symbol='GW') -megawatts = NamedUnit(1000000.0, Dimensions(2, -3, 1, 0, 0, 0, 0),name='megawatts',ascii_symbol='MW',symbol='MW') -kilowatts = NamedUnit(1000.0, Dimensions(2, -3, 1, 0, 0, 0, 0),name='kilowatts',ascii_symbol='kW',symbol='kW') -milliwatts = NamedUnit(0.001, Dimensions(2, -3, 1, 0, 0, 0, 0),name='milliwatts',ascii_symbol='mW',symbol='mW') -microwatts = NamedUnit(1e-06, Dimensions(2, -3, 1, 0, 0, 0, 0),name='microwatts',ascii_symbol='uW',latex_symbol=r'{\mu}W',symbol='µW') -nanowatts = NamedUnit(1e-09, Dimensions(2, -3, 1, 0, 0, 0, 0),name='nanowatts',ascii_symbol='nW',symbol='nW') -picowatts = NamedUnit(1e-12, Dimensions(2, -3, 1, 0, 0, 0, 0),name='picowatts',ascii_symbol='pW',symbol='pW') -femtowatts = NamedUnit(1e-15, Dimensions(2, -3, 1, 0, 0, 0, 0),name='femtowatts',ascii_symbol='fW',symbol='fW') -attowatts = NamedUnit(1e-18, Dimensions(2, -3, 1, 0, 0, 0, 0),name='attowatts',ascii_symbol='aW',symbol='aW') -coulombs = NamedUnit(1, Dimensions(0, 1, 0, 1, 0, 0, 0),name='coulombs',ascii_symbol='C',symbol='C') -exacoulombs = NamedUnit(1e+18, Dimensions(0, 1, 0, 1, 0, 0, 0),name='exacoulombs',ascii_symbol='EC',symbol='EC') -petacoulombs = NamedUnit(1000000000000000.0, Dimensions(0, 1, 0, 1, 0, 0, 0),name='petacoulombs',ascii_symbol='PC',symbol='PC') -teracoulombs = NamedUnit(1000000000000.0, Dimensions(0, 1, 0, 1, 0, 0, 0),name='teracoulombs',ascii_symbol='TC',symbol='TC') -gigacoulombs = NamedUnit(1000000000.0, Dimensions(0, 1, 0, 1, 0, 0, 0),name='gigacoulombs',ascii_symbol='GC',symbol='GC') -megacoulombs = NamedUnit(1000000.0, Dimensions(0, 1, 0, 1, 0, 0, 0),name='megacoulombs',ascii_symbol='MC',symbol='MC') -kilocoulombs = NamedUnit(1000.0, Dimensions(0, 1, 0, 1, 0, 0, 0),name='kilocoulombs',ascii_symbol='kC',symbol='kC') -millicoulombs = NamedUnit(0.001, Dimensions(0, 1, 0, 1, 0, 0, 0),name='millicoulombs',ascii_symbol='mC',symbol='mC') -microcoulombs = NamedUnit(1e-06, Dimensions(0, 1, 0, 1, 0, 0, 0),name='microcoulombs',ascii_symbol='uC',latex_symbol=r'{\mu}C',symbol='µC') -nanocoulombs = NamedUnit(1e-09, Dimensions(0, 1, 0, 1, 0, 0, 0),name='nanocoulombs',ascii_symbol='nC',symbol='nC') -picocoulombs = NamedUnit(1e-12, Dimensions(0, 1, 0, 1, 0, 0, 0),name='picocoulombs',ascii_symbol='pC',symbol='pC') -femtocoulombs = NamedUnit(1e-15, Dimensions(0, 1, 0, 1, 0, 0, 0),name='femtocoulombs',ascii_symbol='fC',symbol='fC') -attocoulombs = NamedUnit(1e-18, Dimensions(0, 1, 0, 1, 0, 0, 0),name='attocoulombs',ascii_symbol='aC',symbol='aC') -volts = NamedUnit(1, Dimensions(2, -3, 1, -1, 0, 0, 0),name='volts',ascii_symbol='V',symbol='V') -exavolts = NamedUnit(1e+18, Dimensions(2, -3, 1, -1, 0, 0, 0),name='exavolts',ascii_symbol='EV',symbol='EV') -petavolts = NamedUnit(1000000000000000.0, Dimensions(2, -3, 1, -1, 0, 0, 0),name='petavolts',ascii_symbol='PV',symbol='PV') -teravolts = NamedUnit(1000000000000.0, Dimensions(2, -3, 1, -1, 0, 0, 0),name='teravolts',ascii_symbol='TV',symbol='TV') -gigavolts = NamedUnit(1000000000.0, Dimensions(2, -3, 1, -1, 0, 0, 0),name='gigavolts',ascii_symbol='GV',symbol='GV') -megavolts = NamedUnit(1000000.0, Dimensions(2, -3, 1, -1, 0, 0, 0),name='megavolts',ascii_symbol='MV',symbol='MV') -kilovolts = NamedUnit(1000.0, Dimensions(2, -3, 1, -1, 0, 0, 0),name='kilovolts',ascii_symbol='kV',symbol='kV') -millivolts = NamedUnit(0.001, Dimensions(2, -3, 1, -1, 0, 0, 0),name='millivolts',ascii_symbol='mV',symbol='mV') -microvolts = NamedUnit(1e-06, Dimensions(2, -3, 1, -1, 0, 0, 0),name='microvolts',ascii_symbol='uV',latex_symbol=r'{\mu}V',symbol='µV') -nanovolts = NamedUnit(1e-09, Dimensions(2, -3, 1, -1, 0, 0, 0),name='nanovolts',ascii_symbol='nV',symbol='nV') -picovolts = NamedUnit(1e-12, Dimensions(2, -3, 1, -1, 0, 0, 0),name='picovolts',ascii_symbol='pV',symbol='pV') -femtovolts = NamedUnit(1e-15, Dimensions(2, -3, 1, -1, 0, 0, 0),name='femtovolts',ascii_symbol='fV',symbol='fV') -attovolts = NamedUnit(1e-18, Dimensions(2, -3, 1, -1, 0, 0, 0),name='attovolts',ascii_symbol='aV',symbol='aV') -ohms = NamedUnit(1, Dimensions(2, -3, 1, -2, 0, 0, 0),name='ohms',ascii_symbol='Ohm',latex_symbol=r'\Omega',symbol='Ω') -exaohms = NamedUnit(1e+18, Dimensions(2, -3, 1, -2, 0, 0, 0),name='exaohms',ascii_symbol='EOhm',latex_symbol=r'E\Omega',symbol='EΩ') -petaohms = NamedUnit(1000000000000000.0, Dimensions(2, -3, 1, -2, 0, 0, 0),name='petaohms',ascii_symbol='POhm',latex_symbol=r'P\Omega',symbol='PΩ') -teraohms = NamedUnit(1000000000000.0, Dimensions(2, -3, 1, -2, 0, 0, 0),name='teraohms',ascii_symbol='TOhm',latex_symbol=r'T\Omega',symbol='TΩ') -gigaohms = NamedUnit(1000000000.0, Dimensions(2, -3, 1, -2, 0, 0, 0),name='gigaohms',ascii_symbol='GOhm',latex_symbol=r'G\Omega',symbol='GΩ') -megaohms = NamedUnit(1000000.0, Dimensions(2, -3, 1, -2, 0, 0, 0),name='megaohms',ascii_symbol='MOhm',latex_symbol=r'M\Omega',symbol='MΩ') -kiloohms = NamedUnit(1000.0, Dimensions(2, -3, 1, -2, 0, 0, 0),name='kiloohms',ascii_symbol='kOhm',latex_symbol=r'k\Omega',symbol='kΩ') -milliohms = NamedUnit(0.001, Dimensions(2, -3, 1, -2, 0, 0, 0),name='milliohms',ascii_symbol='mOhm',latex_symbol=r'm\Omega',symbol='mΩ') -microohms = NamedUnit(1e-06, Dimensions(2, -3, 1, -2, 0, 0, 0),name='microohms',ascii_symbol='uOhm',latex_symbol=r'{\mu}\Omega',symbol='µΩ') -nanoohms = NamedUnit(1e-09, Dimensions(2, -3, 1, -2, 0, 0, 0),name='nanoohms',ascii_symbol='nOhm',latex_symbol=r'n\Omega',symbol='nΩ') -picoohms = NamedUnit(1e-12, Dimensions(2, -3, 1, -2, 0, 0, 0),name='picoohms',ascii_symbol='pOhm',latex_symbol=r'p\Omega',symbol='pΩ') -femtoohms = NamedUnit(1e-15, Dimensions(2, -3, 1, -2, 0, 0, 0),name='femtoohms',ascii_symbol='fOhm',latex_symbol=r'f\Omega',symbol='fΩ') -attoohms = NamedUnit(1e-18, Dimensions(2, -3, 1, -2, 0, 0, 0),name='attoohms',ascii_symbol='aOhm',latex_symbol=r'a\Omega',symbol='aΩ') -farads = NamedUnit(1, Dimensions(-2, 4, -1, 2, 0, 0, 0),name='farads',ascii_symbol='F',symbol='F') -exafarads = NamedUnit(1e+18, Dimensions(-2, 4, -1, 2, 0, 0, 0),name='exafarads',ascii_symbol='EF',symbol='EF') -petafarads = NamedUnit(1000000000000000.0, Dimensions(-2, 4, -1, 2, 0, 0, 0),name='petafarads',ascii_symbol='PF',symbol='PF') -terafarads = NamedUnit(1000000000000.0, Dimensions(-2, 4, -1, 2, 0, 0, 0),name='terafarads',ascii_symbol='TF',symbol='TF') -gigafarads = NamedUnit(1000000000.0, Dimensions(-2, 4, -1, 2, 0, 0, 0),name='gigafarads',ascii_symbol='GF',symbol='GF') -megafarads = NamedUnit(1000000.0, Dimensions(-2, 4, -1, 2, 0, 0, 0),name='megafarads',ascii_symbol='MF',symbol='MF') -kilofarads = NamedUnit(1000.0, Dimensions(-2, 4, -1, 2, 0, 0, 0),name='kilofarads',ascii_symbol='kF',symbol='kF') -millifarads = NamedUnit(0.001, Dimensions(-2, 4, -1, 2, 0, 0, 0),name='millifarads',ascii_symbol='mF',symbol='mF') -microfarads = NamedUnit(1e-06, Dimensions(-2, 4, -1, 2, 0, 0, 0),name='microfarads',ascii_symbol='uF',latex_symbol=r'{\mu}F',symbol='µF') -nanofarads = NamedUnit(1e-09, Dimensions(-2, 4, -1, 2, 0, 0, 0),name='nanofarads',ascii_symbol='nF',symbol='nF') -picofarads = NamedUnit(1e-12, Dimensions(-2, 4, -1, 2, 0, 0, 0),name='picofarads',ascii_symbol='pF',symbol='pF') -femtofarads = NamedUnit(1e-15, Dimensions(-2, 4, -1, 2, 0, 0, 0),name='femtofarads',ascii_symbol='fF',symbol='fF') -attofarads = NamedUnit(1e-18, Dimensions(-2, 4, -1, 2, 0, 0, 0),name='attofarads',ascii_symbol='aF',symbol='aF') -siemens = NamedUnit(1, Dimensions(-2, 3, -1, 2, 0, 0, 0),name='siemens',ascii_symbol='S',symbol='S') -exasiemens = NamedUnit(1e+18, Dimensions(-2, 3, -1, 2, 0, 0, 0),name='exasiemens',ascii_symbol='ES',symbol='ES') -petasiemens = NamedUnit(1000000000000000.0, Dimensions(-2, 3, -1, 2, 0, 0, 0),name='petasiemens',ascii_symbol='PS',symbol='PS') -terasiemens = NamedUnit(1000000000000.0, Dimensions(-2, 3, -1, 2, 0, 0, 0),name='terasiemens',ascii_symbol='TS',symbol='TS') -gigasiemens = NamedUnit(1000000000.0, Dimensions(-2, 3, -1, 2, 0, 0, 0),name='gigasiemens',ascii_symbol='GS',symbol='GS') -megasiemens = NamedUnit(1000000.0, Dimensions(-2, 3, -1, 2, 0, 0, 0),name='megasiemens',ascii_symbol='MS',symbol='MS') -kilosiemens = NamedUnit(1000.0, Dimensions(-2, 3, -1, 2, 0, 0, 0),name='kilosiemens',ascii_symbol='kS',symbol='kS') -millisiemens = NamedUnit(0.001, Dimensions(-2, 3, -1, 2, 0, 0, 0),name='millisiemens',ascii_symbol='mS',symbol='mS') -microsiemens = NamedUnit(1e-06, Dimensions(-2, 3, -1, 2, 0, 0, 0),name='microsiemens',ascii_symbol='uS',latex_symbol=r'{\mu}S',symbol='µS') -nanosiemens = NamedUnit(1e-09, Dimensions(-2, 3, -1, 2, 0, 0, 0),name='nanosiemens',ascii_symbol='nS',symbol='nS') -picosiemens = NamedUnit(1e-12, Dimensions(-2, 3, -1, 2, 0, 0, 0),name='picosiemens',ascii_symbol='pS',symbol='pS') -femtosiemens = NamedUnit(1e-15, Dimensions(-2, 3, -1, 2, 0, 0, 0),name='femtosiemens',ascii_symbol='fS',symbol='fS') -attosiemens = NamedUnit(1e-18, Dimensions(-2, 3, -1, 2, 0, 0, 0),name='attosiemens',ascii_symbol='aS',symbol='aS') -webers = NamedUnit(1, Dimensions(2, -2, 1, -1, 0, 0, 0),name='webers',ascii_symbol='Wb',symbol='Wb') -exawebers = NamedUnit(1e+18, Dimensions(2, -2, 1, -1, 0, 0, 0),name='exawebers',ascii_symbol='EWb',symbol='EWb') -petawebers = NamedUnit(1000000000000000.0, Dimensions(2, -2, 1, -1, 0, 0, 0),name='petawebers',ascii_symbol='PWb',symbol='PWb') -terawebers = NamedUnit(1000000000000.0, Dimensions(2, -2, 1, -1, 0, 0, 0),name='terawebers',ascii_symbol='TWb',symbol='TWb') -gigawebers = NamedUnit(1000000000.0, Dimensions(2, -2, 1, -1, 0, 0, 0),name='gigawebers',ascii_symbol='GWb',symbol='GWb') -megawebers = NamedUnit(1000000.0, Dimensions(2, -2, 1, -1, 0, 0, 0),name='megawebers',ascii_symbol='MWb',symbol='MWb') -kilowebers = NamedUnit(1000.0, Dimensions(2, -2, 1, -1, 0, 0, 0),name='kilowebers',ascii_symbol='kWb',symbol='kWb') -milliwebers = NamedUnit(0.001, Dimensions(2, -2, 1, -1, 0, 0, 0),name='milliwebers',ascii_symbol='mWb',symbol='mWb') -microwebers = NamedUnit(1e-06, Dimensions(2, -2, 1, -1, 0, 0, 0),name='microwebers',ascii_symbol='uWb',latex_symbol=r'{\mu}Wb',symbol='µWb') -nanowebers = NamedUnit(1e-09, Dimensions(2, -2, 1, -1, 0, 0, 0),name='nanowebers',ascii_symbol='nWb',symbol='nWb') -picowebers = NamedUnit(1e-12, Dimensions(2, -2, 1, -1, 0, 0, 0),name='picowebers',ascii_symbol='pWb',symbol='pWb') -femtowebers = NamedUnit(1e-15, Dimensions(2, -2, 1, -1, 0, 0, 0),name='femtowebers',ascii_symbol='fWb',symbol='fWb') -attowebers = NamedUnit(1e-18, Dimensions(2, -2, 1, -1, 0, 0, 0),name='attowebers',ascii_symbol='aWb',symbol='aWb') -tesla = NamedUnit(1, Dimensions(0, -2, 1, -1, 0, 0, 0),name='tesla',ascii_symbol='T',symbol='T') -exatesla = NamedUnit(1e+18, Dimensions(0, -2, 1, -1, 0, 0, 0),name='exatesla',ascii_symbol='ET',symbol='ET') -petatesla = NamedUnit(1000000000000000.0, Dimensions(0, -2, 1, -1, 0, 0, 0),name='petatesla',ascii_symbol='PT',symbol='PT') -teratesla = NamedUnit(1000000000000.0, Dimensions(0, -2, 1, -1, 0, 0, 0),name='teratesla',ascii_symbol='TT',symbol='TT') -gigatesla = NamedUnit(1000000000.0, Dimensions(0, -2, 1, -1, 0, 0, 0),name='gigatesla',ascii_symbol='GT',symbol='GT') -megatesla = NamedUnit(1000000.0, Dimensions(0, -2, 1, -1, 0, 0, 0),name='megatesla',ascii_symbol='MT',symbol='MT') -kilotesla = NamedUnit(1000.0, Dimensions(0, -2, 1, -1, 0, 0, 0),name='kilotesla',ascii_symbol='kT',symbol='kT') -millitesla = NamedUnit(0.001, Dimensions(0, -2, 1, -1, 0, 0, 0),name='millitesla',ascii_symbol='mT',symbol='mT') -microtesla = NamedUnit(1e-06, Dimensions(0, -2, 1, -1, 0, 0, 0),name='microtesla',ascii_symbol='uT',latex_symbol=r'{\mu}T',symbol='µT') -nanotesla = NamedUnit(1e-09, Dimensions(0, -2, 1, -1, 0, 0, 0),name='nanotesla',ascii_symbol='nT',symbol='nT') -picotesla = NamedUnit(1e-12, Dimensions(0, -2, 1, -1, 0, 0, 0),name='picotesla',ascii_symbol='pT',symbol='pT') -femtotesla = NamedUnit(1e-15, Dimensions(0, -2, 1, -1, 0, 0, 0),name='femtotesla',ascii_symbol='fT',symbol='fT') -attotesla = NamedUnit(1e-18, Dimensions(0, -2, 1, -1, 0, 0, 0),name='attotesla',ascii_symbol='aT',symbol='aT') -henry = NamedUnit(1, Dimensions(2, -2, 1, -2, 0, 0, 0),name='henry',ascii_symbol='H',symbol='H') -exahenry = NamedUnit(1e+18, Dimensions(2, -2, 1, -2, 0, 0, 0),name='exahenry',ascii_symbol='EH',symbol='EH') -petahenry = NamedUnit(1000000000000000.0, Dimensions(2, -2, 1, -2, 0, 0, 0),name='petahenry',ascii_symbol='PH',symbol='PH') -terahenry = NamedUnit(1000000000000.0, Dimensions(2, -2, 1, -2, 0, 0, 0),name='terahenry',ascii_symbol='TH',symbol='TH') -gigahenry = NamedUnit(1000000000.0, Dimensions(2, -2, 1, -2, 0, 0, 0),name='gigahenry',ascii_symbol='GH',symbol='GH') -megahenry = NamedUnit(1000000.0, Dimensions(2, -2, 1, -2, 0, 0, 0),name='megahenry',ascii_symbol='MH',symbol='MH') -kilohenry = NamedUnit(1000.0, Dimensions(2, -2, 1, -2, 0, 0, 0),name='kilohenry',ascii_symbol='kH',symbol='kH') -millihenry = NamedUnit(0.001, Dimensions(2, -2, 1, -2, 0, 0, 0),name='millihenry',ascii_symbol='mH',symbol='mH') -microhenry = NamedUnit(1e-06, Dimensions(2, -2, 1, -2, 0, 0, 0),name='microhenry',ascii_symbol='uH',latex_symbol=r'{\mu}H',symbol='µH') -nanohenry = NamedUnit(1e-09, Dimensions(2, -2, 1, -2, 0, 0, 0),name='nanohenry',ascii_symbol='nH',symbol='nH') -picohenry = NamedUnit(1e-12, Dimensions(2, -2, 1, -2, 0, 0, 0),name='picohenry',ascii_symbol='pH',symbol='pH') -femtohenry = NamedUnit(1e-15, Dimensions(2, -2, 1, -2, 0, 0, 0),name='femtohenry',ascii_symbol='fH',symbol='fH') -attohenry = NamedUnit(1e-18, Dimensions(2, -2, 1, -2, 0, 0, 0),name='attohenry',ascii_symbol='aH',symbol='aH') -angstroms = NamedUnit(1e-10, Dimensions(1, 0, 0, 0, 0, 0, 0),name='angstroms',ascii_symbol='Ang',latex_symbol=r'\AA',symbol='Å') -microns = NamedUnit(1e-06, Dimensions(1, 0, 0, 0, 0, 0, 0),name='microns',ascii_symbol='micron',symbol='micron') -minutes = NamedUnit(60, Dimensions(0, 1, 0, 0, 0, 0, 0),name='minutes',ascii_symbol='min',symbol='min') -revolutions_per_minute = NamedUnit(0.016666666666666666, Dimensions(0, -1, 0, 0, 0, 0, 0),name='revolutions_per_minute',ascii_symbol='rpm',symbol='rpm') -hours = NamedUnit(3600, Dimensions(0, 1, 0, 0, 0, 0, 0),name='hours',ascii_symbol='h',symbol='h') -days = NamedUnit(86400, Dimensions(0, 1, 0, 0, 0, 0, 0),name='days',ascii_symbol='d',symbol='d') -years = NamedUnit(31556952.0, Dimensions(0, 1, 0, 0, 0, 0, 0),name='years',ascii_symbol='y',symbol='y') -degrees = NamedUnit(57.29577951308232, Dimensions(0, 0, 0, 0, 0, 0, 1),name='degrees',ascii_symbol='deg',symbol='deg') -radians = NamedUnit(1, Dimensions(0, 0, 0, 0, 0, 0, 1),name='radians',ascii_symbol='rad',symbol='rad') -rotations = NamedUnit(6.283185307179586, Dimensions(0, 0, 0, 0, 0, 0, 1),name='rotations',ascii_symbol='rot',symbol='rot') -stradians = NamedUnit(1, Dimensions(0, 0, 0, 0, 0, 0, 2),name='stradians',ascii_symbol='sr',symbol='sr') -litres = NamedUnit(0.001, Dimensions(3, 0, 0, 0, 0, 0, 0),name='litres',ascii_symbol='l',symbol='l') -electronvolts = NamedUnit(1.602176634e-19, Dimensions(2, -2, 1, 0, 0, 0, 0),name='electronvolts',ascii_symbol='eV',symbol='eV') -exaelectronvolts = NamedUnit(0.1602176634, Dimensions(2, -2, 1, 0, 0, 0, 0),name='exaelectronvolts',ascii_symbol='EeV',symbol='EeV') -petaelectronvolts = NamedUnit(0.0001602176634, Dimensions(2, -2, 1, 0, 0, 0, 0),name='petaelectronvolts',ascii_symbol='PeV',symbol='PeV') -teraelectronvolts = NamedUnit(1.602176634e-07, Dimensions(2, -2, 1, 0, 0, 0, 0),name='teraelectronvolts',ascii_symbol='TeV',symbol='TeV') -gigaelectronvolts = NamedUnit(1.6021766339999998e-10, Dimensions(2, -2, 1, 0, 0, 0, 0),name='gigaelectronvolts',ascii_symbol='GeV',symbol='GeV') -megaelectronvolts = NamedUnit(1.6021766339999998e-13, Dimensions(2, -2, 1, 0, 0, 0, 0),name='megaelectronvolts',ascii_symbol='MeV',symbol='MeV') -kiloelectronvolts = NamedUnit(1.602176634e-16, Dimensions(2, -2, 1, 0, 0, 0, 0),name='kiloelectronvolts',ascii_symbol='keV',symbol='keV') -millielectronvolts = NamedUnit(1.6021766339999998e-22, Dimensions(2, -2, 1, 0, 0, 0, 0),name='millielectronvolts',ascii_symbol='meV',symbol='meV') -microelectronvolts = NamedUnit(1.602176634e-25, Dimensions(2, -2, 1, 0, 0, 0, 0),name='microelectronvolts',ascii_symbol='ueV',latex_symbol=r'{\mu}eV',symbol='µeV') -nanoelectronvolts = NamedUnit(1.602176634e-28, Dimensions(2, -2, 1, 0, 0, 0, 0),name='nanoelectronvolts',ascii_symbol='neV',symbol='neV') -picoelectronvolts = NamedUnit(1.6021766339999998e-31, Dimensions(2, -2, 1, 0, 0, 0, 0),name='picoelectronvolts',ascii_symbol='peV',symbol='peV') -femtoelectronvolts = NamedUnit(1.602176634e-34, Dimensions(2, -2, 1, 0, 0, 0, 0),name='femtoelectronvolts',ascii_symbol='feV',symbol='feV') -attoelectronvolts = NamedUnit(1.602176634e-37, Dimensions(2, -2, 1, 0, 0, 0, 0),name='attoelectronvolts',ascii_symbol='aeV',symbol='aeV') -atomic_mass_units = NamedUnit(1.660538921e-27, Dimensions(0, 0, 1, 0, 0, 0, 0),name='atomic_mass_units',ascii_symbol='au',symbol='au') -moles = NamedUnit(6.02214076e+23, Dimensions(0, 0, 0, 0, 0, 1, 0),name='moles',ascii_symbol='mol',symbol='mol') -millimoles = NamedUnit(6.02214076e+20, Dimensions(0, 0, 0, 0, 0, 1, 0),name='millimoles',ascii_symbol='mmol',symbol='mmol') -micromoles = NamedUnit(6.02214076e+17, Dimensions(0, 0, 0, 0, 0, 1, 0),name='micromoles',ascii_symbol='umol',latex_symbol=r'{\mu}mol',symbol='µmol') -nanomoles = NamedUnit(602214076000000.0, Dimensions(0, 0, 0, 0, 0, 1, 0),name='nanomoles',ascii_symbol='nmol',symbol='nmol') -picomoles = NamedUnit(602214076000.0, Dimensions(0, 0, 0, 0, 0, 1, 0),name='picomoles',ascii_symbol='pmol',symbol='pmol') -femtomoles = NamedUnit(602214076.0, Dimensions(0, 0, 0, 0, 0, 1, 0),name='femtomoles',ascii_symbol='fmol',symbol='fmol') -attomoles = NamedUnit(602214.076, Dimensions(0, 0, 0, 0, 0, 1, 0),name='attomoles',ascii_symbol='amol',symbol='amol') -kg_force = NamedUnit(9.80665, Dimensions(1, -2, 1, 0, 0, 0, 0),name='kg_force',ascii_symbol='kgForce',symbol='kgForce') -degrees_celsius = NamedUnit(1, Dimensions(0, 0, 0, 0, 1, 0, 0),name='degrees_celsius',ascii_symbol='C',symbol='C') -miles = NamedUnit(1609.344, Dimensions(1, 0, 0, 0, 0, 0, 0),name='miles',ascii_symbol='miles',symbol='miles') -yards = NamedUnit(0.9144000000000001, Dimensions(1, 0, 0, 0, 0, 0, 0),name='yards',ascii_symbol='yrd',symbol='yrd') -feet = NamedUnit(0.3048, Dimensions(1, 0, 0, 0, 0, 0, 0),name='feet',ascii_symbol='ft',symbol='ft') -inches = NamedUnit(0.0254, Dimensions(1, 0, 0, 0, 0, 0, 0),name='inches',ascii_symbol='in',symbol='in') -pounds = NamedUnit(0.45359237, Dimensions(0, 0, 1, 0, 0, 0, 0),name='pounds',ascii_symbol='lb',symbol='lb') -pounds_force = NamedUnit(4.448222, Dimensions(1, -2, 1, 0, 0, 0, 0),name='pounds_force',ascii_symbol='lbf',symbol='lbf') -ounces = NamedUnit(0.028349523125, Dimensions(0, 0, 1, 0, 0, 0, 0),name='ounces',ascii_symbol='oz',symbol='oz') -pounds_force_per_square_inch = NamedUnit(6894.757889515779, Dimensions(-1, -2, 1, 0, 0, 0, 0),name='pounds_force_per_square_inch',ascii_symbol='psi',symbol='psi') -none = NamedUnit(1, Dimensions(0, 0, 0, 0, 0, 0, 0),name='none',ascii_symbol='none',symbol='none') -percent = NamedUnit(0.01, Dimensions(0, 0, 0, 0, 0, 0, 0),name='percent',ascii_symbol='percent',latex_symbol=r'\%',symbol='%') -square_meters = NamedUnit(1, Dimensions(length=2), name='square_meters', ascii_symbol='m^2', symbol='m²') -cubic_meters = NamedUnit(1, Dimensions(length=3), name='cubic_meters', ascii_symbol='m^3', symbol='m³') -per_meter = NamedUnit(1.0, Dimensions(length=-1), name='per_meter', ascii_symbol='m^-1', symbol='m⁻¹') -per_square_meter = NamedUnit(1.0, Dimensions(length=-2), name='per_square_meter', ascii_symbol='m^-2', symbol='m⁻²') -per_cubic_meter = NamedUnit(1.0, Dimensions(length=-3), name='per_cubic_meter', ascii_symbol='m^-3', symbol='m⁻³') -square_exameters = NamedUnit(1e+36, Dimensions(length=2), name='square_exameters', ascii_symbol='Em^2', symbol='Em²') -cubic_exameters = NamedUnit(1e+54, Dimensions(length=3), name='cubic_exameters', ascii_symbol='Em^3', symbol='Em³') -per_exameter = NamedUnit(1e-18, Dimensions(length=-1), name='per_exameter', ascii_symbol='Em^-1', symbol='Em⁻¹') -per_square_exameter = NamedUnit(1e-36, Dimensions(length=-2), name='per_square_exameter', ascii_symbol='Em^-2', symbol='Em⁻²') -per_cubic_exameter = NamedUnit(1e-54, Dimensions(length=-3), name='per_cubic_exameter', ascii_symbol='Em^-3', symbol='Em⁻³') -square_petameters = NamedUnit(1e+30, Dimensions(length=2), name='square_petameters', ascii_symbol='Pm^2', symbol='Pm²') -cubic_petameters = NamedUnit(1e+45, Dimensions(length=3), name='cubic_petameters', ascii_symbol='Pm^3', symbol='Pm³') -per_petameter = NamedUnit(1e-15, Dimensions(length=-1), name='per_petameter', ascii_symbol='Pm^-1', symbol='Pm⁻¹') -per_square_petameter = NamedUnit(1e-30, Dimensions(length=-2), name='per_square_petameter', ascii_symbol='Pm^-2', symbol='Pm⁻²') -per_cubic_petameter = NamedUnit(1e-45, Dimensions(length=-3), name='per_cubic_petameter', ascii_symbol='Pm^-3', symbol='Pm⁻³') -square_terameters = NamedUnit(1e+24, Dimensions(length=2), name='square_terameters', ascii_symbol='Tm^2', symbol='Tm²') -cubic_terameters = NamedUnit(1e+36, Dimensions(length=3), name='cubic_terameters', ascii_symbol='Tm^3', symbol='Tm³') -per_terameter = NamedUnit(1e-12, Dimensions(length=-1), name='per_terameter', ascii_symbol='Tm^-1', symbol='Tm⁻¹') -per_square_terameter = NamedUnit(1e-24, Dimensions(length=-2), name='per_square_terameter', ascii_symbol='Tm^-2', symbol='Tm⁻²') -per_cubic_terameter = NamedUnit(1e-36, Dimensions(length=-3), name='per_cubic_terameter', ascii_symbol='Tm^-3', symbol='Tm⁻³') -square_gigameters = NamedUnit(1e+18, Dimensions(length=2), name='square_gigameters', ascii_symbol='Gm^2', symbol='Gm²') -cubic_gigameters = NamedUnit(1e+27, Dimensions(length=3), name='cubic_gigameters', ascii_symbol='Gm^3', symbol='Gm³') -per_gigameter = NamedUnit(1e-09, Dimensions(length=-1), name='per_gigameter', ascii_symbol='Gm^-1', symbol='Gm⁻¹') -per_square_gigameter = NamedUnit(1e-18, Dimensions(length=-2), name='per_square_gigameter', ascii_symbol='Gm^-2', symbol='Gm⁻²') -per_cubic_gigameter = NamedUnit(1e-27, Dimensions(length=-3), name='per_cubic_gigameter', ascii_symbol='Gm^-3', symbol='Gm⁻³') -square_megameters = NamedUnit(1000000000000.0, Dimensions(length=2), name='square_megameters', ascii_symbol='Mm^2', symbol='Mm²') -cubic_megameters = NamedUnit(1e+18, Dimensions(length=3), name='cubic_megameters', ascii_symbol='Mm^3', symbol='Mm³') -per_megameter = NamedUnit(1e-06, Dimensions(length=-1), name='per_megameter', ascii_symbol='Mm^-1', symbol='Mm⁻¹') -per_square_megameter = NamedUnit(1e-12, Dimensions(length=-2), name='per_square_megameter', ascii_symbol='Mm^-2', symbol='Mm⁻²') -per_cubic_megameter = NamedUnit(1e-18, Dimensions(length=-3), name='per_cubic_megameter', ascii_symbol='Mm^-3', symbol='Mm⁻³') -square_kilometers = NamedUnit(1000000.0, Dimensions(length=2), name='square_kilometers', ascii_symbol='km^2', symbol='km²') -cubic_kilometers = NamedUnit(1000000000.0, Dimensions(length=3), name='cubic_kilometers', ascii_symbol='km^3', symbol='km³') -per_kilometer = NamedUnit(0.001, Dimensions(length=-1), name='per_kilometer', ascii_symbol='km^-1', symbol='km⁻¹') -per_square_kilometer = NamedUnit(1e-06, Dimensions(length=-2), name='per_square_kilometer', ascii_symbol='km^-2', symbol='km⁻²') -per_cubic_kilometer = NamedUnit(1e-09, Dimensions(length=-3), name='per_cubic_kilometer', ascii_symbol='km^-3', symbol='km⁻³') -square_millimeters = NamedUnit(1e-06, Dimensions(length=2), name='square_millimeters', ascii_symbol='mm^2', symbol='mm²') -cubic_millimeters = NamedUnit(1e-09, Dimensions(length=3), name='cubic_millimeters', ascii_symbol='mm^3', symbol='mm³') -per_millimeter = NamedUnit(1000.0, Dimensions(length=-1), name='per_millimeter', ascii_symbol='mm^-1', symbol='mm⁻¹') -per_square_millimeter = NamedUnit(1000000.0, Dimensions(length=-2), name='per_square_millimeter', ascii_symbol='mm^-2', symbol='mm⁻²') -per_cubic_millimeter = NamedUnit(999999999.9999999, Dimensions(length=-3), name='per_cubic_millimeter', ascii_symbol='mm^-3', symbol='mm⁻³') -square_micrometers = NamedUnit(1e-12, Dimensions(length=2), name='square_micrometers', ascii_symbol='um^2', symbol='µm²') -cubic_micrometers = NamedUnit(9.999999999999999e-19, Dimensions(length=3), name='cubic_micrometers', ascii_symbol='um^3', symbol='µm³') -per_micrometer = NamedUnit(1000000.0, Dimensions(length=-1), name='per_micrometer', ascii_symbol='um^-1', symbol='µm⁻¹') -per_square_micrometer = NamedUnit(1000000000000.0001, Dimensions(length=-2), name='per_square_micrometer', ascii_symbol='um^-2', symbol='µm⁻²') -per_cubic_micrometer = NamedUnit(1.0000000000000001e+18, Dimensions(length=-3), name='per_cubic_micrometer', ascii_symbol='um^-3', symbol='µm⁻³') -square_nanometers = NamedUnit(1e-18, Dimensions(length=2), name='square_nanometers', ascii_symbol='nm^2', symbol='nm²') -cubic_nanometers = NamedUnit(1.0000000000000002e-27, Dimensions(length=3), name='cubic_nanometers', ascii_symbol='nm^3', symbol='nm³') -per_nanometer = NamedUnit(999999999.9999999, Dimensions(length=-1), name='per_nanometer', ascii_symbol='nm^-1', symbol='nm⁻¹') -per_square_nanometer = NamedUnit(9.999999999999999e+17, Dimensions(length=-2), name='per_square_nanometer', ascii_symbol='nm^-2', symbol='nm⁻²') -per_cubic_nanometer = NamedUnit(9.999999999999999e+26, Dimensions(length=-3), name='per_cubic_nanometer', ascii_symbol='nm^-3', symbol='nm⁻³') -square_picometers = NamedUnit(1e-24, Dimensions(length=2), name='square_picometers', ascii_symbol='pm^2', symbol='pm²') -cubic_picometers = NamedUnit(1e-36, Dimensions(length=3), name='cubic_picometers', ascii_symbol='pm^3', symbol='pm³') -per_picometer = NamedUnit(1000000000000.0, Dimensions(length=-1), name='per_picometer', ascii_symbol='pm^-1', symbol='pm⁻¹') -per_square_picometer = NamedUnit(1e+24, Dimensions(length=-2), name='per_square_picometer', ascii_symbol='pm^-2', symbol='pm⁻²') -per_cubic_picometer = NamedUnit(1e+36, Dimensions(length=-3), name='per_cubic_picometer', ascii_symbol='pm^-3', symbol='pm⁻³') -square_femtometers = NamedUnit(1e-30, Dimensions(length=2), name='square_femtometers', ascii_symbol='fm^2', symbol='fm²') -cubic_femtometers = NamedUnit(1.0000000000000003e-45, Dimensions(length=3), name='cubic_femtometers', ascii_symbol='fm^3', symbol='fm³') -per_femtometer = NamedUnit(999999999999999.9, Dimensions(length=-1), name='per_femtometer', ascii_symbol='fm^-1', symbol='fm⁻¹') -per_square_femtometer = NamedUnit(9.999999999999999e+29, Dimensions(length=-2), name='per_square_femtometer', ascii_symbol='fm^-2', symbol='fm⁻²') -per_cubic_femtometer = NamedUnit(9.999999999999998e+44, Dimensions(length=-3), name='per_cubic_femtometer', ascii_symbol='fm^-3', symbol='fm⁻³') -square_attometers = NamedUnit(1.0000000000000001e-36, Dimensions(length=2), name='square_attometers', ascii_symbol='am^2', symbol='am²') -cubic_attometers = NamedUnit(1.0000000000000002e-54, Dimensions(length=3), name='cubic_attometers', ascii_symbol='am^3', symbol='am³') -per_attometer = NamedUnit(9.999999999999999e+17, Dimensions(length=-1), name='per_attometer', ascii_symbol='am^-1', symbol='am⁻¹') -per_square_attometer = NamedUnit(9.999999999999999e+35, Dimensions(length=-2), name='per_square_attometer', ascii_symbol='am^-2', symbol='am⁻²') -per_cubic_attometer = NamedUnit(9.999999999999997e+53, Dimensions(length=-3), name='per_cubic_attometer', ascii_symbol='am^-3', symbol='am⁻³') -square_decimeters = NamedUnit(0.010000000000000002, Dimensions(length=2), name='square_decimeters', ascii_symbol='dm^2', symbol='dm²') -cubic_decimeters = NamedUnit(0.0010000000000000002, Dimensions(length=3), name='cubic_decimeters', ascii_symbol='dm^3', symbol='dm³') -per_decimeter = NamedUnit(10.0, Dimensions(length=-1), name='per_decimeter', ascii_symbol='dm^-1', symbol='dm⁻¹') -per_square_decimeter = NamedUnit(99.99999999999999, Dimensions(length=-2), name='per_square_decimeter', ascii_symbol='dm^-2', symbol='dm⁻²') -per_cubic_decimeter = NamedUnit(999.9999999999999, Dimensions(length=-3), name='per_cubic_decimeter', ascii_symbol='dm^-3', symbol='dm⁻³') -square_centimeters = NamedUnit(0.0001, Dimensions(length=2), name='square_centimeters', ascii_symbol='cm^2', symbol='cm²') -cubic_centimeters = NamedUnit(1.0000000000000002e-06, Dimensions(length=3), name='cubic_centimeters', ascii_symbol='cm^3', symbol='cm³') -per_centimeter = NamedUnit(100.0, Dimensions(length=-1), name='per_centimeter', ascii_symbol='cm^-1', symbol='cm⁻¹') -per_square_centimeter = NamedUnit(10000.0, Dimensions(length=-2), name='per_square_centimeter', ascii_symbol='cm^-2', symbol='cm⁻²') -per_cubic_centimeter = NamedUnit(999999.9999999999, Dimensions(length=-3), name='per_cubic_centimeter', ascii_symbol='cm^-3', symbol='cm⁻³') -square_angstroms = NamedUnit(1.0000000000000001e-20, Dimensions(length=2), name='square_angstroms', ascii_symbol='Ang^2', symbol='Ų') -cubic_angstroms = NamedUnit(1e-30, Dimensions(length=3), name='cubic_angstroms', ascii_symbol='Ang^3', symbol='ų') -per_angstrom = NamedUnit(10000000000.0, Dimensions(length=-1), name='per_angstrom', ascii_symbol='Ang^-1', symbol='Å⁻¹') -per_square_angstrom = NamedUnit(1e+20, Dimensions(length=-2), name='per_square_angstrom', ascii_symbol='Ang^-2', symbol='Å⁻²') -per_cubic_angstrom = NamedUnit(9.999999999999999e+29, Dimensions(length=-3), name='per_cubic_angstrom', ascii_symbol='Ang^-3', symbol='Å⁻³') -square_microns = NamedUnit(1e-12, Dimensions(length=2), name='square_microns', ascii_symbol='micron^2', symbol='micron²') -cubic_microns = NamedUnit(9.999999999999999e-19, Dimensions(length=3), name='cubic_microns', ascii_symbol='micron^3', symbol='micron³') -per_micron = NamedUnit(1000000.0, Dimensions(length=-1), name='per_micron', ascii_symbol='micron^-1', symbol='micron⁻¹') -per_square_micron = NamedUnit(1000000000000.0001, Dimensions(length=-2), name='per_square_micron', ascii_symbol='micron^-2', symbol='micron⁻²') -per_cubic_micron = NamedUnit(1.0000000000000001e+18, Dimensions(length=-3), name='per_cubic_micron', ascii_symbol='micron^-3', symbol='micron⁻³') -square_miles = NamedUnit(2589988.110336, Dimensions(length=2), name='square_miles', ascii_symbol='miles^2', symbol='miles²') -cubic_miles = NamedUnit(4168181825.44058, Dimensions(length=3), name='cubic_miles', ascii_symbol='miles^3', symbol='miles³') -per_mile = NamedUnit(0.0006213711922373339, Dimensions(length=-1), name='per_mile', ascii_symbol='miles^-1', symbol='miles⁻¹') -per_square_mile = NamedUnit(3.861021585424458e-07, Dimensions(length=-2), name='per_square_mile', ascii_symbol='miles^-2', symbol='miles⁻²') -per_cubic_mile = NamedUnit(2.399127585789277e-10, Dimensions(length=-3), name='per_cubic_mile', ascii_symbol='miles^-3', symbol='miles⁻³') -square_yards = NamedUnit(0.8361273600000002, Dimensions(length=2), name='square_yards', ascii_symbol='yrd^2', symbol='yrd²') -cubic_yards = NamedUnit(0.7645548579840002, Dimensions(length=3), name='cubic_yards', ascii_symbol='yrd^3', symbol='yrd³') -per_yard = NamedUnit(1.0936132983377076, Dimensions(length=-1), name='per_yard', ascii_symbol='yrd^-1', symbol='yrd⁻¹') -per_square_yard = NamedUnit(1.19599004630108, Dimensions(length=-2), name='per_square_yard', ascii_symbol='yrd^-2', symbol='yrd⁻²') -per_cubic_yard = NamedUnit(1.3079506193143917, Dimensions(length=-3), name='per_cubic_yard', ascii_symbol='yrd^-3', symbol='yrd⁻³') -square_feet = NamedUnit(0.09290304, Dimensions(length=2), name='square_feet', ascii_symbol='ft^2', symbol='ft²') -cubic_feet = NamedUnit(0.028316846592000004, Dimensions(length=3), name='cubic_feet', ascii_symbol='ft^3', symbol='ft³') -per_foot = NamedUnit(3.280839895013123, Dimensions(length=-1), name='per_foot', ascii_symbol='ft^-1', symbol='ft⁻¹') -per_square_foot = NamedUnit(10.763910416709722, Dimensions(length=-2), name='per_square_foot', ascii_symbol='ft^-2', symbol='ft⁻²') -per_cubic_foot = NamedUnit(35.314666721488585, Dimensions(length=-3), name='per_cubic_foot', ascii_symbol='ft^-3', symbol='ft⁻³') -square_inches = NamedUnit(0.00064516, Dimensions(length=2), name='square_inches', ascii_symbol='in^2', symbol='in²') -cubic_inches = NamedUnit(1.6387064e-05, Dimensions(length=3), name='cubic_inches', ascii_symbol='in^3', symbol='in³') -per_inch = NamedUnit(39.37007874015748, Dimensions(length=-1), name='per_inch', ascii_symbol='in^-1', symbol='in⁻¹') -per_square_inch = NamedUnit(1550.0031000062002, Dimensions(length=-2), name='per_square_inch', ascii_symbol='in^-2', symbol='in⁻²') -per_cubic_inch = NamedUnit(61023.74409473229, Dimensions(length=-3), name='per_cubic_inch', ascii_symbol='in^-3', symbol='in⁻³') -meters_per_second = NamedUnit(1.0, Dimensions(length=1, time=-1), name='meters_per_second', ascii_symbol='m/s', symbol='ms⁻¹') -meters_per_square_second = NamedUnit(1.0, Dimensions(length=1, time=-2), name='meters_per_square_second', ascii_symbol='m/s^2', symbol='ms⁻²') -meters_per_millisecond = NamedUnit(1000.0, Dimensions(length=1, time=-1), name='meters_per_millisecond', ascii_symbol='m/ms', symbol='mms⁻¹') -meters_per_square_millisecond = NamedUnit(1000000.0, Dimensions(length=1, time=-2), name='meters_per_square_millisecond', ascii_symbol='m/ms^2', symbol='mms⁻²') -meters_per_microsecond = NamedUnit(1000000.0, Dimensions(length=1, time=-1), name='meters_per_microsecond', ascii_symbol='m/us', symbol='mµs⁻¹') -meters_per_square_microsecond = NamedUnit(1000000000000.0, Dimensions(length=1, time=-2), name='meters_per_square_microsecond', ascii_symbol='m/us^2', symbol='mµs⁻²') -meters_per_nanosecond = NamedUnit(999999999.9999999, Dimensions(length=1, time=-1), name='meters_per_nanosecond', ascii_symbol='m/ns', symbol='mns⁻¹') -meters_per_square_nanosecond = NamedUnit(9.999999999999999e+17, Dimensions(length=1, time=-2), name='meters_per_square_nanosecond', ascii_symbol='m/ns^2', symbol='mns⁻²') -meters_per_picosecond = NamedUnit(1000000000000.0, Dimensions(length=1, time=-1), name='meters_per_picosecond', ascii_symbol='m/ps', symbol='mps⁻¹') -meters_per_square_picosecond = NamedUnit(1.0000000000000001e+24, Dimensions(length=1, time=-2), name='meters_per_square_picosecond', ascii_symbol='m/ps^2', symbol='mps⁻²') -meters_per_femtosecond = NamedUnit(999999999999999.9, Dimensions(length=1, time=-1), name='meters_per_femtosecond', ascii_symbol='m/fs', symbol='mfs⁻¹') -meters_per_square_femtosecond = NamedUnit(9.999999999999999e+29, Dimensions(length=1, time=-2), name='meters_per_square_femtosecond', ascii_symbol='m/fs^2', symbol='mfs⁻²') -meters_per_attosecond = NamedUnit(9.999999999999999e+17, Dimensions(length=1, time=-1), name='meters_per_attosecond', ascii_symbol='m/as', symbol='mas⁻¹') -meters_per_square_attosecond = NamedUnit(9.999999999999999e+35, Dimensions(length=1, time=-2), name='meters_per_square_attosecond', ascii_symbol='m/as^2', symbol='mas⁻²') -meters_per_minute = NamedUnit(0.016666666666666666, Dimensions(length=1, time=-1), name='meters_per_minute', ascii_symbol='m/min', symbol='mmin⁻¹') -meters_per_square_minute = NamedUnit(0.0002777777777777778, Dimensions(length=1, time=-2), name='meters_per_square_minute', ascii_symbol='m/min^2', symbol='mmin⁻²') -meters_per_hour = NamedUnit(0.0002777777777777778, Dimensions(length=1, time=-1), name='meters_per_hour', ascii_symbol='m/h', symbol='mh⁻¹') -meters_per_square_hour = NamedUnit(7.71604938271605e-08, Dimensions(length=1, time=-2), name='meters_per_square_hour', ascii_symbol='m/h^2', symbol='mh⁻²') -meters_per_day = NamedUnit(1.1574074074074073e-05, Dimensions(length=1, time=-1), name='meters_per_day', ascii_symbol='m/d', symbol='md⁻¹') -meters_per_square_day = NamedUnit(1.3395919067215363e-10, Dimensions(length=1, time=-2), name='meters_per_square_day', ascii_symbol='m/d^2', symbol='md⁻²') -meters_per_year = NamedUnit(3.168873850681143e-08, Dimensions(length=1, time=-1), name='meters_per_year', ascii_symbol='m/y', symbol='my⁻¹') -meters_per_square_year = NamedUnit(1.0041761481530735e-15, Dimensions(length=1, time=-2), name='meters_per_square_year', ascii_symbol='m/y^2', symbol='my⁻²') -exameters_per_second = NamedUnit(1e+18, Dimensions(length=1, time=-1), name='exameters_per_second', ascii_symbol='Em/s', symbol='Ems⁻¹') -exameters_per_square_second = NamedUnit(1e+18, Dimensions(length=1, time=-2), name='exameters_per_square_second', ascii_symbol='Em/s^2', symbol='Ems⁻²') -exameters_per_millisecond = NamedUnit(1e+21, Dimensions(length=1, time=-1), name='exameters_per_millisecond', ascii_symbol='Em/ms', symbol='Emms⁻¹') -exameters_per_square_millisecond = NamedUnit(1e+24, Dimensions(length=1, time=-2), name='exameters_per_square_millisecond', ascii_symbol='Em/ms^2', symbol='Emms⁻²') -exameters_per_microsecond = NamedUnit(1e+24, Dimensions(length=1, time=-1), name='exameters_per_microsecond', ascii_symbol='Em/us', symbol='Emµs⁻¹') -exameters_per_square_microsecond = NamedUnit(1e+30, Dimensions(length=1, time=-2), name='exameters_per_square_microsecond', ascii_symbol='Em/us^2', symbol='Emµs⁻²') -exameters_per_nanosecond = NamedUnit(9.999999999999999e+26, Dimensions(length=1, time=-1), name='exameters_per_nanosecond', ascii_symbol='Em/ns', symbol='Emns⁻¹') -exameters_per_square_nanosecond = NamedUnit(9.999999999999999e+35, Dimensions(length=1, time=-2), name='exameters_per_square_nanosecond', ascii_symbol='Em/ns^2', symbol='Emns⁻²') -exameters_per_picosecond = NamedUnit(1e+30, Dimensions(length=1, time=-1), name='exameters_per_picosecond', ascii_symbol='Em/ps', symbol='Emps⁻¹') -exameters_per_square_picosecond = NamedUnit(1e+42, Dimensions(length=1, time=-2), name='exameters_per_square_picosecond', ascii_symbol='Em/ps^2', symbol='Emps⁻²') -exameters_per_femtosecond = NamedUnit(1e+33, Dimensions(length=1, time=-1), name='exameters_per_femtosecond', ascii_symbol='Em/fs', symbol='Emfs⁻¹') -exameters_per_square_femtosecond = NamedUnit(9.999999999999999e+47, Dimensions(length=1, time=-2), name='exameters_per_square_femtosecond', ascii_symbol='Em/fs^2', symbol='Emfs⁻²') -exameters_per_attosecond = NamedUnit(9.999999999999999e+35, Dimensions(length=1, time=-1), name='exameters_per_attosecond', ascii_symbol='Em/as', symbol='Emas⁻¹') -exameters_per_square_attosecond = NamedUnit(9.999999999999999e+53, Dimensions(length=1, time=-2), name='exameters_per_square_attosecond', ascii_symbol='Em/as^2', symbol='Emas⁻²') -exameters_per_minute = NamedUnit(1.6666666666666666e+16, Dimensions(length=1, time=-1), name='exameters_per_minute', ascii_symbol='Em/min', symbol='Emmin⁻¹') -exameters_per_square_minute = NamedUnit(277777777777777.78, Dimensions(length=1, time=-2), name='exameters_per_square_minute', ascii_symbol='Em/min^2', symbol='Emmin⁻²') -exameters_per_hour = NamedUnit(277777777777777.78, Dimensions(length=1, time=-1), name='exameters_per_hour', ascii_symbol='Em/h', symbol='Emh⁻¹') -exameters_per_square_hour = NamedUnit(77160493827.16049, Dimensions(length=1, time=-2), name='exameters_per_square_hour', ascii_symbol='Em/h^2', symbol='Emh⁻²') -exameters_per_day = NamedUnit(11574074074074.074, Dimensions(length=1, time=-1), name='exameters_per_day', ascii_symbol='Em/d', symbol='Emd⁻¹') -exameters_per_square_day = NamedUnit(133959190.67215364, Dimensions(length=1, time=-2), name='exameters_per_square_day', ascii_symbol='Em/d^2', symbol='Emd⁻²') -exameters_per_year = NamedUnit(31688738506.81143, Dimensions(length=1, time=-1), name='exameters_per_year', ascii_symbol='Em/y', symbol='Emy⁻¹') -exameters_per_square_year = NamedUnit(1004.1761481530735, Dimensions(length=1, time=-2), name='exameters_per_square_year', ascii_symbol='Em/y^2', symbol='Emy⁻²') -petameters_per_second = NamedUnit(1000000000000000.0, Dimensions(length=1, time=-1), name='petameters_per_second', ascii_symbol='Pm/s', symbol='Pms⁻¹') -petameters_per_square_second = NamedUnit(1000000000000000.0, Dimensions(length=1, time=-2), name='petameters_per_square_second', ascii_symbol='Pm/s^2', symbol='Pms⁻²') -petameters_per_millisecond = NamedUnit(1e+18, Dimensions(length=1, time=-1), name='petameters_per_millisecond', ascii_symbol='Pm/ms', symbol='Pmms⁻¹') -petameters_per_square_millisecond = NamedUnit(1e+21, Dimensions(length=1, time=-2), name='petameters_per_square_millisecond', ascii_symbol='Pm/ms^2', symbol='Pmms⁻²') -petameters_per_microsecond = NamedUnit(1e+21, Dimensions(length=1, time=-1), name='petameters_per_microsecond', ascii_symbol='Pm/us', symbol='Pmµs⁻¹') -petameters_per_square_microsecond = NamedUnit(1e+27, Dimensions(length=1, time=-2), name='petameters_per_square_microsecond', ascii_symbol='Pm/us^2', symbol='Pmµs⁻²') -petameters_per_nanosecond = NamedUnit(1e+24, Dimensions(length=1, time=-1), name='petameters_per_nanosecond', ascii_symbol='Pm/ns', symbol='Pmns⁻¹') -petameters_per_square_nanosecond = NamedUnit(1e+33, Dimensions(length=1, time=-2), name='petameters_per_square_nanosecond', ascii_symbol='Pm/ns^2', symbol='Pmns⁻²') -petameters_per_picosecond = NamedUnit(1e+27, Dimensions(length=1, time=-1), name='petameters_per_picosecond', ascii_symbol='Pm/ps', symbol='Pmps⁻¹') -petameters_per_square_picosecond = NamedUnit(1.0000000000000001e+39, Dimensions(length=1, time=-2), name='petameters_per_square_picosecond', ascii_symbol='Pm/ps^2', symbol='Pmps⁻²') -petameters_per_femtosecond = NamedUnit(9.999999999999999e+29, Dimensions(length=1, time=-1), name='petameters_per_femtosecond', ascii_symbol='Pm/fs', symbol='Pmfs⁻¹') -petameters_per_square_femtosecond = NamedUnit(1e+45, Dimensions(length=1, time=-2), name='petameters_per_square_femtosecond', ascii_symbol='Pm/fs^2', symbol='Pmfs⁻²') -petameters_per_attosecond = NamedUnit(1e+33, Dimensions(length=1, time=-1), name='petameters_per_attosecond', ascii_symbol='Pm/as', symbol='Pmas⁻¹') -petameters_per_square_attosecond = NamedUnit(9.999999999999998e+50, Dimensions(length=1, time=-2), name='petameters_per_square_attosecond', ascii_symbol='Pm/as^2', symbol='Pmas⁻²') -petameters_per_minute = NamedUnit(16666666666666.666, Dimensions(length=1, time=-1), name='petameters_per_minute', ascii_symbol='Pm/min', symbol='Pmmin⁻¹') -petameters_per_square_minute = NamedUnit(277777777777.7778, Dimensions(length=1, time=-2), name='petameters_per_square_minute', ascii_symbol='Pm/min^2', symbol='Pmmin⁻²') -petameters_per_hour = NamedUnit(277777777777.7778, Dimensions(length=1, time=-1), name='petameters_per_hour', ascii_symbol='Pm/h', symbol='Pmh⁻¹') -petameters_per_square_hour = NamedUnit(77160493.82716049, Dimensions(length=1, time=-2), name='petameters_per_square_hour', ascii_symbol='Pm/h^2', symbol='Pmh⁻²') -petameters_per_day = NamedUnit(11574074074.074074, Dimensions(length=1, time=-1), name='petameters_per_day', ascii_symbol='Pm/d', symbol='Pmd⁻¹') -petameters_per_square_day = NamedUnit(133959.19067215364, Dimensions(length=1, time=-2), name='petameters_per_square_day', ascii_symbol='Pm/d^2', symbol='Pmd⁻²') -petameters_per_year = NamedUnit(31688738.506811433, Dimensions(length=1, time=-1), name='petameters_per_year', ascii_symbol='Pm/y', symbol='Pmy⁻¹') -petameters_per_square_year = NamedUnit(1.0041761481530735, Dimensions(length=1, time=-2), name='petameters_per_square_year', ascii_symbol='Pm/y^2', symbol='Pmy⁻²') -terameters_per_second = NamedUnit(1000000000000.0, Dimensions(length=1, time=-1), name='terameters_per_second', ascii_symbol='Tm/s', symbol='Tms⁻¹') -terameters_per_square_second = NamedUnit(1000000000000.0, Dimensions(length=1, time=-2), name='terameters_per_square_second', ascii_symbol='Tm/s^2', symbol='Tms⁻²') -terameters_per_millisecond = NamedUnit(1000000000000000.0, Dimensions(length=1, time=-1), name='terameters_per_millisecond', ascii_symbol='Tm/ms', symbol='Tmms⁻¹') -terameters_per_square_millisecond = NamedUnit(1e+18, Dimensions(length=1, time=-2), name='terameters_per_square_millisecond', ascii_symbol='Tm/ms^2', symbol='Tmms⁻²') -terameters_per_microsecond = NamedUnit(1e+18, Dimensions(length=1, time=-1), name='terameters_per_microsecond', ascii_symbol='Tm/us', symbol='Tmµs⁻¹') -terameters_per_square_microsecond = NamedUnit(1e+24, Dimensions(length=1, time=-2), name='terameters_per_square_microsecond', ascii_symbol='Tm/us^2', symbol='Tmµs⁻²') -terameters_per_nanosecond = NamedUnit(1e+21, Dimensions(length=1, time=-1), name='terameters_per_nanosecond', ascii_symbol='Tm/ns', symbol='Tmns⁻¹') -terameters_per_square_nanosecond = NamedUnit(9.999999999999999e+29, Dimensions(length=1, time=-2), name='terameters_per_square_nanosecond', ascii_symbol='Tm/ns^2', symbol='Tmns⁻²') -terameters_per_picosecond = NamedUnit(1e+24, Dimensions(length=1, time=-1), name='terameters_per_picosecond', ascii_symbol='Tm/ps', symbol='Tmps⁻¹') -terameters_per_square_picosecond = NamedUnit(1e+36, Dimensions(length=1, time=-2), name='terameters_per_square_picosecond', ascii_symbol='Tm/ps^2', symbol='Tmps⁻²') -terameters_per_femtosecond = NamedUnit(9.999999999999999e+26, Dimensions(length=1, time=-1), name='terameters_per_femtosecond', ascii_symbol='Tm/fs', symbol='Tmfs⁻¹') -terameters_per_square_femtosecond = NamedUnit(9.999999999999999e+41, Dimensions(length=1, time=-2), name='terameters_per_square_femtosecond', ascii_symbol='Tm/fs^2', symbol='Tmfs⁻²') -terameters_per_attosecond = NamedUnit(9.999999999999999e+29, Dimensions(length=1, time=-1), name='terameters_per_attosecond', ascii_symbol='Tm/as', symbol='Tmas⁻¹') -terameters_per_square_attosecond = NamedUnit(9.999999999999999e+47, Dimensions(length=1, time=-2), name='terameters_per_square_attosecond', ascii_symbol='Tm/as^2', symbol='Tmas⁻²') -terameters_per_minute = NamedUnit(16666666666.666666, Dimensions(length=1, time=-1), name='terameters_per_minute', ascii_symbol='Tm/min', symbol='Tmmin⁻¹') -terameters_per_square_minute = NamedUnit(277777777.7777778, Dimensions(length=1, time=-2), name='terameters_per_square_minute', ascii_symbol='Tm/min^2', symbol='Tmmin⁻²') -terameters_per_hour = NamedUnit(277777777.7777778, Dimensions(length=1, time=-1), name='terameters_per_hour', ascii_symbol='Tm/h', symbol='Tmh⁻¹') -terameters_per_square_hour = NamedUnit(77160.49382716049, Dimensions(length=1, time=-2), name='terameters_per_square_hour', ascii_symbol='Tm/h^2', symbol='Tmh⁻²') -terameters_per_day = NamedUnit(11574074.074074075, Dimensions(length=1, time=-1), name='terameters_per_day', ascii_symbol='Tm/d', symbol='Tmd⁻¹') -terameters_per_square_day = NamedUnit(133.95919067215362, Dimensions(length=1, time=-2), name='terameters_per_square_day', ascii_symbol='Tm/d^2', symbol='Tmd⁻²') -terameters_per_year = NamedUnit(31688.73850681143, Dimensions(length=1, time=-1), name='terameters_per_year', ascii_symbol='Tm/y', symbol='Tmy⁻¹') -terameters_per_square_year = NamedUnit(0.0010041761481530736, Dimensions(length=1, time=-2), name='terameters_per_square_year', ascii_symbol='Tm/y^2', symbol='Tmy⁻²') -gigameters_per_second = NamedUnit(1000000000.0, Dimensions(length=1, time=-1), name='gigameters_per_second', ascii_symbol='Gm/s', symbol='Gms⁻¹') -gigameters_per_square_second = NamedUnit(1000000000.0, Dimensions(length=1, time=-2), name='gigameters_per_square_second', ascii_symbol='Gm/s^2', symbol='Gms⁻²') -gigameters_per_millisecond = NamedUnit(1000000000000.0, Dimensions(length=1, time=-1), name='gigameters_per_millisecond', ascii_symbol='Gm/ms', symbol='Gmms⁻¹') -gigameters_per_square_millisecond = NamedUnit(1000000000000000.0, Dimensions(length=1, time=-2), name='gigameters_per_square_millisecond', ascii_symbol='Gm/ms^2', symbol='Gmms⁻²') -gigameters_per_microsecond = NamedUnit(1000000000000000.0, Dimensions(length=1, time=-1), name='gigameters_per_microsecond', ascii_symbol='Gm/us', symbol='Gmµs⁻¹') -gigameters_per_square_microsecond = NamedUnit(1e+21, Dimensions(length=1, time=-2), name='gigameters_per_square_microsecond', ascii_symbol='Gm/us^2', symbol='Gmµs⁻²') -gigameters_per_nanosecond = NamedUnit(1e+18, Dimensions(length=1, time=-1), name='gigameters_per_nanosecond', ascii_symbol='Gm/ns', symbol='Gmns⁻¹') -gigameters_per_square_nanosecond = NamedUnit(9.999999999999999e+26, Dimensions(length=1, time=-2), name='gigameters_per_square_nanosecond', ascii_symbol='Gm/ns^2', symbol='Gmns⁻²') -gigameters_per_picosecond = NamedUnit(1e+21, Dimensions(length=1, time=-1), name='gigameters_per_picosecond', ascii_symbol='Gm/ps', symbol='Gmps⁻¹') -gigameters_per_square_picosecond = NamedUnit(1.0000000000000001e+33, Dimensions(length=1, time=-2), name='gigameters_per_square_picosecond', ascii_symbol='Gm/ps^2', symbol='Gmps⁻²') -gigameters_per_femtosecond = NamedUnit(1e+24, Dimensions(length=1, time=-1), name='gigameters_per_femtosecond', ascii_symbol='Gm/fs', symbol='Gmfs⁻¹') -gigameters_per_square_femtosecond = NamedUnit(1e+39, Dimensions(length=1, time=-2), name='gigameters_per_square_femtosecond', ascii_symbol='Gm/fs^2', symbol='Gmfs⁻²') -gigameters_per_attosecond = NamedUnit(9.999999999999999e+26, Dimensions(length=1, time=-1), name='gigameters_per_attosecond', ascii_symbol='Gm/as', symbol='Gmas⁻¹') -gigameters_per_square_attosecond = NamedUnit(1e+45, Dimensions(length=1, time=-2), name='gigameters_per_square_attosecond', ascii_symbol='Gm/as^2', symbol='Gmas⁻²') -gigameters_per_minute = NamedUnit(16666666.666666666, Dimensions(length=1, time=-1), name='gigameters_per_minute', ascii_symbol='Gm/min', symbol='Gmmin⁻¹') -gigameters_per_square_minute = NamedUnit(277777.77777777775, Dimensions(length=1, time=-2), name='gigameters_per_square_minute', ascii_symbol='Gm/min^2', symbol='Gmmin⁻²') -gigameters_per_hour = NamedUnit(277777.77777777775, Dimensions(length=1, time=-1), name='gigameters_per_hour', ascii_symbol='Gm/h', symbol='Gmh⁻¹') -gigameters_per_square_hour = NamedUnit(77.1604938271605, Dimensions(length=1, time=-2), name='gigameters_per_square_hour', ascii_symbol='Gm/h^2', symbol='Gmh⁻²') -gigameters_per_day = NamedUnit(11574.074074074075, Dimensions(length=1, time=-1), name='gigameters_per_day', ascii_symbol='Gm/d', symbol='Gmd⁻¹') -gigameters_per_square_day = NamedUnit(0.13395919067215364, Dimensions(length=1, time=-2), name='gigameters_per_square_day', ascii_symbol='Gm/d^2', symbol='Gmd⁻²') -gigameters_per_year = NamedUnit(31.688738506811433, Dimensions(length=1, time=-1), name='gigameters_per_year', ascii_symbol='Gm/y', symbol='Gmy⁻¹') -gigameters_per_square_year = NamedUnit(1.0041761481530736e-06, Dimensions(length=1, time=-2), name='gigameters_per_square_year', ascii_symbol='Gm/y^2', symbol='Gmy⁻²') -megameters_per_second = NamedUnit(1000000.0, Dimensions(length=1, time=-1), name='megameters_per_second', ascii_symbol='Mm/s', symbol='Mms⁻¹') -megameters_per_square_second = NamedUnit(1000000.0, Dimensions(length=1, time=-2), name='megameters_per_square_second', ascii_symbol='Mm/s^2', symbol='Mms⁻²') -megameters_per_millisecond = NamedUnit(1000000000.0, Dimensions(length=1, time=-1), name='megameters_per_millisecond', ascii_symbol='Mm/ms', symbol='Mmms⁻¹') -megameters_per_square_millisecond = NamedUnit(1000000000000.0, Dimensions(length=1, time=-2), name='megameters_per_square_millisecond', ascii_symbol='Mm/ms^2', symbol='Mmms⁻²') -megameters_per_microsecond = NamedUnit(1000000000000.0, Dimensions(length=1, time=-1), name='megameters_per_microsecond', ascii_symbol='Mm/us', symbol='Mmµs⁻¹') -megameters_per_square_microsecond = NamedUnit(1e+18, Dimensions(length=1, time=-2), name='megameters_per_square_microsecond', ascii_symbol='Mm/us^2', symbol='Mmµs⁻²') -megameters_per_nanosecond = NamedUnit(1000000000000000.0, Dimensions(length=1, time=-1), name='megameters_per_nanosecond', ascii_symbol='Mm/ns', symbol='Mmns⁻¹') -megameters_per_square_nanosecond = NamedUnit(1e+24, Dimensions(length=1, time=-2), name='megameters_per_square_nanosecond', ascii_symbol='Mm/ns^2', symbol='Mmns⁻²') -megameters_per_picosecond = NamedUnit(1e+18, Dimensions(length=1, time=-1), name='megameters_per_picosecond', ascii_symbol='Mm/ps', symbol='Mmps⁻¹') -megameters_per_square_picosecond = NamedUnit(1e+30, Dimensions(length=1, time=-2), name='megameters_per_square_picosecond', ascii_symbol='Mm/ps^2', symbol='Mmps⁻²') -megameters_per_femtosecond = NamedUnit(9.999999999999999e+20, Dimensions(length=1, time=-1), name='megameters_per_femtosecond', ascii_symbol='Mm/fs', symbol='Mmfs⁻¹') -megameters_per_square_femtosecond = NamedUnit(9.999999999999999e+35, Dimensions(length=1, time=-2), name='megameters_per_square_femtosecond', ascii_symbol='Mm/fs^2', symbol='Mmfs⁻²') -megameters_per_attosecond = NamedUnit(1e+24, Dimensions(length=1, time=-1), name='megameters_per_attosecond', ascii_symbol='Mm/as', symbol='Mmas⁻¹') -megameters_per_square_attosecond = NamedUnit(9.999999999999999e+41, Dimensions(length=1, time=-2), name='megameters_per_square_attosecond', ascii_symbol='Mm/as^2', symbol='Mmas⁻²') -megameters_per_minute = NamedUnit(16666.666666666668, Dimensions(length=1, time=-1), name='megameters_per_minute', ascii_symbol='Mm/min', symbol='Mmmin⁻¹') -megameters_per_square_minute = NamedUnit(277.77777777777777, Dimensions(length=1, time=-2), name='megameters_per_square_minute', ascii_symbol='Mm/min^2', symbol='Mmmin⁻²') -megameters_per_hour = NamedUnit(277.77777777777777, Dimensions(length=1, time=-1), name='megameters_per_hour', ascii_symbol='Mm/h', symbol='Mmh⁻¹') -megameters_per_square_hour = NamedUnit(0.07716049382716049, Dimensions(length=1, time=-2), name='megameters_per_square_hour', ascii_symbol='Mm/h^2', symbol='Mmh⁻²') -megameters_per_day = NamedUnit(11.574074074074074, Dimensions(length=1, time=-1), name='megameters_per_day', ascii_symbol='Mm/d', symbol='Mmd⁻¹') -megameters_per_square_day = NamedUnit(0.00013395919067215364, Dimensions(length=1, time=-2), name='megameters_per_square_day', ascii_symbol='Mm/d^2', symbol='Mmd⁻²') -megameters_per_year = NamedUnit(0.031688738506811434, Dimensions(length=1, time=-1), name='megameters_per_year', ascii_symbol='Mm/y', symbol='Mmy⁻¹') -megameters_per_square_year = NamedUnit(1.0041761481530736e-09, Dimensions(length=1, time=-2), name='megameters_per_square_year', ascii_symbol='Mm/y^2', symbol='Mmy⁻²') -kilometers_per_second = NamedUnit(1000.0, Dimensions(length=1, time=-1), name='kilometers_per_second', ascii_symbol='km/s', symbol='kms⁻¹') -kilometers_per_square_second = NamedUnit(1000.0, Dimensions(length=1, time=-2), name='kilometers_per_square_second', ascii_symbol='km/s^2', symbol='kms⁻²') -kilometers_per_millisecond = NamedUnit(1000000.0, Dimensions(length=1, time=-1), name='kilometers_per_millisecond', ascii_symbol='km/ms', symbol='kmms⁻¹') -kilometers_per_square_millisecond = NamedUnit(1000000000.0, Dimensions(length=1, time=-2), name='kilometers_per_square_millisecond', ascii_symbol='km/ms^2', symbol='kmms⁻²') -kilometers_per_microsecond = NamedUnit(1000000000.0, Dimensions(length=1, time=-1), name='kilometers_per_microsecond', ascii_symbol='km/us', symbol='kmµs⁻¹') -kilometers_per_square_microsecond = NamedUnit(1000000000000000.0, Dimensions(length=1, time=-2), name='kilometers_per_square_microsecond', ascii_symbol='km/us^2', symbol='kmµs⁻²') -kilometers_per_nanosecond = NamedUnit(999999999999.9999, Dimensions(length=1, time=-1), name='kilometers_per_nanosecond', ascii_symbol='km/ns', symbol='kmns⁻¹') -kilometers_per_square_nanosecond = NamedUnit(9.999999999999999e+20, Dimensions(length=1, time=-2), name='kilometers_per_square_nanosecond', ascii_symbol='km/ns^2', symbol='kmns⁻²') -kilometers_per_picosecond = NamedUnit(1000000000000000.0, Dimensions(length=1, time=-1), name='kilometers_per_picosecond', ascii_symbol='km/ps', symbol='kmps⁻¹') -kilometers_per_square_picosecond = NamedUnit(1e+27, Dimensions(length=1, time=-2), name='kilometers_per_square_picosecond', ascii_symbol='km/ps^2', symbol='kmps⁻²') -kilometers_per_femtosecond = NamedUnit(9.999999999999999e+17, Dimensions(length=1, time=-1), name='kilometers_per_femtosecond', ascii_symbol='km/fs', symbol='kmfs⁻¹') -kilometers_per_square_femtosecond = NamedUnit(1e+33, Dimensions(length=1, time=-2), name='kilometers_per_square_femtosecond', ascii_symbol='km/fs^2', symbol='kmfs⁻²') -kilometers_per_attosecond = NamedUnit(9.999999999999999e+20, Dimensions(length=1, time=-1), name='kilometers_per_attosecond', ascii_symbol='km/as', symbol='kmas⁻¹') -kilometers_per_square_attosecond = NamedUnit(1e+39, Dimensions(length=1, time=-2), name='kilometers_per_square_attosecond', ascii_symbol='km/as^2', symbol='kmas⁻²') -kilometers_per_minute = NamedUnit(16.666666666666668, Dimensions(length=1, time=-1), name='kilometers_per_minute', ascii_symbol='km/min', symbol='kmmin⁻¹') -kilometers_per_square_minute = NamedUnit(0.2777777777777778, Dimensions(length=1, time=-2), name='kilometers_per_square_minute', ascii_symbol='km/min^2', symbol='kmmin⁻²') -kilometers_per_hour = NamedUnit(0.2777777777777778, Dimensions(length=1, time=-1), name='kilometers_per_hour', ascii_symbol='km/h', symbol='kmh⁻¹') -kilometers_per_square_hour = NamedUnit(7.716049382716049e-05, Dimensions(length=1, time=-2), name='kilometers_per_square_hour', ascii_symbol='km/h^2', symbol='kmh⁻²') -kilometers_per_day = NamedUnit(0.011574074074074073, Dimensions(length=1, time=-1), name='kilometers_per_day', ascii_symbol='km/d', symbol='kmd⁻¹') -kilometers_per_square_day = NamedUnit(1.3395919067215364e-07, Dimensions(length=1, time=-2), name='kilometers_per_square_day', ascii_symbol='km/d^2', symbol='kmd⁻²') -kilometers_per_year = NamedUnit(3.168873850681143e-05, Dimensions(length=1, time=-1), name='kilometers_per_year', ascii_symbol='km/y', symbol='kmy⁻¹') -kilometers_per_square_year = NamedUnit(1.0041761481530736e-12, Dimensions(length=1, time=-2), name='kilometers_per_square_year', ascii_symbol='km/y^2', symbol='kmy⁻²') -millimeters_per_second = NamedUnit(0.001, Dimensions(length=1, time=-1), name='millimeters_per_second', ascii_symbol='mm/s', symbol='mms⁻¹') -millimeters_per_square_second = NamedUnit(0.001, Dimensions(length=1, time=-2), name='millimeters_per_square_second', ascii_symbol='mm/s^2', symbol='mms⁻²') -millimeters_per_millisecond = NamedUnit(1.0, Dimensions(length=1, time=-1), name='millimeters_per_millisecond', ascii_symbol='mm/ms', symbol='mmms⁻¹') -millimeters_per_square_millisecond = NamedUnit(1000.0000000000001, Dimensions(length=1, time=-2), name='millimeters_per_square_millisecond', ascii_symbol='mm/ms^2', symbol='mmms⁻²') -millimeters_per_microsecond = NamedUnit(1000.0000000000001, Dimensions(length=1, time=-1), name='millimeters_per_microsecond', ascii_symbol='mm/us', symbol='mmµs⁻¹') -millimeters_per_square_microsecond = NamedUnit(1000000000.0, Dimensions(length=1, time=-2), name='millimeters_per_square_microsecond', ascii_symbol='mm/us^2', symbol='mmµs⁻²') -millimeters_per_nanosecond = NamedUnit(1000000.0, Dimensions(length=1, time=-1), name='millimeters_per_nanosecond', ascii_symbol='mm/ns', symbol='mmns⁻¹') -millimeters_per_square_nanosecond = NamedUnit(1000000000000000.0, Dimensions(length=1, time=-2), name='millimeters_per_square_nanosecond', ascii_symbol='mm/ns^2', symbol='mmns⁻²') -millimeters_per_picosecond = NamedUnit(1000000000.0, Dimensions(length=1, time=-1), name='millimeters_per_picosecond', ascii_symbol='mm/ps', symbol='mmps⁻¹') -millimeters_per_square_picosecond = NamedUnit(1.0000000000000001e+21, Dimensions(length=1, time=-2), name='millimeters_per_square_picosecond', ascii_symbol='mm/ps^2', symbol='mmps⁻²') -millimeters_per_femtosecond = NamedUnit(1000000000000.0, Dimensions(length=1, time=-1), name='millimeters_per_femtosecond', ascii_symbol='mm/fs', symbol='mmfs⁻¹') -millimeters_per_square_femtosecond = NamedUnit(9.999999999999999e+26, Dimensions(length=1, time=-2), name='millimeters_per_square_femtosecond', ascii_symbol='mm/fs^2', symbol='mmfs⁻²') -millimeters_per_attosecond = NamedUnit(1000000000000000.0, Dimensions(length=1, time=-1), name='millimeters_per_attosecond', ascii_symbol='mm/as', symbol='mmas⁻¹') -millimeters_per_square_attosecond = NamedUnit(1e+33, Dimensions(length=1, time=-2), name='millimeters_per_square_attosecond', ascii_symbol='mm/as^2', symbol='mmas⁻²') -millimeters_per_minute = NamedUnit(1.6666666666666667e-05, Dimensions(length=1, time=-1), name='millimeters_per_minute', ascii_symbol='mm/min', symbol='mmmin⁻¹') -millimeters_per_square_minute = NamedUnit(2.7777777777777776e-07, Dimensions(length=1, time=-2), name='millimeters_per_square_minute', ascii_symbol='mm/min^2', symbol='mmmin⁻²') -millimeters_per_hour = NamedUnit(2.7777777777777776e-07, Dimensions(length=1, time=-1), name='millimeters_per_hour', ascii_symbol='mm/h', symbol='mmh⁻¹') -millimeters_per_square_hour = NamedUnit(7.716049382716049e-11, Dimensions(length=1, time=-2), name='millimeters_per_square_hour', ascii_symbol='mm/h^2', symbol='mmh⁻²') -millimeters_per_day = NamedUnit(1.1574074074074074e-08, Dimensions(length=1, time=-1), name='millimeters_per_day', ascii_symbol='mm/d', symbol='mmd⁻¹') -millimeters_per_square_day = NamedUnit(1.3395919067215364e-13, Dimensions(length=1, time=-2), name='millimeters_per_square_day', ascii_symbol='mm/d^2', symbol='mmd⁻²') -millimeters_per_year = NamedUnit(3.168873850681143e-11, Dimensions(length=1, time=-1), name='millimeters_per_year', ascii_symbol='mm/y', symbol='mmy⁻¹') -millimeters_per_square_year = NamedUnit(1.0041761481530737e-18, Dimensions(length=1, time=-2), name='millimeters_per_square_year', ascii_symbol='mm/y^2', symbol='mmy⁻²') -micrometers_per_second = NamedUnit(1e-06, Dimensions(length=1, time=-1), name='micrometers_per_second', ascii_symbol='um/s', symbol='µms⁻¹') -micrometers_per_square_second = NamedUnit(1e-06, Dimensions(length=1, time=-2), name='micrometers_per_square_second', ascii_symbol='um/s^2', symbol='µms⁻²') -micrometers_per_millisecond = NamedUnit(0.001, Dimensions(length=1, time=-1), name='micrometers_per_millisecond', ascii_symbol='um/ms', symbol='µmms⁻¹') -micrometers_per_square_millisecond = NamedUnit(1.0, Dimensions(length=1, time=-2), name='micrometers_per_square_millisecond', ascii_symbol='um/ms^2', symbol='µmms⁻²') -micrometers_per_microsecond = NamedUnit(1.0, Dimensions(length=1, time=-1), name='micrometers_per_microsecond', ascii_symbol='um/us', symbol='µmµs⁻¹') -micrometers_per_square_microsecond = NamedUnit(1000000.0, Dimensions(length=1, time=-2), name='micrometers_per_square_microsecond', ascii_symbol='um/us^2', symbol='µmµs⁻²') -micrometers_per_nanosecond = NamedUnit(999.9999999999999, Dimensions(length=1, time=-1), name='micrometers_per_nanosecond', ascii_symbol='um/ns', symbol='µmns⁻¹') -micrometers_per_square_nanosecond = NamedUnit(999999999999.9999, Dimensions(length=1, time=-2), name='micrometers_per_square_nanosecond', ascii_symbol='um/ns^2', symbol='µmns⁻²') -micrometers_per_picosecond = NamedUnit(1000000.0, Dimensions(length=1, time=-1), name='micrometers_per_picosecond', ascii_symbol='um/ps', symbol='µmps⁻¹') -micrometers_per_square_picosecond = NamedUnit(1e+18, Dimensions(length=1, time=-2), name='micrometers_per_square_picosecond', ascii_symbol='um/ps^2', symbol='µmps⁻²') -micrometers_per_femtosecond = NamedUnit(999999999.9999999, Dimensions(length=1, time=-1), name='micrometers_per_femtosecond', ascii_symbol='um/fs', symbol='µmfs⁻¹') -micrometers_per_square_femtosecond = NamedUnit(9.999999999999998e+23, Dimensions(length=1, time=-2), name='micrometers_per_square_femtosecond', ascii_symbol='um/fs^2', symbol='µmfs⁻²') -micrometers_per_attosecond = NamedUnit(999999999999.9999, Dimensions(length=1, time=-1), name='micrometers_per_attosecond', ascii_symbol='um/as', symbol='µmas⁻¹') -micrometers_per_square_attosecond = NamedUnit(9.999999999999999e+29, Dimensions(length=1, time=-2), name='micrometers_per_square_attosecond', ascii_symbol='um/as^2', symbol='µmas⁻²') -micrometers_per_minute = NamedUnit(1.6666666666666667e-08, Dimensions(length=1, time=-1), name='micrometers_per_minute', ascii_symbol='um/min', symbol='µmmin⁻¹') -micrometers_per_square_minute = NamedUnit(2.7777777777777777e-10, Dimensions(length=1, time=-2), name='micrometers_per_square_minute', ascii_symbol='um/min^2', symbol='µmmin⁻²') -micrometers_per_hour = NamedUnit(2.7777777777777777e-10, Dimensions(length=1, time=-1), name='micrometers_per_hour', ascii_symbol='um/h', symbol='µmh⁻¹') -micrometers_per_square_hour = NamedUnit(7.71604938271605e-14, Dimensions(length=1, time=-2), name='micrometers_per_square_hour', ascii_symbol='um/h^2', symbol='µmh⁻²') -micrometers_per_day = NamedUnit(1.1574074074074074e-11, Dimensions(length=1, time=-1), name='micrometers_per_day', ascii_symbol='um/d', symbol='µmd⁻¹') -micrometers_per_square_day = NamedUnit(1.3395919067215363e-16, Dimensions(length=1, time=-2), name='micrometers_per_square_day', ascii_symbol='um/d^2', symbol='µmd⁻²') -micrometers_per_year = NamedUnit(3.168873850681143e-14, Dimensions(length=1, time=-1), name='micrometers_per_year', ascii_symbol='um/y', symbol='µmy⁻¹') -micrometers_per_square_year = NamedUnit(1.0041761481530736e-21, Dimensions(length=1, time=-2), name='micrometers_per_square_year', ascii_symbol='um/y^2', symbol='µmy⁻²') -nanometers_per_second = NamedUnit(1e-09, Dimensions(length=1, time=-1), name='nanometers_per_second', ascii_symbol='nm/s', symbol='nms⁻¹') -nanometers_per_square_second = NamedUnit(1e-09, Dimensions(length=1, time=-2), name='nanometers_per_square_second', ascii_symbol='nm/s^2', symbol='nms⁻²') -nanometers_per_millisecond = NamedUnit(1e-06, Dimensions(length=1, time=-1), name='nanometers_per_millisecond', ascii_symbol='nm/ms', symbol='nmms⁻¹') -nanometers_per_square_millisecond = NamedUnit(0.001, Dimensions(length=1, time=-2), name='nanometers_per_square_millisecond', ascii_symbol='nm/ms^2', symbol='nmms⁻²') -nanometers_per_microsecond = NamedUnit(0.001, Dimensions(length=1, time=-1), name='nanometers_per_microsecond', ascii_symbol='nm/us', symbol='nmµs⁻¹') -nanometers_per_square_microsecond = NamedUnit(1000.0000000000001, Dimensions(length=1, time=-2), name='nanometers_per_square_microsecond', ascii_symbol='nm/us^2', symbol='nmµs⁻²') -nanometers_per_nanosecond = NamedUnit(1.0, Dimensions(length=1, time=-1), name='nanometers_per_nanosecond', ascii_symbol='nm/ns', symbol='nmns⁻¹') -nanometers_per_square_nanosecond = NamedUnit(1000000000.0, Dimensions(length=1, time=-2), name='nanometers_per_square_nanosecond', ascii_symbol='nm/ns^2', symbol='nmns⁻²') -nanometers_per_picosecond = NamedUnit(1000.0000000000001, Dimensions(length=1, time=-1), name='nanometers_per_picosecond', ascii_symbol='nm/ps', symbol='nmps⁻¹') -nanometers_per_square_picosecond = NamedUnit(1000000000000000.1, Dimensions(length=1, time=-2), name='nanometers_per_square_picosecond', ascii_symbol='nm/ps^2', symbol='nmps⁻²') -nanometers_per_femtosecond = NamedUnit(1000000.0, Dimensions(length=1, time=-1), name='nanometers_per_femtosecond', ascii_symbol='nm/fs', symbol='nmfs⁻¹') -nanometers_per_square_femtosecond = NamedUnit(1e+21, Dimensions(length=1, time=-2), name='nanometers_per_square_femtosecond', ascii_symbol='nm/fs^2', symbol='nmfs⁻²') -nanometers_per_attosecond = NamedUnit(1000000000.0, Dimensions(length=1, time=-1), name='nanometers_per_attosecond', ascii_symbol='nm/as', symbol='nmas⁻¹') -nanometers_per_square_attosecond = NamedUnit(1e+27, Dimensions(length=1, time=-2), name='nanometers_per_square_attosecond', ascii_symbol='nm/as^2', symbol='nmas⁻²') -nanometers_per_minute = NamedUnit(1.6666666666666667e-11, Dimensions(length=1, time=-1), name='nanometers_per_minute', ascii_symbol='nm/min', symbol='nmmin⁻¹') -nanometers_per_square_minute = NamedUnit(2.777777777777778e-13, Dimensions(length=1, time=-2), name='nanometers_per_square_minute', ascii_symbol='nm/min^2', symbol='nmmin⁻²') -nanometers_per_hour = NamedUnit(2.777777777777778e-13, Dimensions(length=1, time=-1), name='nanometers_per_hour', ascii_symbol='nm/h', symbol='nmh⁻¹') -nanometers_per_square_hour = NamedUnit(7.71604938271605e-17, Dimensions(length=1, time=-2), name='nanometers_per_square_hour', ascii_symbol='nm/h^2', symbol='nmh⁻²') -nanometers_per_day = NamedUnit(1.1574074074074075e-14, Dimensions(length=1, time=-1), name='nanometers_per_day', ascii_symbol='nm/d', symbol='nmd⁻¹') -nanometers_per_square_day = NamedUnit(1.3395919067215365e-19, Dimensions(length=1, time=-2), name='nanometers_per_square_day', ascii_symbol='nm/d^2', symbol='nmd⁻²') -nanometers_per_year = NamedUnit(3.1688738506811435e-17, Dimensions(length=1, time=-1), name='nanometers_per_year', ascii_symbol='nm/y', symbol='nmy⁻¹') -nanometers_per_square_year = NamedUnit(1.0041761481530737e-24, Dimensions(length=1, time=-2), name='nanometers_per_square_year', ascii_symbol='nm/y^2', symbol='nmy⁻²') -picometers_per_second = NamedUnit(1e-12, Dimensions(length=1, time=-1), name='picometers_per_second', ascii_symbol='pm/s', symbol='pms⁻¹') -picometers_per_square_second = NamedUnit(1e-12, Dimensions(length=1, time=-2), name='picometers_per_square_second', ascii_symbol='pm/s^2', symbol='pms⁻²') -picometers_per_millisecond = NamedUnit(1e-09, Dimensions(length=1, time=-1), name='picometers_per_millisecond', ascii_symbol='pm/ms', symbol='pmms⁻¹') -picometers_per_square_millisecond = NamedUnit(1e-06, Dimensions(length=1, time=-2), name='picometers_per_square_millisecond', ascii_symbol='pm/ms^2', symbol='pmms⁻²') -picometers_per_microsecond = NamedUnit(1e-06, Dimensions(length=1, time=-1), name='picometers_per_microsecond', ascii_symbol='pm/us', symbol='pmµs⁻¹') -picometers_per_square_microsecond = NamedUnit(1.0, Dimensions(length=1, time=-2), name='picometers_per_square_microsecond', ascii_symbol='pm/us^2', symbol='pmµs⁻²') -picometers_per_nanosecond = NamedUnit(0.001, Dimensions(length=1, time=-1), name='picometers_per_nanosecond', ascii_symbol='pm/ns', symbol='pmns⁻¹') -picometers_per_square_nanosecond = NamedUnit(999999.9999999999, Dimensions(length=1, time=-2), name='picometers_per_square_nanosecond', ascii_symbol='pm/ns^2', symbol='pmns⁻²') -picometers_per_picosecond = NamedUnit(1.0, Dimensions(length=1, time=-1), name='picometers_per_picosecond', ascii_symbol='pm/ps', symbol='pmps⁻¹') -picometers_per_square_picosecond = NamedUnit(1000000000000.0, Dimensions(length=1, time=-2), name='picometers_per_square_picosecond', ascii_symbol='pm/ps^2', symbol='pmps⁻²') -picometers_per_femtosecond = NamedUnit(999.9999999999999, Dimensions(length=1, time=-1), name='picometers_per_femtosecond', ascii_symbol='pm/fs', symbol='pmfs⁻¹') -picometers_per_square_femtosecond = NamedUnit(9.999999999999999e+17, Dimensions(length=1, time=-2), name='picometers_per_square_femtosecond', ascii_symbol='pm/fs^2', symbol='pmfs⁻²') -picometers_per_attosecond = NamedUnit(999999.9999999999, Dimensions(length=1, time=-1), name='picometers_per_attosecond', ascii_symbol='pm/as', symbol='pmas⁻¹') -picometers_per_square_attosecond = NamedUnit(9.999999999999998e+23, Dimensions(length=1, time=-2), name='picometers_per_square_attosecond', ascii_symbol='pm/as^2', symbol='pmas⁻²') -picometers_per_minute = NamedUnit(1.6666666666666667e-14, Dimensions(length=1, time=-1), name='picometers_per_minute', ascii_symbol='pm/min', symbol='pmmin⁻¹') -picometers_per_square_minute = NamedUnit(2.7777777777777775e-16, Dimensions(length=1, time=-2), name='picometers_per_square_minute', ascii_symbol='pm/min^2', symbol='pmmin⁻²') -picometers_per_hour = NamedUnit(2.7777777777777775e-16, Dimensions(length=1, time=-1), name='picometers_per_hour', ascii_symbol='pm/h', symbol='pmh⁻¹') -picometers_per_square_hour = NamedUnit(7.716049382716049e-20, Dimensions(length=1, time=-2), name='picometers_per_square_hour', ascii_symbol='pm/h^2', symbol='pmh⁻²') -picometers_per_day = NamedUnit(1.1574074074074074e-17, Dimensions(length=1, time=-1), name='picometers_per_day', ascii_symbol='pm/d', symbol='pmd⁻¹') -picometers_per_square_day = NamedUnit(1.3395919067215362e-22, Dimensions(length=1, time=-2), name='picometers_per_square_day', ascii_symbol='pm/d^2', symbol='pmd⁻²') -picometers_per_year = NamedUnit(3.168873850681143e-20, Dimensions(length=1, time=-1), name='picometers_per_year', ascii_symbol='pm/y', symbol='pmy⁻¹') -picometers_per_square_year = NamedUnit(1.0041761481530736e-27, Dimensions(length=1, time=-2), name='picometers_per_square_year', ascii_symbol='pm/y^2', symbol='pmy⁻²') -femtometers_per_second = NamedUnit(1e-15, Dimensions(length=1, time=-1), name='femtometers_per_second', ascii_symbol='fm/s', symbol='fms⁻¹') -femtometers_per_square_second = NamedUnit(1e-15, Dimensions(length=1, time=-2), name='femtometers_per_square_second', ascii_symbol='fm/s^2', symbol='fms⁻²') -femtometers_per_millisecond = NamedUnit(1e-12, Dimensions(length=1, time=-1), name='femtometers_per_millisecond', ascii_symbol='fm/ms', symbol='fmms⁻¹') -femtometers_per_square_millisecond = NamedUnit(1e-09, Dimensions(length=1, time=-2), name='femtometers_per_square_millisecond', ascii_symbol='fm/ms^2', symbol='fmms⁻²') -femtometers_per_microsecond = NamedUnit(1e-09, Dimensions(length=1, time=-1), name='femtometers_per_microsecond', ascii_symbol='fm/us', symbol='fmµs⁻¹') -femtometers_per_square_microsecond = NamedUnit(0.001, Dimensions(length=1, time=-2), name='femtometers_per_square_microsecond', ascii_symbol='fm/us^2', symbol='fmµs⁻²') -femtometers_per_nanosecond = NamedUnit(1e-06, Dimensions(length=1, time=-1), name='femtometers_per_nanosecond', ascii_symbol='fm/ns', symbol='fmns⁻¹') -femtometers_per_square_nanosecond = NamedUnit(1000.0, Dimensions(length=1, time=-2), name='femtometers_per_square_nanosecond', ascii_symbol='fm/ns^2', symbol='fmns⁻²') -femtometers_per_picosecond = NamedUnit(0.001, Dimensions(length=1, time=-1), name='femtometers_per_picosecond', ascii_symbol='fm/ps', symbol='fmps⁻¹') -femtometers_per_square_picosecond = NamedUnit(1000000000.0000001, Dimensions(length=1, time=-2), name='femtometers_per_square_picosecond', ascii_symbol='fm/ps^2', symbol='fmps⁻²') -femtometers_per_femtosecond = NamedUnit(1.0, Dimensions(length=1, time=-1), name='femtometers_per_femtosecond', ascii_symbol='fm/fs', symbol='fmfs⁻¹') -femtometers_per_square_femtosecond = NamedUnit(1000000000000000.0, Dimensions(length=1, time=-2), name='femtometers_per_square_femtosecond', ascii_symbol='fm/fs^2', symbol='fmfs⁻²') -femtometers_per_attosecond = NamedUnit(1000.0, Dimensions(length=1, time=-1), name='femtometers_per_attosecond', ascii_symbol='fm/as', symbol='fmas⁻¹') -femtometers_per_square_attosecond = NamedUnit(1e+21, Dimensions(length=1, time=-2), name='femtometers_per_square_attosecond', ascii_symbol='fm/as^2', symbol='fmas⁻²') -femtometers_per_minute = NamedUnit(1.6666666666666667e-17, Dimensions(length=1, time=-1), name='femtometers_per_minute', ascii_symbol='fm/min', symbol='fmmin⁻¹') -femtometers_per_square_minute = NamedUnit(2.777777777777778e-19, Dimensions(length=1, time=-2), name='femtometers_per_square_minute', ascii_symbol='fm/min^2', symbol='fmmin⁻²') -femtometers_per_hour = NamedUnit(2.777777777777778e-19, Dimensions(length=1, time=-1), name='femtometers_per_hour', ascii_symbol='fm/h', symbol='fmh⁻¹') -femtometers_per_square_hour = NamedUnit(7.71604938271605e-23, Dimensions(length=1, time=-2), name='femtometers_per_square_hour', ascii_symbol='fm/h^2', symbol='fmh⁻²') -femtometers_per_day = NamedUnit(1.1574074074074075e-20, Dimensions(length=1, time=-1), name='femtometers_per_day', ascii_symbol='fm/d', symbol='fmd⁻¹') -femtometers_per_square_day = NamedUnit(1.3395919067215364e-25, Dimensions(length=1, time=-2), name='femtometers_per_square_day', ascii_symbol='fm/d^2', symbol='fmd⁻²') -femtometers_per_year = NamedUnit(3.1688738506811434e-23, Dimensions(length=1, time=-1), name='femtometers_per_year', ascii_symbol='fm/y', symbol='fmy⁻¹') -femtometers_per_square_year = NamedUnit(1.0041761481530736e-30, Dimensions(length=1, time=-2), name='femtometers_per_square_year', ascii_symbol='fm/y^2', symbol='fmy⁻²') -attometers_per_second = NamedUnit(1e-18, Dimensions(length=1, time=-1), name='attometers_per_second', ascii_symbol='am/s', symbol='ams⁻¹') -attometers_per_square_second = NamedUnit(1e-18, Dimensions(length=1, time=-2), name='attometers_per_square_second', ascii_symbol='am/s^2', symbol='ams⁻²') -attometers_per_millisecond = NamedUnit(1e-15, Dimensions(length=1, time=-1), name='attometers_per_millisecond', ascii_symbol='am/ms', symbol='amms⁻¹') -attometers_per_square_millisecond = NamedUnit(1.0000000000000002e-12, Dimensions(length=1, time=-2), name='attometers_per_square_millisecond', ascii_symbol='am/ms^2', symbol='amms⁻²') -attometers_per_microsecond = NamedUnit(1.0000000000000002e-12, Dimensions(length=1, time=-1), name='attometers_per_microsecond', ascii_symbol='am/us', symbol='amµs⁻¹') -attometers_per_square_microsecond = NamedUnit(1.0000000000000002e-06, Dimensions(length=1, time=-2), name='attometers_per_square_microsecond', ascii_symbol='am/us^2', symbol='amµs⁻²') -attometers_per_nanosecond = NamedUnit(1e-09, Dimensions(length=1, time=-1), name='attometers_per_nanosecond', ascii_symbol='am/ns', symbol='amns⁻¹') -attometers_per_square_nanosecond = NamedUnit(1.0, Dimensions(length=1, time=-2), name='attometers_per_square_nanosecond', ascii_symbol='am/ns^2', symbol='amns⁻²') -attometers_per_picosecond = NamedUnit(1.0000000000000002e-06, Dimensions(length=1, time=-1), name='attometers_per_picosecond', ascii_symbol='am/ps', symbol='amps⁻¹') -attometers_per_square_picosecond = NamedUnit(1000000.0000000001, Dimensions(length=1, time=-2), name='attometers_per_square_picosecond', ascii_symbol='am/ps^2', symbol='amps⁻²') -attometers_per_femtosecond = NamedUnit(0.001, Dimensions(length=1, time=-1), name='attometers_per_femtosecond', ascii_symbol='am/fs', symbol='amfs⁻¹') -attometers_per_square_femtosecond = NamedUnit(1000000000000.0, Dimensions(length=1, time=-2), name='attometers_per_square_femtosecond', ascii_symbol='am/fs^2', symbol='amfs⁻²') -attometers_per_attosecond = NamedUnit(1.0, Dimensions(length=1, time=-1), name='attometers_per_attosecond', ascii_symbol='am/as', symbol='amas⁻¹') -attometers_per_square_attosecond = NamedUnit(1e+18, Dimensions(length=1, time=-2), name='attometers_per_square_attosecond', ascii_symbol='am/as^2', symbol='amas⁻²') -attometers_per_minute = NamedUnit(1.6666666666666668e-20, Dimensions(length=1, time=-1), name='attometers_per_minute', ascii_symbol='am/min', symbol='ammin⁻¹') -attometers_per_square_minute = NamedUnit(2.777777777777778e-22, Dimensions(length=1, time=-2), name='attometers_per_square_minute', ascii_symbol='am/min^2', symbol='ammin⁻²') -attometers_per_hour = NamedUnit(2.777777777777778e-22, Dimensions(length=1, time=-1), name='attometers_per_hour', ascii_symbol='am/h', symbol='amh⁻¹') -attometers_per_square_hour = NamedUnit(7.71604938271605e-26, Dimensions(length=1, time=-2), name='attometers_per_square_hour', ascii_symbol='am/h^2', symbol='amh⁻²') -attometers_per_day = NamedUnit(1.1574074074074075e-23, Dimensions(length=1, time=-1), name='attometers_per_day', ascii_symbol='am/d', symbol='amd⁻¹') -attometers_per_square_day = NamedUnit(1.3395919067215364e-28, Dimensions(length=1, time=-2), name='attometers_per_square_day', ascii_symbol='am/d^2', symbol='amd⁻²') -attometers_per_year = NamedUnit(3.1688738506811435e-26, Dimensions(length=1, time=-1), name='attometers_per_year', ascii_symbol='am/y', symbol='amy⁻¹') -attometers_per_square_year = NamedUnit(1.0041761481530737e-33, Dimensions(length=1, time=-2), name='attometers_per_square_year', ascii_symbol='am/y^2', symbol='amy⁻²') -decimeters_per_second = NamedUnit(0.1, Dimensions(length=1, time=-1), name='decimeters_per_second', ascii_symbol='dm/s', symbol='dms⁻¹') -decimeters_per_square_second = NamedUnit(0.1, Dimensions(length=1, time=-2), name='decimeters_per_square_second', ascii_symbol='dm/s^2', symbol='dms⁻²') -decimeters_per_millisecond = NamedUnit(100.0, Dimensions(length=1, time=-1), name='decimeters_per_millisecond', ascii_symbol='dm/ms', symbol='dmms⁻¹') -decimeters_per_square_millisecond = NamedUnit(100000.00000000001, Dimensions(length=1, time=-2), name='decimeters_per_square_millisecond', ascii_symbol='dm/ms^2', symbol='dmms⁻²') -decimeters_per_microsecond = NamedUnit(100000.00000000001, Dimensions(length=1, time=-1), name='decimeters_per_microsecond', ascii_symbol='dm/us', symbol='dmµs⁻¹') -decimeters_per_square_microsecond = NamedUnit(100000000000.0, Dimensions(length=1, time=-2), name='decimeters_per_square_microsecond', ascii_symbol='dm/us^2', symbol='dmµs⁻²') -decimeters_per_nanosecond = NamedUnit(100000000.0, Dimensions(length=1, time=-1), name='decimeters_per_nanosecond', ascii_symbol='dm/ns', symbol='dmns⁻¹') -decimeters_per_square_nanosecond = NamedUnit(1e+17, Dimensions(length=1, time=-2), name='decimeters_per_square_nanosecond', ascii_symbol='dm/ns^2', symbol='dmns⁻²') -decimeters_per_picosecond = NamedUnit(100000000000.0, Dimensions(length=1, time=-1), name='decimeters_per_picosecond', ascii_symbol='dm/ps', symbol='dmps⁻¹') -decimeters_per_square_picosecond = NamedUnit(1.0000000000000001e+23, Dimensions(length=1, time=-2), name='decimeters_per_square_picosecond', ascii_symbol='dm/ps^2', symbol='dmps⁻²') -decimeters_per_femtosecond = NamedUnit(100000000000000.0, Dimensions(length=1, time=-1), name='decimeters_per_femtosecond', ascii_symbol='dm/fs', symbol='dmfs⁻¹') -decimeters_per_square_femtosecond = NamedUnit(1e+29, Dimensions(length=1, time=-2), name='decimeters_per_square_femtosecond', ascii_symbol='dm/fs^2', symbol='dmfs⁻²') -decimeters_per_attosecond = NamedUnit(1e+17, Dimensions(length=1, time=-1), name='decimeters_per_attosecond', ascii_symbol='dm/as', symbol='dmas⁻¹') -decimeters_per_square_attosecond = NamedUnit(1e+35, Dimensions(length=1, time=-2), name='decimeters_per_square_attosecond', ascii_symbol='dm/as^2', symbol='dmas⁻²') -decimeters_per_minute = NamedUnit(0.0016666666666666668, Dimensions(length=1, time=-1), name='decimeters_per_minute', ascii_symbol='dm/min', symbol='dmmin⁻¹') -decimeters_per_square_minute = NamedUnit(2.777777777777778e-05, Dimensions(length=1, time=-2), name='decimeters_per_square_minute', ascii_symbol='dm/min^2', symbol='dmmin⁻²') -decimeters_per_hour = NamedUnit(2.777777777777778e-05, Dimensions(length=1, time=-1), name='decimeters_per_hour', ascii_symbol='dm/h', symbol='dmh⁻¹') -decimeters_per_square_hour = NamedUnit(7.71604938271605e-09, Dimensions(length=1, time=-2), name='decimeters_per_square_hour', ascii_symbol='dm/h^2', symbol='dmh⁻²') -decimeters_per_day = NamedUnit(1.1574074074074074e-06, Dimensions(length=1, time=-1), name='decimeters_per_day', ascii_symbol='dm/d', symbol='dmd⁻¹') -decimeters_per_square_day = NamedUnit(1.3395919067215364e-11, Dimensions(length=1, time=-2), name='decimeters_per_square_day', ascii_symbol='dm/d^2', symbol='dmd⁻²') -decimeters_per_year = NamedUnit(3.168873850681143e-09, Dimensions(length=1, time=-1), name='decimeters_per_year', ascii_symbol='dm/y', symbol='dmy⁻¹') -decimeters_per_square_year = NamedUnit(1.0041761481530736e-16, Dimensions(length=1, time=-2), name='decimeters_per_square_year', ascii_symbol='dm/y^2', symbol='dmy⁻²') -centimeters_per_second = NamedUnit(0.01, Dimensions(length=1, time=-1), name='centimeters_per_second', ascii_symbol='cm/s', symbol='cms⁻¹') -centimeters_per_square_second = NamedUnit(0.01, Dimensions(length=1, time=-2), name='centimeters_per_square_second', ascii_symbol='cm/s^2', symbol='cms⁻²') -centimeters_per_millisecond = NamedUnit(10.0, Dimensions(length=1, time=-1), name='centimeters_per_millisecond', ascii_symbol='cm/ms', symbol='cmms⁻¹') -centimeters_per_square_millisecond = NamedUnit(10000.0, Dimensions(length=1, time=-2), name='centimeters_per_square_millisecond', ascii_symbol='cm/ms^2', symbol='cmms⁻²') -centimeters_per_microsecond = NamedUnit(10000.0, Dimensions(length=1, time=-1), name='centimeters_per_microsecond', ascii_symbol='cm/us', symbol='cmµs⁻¹') -centimeters_per_square_microsecond = NamedUnit(10000000000.0, Dimensions(length=1, time=-2), name='centimeters_per_square_microsecond', ascii_symbol='cm/us^2', symbol='cmµs⁻²') -centimeters_per_nanosecond = NamedUnit(10000000.0, Dimensions(length=1, time=-1), name='centimeters_per_nanosecond', ascii_symbol='cm/ns', symbol='cmns⁻¹') -centimeters_per_square_nanosecond = NamedUnit(1e+16, Dimensions(length=1, time=-2), name='centimeters_per_square_nanosecond', ascii_symbol='cm/ns^2', symbol='cmns⁻²') -centimeters_per_picosecond = NamedUnit(10000000000.0, Dimensions(length=1, time=-1), name='centimeters_per_picosecond', ascii_symbol='cm/ps', symbol='cmps⁻¹') -centimeters_per_square_picosecond = NamedUnit(1e+22, Dimensions(length=1, time=-2), name='centimeters_per_square_picosecond', ascii_symbol='cm/ps^2', symbol='cmps⁻²') -centimeters_per_femtosecond = NamedUnit(10000000000000.0, Dimensions(length=1, time=-1), name='centimeters_per_femtosecond', ascii_symbol='cm/fs', symbol='cmfs⁻¹') -centimeters_per_square_femtosecond = NamedUnit(1e+28, Dimensions(length=1, time=-2), name='centimeters_per_square_femtosecond', ascii_symbol='cm/fs^2', symbol='cmfs⁻²') -centimeters_per_attosecond = NamedUnit(1e+16, Dimensions(length=1, time=-1), name='centimeters_per_attosecond', ascii_symbol='cm/as', symbol='cmas⁻¹') -centimeters_per_square_attosecond = NamedUnit(1e+34, Dimensions(length=1, time=-2), name='centimeters_per_square_attosecond', ascii_symbol='cm/as^2', symbol='cmas⁻²') -centimeters_per_minute = NamedUnit(0.00016666666666666666, Dimensions(length=1, time=-1), name='centimeters_per_minute', ascii_symbol='cm/min', symbol='cmmin⁻¹') -centimeters_per_square_minute = NamedUnit(2.777777777777778e-06, Dimensions(length=1, time=-2), name='centimeters_per_square_minute', ascii_symbol='cm/min^2', symbol='cmmin⁻²') -centimeters_per_hour = NamedUnit(2.777777777777778e-06, Dimensions(length=1, time=-1), name='centimeters_per_hour', ascii_symbol='cm/h', symbol='cmh⁻¹') -centimeters_per_square_hour = NamedUnit(7.71604938271605e-10, Dimensions(length=1, time=-2), name='centimeters_per_square_hour', ascii_symbol='cm/h^2', symbol='cmh⁻²') -centimeters_per_day = NamedUnit(1.1574074074074074e-07, Dimensions(length=1, time=-1), name='centimeters_per_day', ascii_symbol='cm/d', symbol='cmd⁻¹') -centimeters_per_square_day = NamedUnit(1.3395919067215364e-12, Dimensions(length=1, time=-2), name='centimeters_per_square_day', ascii_symbol='cm/d^2', symbol='cmd⁻²') -centimeters_per_year = NamedUnit(3.168873850681143e-10, Dimensions(length=1, time=-1), name='centimeters_per_year', ascii_symbol='cm/y', symbol='cmy⁻¹') -centimeters_per_square_year = NamedUnit(1.0041761481530737e-17, Dimensions(length=1, time=-2), name='centimeters_per_square_year', ascii_symbol='cm/y^2', symbol='cmy⁻²') -angstroms_per_second = NamedUnit(1e-10, Dimensions(length=1, time=-1), name='angstroms_per_second', ascii_symbol='Ang/s', symbol='Ås⁻¹') -angstroms_per_square_second = NamedUnit(1e-10, Dimensions(length=1, time=-2), name='angstroms_per_square_second', ascii_symbol='Ang/s^2', symbol='Ås⁻²') -angstroms_per_millisecond = NamedUnit(1e-07, Dimensions(length=1, time=-1), name='angstroms_per_millisecond', ascii_symbol='Ang/ms', symbol='Åms⁻¹') -angstroms_per_square_millisecond = NamedUnit(0.0001, Dimensions(length=1, time=-2), name='angstroms_per_square_millisecond', ascii_symbol='Ang/ms^2', symbol='Åms⁻²') -angstroms_per_microsecond = NamedUnit(0.0001, Dimensions(length=1, time=-1), name='angstroms_per_microsecond', ascii_symbol='Ang/us', symbol='ŵs⁻¹') -angstroms_per_square_microsecond = NamedUnit(100.0, Dimensions(length=1, time=-2), name='angstroms_per_square_microsecond', ascii_symbol='Ang/us^2', symbol='ŵs⁻²') -angstroms_per_nanosecond = NamedUnit(0.09999999999999999, Dimensions(length=1, time=-1), name='angstroms_per_nanosecond', ascii_symbol='Ang/ns', symbol='Åns⁻¹') -angstroms_per_square_nanosecond = NamedUnit(100000000.0, Dimensions(length=1, time=-2), name='angstroms_per_square_nanosecond', ascii_symbol='Ang/ns^2', symbol='Åns⁻²') -angstroms_per_picosecond = NamedUnit(100.0, Dimensions(length=1, time=-1), name='angstroms_per_picosecond', ascii_symbol='Ang/ps', symbol='Åps⁻¹') -angstroms_per_square_picosecond = NamedUnit(100000000000000.02, Dimensions(length=1, time=-2), name='angstroms_per_square_picosecond', ascii_symbol='Ang/ps^2', symbol='Åps⁻²') -angstroms_per_femtosecond = NamedUnit(100000.0, Dimensions(length=1, time=-1), name='angstroms_per_femtosecond', ascii_symbol='Ang/fs', symbol='Åfs⁻¹') -angstroms_per_square_femtosecond = NamedUnit(1e+20, Dimensions(length=1, time=-2), name='angstroms_per_square_femtosecond', ascii_symbol='Ang/fs^2', symbol='Åfs⁻²') -angstroms_per_attosecond = NamedUnit(100000000.0, Dimensions(length=1, time=-1), name='angstroms_per_attosecond', ascii_symbol='Ang/as', symbol='Åas⁻¹') -angstroms_per_square_attosecond = NamedUnit(9.999999999999999e+25, Dimensions(length=1, time=-2), name='angstroms_per_square_attosecond', ascii_symbol='Ang/as^2', symbol='Åas⁻²') -angstroms_per_minute = NamedUnit(1.6666666666666668e-12, Dimensions(length=1, time=-1), name='angstroms_per_minute', ascii_symbol='Ang/min', symbol='Åmin⁻¹') -angstroms_per_square_minute = NamedUnit(2.7777777777777778e-14, Dimensions(length=1, time=-2), name='angstroms_per_square_minute', ascii_symbol='Ang/min^2', symbol='Åmin⁻²') -angstroms_per_hour = NamedUnit(2.7777777777777778e-14, Dimensions(length=1, time=-1), name='angstroms_per_hour', ascii_symbol='Ang/h', symbol='Åh⁻¹') -angstroms_per_square_hour = NamedUnit(7.71604938271605e-18, Dimensions(length=1, time=-2), name='angstroms_per_square_hour', ascii_symbol='Ang/h^2', symbol='Åh⁻²') -angstroms_per_day = NamedUnit(1.1574074074074075e-15, Dimensions(length=1, time=-1), name='angstroms_per_day', ascii_symbol='Ang/d', symbol='Åd⁻¹') -angstroms_per_square_day = NamedUnit(1.3395919067215364e-20, Dimensions(length=1, time=-2), name='angstroms_per_square_day', ascii_symbol='Ang/d^2', symbol='Åd⁻²') -angstroms_per_year = NamedUnit(3.168873850681143e-18, Dimensions(length=1, time=-1), name='angstroms_per_year', ascii_symbol='Ang/y', symbol='Åy⁻¹') -angstroms_per_square_year = NamedUnit(1.0041761481530736e-25, Dimensions(length=1, time=-2), name='angstroms_per_square_year', ascii_symbol='Ang/y^2', symbol='Åy⁻²') -microns_per_second = NamedUnit(1e-06, Dimensions(length=1, time=-1), name='microns_per_second', ascii_symbol='micron/s', symbol='microns⁻¹') -microns_per_square_second = NamedUnit(1e-06, Dimensions(length=1, time=-2), name='microns_per_square_second', ascii_symbol='micron/s^2', symbol='microns⁻²') -microns_per_millisecond = NamedUnit(0.001, Dimensions(length=1, time=-1), name='microns_per_millisecond', ascii_symbol='micron/ms', symbol='micronms⁻¹') -microns_per_square_millisecond = NamedUnit(1.0, Dimensions(length=1, time=-2), name='microns_per_square_millisecond', ascii_symbol='micron/ms^2', symbol='micronms⁻²') -microns_per_microsecond = NamedUnit(1.0, Dimensions(length=1, time=-1), name='microns_per_microsecond', ascii_symbol='micron/us', symbol='micronµs⁻¹') -microns_per_square_microsecond = NamedUnit(1000000.0, Dimensions(length=1, time=-2), name='microns_per_square_microsecond', ascii_symbol='micron/us^2', symbol='micronµs⁻²') -microns_per_nanosecond = NamedUnit(999.9999999999999, Dimensions(length=1, time=-1), name='microns_per_nanosecond', ascii_symbol='micron/ns', symbol='micronns⁻¹') -microns_per_square_nanosecond = NamedUnit(999999999999.9999, Dimensions(length=1, time=-2), name='microns_per_square_nanosecond', ascii_symbol='micron/ns^2', symbol='micronns⁻²') -microns_per_picosecond = NamedUnit(1000000.0, Dimensions(length=1, time=-1), name='microns_per_picosecond', ascii_symbol='micron/ps', symbol='micronps⁻¹') -microns_per_square_picosecond = NamedUnit(1e+18, Dimensions(length=1, time=-2), name='microns_per_square_picosecond', ascii_symbol='micron/ps^2', symbol='micronps⁻²') -microns_per_femtosecond = NamedUnit(999999999.9999999, Dimensions(length=1, time=-1), name='microns_per_femtosecond', ascii_symbol='micron/fs', symbol='micronfs⁻¹') -microns_per_square_femtosecond = NamedUnit(9.999999999999998e+23, Dimensions(length=1, time=-2), name='microns_per_square_femtosecond', ascii_symbol='micron/fs^2', symbol='micronfs⁻²') -microns_per_attosecond = NamedUnit(999999999999.9999, Dimensions(length=1, time=-1), name='microns_per_attosecond', ascii_symbol='micron/as', symbol='micronas⁻¹') -microns_per_square_attosecond = NamedUnit(9.999999999999999e+29, Dimensions(length=1, time=-2), name='microns_per_square_attosecond', ascii_symbol='micron/as^2', symbol='micronas⁻²') -microns_per_minute = NamedUnit(1.6666666666666667e-08, Dimensions(length=1, time=-1), name='microns_per_minute', ascii_symbol='micron/min', symbol='micronmin⁻¹') -microns_per_square_minute = NamedUnit(2.7777777777777777e-10, Dimensions(length=1, time=-2), name='microns_per_square_minute', ascii_symbol='micron/min^2', symbol='micronmin⁻²') -microns_per_hour = NamedUnit(2.7777777777777777e-10, Dimensions(length=1, time=-1), name='microns_per_hour', ascii_symbol='micron/h', symbol='micronh⁻¹') -microns_per_square_hour = NamedUnit(7.71604938271605e-14, Dimensions(length=1, time=-2), name='microns_per_square_hour', ascii_symbol='micron/h^2', symbol='micronh⁻²') -microns_per_day = NamedUnit(1.1574074074074074e-11, Dimensions(length=1, time=-1), name='microns_per_day', ascii_symbol='micron/d', symbol='micrond⁻¹') -microns_per_square_day = NamedUnit(1.3395919067215363e-16, Dimensions(length=1, time=-2), name='microns_per_square_day', ascii_symbol='micron/d^2', symbol='micrond⁻²') -microns_per_year = NamedUnit(3.168873850681143e-14, Dimensions(length=1, time=-1), name='microns_per_year', ascii_symbol='micron/y', symbol='microny⁻¹') -microns_per_square_year = NamedUnit(1.0041761481530736e-21, Dimensions(length=1, time=-2), name='microns_per_square_year', ascii_symbol='micron/y^2', symbol='microny⁻²') -miles_per_second = NamedUnit(1609.344, Dimensions(length=1, time=-1), name='miles_per_second', ascii_symbol='miles/s', symbol='miless⁻¹') -miles_per_square_second = NamedUnit(1609.344, Dimensions(length=1, time=-2), name='miles_per_square_second', ascii_symbol='miles/s^2', symbol='miless⁻²') -miles_per_millisecond = NamedUnit(1609344.0, Dimensions(length=1, time=-1), name='miles_per_millisecond', ascii_symbol='miles/ms', symbol='milesms⁻¹') -miles_per_square_millisecond = NamedUnit(1609344000.0000002, Dimensions(length=1, time=-2), name='miles_per_square_millisecond', ascii_symbol='miles/ms^2', symbol='milesms⁻²') -miles_per_microsecond = NamedUnit(1609344000.0000002, Dimensions(length=1, time=-1), name='miles_per_microsecond', ascii_symbol='miles/us', symbol='milesµs⁻¹') -miles_per_square_microsecond = NamedUnit(1609344000000000.0, Dimensions(length=1, time=-2), name='miles_per_square_microsecond', ascii_symbol='miles/us^2', symbol='milesµs⁻²') -miles_per_nanosecond = NamedUnit(1609344000000.0, Dimensions(length=1, time=-1), name='miles_per_nanosecond', ascii_symbol='miles/ns', symbol='milesns⁻¹') -miles_per_square_nanosecond = NamedUnit(1.609344e+21, Dimensions(length=1, time=-2), name='miles_per_square_nanosecond', ascii_symbol='miles/ns^2', symbol='milesns⁻²') -miles_per_picosecond = NamedUnit(1609344000000000.0, Dimensions(length=1, time=-1), name='miles_per_picosecond', ascii_symbol='miles/ps', symbol='milesps⁻¹') -miles_per_square_picosecond = NamedUnit(1.609344e+27, Dimensions(length=1, time=-2), name='miles_per_square_picosecond', ascii_symbol='miles/ps^2', symbol='milesps⁻²') -miles_per_femtosecond = NamedUnit(1.609344e+18, Dimensions(length=1, time=-1), name='miles_per_femtosecond', ascii_symbol='miles/fs', symbol='milesfs⁻¹') -miles_per_square_femtosecond = NamedUnit(1.609344e+33, Dimensions(length=1, time=-2), name='miles_per_square_femtosecond', ascii_symbol='miles/fs^2', symbol='milesfs⁻²') -miles_per_attosecond = NamedUnit(1.609344e+21, Dimensions(length=1, time=-1), name='miles_per_attosecond', ascii_symbol='miles/as', symbol='milesas⁻¹') -miles_per_square_attosecond = NamedUnit(1.609344e+39, Dimensions(length=1, time=-2), name='miles_per_square_attosecond', ascii_symbol='miles/as^2', symbol='milesas⁻²') -miles_per_minute = NamedUnit(26.822400000000002, Dimensions(length=1, time=-1), name='miles_per_minute', ascii_symbol='miles/min', symbol='milesmin⁻¹') -miles_per_square_minute = NamedUnit(0.44704, Dimensions(length=1, time=-2), name='miles_per_square_minute', ascii_symbol='miles/min^2', symbol='milesmin⁻²') -miles_per_hour = NamedUnit(0.44704, Dimensions(length=1, time=-1), name='miles_per_hour', ascii_symbol='miles/h', symbol='milesh⁻¹') -miles_per_square_hour = NamedUnit(0.00012417777777777778, Dimensions(length=1, time=-2), name='miles_per_square_hour', ascii_symbol='miles/h^2', symbol='milesh⁻²') -miles_per_day = NamedUnit(0.018626666666666666, Dimensions(length=1, time=-1), name='miles_per_day', ascii_symbol='miles/d', symbol='milesd⁻¹') -miles_per_square_day = NamedUnit(2.1558641975308643e-07, Dimensions(length=1, time=-2), name='miles_per_square_day', ascii_symbol='miles/d^2', symbol='milesd⁻²') -miles_per_year = NamedUnit(5.099808118350594e-05, Dimensions(length=1, time=-1), name='miles_per_year', ascii_symbol='miles/y', symbol='milesy⁻¹') -miles_per_square_year = NamedUnit(1.61606485897326e-12, Dimensions(length=1, time=-2), name='miles_per_square_year', ascii_symbol='miles/y^2', symbol='milesy⁻²') -yards_per_second = NamedUnit(0.9144000000000001, Dimensions(length=1, time=-1), name='yards_per_second', ascii_symbol='yrd/s', symbol='yrds⁻¹') -yards_per_square_second = NamedUnit(0.9144000000000001, Dimensions(length=1, time=-2), name='yards_per_square_second', ascii_symbol='yrd/s^2', symbol='yrds⁻²') -yards_per_millisecond = NamedUnit(914.4000000000001, Dimensions(length=1, time=-1), name='yards_per_millisecond', ascii_symbol='yrd/ms', symbol='yrdms⁻¹') -yards_per_square_millisecond = NamedUnit(914400.0000000001, Dimensions(length=1, time=-2), name='yards_per_square_millisecond', ascii_symbol='yrd/ms^2', symbol='yrdms⁻²') -yards_per_microsecond = NamedUnit(914400.0000000001, Dimensions(length=1, time=-1), name='yards_per_microsecond', ascii_symbol='yrd/us', symbol='yrdµs⁻¹') -yards_per_square_microsecond = NamedUnit(914400000000.0001, Dimensions(length=1, time=-2), name='yards_per_square_microsecond', ascii_symbol='yrd/us^2', symbol='yrdµs⁻²') -yards_per_nanosecond = NamedUnit(914400000.0, Dimensions(length=1, time=-1), name='yards_per_nanosecond', ascii_symbol='yrd/ns', symbol='yrdns⁻¹') -yards_per_square_nanosecond = NamedUnit(9.144e+17, Dimensions(length=1, time=-2), name='yards_per_square_nanosecond', ascii_symbol='yrd/ns^2', symbol='yrdns⁻²') -yards_per_picosecond = NamedUnit(914400000000.0001, Dimensions(length=1, time=-1), name='yards_per_picosecond', ascii_symbol='yrd/ps', symbol='yrdps⁻¹') -yards_per_square_picosecond = NamedUnit(9.144000000000002e+23, Dimensions(length=1, time=-2), name='yards_per_square_picosecond', ascii_symbol='yrd/ps^2', symbol='yrdps⁻²') -yards_per_femtosecond = NamedUnit(914400000000000.0, Dimensions(length=1, time=-1), name='yards_per_femtosecond', ascii_symbol='yrd/fs', symbol='yrdfs⁻¹') -yards_per_square_femtosecond = NamedUnit(9.144e+29, Dimensions(length=1, time=-2), name='yards_per_square_femtosecond', ascii_symbol='yrd/fs^2', symbol='yrdfs⁻²') -yards_per_attosecond = NamedUnit(9.144e+17, Dimensions(length=1, time=-1), name='yards_per_attosecond', ascii_symbol='yrd/as', symbol='yrdas⁻¹') -yards_per_square_attosecond = NamedUnit(9.144e+35, Dimensions(length=1, time=-2), name='yards_per_square_attosecond', ascii_symbol='yrd/as^2', symbol='yrdas⁻²') -yards_per_minute = NamedUnit(0.015240000000000002, Dimensions(length=1, time=-1), name='yards_per_minute', ascii_symbol='yrd/min', symbol='yrdmin⁻¹') -yards_per_square_minute = NamedUnit(0.00025400000000000005, Dimensions(length=1, time=-2), name='yards_per_square_minute', ascii_symbol='yrd/min^2', symbol='yrdmin⁻²') -yards_per_hour = NamedUnit(0.00025400000000000005, Dimensions(length=1, time=-1), name='yards_per_hour', ascii_symbol='yrd/h', symbol='yrdh⁻¹') -yards_per_square_hour = NamedUnit(7.055555555555557e-08, Dimensions(length=1, time=-2), name='yards_per_square_hour', ascii_symbol='yrd/h^2', symbol='yrdh⁻²') -yards_per_day = NamedUnit(1.0583333333333334e-05, Dimensions(length=1, time=-1), name='yards_per_day', ascii_symbol='yrd/d', symbol='yrdd⁻¹') -yards_per_square_day = NamedUnit(1.224922839506173e-10, Dimensions(length=1, time=-2), name='yards_per_square_day', ascii_symbol='yrd/d^2', symbol='yrdd⁻²') -yards_per_year = NamedUnit(2.8976182490628376e-08, Dimensions(length=1, time=-1), name='yards_per_year', ascii_symbol='yrd/y', symbol='yrdy⁻¹') -yards_per_square_year = NamedUnit(9.182186698711705e-16, Dimensions(length=1, time=-2), name='yards_per_square_year', ascii_symbol='yrd/y^2', symbol='yrdy⁻²') -feet_per_second = NamedUnit(0.3048, Dimensions(length=1, time=-1), name='feet_per_second', ascii_symbol='ft/s', symbol='fts⁻¹') -feet_per_square_second = NamedUnit(0.3048, Dimensions(length=1, time=-2), name='feet_per_square_second', ascii_symbol='ft/s^2', symbol='fts⁻²') -feet_per_millisecond = NamedUnit(304.8, Dimensions(length=1, time=-1), name='feet_per_millisecond', ascii_symbol='ft/ms', symbol='ftms⁻¹') -feet_per_square_millisecond = NamedUnit(304800.00000000006, Dimensions(length=1, time=-2), name='feet_per_square_millisecond', ascii_symbol='ft/ms^2', symbol='ftms⁻²') -feet_per_microsecond = NamedUnit(304800.00000000006, Dimensions(length=1, time=-1), name='feet_per_microsecond', ascii_symbol='ft/us', symbol='ftµs⁻¹') -feet_per_square_microsecond = NamedUnit(304800000000.0, Dimensions(length=1, time=-2), name='feet_per_square_microsecond', ascii_symbol='ft/us^2', symbol='ftµs⁻²') -feet_per_nanosecond = NamedUnit(304800000.0, Dimensions(length=1, time=-1), name='feet_per_nanosecond', ascii_symbol='ft/ns', symbol='ftns⁻¹') -feet_per_square_nanosecond = NamedUnit(3.048e+17, Dimensions(length=1, time=-2), name='feet_per_square_nanosecond', ascii_symbol='ft/ns^2', symbol='ftns⁻²') -feet_per_picosecond = NamedUnit(304800000000.0, Dimensions(length=1, time=-1), name='feet_per_picosecond', ascii_symbol='ft/ps', symbol='ftps⁻¹') -feet_per_square_picosecond = NamedUnit(3.048e+23, Dimensions(length=1, time=-2), name='feet_per_square_picosecond', ascii_symbol='ft/ps^2', symbol='ftps⁻²') -feet_per_femtosecond = NamedUnit(304800000000000.0, Dimensions(length=1, time=-1), name='feet_per_femtosecond', ascii_symbol='ft/fs', symbol='ftfs⁻¹') -feet_per_square_femtosecond = NamedUnit(3.048e+29, Dimensions(length=1, time=-2), name='feet_per_square_femtosecond', ascii_symbol='ft/fs^2', symbol='ftfs⁻²') -feet_per_attosecond = NamedUnit(3.048e+17, Dimensions(length=1, time=-1), name='feet_per_attosecond', ascii_symbol='ft/as', symbol='ftas⁻¹') -feet_per_square_attosecond = NamedUnit(3.0479999999999997e+35, Dimensions(length=1, time=-2), name='feet_per_square_attosecond', ascii_symbol='ft/as^2', symbol='ftas⁻²') -feet_per_minute = NamedUnit(0.00508, Dimensions(length=1, time=-1), name='feet_per_minute', ascii_symbol='ft/min', symbol='ftmin⁻¹') -feet_per_square_minute = NamedUnit(8.466666666666667e-05, Dimensions(length=1, time=-2), name='feet_per_square_minute', ascii_symbol='ft/min^2', symbol='ftmin⁻²') -feet_per_hour = NamedUnit(8.466666666666667e-05, Dimensions(length=1, time=-1), name='feet_per_hour', ascii_symbol='ft/h', symbol='fth⁻¹') -feet_per_square_hour = NamedUnit(2.351851851851852e-08, Dimensions(length=1, time=-2), name='feet_per_square_hour', ascii_symbol='ft/h^2', symbol='fth⁻²') -feet_per_day = NamedUnit(3.527777777777778e-06, Dimensions(length=1, time=-1), name='feet_per_day', ascii_symbol='ft/d', symbol='ftd⁻¹') -feet_per_square_day = NamedUnit(4.083076131687243e-11, Dimensions(length=1, time=-2), name='feet_per_square_day', ascii_symbol='ft/d^2', symbol='ftd⁻²') -feet_per_year = NamedUnit(9.658727496876124e-09, Dimensions(length=1, time=-1), name='feet_per_year', ascii_symbol='ft/y', symbol='fty⁻¹') -feet_per_square_year = NamedUnit(3.060728899570568e-16, Dimensions(length=1, time=-2), name='feet_per_square_year', ascii_symbol='ft/y^2', symbol='fty⁻²') -inches_per_second = NamedUnit(0.0254, Dimensions(length=1, time=-1), name='inches_per_second', ascii_symbol='in/s', symbol='ins⁻¹') -inches_per_square_second = NamedUnit(0.0254, Dimensions(length=1, time=-2), name='inches_per_square_second', ascii_symbol='in/s^2', symbol='ins⁻²') -inches_per_millisecond = NamedUnit(25.4, Dimensions(length=1, time=-1), name='inches_per_millisecond', ascii_symbol='in/ms', symbol='inms⁻¹') -inches_per_square_millisecond = NamedUnit(25400.0, Dimensions(length=1, time=-2), name='inches_per_square_millisecond', ascii_symbol='in/ms^2', symbol='inms⁻²') -inches_per_microsecond = NamedUnit(25400.0, Dimensions(length=1, time=-1), name='inches_per_microsecond', ascii_symbol='in/us', symbol='inµs⁻¹') -inches_per_square_microsecond = NamedUnit(25400000000.0, Dimensions(length=1, time=-2), name='inches_per_square_microsecond', ascii_symbol='in/us^2', symbol='inµs⁻²') -inches_per_nanosecond = NamedUnit(25399999.999999996, Dimensions(length=1, time=-1), name='inches_per_nanosecond', ascii_symbol='in/ns', symbol='inns⁻¹') -inches_per_square_nanosecond = NamedUnit(2.5399999999999996e+16, Dimensions(length=1, time=-2), name='inches_per_square_nanosecond', ascii_symbol='in/ns^2', symbol='inns⁻²') -inches_per_picosecond = NamedUnit(25400000000.0, Dimensions(length=1, time=-1), name='inches_per_picosecond', ascii_symbol='in/ps', symbol='inps⁻¹') -inches_per_square_picosecond = NamedUnit(2.54e+22, Dimensions(length=1, time=-2), name='inches_per_square_picosecond', ascii_symbol='in/ps^2', symbol='inps⁻²') -inches_per_femtosecond = NamedUnit(25399999999999.996, Dimensions(length=1, time=-1), name='inches_per_femtosecond', ascii_symbol='in/fs', symbol='infs⁻¹') -inches_per_square_femtosecond = NamedUnit(2.54e+28, Dimensions(length=1, time=-2), name='inches_per_square_femtosecond', ascii_symbol='in/fs^2', symbol='infs⁻²') -inches_per_attosecond = NamedUnit(2.5399999999999996e+16, Dimensions(length=1, time=-1), name='inches_per_attosecond', ascii_symbol='in/as', symbol='inas⁻¹') -inches_per_square_attosecond = NamedUnit(2.5399999999999998e+34, Dimensions(length=1, time=-2), name='inches_per_square_attosecond', ascii_symbol='in/as^2', symbol='inas⁻²') -inches_per_minute = NamedUnit(0.00042333333333333334, Dimensions(length=1, time=-1), name='inches_per_minute', ascii_symbol='in/min', symbol='inmin⁻¹') -inches_per_square_minute = NamedUnit(7.055555555555555e-06, Dimensions(length=1, time=-2), name='inches_per_square_minute', ascii_symbol='in/min^2', symbol='inmin⁻²') -inches_per_hour = NamedUnit(7.055555555555555e-06, Dimensions(length=1, time=-1), name='inches_per_hour', ascii_symbol='in/h', symbol='inh⁻¹') -inches_per_square_hour = NamedUnit(1.9598765432098764e-09, Dimensions(length=1, time=-2), name='inches_per_square_hour', ascii_symbol='in/h^2', symbol='inh⁻²') -inches_per_day = NamedUnit(2.939814814814815e-07, Dimensions(length=1, time=-1), name='inches_per_day', ascii_symbol='in/d', symbol='ind⁻¹') -inches_per_square_day = NamedUnit(3.402563443072702e-12, Dimensions(length=1, time=-2), name='inches_per_square_day', ascii_symbol='in/d^2', symbol='ind⁻²') -inches_per_year = NamedUnit(8.048939580730103e-10, Dimensions(length=1, time=-1), name='inches_per_year', ascii_symbol='in/y', symbol='iny⁻¹') -inches_per_square_year = NamedUnit(2.550607416308807e-17, Dimensions(length=1, time=-2), name='inches_per_square_year', ascii_symbol='in/y^2', symbol='iny⁻²') -grams_per_cubic_meter = NamedUnit(0.001, Dimensions(length=-3, mass=1), name='grams_per_cubic_meter', ascii_symbol='g m^-3', symbol='gm⁻³') -exagrams_per_cubic_meter = NamedUnit(1000000000000000.0, Dimensions(length=-3, mass=1), name='exagrams_per_cubic_meter', ascii_symbol='Eg m^-3', symbol='Egm⁻³') -petagrams_per_cubic_meter = NamedUnit(1000000000000.0, Dimensions(length=-3, mass=1), name='petagrams_per_cubic_meter', ascii_symbol='Pg m^-3', symbol='Pgm⁻³') -teragrams_per_cubic_meter = NamedUnit(1000000000.0, Dimensions(length=-3, mass=1), name='teragrams_per_cubic_meter', ascii_symbol='Tg m^-3', symbol='Tgm⁻³') -gigagrams_per_cubic_meter = NamedUnit(1000000.0, Dimensions(length=-3, mass=1), name='gigagrams_per_cubic_meter', ascii_symbol='Gg m^-3', symbol='Ggm⁻³') -megagrams_per_cubic_meter = NamedUnit(1000.0, Dimensions(length=-3, mass=1), name='megagrams_per_cubic_meter', ascii_symbol='Mg m^-3', symbol='Mgm⁻³') -kilograms_per_cubic_meter = NamedUnit(1.0, Dimensions(length=-3, mass=1), name='kilograms_per_cubic_meter', ascii_symbol='kg m^-3', symbol='kgm⁻³') -milligrams_per_cubic_meter = NamedUnit(1e-06, Dimensions(length=-3, mass=1), name='milligrams_per_cubic_meter', ascii_symbol='mg m^-3', symbol='mgm⁻³') -micrograms_per_cubic_meter = NamedUnit(1e-09, Dimensions(length=-3, mass=1), name='micrograms_per_cubic_meter', ascii_symbol='ug m^-3', symbol='µgm⁻³') -nanograms_per_cubic_meter = NamedUnit(1.0000000000000002e-12, Dimensions(length=-3, mass=1), name='nanograms_per_cubic_meter', ascii_symbol='ng m^-3', symbol='ngm⁻³') -picograms_per_cubic_meter = NamedUnit(1e-15, Dimensions(length=-3, mass=1), name='picograms_per_cubic_meter', ascii_symbol='pg m^-3', symbol='pgm⁻³') -femtograms_per_cubic_meter = NamedUnit(1e-18, Dimensions(length=-3, mass=1), name='femtograms_per_cubic_meter', ascii_symbol='fg m^-3', symbol='fgm⁻³') -attograms_per_cubic_meter = NamedUnit(1.0000000000000001e-21, Dimensions(length=-3, mass=1), name='attograms_per_cubic_meter', ascii_symbol='ag m^-3', symbol='agm⁻³') -atomic_mass_units_per_cubic_meter = NamedUnit(1.660538921e-27, Dimensions(length=-3, mass=1), name='atomic_mass_units_per_cubic_meter', ascii_symbol='au m^-3', symbol='aum⁻³') -pounds_per_cubic_meter = NamedUnit(0.45359237, Dimensions(length=-3, mass=1), name='pounds_per_cubic_meter', ascii_symbol='lb m^-3', symbol='lbm⁻³') -ounces_per_cubic_meter = NamedUnit(0.028349523125, Dimensions(length=-3, mass=1), name='ounces_per_cubic_meter', ascii_symbol='oz m^-3', symbol='ozm⁻³') -grams_per_cubic_exameter = NamedUnit(1e-57, Dimensions(length=-3, mass=1), name='grams_per_cubic_exameter', ascii_symbol='g Em^-3', symbol='gEm⁻³') -exagrams_per_cubic_exameter = NamedUnit(1e-39, Dimensions(length=-3, mass=1), name='exagrams_per_cubic_exameter', ascii_symbol='Eg Em^-3', symbol='EgEm⁻³') -petagrams_per_cubic_exameter = NamedUnit(9.999999999999999e-43, Dimensions(length=-3, mass=1), name='petagrams_per_cubic_exameter', ascii_symbol='Pg Em^-3', symbol='PgEm⁻³') -teragrams_per_cubic_exameter = NamedUnit(1e-45, Dimensions(length=-3, mass=1), name='teragrams_per_cubic_exameter', ascii_symbol='Tg Em^-3', symbol='TgEm⁻³') -gigagrams_per_cubic_exameter = NamedUnit(1e-48, Dimensions(length=-3, mass=1), name='gigagrams_per_cubic_exameter', ascii_symbol='Gg Em^-3', symbol='GgEm⁻³') -megagrams_per_cubic_exameter = NamedUnit(9.999999999999999e-52, Dimensions(length=-3, mass=1), name='megagrams_per_cubic_exameter', ascii_symbol='Mg Em^-3', symbol='MgEm⁻³') -kilograms_per_cubic_exameter = NamedUnit(9.999999999999999e-55, Dimensions(length=-3, mass=1), name='kilograms_per_cubic_exameter', ascii_symbol='kg Em^-3', symbol='kgEm⁻³') -milligrams_per_cubic_exameter = NamedUnit(9.999999999999998e-61, Dimensions(length=-3, mass=1), name='milligrams_per_cubic_exameter', ascii_symbol='mg Em^-3', symbol='mgEm⁻³') -micrograms_per_cubic_exameter = NamedUnit(9.999999999999999e-64, Dimensions(length=-3, mass=1), name='micrograms_per_cubic_exameter', ascii_symbol='ug Em^-3', symbol='µgEm⁻³') -nanograms_per_cubic_exameter = NamedUnit(1.0000000000000001e-66, Dimensions(length=-3, mass=1), name='nanograms_per_cubic_exameter', ascii_symbol='ng Em^-3', symbol='ngEm⁻³') -picograms_per_cubic_exameter = NamedUnit(1e-69, Dimensions(length=-3, mass=1), name='picograms_per_cubic_exameter', ascii_symbol='pg Em^-3', symbol='pgEm⁻³') -femtograms_per_cubic_exameter = NamedUnit(1e-72, Dimensions(length=-3, mass=1), name='femtograms_per_cubic_exameter', ascii_symbol='fg Em^-3', symbol='fgEm⁻³') -attograms_per_cubic_exameter = NamedUnit(1e-75, Dimensions(length=-3, mass=1), name='attograms_per_cubic_exameter', ascii_symbol='ag Em^-3', symbol='agEm⁻³') -atomic_mass_units_per_cubic_exameter = NamedUnit(1.6605389209999996e-81, Dimensions(length=-3, mass=1), name='atomic_mass_units_per_cubic_exameter', ascii_symbol='au Em^-3', symbol='auEm⁻³') -pounds_per_cubic_exameter = NamedUnit(4.5359237e-55, Dimensions(length=-3, mass=1), name='pounds_per_cubic_exameter', ascii_symbol='lb Em^-3', symbol='lbEm⁻³') -ounces_per_cubic_exameter = NamedUnit(2.8349523125e-56, Dimensions(length=-3, mass=1), name='ounces_per_cubic_exameter', ascii_symbol='oz Em^-3', symbol='ozEm⁻³') -grams_per_cubic_petameter = NamedUnit(1.0000000000000001e-48, Dimensions(length=-3, mass=1), name='grams_per_cubic_petameter', ascii_symbol='g Pm^-3', symbol='gPm⁻³') -exagrams_per_cubic_petameter = NamedUnit(1e-30, Dimensions(length=-3, mass=1), name='exagrams_per_cubic_petameter', ascii_symbol='Eg Pm^-3', symbol='EgPm⁻³') -petagrams_per_cubic_petameter = NamedUnit(1e-33, Dimensions(length=-3, mass=1), name='petagrams_per_cubic_petameter', ascii_symbol='Pg Pm^-3', symbol='PgPm⁻³') -teragrams_per_cubic_petameter = NamedUnit(1.0000000000000001e-36, Dimensions(length=-3, mass=1), name='teragrams_per_cubic_petameter', ascii_symbol='Tg Pm^-3', symbol='TgPm⁻³') -gigagrams_per_cubic_petameter = NamedUnit(1.0000000000000001e-39, Dimensions(length=-3, mass=1), name='gigagrams_per_cubic_petameter', ascii_symbol='Gg Pm^-3', symbol='GgPm⁻³') -megagrams_per_cubic_petameter = NamedUnit(1e-42, Dimensions(length=-3, mass=1), name='megagrams_per_cubic_petameter', ascii_symbol='Mg Pm^-3', symbol='MgPm⁻³') -kilograms_per_cubic_petameter = NamedUnit(1.0000000000000001e-45, Dimensions(length=-3, mass=1), name='kilograms_per_cubic_petameter', ascii_symbol='kg Pm^-3', symbol='kgPm⁻³') -milligrams_per_cubic_petameter = NamedUnit(1e-51, Dimensions(length=-3, mass=1), name='milligrams_per_cubic_petameter', ascii_symbol='mg Pm^-3', symbol='mgPm⁻³') -micrograms_per_cubic_petameter = NamedUnit(1.0000000000000002e-54, Dimensions(length=-3, mass=1), name='micrograms_per_cubic_petameter', ascii_symbol='ug Pm^-3', symbol='µgPm⁻³') -nanograms_per_cubic_petameter = NamedUnit(1.0000000000000002e-57, Dimensions(length=-3, mass=1), name='nanograms_per_cubic_petameter', ascii_symbol='ng Pm^-3', symbol='ngPm⁻³') -picograms_per_cubic_petameter = NamedUnit(1.0000000000000001e-60, Dimensions(length=-3, mass=1), name='picograms_per_cubic_petameter', ascii_symbol='pg Pm^-3', symbol='pgPm⁻³') -femtograms_per_cubic_petameter = NamedUnit(1.0000000000000002e-63, Dimensions(length=-3, mass=1), name='femtograms_per_cubic_petameter', ascii_symbol='fg Pm^-3', symbol='fgPm⁻³') -attograms_per_cubic_petameter = NamedUnit(1.0000000000000001e-66, Dimensions(length=-3, mass=1), name='attograms_per_cubic_petameter', ascii_symbol='ag Pm^-3', symbol='agPm⁻³') -atomic_mass_units_per_cubic_petameter = NamedUnit(1.660538921e-72, Dimensions(length=-3, mass=1), name='atomic_mass_units_per_cubic_petameter', ascii_symbol='au Pm^-3', symbol='auPm⁻³') -pounds_per_cubic_petameter = NamedUnit(4.5359237000000005e-46, Dimensions(length=-3, mass=1), name='pounds_per_cubic_petameter', ascii_symbol='lb Pm^-3', symbol='lbPm⁻³') -ounces_per_cubic_petameter = NamedUnit(2.8349523125000003e-47, Dimensions(length=-3, mass=1), name='ounces_per_cubic_petameter', ascii_symbol='oz Pm^-3', symbol='ozPm⁻³') -grams_per_cubic_terameter = NamedUnit(1e-39, Dimensions(length=-3, mass=1), name='grams_per_cubic_terameter', ascii_symbol='g Tm^-3', symbol='gTm⁻³') -exagrams_per_cubic_terameter = NamedUnit(1e-21, Dimensions(length=-3, mass=1), name='exagrams_per_cubic_terameter', ascii_symbol='Eg Tm^-3', symbol='EgTm⁻³') -petagrams_per_cubic_terameter = NamedUnit(1e-24, Dimensions(length=-3, mass=1), name='petagrams_per_cubic_terameter', ascii_symbol='Pg Tm^-3', symbol='PgTm⁻³') -teragrams_per_cubic_terameter = NamedUnit(1e-27, Dimensions(length=-3, mass=1), name='teragrams_per_cubic_terameter', ascii_symbol='Tg Tm^-3', symbol='TgTm⁻³') -gigagrams_per_cubic_terameter = NamedUnit(9.999999999999999e-31, Dimensions(length=-3, mass=1), name='gigagrams_per_cubic_terameter', ascii_symbol='Gg Tm^-3', symbol='GgTm⁻³') -megagrams_per_cubic_terameter = NamedUnit(9.999999999999999e-34, Dimensions(length=-3, mass=1), name='megagrams_per_cubic_terameter', ascii_symbol='Mg Tm^-3', symbol='MgTm⁻³') -kilograms_per_cubic_terameter = NamedUnit(1e-36, Dimensions(length=-3, mass=1), name='kilograms_per_cubic_terameter', ascii_symbol='kg Tm^-3', symbol='kgTm⁻³') -milligrams_per_cubic_terameter = NamedUnit(9.999999999999999e-43, Dimensions(length=-3, mass=1), name='milligrams_per_cubic_terameter', ascii_symbol='mg Tm^-3', symbol='mgTm⁻³') -micrograms_per_cubic_terameter = NamedUnit(1e-45, Dimensions(length=-3, mass=1), name='micrograms_per_cubic_terameter', ascii_symbol='ug Tm^-3', symbol='µgTm⁻³') -nanograms_per_cubic_terameter = NamedUnit(1.0000000000000001e-48, Dimensions(length=-3, mass=1), name='nanograms_per_cubic_terameter', ascii_symbol='ng Tm^-3', symbol='ngTm⁻³') -picograms_per_cubic_terameter = NamedUnit(1e-51, Dimensions(length=-3, mass=1), name='picograms_per_cubic_terameter', ascii_symbol='pg Tm^-3', symbol='pgTm⁻³') -femtograms_per_cubic_terameter = NamedUnit(1e-54, Dimensions(length=-3, mass=1), name='femtograms_per_cubic_terameter', ascii_symbol='fg Tm^-3', symbol='fgTm⁻³') -attograms_per_cubic_terameter = NamedUnit(1.0000000000000001e-57, Dimensions(length=-3, mass=1), name='attograms_per_cubic_terameter', ascii_symbol='ag Tm^-3', symbol='agTm⁻³') -atomic_mass_units_per_cubic_terameter = NamedUnit(1.6605389209999997e-63, Dimensions(length=-3, mass=1), name='atomic_mass_units_per_cubic_terameter', ascii_symbol='au Tm^-3', symbol='auTm⁻³') -pounds_per_cubic_terameter = NamedUnit(4.5359237e-37, Dimensions(length=-3, mass=1), name='pounds_per_cubic_terameter', ascii_symbol='lb Tm^-3', symbol='lbTm⁻³') -ounces_per_cubic_terameter = NamedUnit(2.8349523125e-38, Dimensions(length=-3, mass=1), name='ounces_per_cubic_terameter', ascii_symbol='oz Tm^-3', symbol='ozTm⁻³') -grams_per_cubic_gigameter = NamedUnit(1e-30, Dimensions(length=-3, mass=1), name='grams_per_cubic_gigameter', ascii_symbol='g Gm^-3', symbol='gGm⁻³') -exagrams_per_cubic_gigameter = NamedUnit(1e-12, Dimensions(length=-3, mass=1), name='exagrams_per_cubic_gigameter', ascii_symbol='Eg Gm^-3', symbol='EgGm⁻³') -petagrams_per_cubic_gigameter = NamedUnit(1e-15, Dimensions(length=-3, mass=1), name='petagrams_per_cubic_gigameter', ascii_symbol='Pg Gm^-3', symbol='PgGm⁻³') -teragrams_per_cubic_gigameter = NamedUnit(1e-18, Dimensions(length=-3, mass=1), name='teragrams_per_cubic_gigameter', ascii_symbol='Tg Gm^-3', symbol='TgGm⁻³') -gigagrams_per_cubic_gigameter = NamedUnit(1e-21, Dimensions(length=-3, mass=1), name='gigagrams_per_cubic_gigameter', ascii_symbol='Gg Gm^-3', symbol='GgGm⁻³') -megagrams_per_cubic_gigameter = NamedUnit(1e-24, Dimensions(length=-3, mass=1), name='megagrams_per_cubic_gigameter', ascii_symbol='Mg Gm^-3', symbol='MgGm⁻³') -kilograms_per_cubic_gigameter = NamedUnit(1e-27, Dimensions(length=-3, mass=1), name='kilograms_per_cubic_gigameter', ascii_symbol='kg Gm^-3', symbol='kgGm⁻³') -milligrams_per_cubic_gigameter = NamedUnit(9.999999999999999e-34, Dimensions(length=-3, mass=1), name='milligrams_per_cubic_gigameter', ascii_symbol='mg Gm^-3', symbol='mgGm⁻³') -micrograms_per_cubic_gigameter = NamedUnit(1.0000000000000001e-36, Dimensions(length=-3, mass=1), name='micrograms_per_cubic_gigameter', ascii_symbol='ug Gm^-3', symbol='µgGm⁻³') -nanograms_per_cubic_gigameter = NamedUnit(1.0000000000000001e-39, Dimensions(length=-3, mass=1), name='nanograms_per_cubic_gigameter', ascii_symbol='ng Gm^-3', symbol='ngGm⁻³') -picograms_per_cubic_gigameter = NamedUnit(1e-42, Dimensions(length=-3, mass=1), name='picograms_per_cubic_gigameter', ascii_symbol='pg Gm^-3', symbol='pgGm⁻³') -femtograms_per_cubic_gigameter = NamedUnit(1e-45, Dimensions(length=-3, mass=1), name='femtograms_per_cubic_gigameter', ascii_symbol='fg Gm^-3', symbol='fgGm⁻³') -attograms_per_cubic_gigameter = NamedUnit(1.0000000000000001e-48, Dimensions(length=-3, mass=1), name='attograms_per_cubic_gigameter', ascii_symbol='ag Gm^-3', symbol='agGm⁻³') -atomic_mass_units_per_cubic_gigameter = NamedUnit(1.660538921e-54, Dimensions(length=-3, mass=1), name='atomic_mass_units_per_cubic_gigameter', ascii_symbol='au Gm^-3', symbol='auGm⁻³') -pounds_per_cubic_gigameter = NamedUnit(4.5359237e-28, Dimensions(length=-3, mass=1), name='pounds_per_cubic_gigameter', ascii_symbol='lb Gm^-3', symbol='lbGm⁻³') -ounces_per_cubic_gigameter = NamedUnit(2.8349523125e-29, Dimensions(length=-3, mass=1), name='ounces_per_cubic_gigameter', ascii_symbol='oz Gm^-3', symbol='ozGm⁻³') -grams_per_cubic_megameter = NamedUnit(1.0000000000000001e-21, Dimensions(length=-3, mass=1), name='grams_per_cubic_megameter', ascii_symbol='g Mm^-3', symbol='gMm⁻³') -exagrams_per_cubic_megameter = NamedUnit(0.001, Dimensions(length=-3, mass=1), name='exagrams_per_cubic_megameter', ascii_symbol='Eg Mm^-3', symbol='EgMm⁻³') -petagrams_per_cubic_megameter = NamedUnit(1e-06, Dimensions(length=-3, mass=1), name='petagrams_per_cubic_megameter', ascii_symbol='Pg Mm^-3', symbol='PgMm⁻³') -teragrams_per_cubic_megameter = NamedUnit(1e-09, Dimensions(length=-3, mass=1), name='teragrams_per_cubic_megameter', ascii_symbol='Tg Mm^-3', symbol='TgMm⁻³') -gigagrams_per_cubic_megameter = NamedUnit(1e-12, Dimensions(length=-3, mass=1), name='gigagrams_per_cubic_megameter', ascii_symbol='Gg Mm^-3', symbol='GgMm⁻³') -megagrams_per_cubic_megameter = NamedUnit(1e-15, Dimensions(length=-3, mass=1), name='megagrams_per_cubic_megameter', ascii_symbol='Mg Mm^-3', symbol='MgMm⁻³') -kilograms_per_cubic_megameter = NamedUnit(1e-18, Dimensions(length=-3, mass=1), name='kilograms_per_cubic_megameter', ascii_symbol='kg Mm^-3', symbol='kgMm⁻³') -milligrams_per_cubic_megameter = NamedUnit(1e-24, Dimensions(length=-3, mass=1), name='milligrams_per_cubic_megameter', ascii_symbol='mg Mm^-3', symbol='mgMm⁻³') -micrograms_per_cubic_megameter = NamedUnit(1e-27, Dimensions(length=-3, mass=1), name='micrograms_per_cubic_megameter', ascii_symbol='ug Mm^-3', symbol='µgMm⁻³') -nanograms_per_cubic_megameter = NamedUnit(1.0000000000000003e-30, Dimensions(length=-3, mass=1), name='nanograms_per_cubic_megameter', ascii_symbol='ng Mm^-3', symbol='ngMm⁻³') -picograms_per_cubic_megameter = NamedUnit(1e-33, Dimensions(length=-3, mass=1), name='picograms_per_cubic_megameter', ascii_symbol='pg Mm^-3', symbol='pgMm⁻³') -femtograms_per_cubic_megameter = NamedUnit(1.0000000000000001e-36, Dimensions(length=-3, mass=1), name='femtograms_per_cubic_megameter', ascii_symbol='fg Mm^-3', symbol='fgMm⁻³') -attograms_per_cubic_megameter = NamedUnit(1.0000000000000001e-39, Dimensions(length=-3, mass=1), name='attograms_per_cubic_megameter', ascii_symbol='ag Mm^-3', symbol='agMm⁻³') -atomic_mass_units_per_cubic_megameter = NamedUnit(1.6605389209999997e-45, Dimensions(length=-3, mass=1), name='atomic_mass_units_per_cubic_megameter', ascii_symbol='au Mm^-3', symbol='auMm⁻³') -pounds_per_cubic_megameter = NamedUnit(4.535923700000001e-19, Dimensions(length=-3, mass=1), name='pounds_per_cubic_megameter', ascii_symbol='lb Mm^-3', symbol='lbMm⁻³') -ounces_per_cubic_megameter = NamedUnit(2.8349523125000004e-20, Dimensions(length=-3, mass=1), name='ounces_per_cubic_megameter', ascii_symbol='oz Mm^-3', symbol='ozMm⁻³') -grams_per_cubic_kilometer = NamedUnit(1e-12, Dimensions(length=-3, mass=1), name='grams_per_cubic_kilometer', ascii_symbol='g km^-3', symbol='gkm⁻³') -exagrams_per_cubic_kilometer = NamedUnit(1000000.0, Dimensions(length=-3, mass=1), name='exagrams_per_cubic_kilometer', ascii_symbol='Eg km^-3', symbol='Egkm⁻³') -petagrams_per_cubic_kilometer = NamedUnit(1000.0, Dimensions(length=-3, mass=1), name='petagrams_per_cubic_kilometer', ascii_symbol='Pg km^-3', symbol='Pgkm⁻³') -teragrams_per_cubic_kilometer = NamedUnit(1.0, Dimensions(length=-3, mass=1), name='teragrams_per_cubic_kilometer', ascii_symbol='Tg km^-3', symbol='Tgkm⁻³') -gigagrams_per_cubic_kilometer = NamedUnit(0.001, Dimensions(length=-3, mass=1), name='gigagrams_per_cubic_kilometer', ascii_symbol='Gg km^-3', symbol='Ggkm⁻³') -megagrams_per_cubic_kilometer = NamedUnit(1e-06, Dimensions(length=-3, mass=1), name='megagrams_per_cubic_kilometer', ascii_symbol='Mg km^-3', symbol='Mgkm⁻³') -kilograms_per_cubic_kilometer = NamedUnit(1e-09, Dimensions(length=-3, mass=1), name='kilograms_per_cubic_kilometer', ascii_symbol='kg km^-3', symbol='kgkm⁻³') -milligrams_per_cubic_kilometer = NamedUnit(9.999999999999999e-16, Dimensions(length=-3, mass=1), name='milligrams_per_cubic_kilometer', ascii_symbol='mg km^-3', symbol='mgkm⁻³') -micrograms_per_cubic_kilometer = NamedUnit(1e-18, Dimensions(length=-3, mass=1), name='micrograms_per_cubic_kilometer', ascii_symbol='ug km^-3', symbol='µgkm⁻³') -nanograms_per_cubic_kilometer = NamedUnit(1.0000000000000001e-21, Dimensions(length=-3, mass=1), name='nanograms_per_cubic_kilometer', ascii_symbol='ng km^-3', symbol='ngkm⁻³') -picograms_per_cubic_kilometer = NamedUnit(1.0000000000000001e-24, Dimensions(length=-3, mass=1), name='picograms_per_cubic_kilometer', ascii_symbol='pg km^-3', symbol='pgkm⁻³') -femtograms_per_cubic_kilometer = NamedUnit(1e-27, Dimensions(length=-3, mass=1), name='femtograms_per_cubic_kilometer', ascii_symbol='fg km^-3', symbol='fgkm⁻³') -attograms_per_cubic_kilometer = NamedUnit(1e-30, Dimensions(length=-3, mass=1), name='attograms_per_cubic_kilometer', ascii_symbol='ag km^-3', symbol='agkm⁻³') -atomic_mass_units_per_cubic_kilometer = NamedUnit(1.6605389209999997e-36, Dimensions(length=-3, mass=1), name='atomic_mass_units_per_cubic_kilometer', ascii_symbol='au km^-3', symbol='aukm⁻³') -pounds_per_cubic_kilometer = NamedUnit(4.5359237000000004e-10, Dimensions(length=-3, mass=1), name='pounds_per_cubic_kilometer', ascii_symbol='lb km^-3', symbol='lbkm⁻³') -ounces_per_cubic_kilometer = NamedUnit(2.8349523125000003e-11, Dimensions(length=-3, mass=1), name='ounces_per_cubic_kilometer', ascii_symbol='oz km^-3', symbol='ozkm⁻³') -grams_per_cubic_millimeter = NamedUnit(1000000.0, Dimensions(length=-3, mass=1), name='grams_per_cubic_millimeter', ascii_symbol='g mm^-3', symbol='gmm⁻³') -exagrams_per_cubic_millimeter = NamedUnit(1e+24, Dimensions(length=-3, mass=1), name='exagrams_per_cubic_millimeter', ascii_symbol='Eg mm^-3', symbol='Egmm⁻³') -petagrams_per_cubic_millimeter = NamedUnit(1e+21, Dimensions(length=-3, mass=1), name='petagrams_per_cubic_millimeter', ascii_symbol='Pg mm^-3', symbol='Pgmm⁻³') -teragrams_per_cubic_millimeter = NamedUnit(1e+18, Dimensions(length=-3, mass=1), name='teragrams_per_cubic_millimeter', ascii_symbol='Tg mm^-3', symbol='Tgmm⁻³') -gigagrams_per_cubic_millimeter = NamedUnit(1000000000000000.0, Dimensions(length=-3, mass=1), name='gigagrams_per_cubic_millimeter', ascii_symbol='Gg mm^-3', symbol='Ggmm⁻³') -megagrams_per_cubic_millimeter = NamedUnit(999999999999.9999, Dimensions(length=-3, mass=1), name='megagrams_per_cubic_millimeter', ascii_symbol='Mg mm^-3', symbol='Mgmm⁻³') -kilograms_per_cubic_millimeter = NamedUnit(999999999.9999999, Dimensions(length=-3, mass=1), name='kilograms_per_cubic_millimeter', ascii_symbol='kg mm^-3', symbol='kgmm⁻³') -milligrams_per_cubic_millimeter = NamedUnit(999.9999999999999, Dimensions(length=-3, mass=1), name='milligrams_per_cubic_millimeter', ascii_symbol='mg mm^-3', symbol='mgmm⁻³') -micrograms_per_cubic_millimeter = NamedUnit(1.0, Dimensions(length=-3, mass=1), name='micrograms_per_cubic_millimeter', ascii_symbol='ug mm^-3', symbol='µgmm⁻³') -nanograms_per_cubic_millimeter = NamedUnit(0.001, Dimensions(length=-3, mass=1), name='nanograms_per_cubic_millimeter', ascii_symbol='ng mm^-3', symbol='ngmm⁻³') -picograms_per_cubic_millimeter = NamedUnit(1e-06, Dimensions(length=-3, mass=1), name='picograms_per_cubic_millimeter', ascii_symbol='pg mm^-3', symbol='pgmm⁻³') -femtograms_per_cubic_millimeter = NamedUnit(1e-09, Dimensions(length=-3, mass=1), name='femtograms_per_cubic_millimeter', ascii_symbol='fg mm^-3', symbol='fgmm⁻³') -attograms_per_cubic_millimeter = NamedUnit(1e-12, Dimensions(length=-3, mass=1), name='attograms_per_cubic_millimeter', ascii_symbol='ag mm^-3', symbol='agmm⁻³') -atomic_mass_units_per_cubic_millimeter = NamedUnit(1.6605389209999997e-18, Dimensions(length=-3, mass=1), name='atomic_mass_units_per_cubic_millimeter', ascii_symbol='au mm^-3', symbol='aumm⁻³') -pounds_per_cubic_millimeter = NamedUnit(453592370.0, Dimensions(length=-3, mass=1), name='pounds_per_cubic_millimeter', ascii_symbol='lb mm^-3', symbol='lbmm⁻³') -ounces_per_cubic_millimeter = NamedUnit(28349523.125, Dimensions(length=-3, mass=1), name='ounces_per_cubic_millimeter', ascii_symbol='oz mm^-3', symbol='ozmm⁻³') -grams_per_cubic_micrometer = NamedUnit(1000000000000000.1, Dimensions(length=-3, mass=1), name='grams_per_cubic_micrometer', ascii_symbol='g um^-3', symbol='gµm⁻³') -exagrams_per_cubic_micrometer = NamedUnit(1.0000000000000001e+33, Dimensions(length=-3, mass=1), name='exagrams_per_cubic_micrometer', ascii_symbol='Eg um^-3', symbol='Egµm⁻³') -petagrams_per_cubic_micrometer = NamedUnit(1.0000000000000002e+30, Dimensions(length=-3, mass=1), name='petagrams_per_cubic_micrometer', ascii_symbol='Pg um^-3', symbol='Pgµm⁻³') -teragrams_per_cubic_micrometer = NamedUnit(1.0000000000000002e+27, Dimensions(length=-3, mass=1), name='teragrams_per_cubic_micrometer', ascii_symbol='Tg um^-3', symbol='Tgµm⁻³') -gigagrams_per_cubic_micrometer = NamedUnit(1.0000000000000001e+24, Dimensions(length=-3, mass=1), name='gigagrams_per_cubic_micrometer', ascii_symbol='Gg um^-3', symbol='Ggµm⁻³') -megagrams_per_cubic_micrometer = NamedUnit(1.0000000000000001e+21, Dimensions(length=-3, mass=1), name='megagrams_per_cubic_micrometer', ascii_symbol='Mg um^-3', symbol='Mgµm⁻³') -kilograms_per_cubic_micrometer = NamedUnit(1.0000000000000001e+18, Dimensions(length=-3, mass=1), name='kilograms_per_cubic_micrometer', ascii_symbol='kg um^-3', symbol='kgµm⁻³') -milligrams_per_cubic_micrometer = NamedUnit(1000000000000.0001, Dimensions(length=-3, mass=1), name='milligrams_per_cubic_micrometer', ascii_symbol='mg um^-3', symbol='mgµm⁻³') -micrograms_per_cubic_micrometer = NamedUnit(1000000000.0000002, Dimensions(length=-3, mass=1), name='micrograms_per_cubic_micrometer', ascii_symbol='ug um^-3', symbol='µgµm⁻³') -nanograms_per_cubic_micrometer = NamedUnit(1000000.0000000003, Dimensions(length=-3, mass=1), name='nanograms_per_cubic_micrometer', ascii_symbol='ng um^-3', symbol='ngµm⁻³') -picograms_per_cubic_micrometer = NamedUnit(1000.0000000000002, Dimensions(length=-3, mass=1), name='picograms_per_cubic_micrometer', ascii_symbol='pg um^-3', symbol='pgµm⁻³') -femtograms_per_cubic_micrometer = NamedUnit(1.0000000000000002, Dimensions(length=-3, mass=1), name='femtograms_per_cubic_micrometer', ascii_symbol='fg um^-3', symbol='fgµm⁻³') -attograms_per_cubic_micrometer = NamedUnit(0.0010000000000000002, Dimensions(length=-3, mass=1), name='attograms_per_cubic_micrometer', ascii_symbol='ag um^-3', symbol='agµm⁻³') -atomic_mass_units_per_cubic_micrometer = NamedUnit(1.660538921e-09, Dimensions(length=-3, mass=1), name='atomic_mass_units_per_cubic_micrometer', ascii_symbol='au um^-3', symbol='auµm⁻³') -pounds_per_cubic_micrometer = NamedUnit(4.5359237000000006e+17, Dimensions(length=-3, mass=1), name='pounds_per_cubic_micrometer', ascii_symbol='lb um^-3', symbol='lbµm⁻³') -ounces_per_cubic_micrometer = NamedUnit(2.8349523125000004e+16, Dimensions(length=-3, mass=1), name='ounces_per_cubic_micrometer', ascii_symbol='oz um^-3', symbol='ozµm⁻³') -grams_per_cubic_nanometer = NamedUnit(9.999999999999998e+23, Dimensions(length=-3, mass=1), name='grams_per_cubic_nanometer', ascii_symbol='g nm^-3', symbol='gnm⁻³') -exagrams_per_cubic_nanometer = NamedUnit(9.999999999999997e+41, Dimensions(length=-3, mass=1), name='exagrams_per_cubic_nanometer', ascii_symbol='Eg nm^-3', symbol='Egnm⁻³') -petagrams_per_cubic_nanometer = NamedUnit(9.999999999999998e+38, Dimensions(length=-3, mass=1), name='petagrams_per_cubic_nanometer', ascii_symbol='Pg nm^-3', symbol='Pgnm⁻³') -teragrams_per_cubic_nanometer = NamedUnit(9.999999999999997e+35, Dimensions(length=-3, mass=1), name='teragrams_per_cubic_nanometer', ascii_symbol='Tg nm^-3', symbol='Tgnm⁻³') -gigagrams_per_cubic_nanometer = NamedUnit(9.999999999999998e+32, Dimensions(length=-3, mass=1), name='gigagrams_per_cubic_nanometer', ascii_symbol='Gg nm^-3', symbol='Ggnm⁻³') -megagrams_per_cubic_nanometer = NamedUnit(9.999999999999997e+29, Dimensions(length=-3, mass=1), name='megagrams_per_cubic_nanometer', ascii_symbol='Mg nm^-3', symbol='Mgnm⁻³') -kilograms_per_cubic_nanometer = NamedUnit(9.999999999999997e+26, Dimensions(length=-3, mass=1), name='kilograms_per_cubic_nanometer', ascii_symbol='kg nm^-3', symbol='kgnm⁻³') -milligrams_per_cubic_nanometer = NamedUnit(9.999999999999997e+20, Dimensions(length=-3, mass=1), name='milligrams_per_cubic_nanometer', ascii_symbol='mg nm^-3', symbol='mgnm⁻³') -micrograms_per_cubic_nanometer = NamedUnit(9.999999999999999e+17, Dimensions(length=-3, mass=1), name='micrograms_per_cubic_nanometer', ascii_symbol='ug nm^-3', symbol='µgnm⁻³') -nanograms_per_cubic_nanometer = NamedUnit(1000000000000000.0, Dimensions(length=-3, mass=1), name='nanograms_per_cubic_nanometer', ascii_symbol='ng nm^-3', symbol='ngnm⁻³') -picograms_per_cubic_nanometer = NamedUnit(999999999999.9999, Dimensions(length=-3, mass=1), name='picograms_per_cubic_nanometer', ascii_symbol='pg nm^-3', symbol='pgnm⁻³') -femtograms_per_cubic_nanometer = NamedUnit(999999999.9999999, Dimensions(length=-3, mass=1), name='femtograms_per_cubic_nanometer', ascii_symbol='fg nm^-3', symbol='fgnm⁻³') -attograms_per_cubic_nanometer = NamedUnit(999999.9999999999, Dimensions(length=-3, mass=1), name='attograms_per_cubic_nanometer', ascii_symbol='ag nm^-3', symbol='agnm⁻³') -atomic_mass_units_per_cubic_nanometer = NamedUnit(1.6605389209999994, Dimensions(length=-3, mass=1), name='atomic_mass_units_per_cubic_nanometer', ascii_symbol='au nm^-3', symbol='aunm⁻³') -pounds_per_cubic_nanometer = NamedUnit(4.535923699999999e+26, Dimensions(length=-3, mass=1), name='pounds_per_cubic_nanometer', ascii_symbol='lb nm^-3', symbol='lbnm⁻³') -ounces_per_cubic_nanometer = NamedUnit(2.8349523124999993e+25, Dimensions(length=-3, mass=1), name='ounces_per_cubic_nanometer', ascii_symbol='oz nm^-3', symbol='oznm⁻³') -grams_per_cubic_picometer = NamedUnit(1.0000000000000001e+33, Dimensions(length=-3, mass=1), name='grams_per_cubic_picometer', ascii_symbol='g pm^-3', symbol='gpm⁻³') -exagrams_per_cubic_picometer = NamedUnit(1e+51, Dimensions(length=-3, mass=1), name='exagrams_per_cubic_picometer', ascii_symbol='Eg pm^-3', symbol='Egpm⁻³') -petagrams_per_cubic_picometer = NamedUnit(1e+48, Dimensions(length=-3, mass=1), name='petagrams_per_cubic_picometer', ascii_symbol='Pg pm^-3', symbol='Pgpm⁻³') -teragrams_per_cubic_picometer = NamedUnit(1.0000000000000001e+45, Dimensions(length=-3, mass=1), name='teragrams_per_cubic_picometer', ascii_symbol='Tg pm^-3', symbol='Tgpm⁻³') -gigagrams_per_cubic_picometer = NamedUnit(1e+42, Dimensions(length=-3, mass=1), name='gigagrams_per_cubic_picometer', ascii_symbol='Gg pm^-3', symbol='Ggpm⁻³') -megagrams_per_cubic_picometer = NamedUnit(1.0000000000000001e+39, Dimensions(length=-3, mass=1), name='megagrams_per_cubic_picometer', ascii_symbol='Mg pm^-3', symbol='Mgpm⁻³') -kilograms_per_cubic_picometer = NamedUnit(1e+36, Dimensions(length=-3, mass=1), name='kilograms_per_cubic_picometer', ascii_symbol='kg pm^-3', symbol='kgpm⁻³') -milligrams_per_cubic_picometer = NamedUnit(1e+30, Dimensions(length=-3, mass=1), name='milligrams_per_cubic_picometer', ascii_symbol='mg pm^-3', symbol='mgpm⁻³') -micrograms_per_cubic_picometer = NamedUnit(1.0000000000000002e+27, Dimensions(length=-3, mass=1), name='micrograms_per_cubic_picometer', ascii_symbol='ug pm^-3', symbol='µgpm⁻³') -nanograms_per_cubic_picometer = NamedUnit(1.0000000000000003e+24, Dimensions(length=-3, mass=1), name='nanograms_per_cubic_picometer', ascii_symbol='ng pm^-3', symbol='ngpm⁻³') -picograms_per_cubic_picometer = NamedUnit(1.0000000000000001e+21, Dimensions(length=-3, mass=1), name='picograms_per_cubic_picometer', ascii_symbol='pg pm^-3', symbol='pgpm⁻³') -femtograms_per_cubic_picometer = NamedUnit(1.0000000000000001e+18, Dimensions(length=-3, mass=1), name='femtograms_per_cubic_picometer', ascii_symbol='fg pm^-3', symbol='fgpm⁻³') -attograms_per_cubic_picometer = NamedUnit(1000000000000000.1, Dimensions(length=-3, mass=1), name='attograms_per_cubic_picometer', ascii_symbol='ag pm^-3', symbol='agpm⁻³') -atomic_mass_units_per_cubic_picometer = NamedUnit(1660538921.0, Dimensions(length=-3, mass=1), name='atomic_mass_units_per_cubic_picometer', ascii_symbol='au pm^-3', symbol='aupm⁻³') -pounds_per_cubic_picometer = NamedUnit(4.5359237000000005e+35, Dimensions(length=-3, mass=1), name='pounds_per_cubic_picometer', ascii_symbol='lb pm^-3', symbol='lbpm⁻³') -ounces_per_cubic_picometer = NamedUnit(2.8349523125000003e+34, Dimensions(length=-3, mass=1), name='ounces_per_cubic_picometer', ascii_symbol='oz pm^-3', symbol='ozpm⁻³') -grams_per_cubic_femtometer = NamedUnit(9.999999999999997e+41, Dimensions(length=-3, mass=1), name='grams_per_cubic_femtometer', ascii_symbol='g fm^-3', symbol='gfm⁻³') -exagrams_per_cubic_femtometer = NamedUnit(9.999999999999998e+59, Dimensions(length=-3, mass=1), name='exagrams_per_cubic_femtometer', ascii_symbol='Eg fm^-3', symbol='Egfm⁻³') -petagrams_per_cubic_femtometer = NamedUnit(9.999999999999997e+56, Dimensions(length=-3, mass=1), name='petagrams_per_cubic_femtometer', ascii_symbol='Pg fm^-3', symbol='Pgfm⁻³') -teragrams_per_cubic_femtometer = NamedUnit(9.999999999999997e+53, Dimensions(length=-3, mass=1), name='teragrams_per_cubic_femtometer', ascii_symbol='Tg fm^-3', symbol='Tgfm⁻³') -gigagrams_per_cubic_femtometer = NamedUnit(9.999999999999997e+50, Dimensions(length=-3, mass=1), name='gigagrams_per_cubic_femtometer', ascii_symbol='Gg fm^-3', symbol='Ggfm⁻³') -megagrams_per_cubic_femtometer = NamedUnit(9.999999999999997e+47, Dimensions(length=-3, mass=1), name='megagrams_per_cubic_femtometer', ascii_symbol='Mg fm^-3', symbol='Mgfm⁻³') -kilograms_per_cubic_femtometer = NamedUnit(9.999999999999998e+44, Dimensions(length=-3, mass=1), name='kilograms_per_cubic_femtometer', ascii_symbol='kg fm^-3', symbol='kgfm⁻³') -milligrams_per_cubic_femtometer = NamedUnit(9.999999999999996e+38, Dimensions(length=-3, mass=1), name='milligrams_per_cubic_femtometer', ascii_symbol='mg fm^-3', symbol='mgfm⁻³') -micrograms_per_cubic_femtometer = NamedUnit(9.999999999999997e+35, Dimensions(length=-3, mass=1), name='micrograms_per_cubic_femtometer', ascii_symbol='ug fm^-3', symbol='µgfm⁻³') -nanograms_per_cubic_femtometer = NamedUnit(1e+33, Dimensions(length=-3, mass=1), name='nanograms_per_cubic_femtometer', ascii_symbol='ng fm^-3', symbol='ngfm⁻³') -picograms_per_cubic_femtometer = NamedUnit(9.999999999999997e+29, Dimensions(length=-3, mass=1), name='picograms_per_cubic_femtometer', ascii_symbol='pg fm^-3', symbol='pgfm⁻³') -femtograms_per_cubic_femtometer = NamedUnit(9.999999999999997e+26, Dimensions(length=-3, mass=1), name='femtograms_per_cubic_femtometer', ascii_symbol='fg fm^-3', symbol='fgfm⁻³') -attograms_per_cubic_femtometer = NamedUnit(9.999999999999998e+23, Dimensions(length=-3, mass=1), name='attograms_per_cubic_femtometer', ascii_symbol='ag fm^-3', symbol='agfm⁻³') -atomic_mass_units_per_cubic_femtometer = NamedUnit(1.6605389209999992e+18, Dimensions(length=-3, mass=1), name='atomic_mass_units_per_cubic_femtometer', ascii_symbol='au fm^-3', symbol='aufm⁻³') -pounds_per_cubic_femtometer = NamedUnit(4.5359236999999985e+44, Dimensions(length=-3, mass=1), name='pounds_per_cubic_femtometer', ascii_symbol='lb fm^-3', symbol='lbfm⁻³') -ounces_per_cubic_femtometer = NamedUnit(2.834952312499999e+43, Dimensions(length=-3, mass=1), name='ounces_per_cubic_femtometer', ascii_symbol='oz fm^-3', symbol='ozfm⁻³') -grams_per_cubic_attometer = NamedUnit(9.999999999999998e+50, Dimensions(length=-3, mass=1), name='grams_per_cubic_attometer', ascii_symbol='g am^-3', symbol='gam⁻³') -exagrams_per_cubic_attometer = NamedUnit(9.999999999999999e+68, Dimensions(length=-3, mass=1), name='exagrams_per_cubic_attometer', ascii_symbol='Eg am^-3', symbol='Egam⁻³') -petagrams_per_cubic_attometer = NamedUnit(9.999999999999998e+65, Dimensions(length=-3, mass=1), name='petagrams_per_cubic_attometer', ascii_symbol='Pg am^-3', symbol='Pgam⁻³') -teragrams_per_cubic_attometer = NamedUnit(9.999999999999999e+62, Dimensions(length=-3, mass=1), name='teragrams_per_cubic_attometer', ascii_symbol='Tg am^-3', symbol='Tgam⁻³') -gigagrams_per_cubic_attometer = NamedUnit(9.999999999999998e+59, Dimensions(length=-3, mass=1), name='gigagrams_per_cubic_attometer', ascii_symbol='Gg am^-3', symbol='Ggam⁻³') -megagrams_per_cubic_attometer = NamedUnit(9.999999999999999e+56, Dimensions(length=-3, mass=1), name='megagrams_per_cubic_attometer', ascii_symbol='Mg am^-3', symbol='Mgam⁻³') -kilograms_per_cubic_attometer = NamedUnit(9.999999999999999e+53, Dimensions(length=-3, mass=1), name='kilograms_per_cubic_attometer', ascii_symbol='kg am^-3', symbol='kgam⁻³') -milligrams_per_cubic_attometer = NamedUnit(9.999999999999997e+47, Dimensions(length=-3, mass=1), name='milligrams_per_cubic_attometer', ascii_symbol='mg am^-3', symbol='mgam⁻³') -micrograms_per_cubic_attometer = NamedUnit(1e+45, Dimensions(length=-3, mass=1), name='micrograms_per_cubic_attometer', ascii_symbol='ug am^-3', symbol='µgam⁻³') -nanograms_per_cubic_attometer = NamedUnit(1e+42, Dimensions(length=-3, mass=1), name='nanograms_per_cubic_attometer', ascii_symbol='ng am^-3', symbol='ngam⁻³') -picograms_per_cubic_attometer = NamedUnit(1e+39, Dimensions(length=-3, mass=1), name='picograms_per_cubic_attometer', ascii_symbol='pg am^-3', symbol='pgam⁻³') -femtograms_per_cubic_attometer = NamedUnit(9.999999999999999e+35, Dimensions(length=-3, mass=1), name='femtograms_per_cubic_attometer', ascii_symbol='fg am^-3', symbol='fgam⁻³') -attograms_per_cubic_attometer = NamedUnit(1e+33, Dimensions(length=-3, mass=1), name='attograms_per_cubic_attometer', ascii_symbol='ag am^-3', symbol='agam⁻³') -atomic_mass_units_per_cubic_attometer = NamedUnit(1.6605389209999997e+27, Dimensions(length=-3, mass=1), name='atomic_mass_units_per_cubic_attometer', ascii_symbol='au am^-3', symbol='auam⁻³') -pounds_per_cubic_attometer = NamedUnit(4.5359237e+53, Dimensions(length=-3, mass=1), name='pounds_per_cubic_attometer', ascii_symbol='lb am^-3', symbol='lbam⁻³') -ounces_per_cubic_attometer = NamedUnit(2.8349523125e+52, Dimensions(length=-3, mass=1), name='ounces_per_cubic_attometer', ascii_symbol='oz am^-3', symbol='ozam⁻³') -grams_per_cubic_decimeter = NamedUnit(0.9999999999999998, Dimensions(length=-3, mass=1), name='grams_per_cubic_decimeter', ascii_symbol='g dm^-3', symbol='gdm⁻³') -exagrams_per_cubic_decimeter = NamedUnit(9.999999999999997e+17, Dimensions(length=-3, mass=1), name='exagrams_per_cubic_decimeter', ascii_symbol='Eg dm^-3', symbol='Egdm⁻³') -petagrams_per_cubic_decimeter = NamedUnit(999999999999999.8, Dimensions(length=-3, mass=1), name='petagrams_per_cubic_decimeter', ascii_symbol='Pg dm^-3', symbol='Pgdm⁻³') -teragrams_per_cubic_decimeter = NamedUnit(999999999999.9998, Dimensions(length=-3, mass=1), name='teragrams_per_cubic_decimeter', ascii_symbol='Tg dm^-3', symbol='Tgdm⁻³') -gigagrams_per_cubic_decimeter = NamedUnit(999999999.9999998, Dimensions(length=-3, mass=1), name='gigagrams_per_cubic_decimeter', ascii_symbol='Gg dm^-3', symbol='Ggdm⁻³') -megagrams_per_cubic_decimeter = NamedUnit(999999.9999999998, Dimensions(length=-3, mass=1), name='megagrams_per_cubic_decimeter', ascii_symbol='Mg dm^-3', symbol='Mgdm⁻³') -kilograms_per_cubic_decimeter = NamedUnit(999.9999999999998, Dimensions(length=-3, mass=1), name='kilograms_per_cubic_decimeter', ascii_symbol='kg dm^-3', symbol='kgdm⁻³') -milligrams_per_cubic_decimeter = NamedUnit(0.0009999999999999998, Dimensions(length=-3, mass=1), name='milligrams_per_cubic_decimeter', ascii_symbol='mg dm^-3', symbol='mgdm⁻³') -micrograms_per_cubic_decimeter = NamedUnit(9.999999999999997e-07, Dimensions(length=-3, mass=1), name='micrograms_per_cubic_decimeter', ascii_symbol='ug dm^-3', symbol='µgdm⁻³') -nanograms_per_cubic_decimeter = NamedUnit(9.999999999999999e-10, Dimensions(length=-3, mass=1), name='nanograms_per_cubic_decimeter', ascii_symbol='ng dm^-3', symbol='ngdm⁻³') -picograms_per_cubic_decimeter = NamedUnit(9.999999999999998e-13, Dimensions(length=-3, mass=1), name='picograms_per_cubic_decimeter', ascii_symbol='pg dm^-3', symbol='pgdm⁻³') -femtograms_per_cubic_decimeter = NamedUnit(9.999999999999999e-16, Dimensions(length=-3, mass=1), name='femtograms_per_cubic_decimeter', ascii_symbol='fg dm^-3', symbol='fgdm⁻³') -attograms_per_cubic_decimeter = NamedUnit(9.999999999999999e-19, Dimensions(length=-3, mass=1), name='attograms_per_cubic_decimeter', ascii_symbol='ag dm^-3', symbol='agdm⁻³') -atomic_mass_units_per_cubic_decimeter = NamedUnit(1.6605389209999993e-24, Dimensions(length=-3, mass=1), name='atomic_mass_units_per_cubic_decimeter', ascii_symbol='au dm^-3', symbol='audm⁻³') -pounds_per_cubic_decimeter = NamedUnit(453.5923699999999, Dimensions(length=-3, mass=1), name='pounds_per_cubic_decimeter', ascii_symbol='lb dm^-3', symbol='lbdm⁻³') -ounces_per_cubic_decimeter = NamedUnit(28.349523124999994, Dimensions(length=-3, mass=1), name='ounces_per_cubic_decimeter', ascii_symbol='oz dm^-3', symbol='ozdm⁻³') -grams_per_cubic_centimeter = NamedUnit(999.9999999999999, Dimensions(length=-3, mass=1), name='grams_per_cubic_centimeter', ascii_symbol='g cm^-3', symbol='gcm⁻³') -exagrams_per_cubic_centimeter = NamedUnit(9.999999999999999e+20, Dimensions(length=-3, mass=1), name='exagrams_per_cubic_centimeter', ascii_symbol='Eg cm^-3', symbol='Egcm⁻³') -petagrams_per_cubic_centimeter = NamedUnit(9.999999999999999e+17, Dimensions(length=-3, mass=1), name='petagrams_per_cubic_centimeter', ascii_symbol='Pg cm^-3', symbol='Pgcm⁻³') -teragrams_per_cubic_centimeter = NamedUnit(999999999999999.9, Dimensions(length=-3, mass=1), name='teragrams_per_cubic_centimeter', ascii_symbol='Tg cm^-3', symbol='Tgcm⁻³') -gigagrams_per_cubic_centimeter = NamedUnit(999999999999.9999, Dimensions(length=-3, mass=1), name='gigagrams_per_cubic_centimeter', ascii_symbol='Gg cm^-3', symbol='Ggcm⁻³') -megagrams_per_cubic_centimeter = NamedUnit(999999999.9999999, Dimensions(length=-3, mass=1), name='megagrams_per_cubic_centimeter', ascii_symbol='Mg cm^-3', symbol='Mgcm⁻³') -kilograms_per_cubic_centimeter = NamedUnit(999999.9999999999, Dimensions(length=-3, mass=1), name='kilograms_per_cubic_centimeter', ascii_symbol='kg cm^-3', symbol='kgcm⁻³') -milligrams_per_cubic_centimeter = NamedUnit(0.9999999999999998, Dimensions(length=-3, mass=1), name='milligrams_per_cubic_centimeter', ascii_symbol='mg cm^-3', symbol='mgcm⁻³') -micrograms_per_cubic_centimeter = NamedUnit(0.0009999999999999998, Dimensions(length=-3, mass=1), name='micrograms_per_cubic_centimeter', ascii_symbol='ug cm^-3', symbol='µgcm⁻³') -nanograms_per_cubic_centimeter = NamedUnit(1e-06, Dimensions(length=-3, mass=1), name='nanograms_per_cubic_centimeter', ascii_symbol='ng cm^-3', symbol='ngcm⁻³') -picograms_per_cubic_centimeter = NamedUnit(9.999999999999999e-10, Dimensions(length=-3, mass=1), name='picograms_per_cubic_centimeter', ascii_symbol='pg cm^-3', symbol='pgcm⁻³') -femtograms_per_cubic_centimeter = NamedUnit(1e-12, Dimensions(length=-3, mass=1), name='femtograms_per_cubic_centimeter', ascii_symbol='fg cm^-3', symbol='fgcm⁻³') -attograms_per_cubic_centimeter = NamedUnit(9.999999999999999e-16, Dimensions(length=-3, mass=1), name='attograms_per_cubic_centimeter', ascii_symbol='ag cm^-3', symbol='agcm⁻³') -atomic_mass_units_per_cubic_centimeter = NamedUnit(1.6605389209999996e-21, Dimensions(length=-3, mass=1), name='atomic_mass_units_per_cubic_centimeter', ascii_symbol='au cm^-3', symbol='aucm⁻³') -pounds_per_cubic_centimeter = NamedUnit(453592.36999999994, Dimensions(length=-3, mass=1), name='pounds_per_cubic_centimeter', ascii_symbol='lb cm^-3', symbol='lbcm⁻³') -ounces_per_cubic_centimeter = NamedUnit(28349.523124999996, Dimensions(length=-3, mass=1), name='ounces_per_cubic_centimeter', ascii_symbol='oz cm^-3', symbol='ozcm⁻³') -grams_per_cubic_angstrom = NamedUnit(9.999999999999999e+26, Dimensions(length=-3, mass=1), name='grams_per_cubic_angstrom', ascii_symbol='g Ang^-3', symbol='gÅ⁻³') -exagrams_per_cubic_angstrom = NamedUnit(1e+45, Dimensions(length=-3, mass=1), name='exagrams_per_cubic_angstrom', ascii_symbol='Eg Ang^-3', symbol='EgÅ⁻³') -petagrams_per_cubic_angstrom = NamedUnit(9.999999999999999e+41, Dimensions(length=-3, mass=1), name='petagrams_per_cubic_angstrom', ascii_symbol='Pg Ang^-3', symbol='PgÅ⁻³') -teragrams_per_cubic_angstrom = NamedUnit(1e+39, Dimensions(length=-3, mass=1), name='teragrams_per_cubic_angstrom', ascii_symbol='Tg Ang^-3', symbol='TgÅ⁻³') -gigagrams_per_cubic_angstrom = NamedUnit(9.999999999999999e+35, Dimensions(length=-3, mass=1), name='gigagrams_per_cubic_angstrom', ascii_symbol='Gg Ang^-3', symbol='GgÅ⁻³') -megagrams_per_cubic_angstrom = NamedUnit(1e+33, Dimensions(length=-3, mass=1), name='megagrams_per_cubic_angstrom', ascii_symbol='Mg Ang^-3', symbol='MgÅ⁻³') -kilograms_per_cubic_angstrom = NamedUnit(9.999999999999999e+29, Dimensions(length=-3, mass=1), name='kilograms_per_cubic_angstrom', ascii_symbol='kg Ang^-3', symbol='kgÅ⁻³') -milligrams_per_cubic_angstrom = NamedUnit(9.999999999999998e+23, Dimensions(length=-3, mass=1), name='milligrams_per_cubic_angstrom', ascii_symbol='mg Ang^-3', symbol='mgÅ⁻³') -micrograms_per_cubic_angstrom = NamedUnit(1e+21, Dimensions(length=-3, mass=1), name='micrograms_per_cubic_angstrom', ascii_symbol='ug Ang^-3', symbol='µgÅ⁻³') -nanograms_per_cubic_angstrom = NamedUnit(1.0000000000000001e+18, Dimensions(length=-3, mass=1), name='nanograms_per_cubic_angstrom', ascii_symbol='ng Ang^-3', symbol='ngÅ⁻³') -picograms_per_cubic_angstrom = NamedUnit(1000000000000000.0, Dimensions(length=-3, mass=1), name='picograms_per_cubic_angstrom', ascii_symbol='pg Ang^-3', symbol='pgÅ⁻³') -femtograms_per_cubic_angstrom = NamedUnit(1000000000000.0, Dimensions(length=-3, mass=1), name='femtograms_per_cubic_angstrom', ascii_symbol='fg Ang^-3', symbol='fgÅ⁻³') -attograms_per_cubic_angstrom = NamedUnit(1000000000.0, Dimensions(length=-3, mass=1), name='attograms_per_cubic_angstrom', ascii_symbol='ag Ang^-3', symbol='agÅ⁻³') -atomic_mass_units_per_cubic_angstrom = NamedUnit(1660.5389209999996, Dimensions(length=-3, mass=1), name='atomic_mass_units_per_cubic_angstrom', ascii_symbol='au Ang^-3', symbol='auÅ⁻³') -pounds_per_cubic_angstrom = NamedUnit(4.5359237e+29, Dimensions(length=-3, mass=1), name='pounds_per_cubic_angstrom', ascii_symbol='lb Ang^-3', symbol='lbÅ⁻³') -ounces_per_cubic_angstrom = NamedUnit(2.8349523125e+28, Dimensions(length=-3, mass=1), name='ounces_per_cubic_angstrom', ascii_symbol='oz Ang^-3', symbol='ozÅ⁻³') -grams_per_cubic_micron = NamedUnit(1000000000000000.1, Dimensions(length=-3, mass=1), name='grams_per_cubic_micron', ascii_symbol='g micron^-3', symbol='gmicron⁻³') -exagrams_per_cubic_micron = NamedUnit(1.0000000000000001e+33, Dimensions(length=-3, mass=1), name='exagrams_per_cubic_micron', ascii_symbol='Eg micron^-3', symbol='Egmicron⁻³') -petagrams_per_cubic_micron = NamedUnit(1.0000000000000002e+30, Dimensions(length=-3, mass=1), name='petagrams_per_cubic_micron', ascii_symbol='Pg micron^-3', symbol='Pgmicron⁻³') -teragrams_per_cubic_micron = NamedUnit(1.0000000000000002e+27, Dimensions(length=-3, mass=1), name='teragrams_per_cubic_micron', ascii_symbol='Tg micron^-3', symbol='Tgmicron⁻³') -gigagrams_per_cubic_micron = NamedUnit(1.0000000000000001e+24, Dimensions(length=-3, mass=1), name='gigagrams_per_cubic_micron', ascii_symbol='Gg micron^-3', symbol='Ggmicron⁻³') -megagrams_per_cubic_micron = NamedUnit(1.0000000000000001e+21, Dimensions(length=-3, mass=1), name='megagrams_per_cubic_micron', ascii_symbol='Mg micron^-3', symbol='Mgmicron⁻³') -kilograms_per_cubic_micron = NamedUnit(1.0000000000000001e+18, Dimensions(length=-3, mass=1), name='kilograms_per_cubic_micron', ascii_symbol='kg micron^-3', symbol='kgmicron⁻³') -milligrams_per_cubic_micron = NamedUnit(1000000000000.0001, Dimensions(length=-3, mass=1), name='milligrams_per_cubic_micron', ascii_symbol='mg micron^-3', symbol='mgmicron⁻³') -micrograms_per_cubic_micron = NamedUnit(1000000000.0000002, Dimensions(length=-3, mass=1), name='micrograms_per_cubic_micron', ascii_symbol='ug micron^-3', symbol='µgmicron⁻³') -nanograms_per_cubic_micron = NamedUnit(1000000.0000000003, Dimensions(length=-3, mass=1), name='nanograms_per_cubic_micron', ascii_symbol='ng micron^-3', symbol='ngmicron⁻³') -picograms_per_cubic_micron = NamedUnit(1000.0000000000002, Dimensions(length=-3, mass=1), name='picograms_per_cubic_micron', ascii_symbol='pg micron^-3', symbol='pgmicron⁻³') -femtograms_per_cubic_micron = NamedUnit(1.0000000000000002, Dimensions(length=-3, mass=1), name='femtograms_per_cubic_micron', ascii_symbol='fg micron^-3', symbol='fgmicron⁻³') -attograms_per_cubic_micron = NamedUnit(0.0010000000000000002, Dimensions(length=-3, mass=1), name='attograms_per_cubic_micron', ascii_symbol='ag micron^-3', symbol='agmicron⁻³') -atomic_mass_units_per_cubic_micron = NamedUnit(1.660538921e-09, Dimensions(length=-3, mass=1), name='atomic_mass_units_per_cubic_micron', ascii_symbol='au micron^-3', symbol='aumicron⁻³') -pounds_per_cubic_micron = NamedUnit(4.5359237000000006e+17, Dimensions(length=-3, mass=1), name='pounds_per_cubic_micron', ascii_symbol='lb micron^-3', symbol='lbmicron⁻³') -ounces_per_cubic_micron = NamedUnit(2.8349523125000004e+16, Dimensions(length=-3, mass=1), name='ounces_per_cubic_micron', ascii_symbol='oz micron^-3', symbol='ozmicron⁻³') -grams_per_cubic_mile = NamedUnit(2.399127585789277e-13, Dimensions(length=-3, mass=1), name='grams_per_cubic_mile', ascii_symbol='g miles^-3', symbol='gmiles⁻³') -exagrams_per_cubic_mile = NamedUnit(239912.7585789277, Dimensions(length=-3, mass=1), name='exagrams_per_cubic_mile', ascii_symbol='Eg miles^-3', symbol='Egmiles⁻³') -petagrams_per_cubic_mile = NamedUnit(239.9127585789277, Dimensions(length=-3, mass=1), name='petagrams_per_cubic_mile', ascii_symbol='Pg miles^-3', symbol='Pgmiles⁻³') -teragrams_per_cubic_mile = NamedUnit(0.2399127585789277, Dimensions(length=-3, mass=1), name='teragrams_per_cubic_mile', ascii_symbol='Tg miles^-3', symbol='Tgmiles⁻³') -gigagrams_per_cubic_mile = NamedUnit(0.0002399127585789277, Dimensions(length=-3, mass=1), name='gigagrams_per_cubic_mile', ascii_symbol='Gg miles^-3', symbol='Ggmiles⁻³') -megagrams_per_cubic_mile = NamedUnit(2.399127585789277e-07, Dimensions(length=-3, mass=1), name='megagrams_per_cubic_mile', ascii_symbol='Mg miles^-3', symbol='Mgmiles⁻³') -kilograms_per_cubic_mile = NamedUnit(2.399127585789277e-10, Dimensions(length=-3, mass=1), name='kilograms_per_cubic_mile', ascii_symbol='kg miles^-3', symbol='kgmiles⁻³') -milligrams_per_cubic_mile = NamedUnit(2.399127585789277e-16, Dimensions(length=-3, mass=1), name='milligrams_per_cubic_mile', ascii_symbol='mg miles^-3', symbol='mgmiles⁻³') -micrograms_per_cubic_mile = NamedUnit(2.3991275857892774e-19, Dimensions(length=-3, mass=1), name='micrograms_per_cubic_mile', ascii_symbol='ug miles^-3', symbol='µgmiles⁻³') -nanograms_per_cubic_mile = NamedUnit(2.3991275857892774e-22, Dimensions(length=-3, mass=1), name='nanograms_per_cubic_mile', ascii_symbol='ng miles^-3', symbol='ngmiles⁻³') -picograms_per_cubic_mile = NamedUnit(2.399127585789277e-25, Dimensions(length=-3, mass=1), name='picograms_per_cubic_mile', ascii_symbol='pg miles^-3', symbol='pgmiles⁻³') -femtograms_per_cubic_mile = NamedUnit(2.3991275857892772e-28, Dimensions(length=-3, mass=1), name='femtograms_per_cubic_mile', ascii_symbol='fg miles^-3', symbol='fgmiles⁻³') -attograms_per_cubic_mile = NamedUnit(2.399127585789277e-31, Dimensions(length=-3, mass=1), name='attograms_per_cubic_mile', ascii_symbol='ag miles^-3', symbol='agmiles⁻³') -atomic_mass_units_per_cubic_mile = NamedUnit(3.98384473264786e-37, Dimensions(length=-3, mass=1), name='atomic_mass_units_per_cubic_mile', ascii_symbol='au miles^-3', symbol='aumiles⁻³') -pounds_per_cubic_mile = NamedUnit(1.0882259675705365e-10, Dimensions(length=-3, mass=1), name='pounds_per_cubic_mile', ascii_symbol='lb miles^-3', symbol='lbmiles⁻³') -ounces_per_cubic_mile = NamedUnit(6.801412297315853e-12, Dimensions(length=-3, mass=1), name='ounces_per_cubic_mile', ascii_symbol='oz miles^-3', symbol='ozmiles⁻³') -grams_per_cubic_yard = NamedUnit(0.0013079506193143919, Dimensions(length=-3, mass=1), name='grams_per_cubic_yard', ascii_symbol='g yrd^-3', symbol='gyrd⁻³') -exagrams_per_cubic_yard = NamedUnit(1307950619314391.8, Dimensions(length=-3, mass=1), name='exagrams_per_cubic_yard', ascii_symbol='Eg yrd^-3', symbol='Egyrd⁻³') -petagrams_per_cubic_yard = NamedUnit(1307950619314.3918, Dimensions(length=-3, mass=1), name='petagrams_per_cubic_yard', ascii_symbol='Pg yrd^-3', symbol='Pgyrd⁻³') -teragrams_per_cubic_yard = NamedUnit(1307950619.3143919, Dimensions(length=-3, mass=1), name='teragrams_per_cubic_yard', ascii_symbol='Tg yrd^-3', symbol='Tgyrd⁻³') -gigagrams_per_cubic_yard = NamedUnit(1307950.6193143919, Dimensions(length=-3, mass=1), name='gigagrams_per_cubic_yard', ascii_symbol='Gg yrd^-3', symbol='Ggyrd⁻³') -megagrams_per_cubic_yard = NamedUnit(1307.9506193143918, Dimensions(length=-3, mass=1), name='megagrams_per_cubic_yard', ascii_symbol='Mg yrd^-3', symbol='Mgyrd⁻³') -kilograms_per_cubic_yard = NamedUnit(1.3079506193143917, Dimensions(length=-3, mass=1), name='kilograms_per_cubic_yard', ascii_symbol='kg yrd^-3', symbol='kgyrd⁻³') -milligrams_per_cubic_yard = NamedUnit(1.3079506193143917e-06, Dimensions(length=-3, mass=1), name='milligrams_per_cubic_yard', ascii_symbol='mg yrd^-3', symbol='mgyrd⁻³') -micrograms_per_cubic_yard = NamedUnit(1.3079506193143919e-09, Dimensions(length=-3, mass=1), name='micrograms_per_cubic_yard', ascii_symbol='ug yrd^-3', symbol='µgyrd⁻³') -nanograms_per_cubic_yard = NamedUnit(1.307950619314392e-12, Dimensions(length=-3, mass=1), name='nanograms_per_cubic_yard', ascii_symbol='ng yrd^-3', symbol='ngyrd⁻³') -picograms_per_cubic_yard = NamedUnit(1.3079506193143919e-15, Dimensions(length=-3, mass=1), name='picograms_per_cubic_yard', ascii_symbol='pg yrd^-3', symbol='pgyrd⁻³') -femtograms_per_cubic_yard = NamedUnit(1.3079506193143918e-18, Dimensions(length=-3, mass=1), name='femtograms_per_cubic_yard', ascii_symbol='fg yrd^-3', symbol='fgyrd⁻³') -attograms_per_cubic_yard = NamedUnit(1.307950619314392e-21, Dimensions(length=-3, mass=1), name='attograms_per_cubic_yard', ascii_symbol='ag yrd^-3', symbol='agyrd⁻³') -atomic_mass_units_per_cubic_yard = NamedUnit(2.1719029101176016e-27, Dimensions(length=-3, mass=1), name='atomic_mass_units_per_cubic_yard', ascii_symbol='au yrd^-3', symbol='auyrd⁻³') -pounds_per_cubic_yard = NamedUnit(0.5932764212577828, Dimensions(length=-3, mass=1), name='pounds_per_cubic_yard', ascii_symbol='lb yrd^-3', symbol='lbyrd⁻³') -ounces_per_cubic_yard = NamedUnit(0.037079776328611425, Dimensions(length=-3, mass=1), name='ounces_per_cubic_yard', ascii_symbol='oz yrd^-3', symbol='ozyrd⁻³') -grams_per_cubic_foot = NamedUnit(0.035314666721488586, Dimensions(length=-3, mass=1), name='grams_per_cubic_foot', ascii_symbol='g ft^-3', symbol='gft⁻³') -exagrams_per_cubic_foot = NamedUnit(3.5314666721488584e+16, Dimensions(length=-3, mass=1), name='exagrams_per_cubic_foot', ascii_symbol='Eg ft^-3', symbol='Egft⁻³') -petagrams_per_cubic_foot = NamedUnit(35314666721488.586, Dimensions(length=-3, mass=1), name='petagrams_per_cubic_foot', ascii_symbol='Pg ft^-3', symbol='Pgft⁻³') -teragrams_per_cubic_foot = NamedUnit(35314666721.48859, Dimensions(length=-3, mass=1), name='teragrams_per_cubic_foot', ascii_symbol='Tg ft^-3', symbol='Tgft⁻³') -gigagrams_per_cubic_foot = NamedUnit(35314666.72148859, Dimensions(length=-3, mass=1), name='gigagrams_per_cubic_foot', ascii_symbol='Gg ft^-3', symbol='Ggft⁻³') -megagrams_per_cubic_foot = NamedUnit(35314.66672148858, Dimensions(length=-3, mass=1), name='megagrams_per_cubic_foot', ascii_symbol='Mg ft^-3', symbol='Mgft⁻³') -kilograms_per_cubic_foot = NamedUnit(35.314666721488585, Dimensions(length=-3, mass=1), name='kilograms_per_cubic_foot', ascii_symbol='kg ft^-3', symbol='kgft⁻³') -milligrams_per_cubic_foot = NamedUnit(3.5314666721488586e-05, Dimensions(length=-3, mass=1), name='milligrams_per_cubic_foot', ascii_symbol='mg ft^-3', symbol='mgft⁻³') -micrograms_per_cubic_foot = NamedUnit(3.5314666721488584e-08, Dimensions(length=-3, mass=1), name='micrograms_per_cubic_foot', ascii_symbol='ug ft^-3', symbol='µgft⁻³') -nanograms_per_cubic_foot = NamedUnit(3.531466672148859e-11, Dimensions(length=-3, mass=1), name='nanograms_per_cubic_foot', ascii_symbol='ng ft^-3', symbol='ngft⁻³') -picograms_per_cubic_foot = NamedUnit(3.531466672148859e-14, Dimensions(length=-3, mass=1), name='picograms_per_cubic_foot', ascii_symbol='pg ft^-3', symbol='pgft⁻³') -femtograms_per_cubic_foot = NamedUnit(3.5314666721488585e-17, Dimensions(length=-3, mass=1), name='femtograms_per_cubic_foot', ascii_symbol='fg ft^-3', symbol='fgft⁻³') -attograms_per_cubic_foot = NamedUnit(3.531466672148859e-20, Dimensions(length=-3, mass=1), name='attograms_per_cubic_foot', ascii_symbol='ag ft^-3', symbol='agft⁻³') -atomic_mass_units_per_cubic_foot = NamedUnit(5.864137857317526e-26, Dimensions(length=-3, mass=1), name='atomic_mass_units_per_cubic_foot', ascii_symbol='au ft^-3', symbol='auft⁻³') -pounds_per_cubic_foot = NamedUnit(16.018463373960138, Dimensions(length=-3, mass=1), name='pounds_per_cubic_foot', ascii_symbol='lb ft^-3', symbol='lbft⁻³') -ounces_per_cubic_foot = NamedUnit(1.0011539608725086, Dimensions(length=-3, mass=1), name='ounces_per_cubic_foot', ascii_symbol='oz ft^-3', symbol='ozft⁻³') -grams_per_cubic_inch = NamedUnit(61.02374409473229, Dimensions(length=-3, mass=1), name='grams_per_cubic_inch', ascii_symbol='g in^-3', symbol='gin⁻³') -exagrams_per_cubic_inch = NamedUnit(6.102374409473229e+19, Dimensions(length=-3, mass=1), name='exagrams_per_cubic_inch', ascii_symbol='Eg in^-3', symbol='Egin⁻³') -petagrams_per_cubic_inch = NamedUnit(6.102374409473229e+16, Dimensions(length=-3, mass=1), name='petagrams_per_cubic_inch', ascii_symbol='Pg in^-3', symbol='Pgin⁻³') -teragrams_per_cubic_inch = NamedUnit(61023744094732.29, Dimensions(length=-3, mass=1), name='teragrams_per_cubic_inch', ascii_symbol='Tg in^-3', symbol='Tgin⁻³') -gigagrams_per_cubic_inch = NamedUnit(61023744094.732285, Dimensions(length=-3, mass=1), name='gigagrams_per_cubic_inch', ascii_symbol='Gg in^-3', symbol='Ggin⁻³') -megagrams_per_cubic_inch = NamedUnit(61023744.094732285, Dimensions(length=-3, mass=1), name='megagrams_per_cubic_inch', ascii_symbol='Mg in^-3', symbol='Mgin⁻³') -kilograms_per_cubic_inch = NamedUnit(61023.74409473229, Dimensions(length=-3, mass=1), name='kilograms_per_cubic_inch', ascii_symbol='kg in^-3', symbol='kgin⁻³') -milligrams_per_cubic_inch = NamedUnit(0.06102374409473228, Dimensions(length=-3, mass=1), name='milligrams_per_cubic_inch', ascii_symbol='mg in^-3', symbol='mgin⁻³') -micrograms_per_cubic_inch = NamedUnit(6.102374409473229e-05, Dimensions(length=-3, mass=1), name='micrograms_per_cubic_inch', ascii_symbol='ug in^-3', symbol='µgin⁻³') -nanograms_per_cubic_inch = NamedUnit(6.10237440947323e-08, Dimensions(length=-3, mass=1), name='nanograms_per_cubic_inch', ascii_symbol='ng in^-3', symbol='ngin⁻³') -picograms_per_cubic_inch = NamedUnit(6.102374409473229e-11, Dimensions(length=-3, mass=1), name='picograms_per_cubic_inch', ascii_symbol='pg in^-3', symbol='pgin⁻³') -femtograms_per_cubic_inch = NamedUnit(6.10237440947323e-14, Dimensions(length=-3, mass=1), name='femtograms_per_cubic_inch', ascii_symbol='fg in^-3', symbol='fgin⁻³') -attograms_per_cubic_inch = NamedUnit(6.10237440947323e-17, Dimensions(length=-3, mass=1), name='attograms_per_cubic_inch', ascii_symbol='ag in^-3', symbol='agin⁻³') -atomic_mass_units_per_cubic_inch = NamedUnit(1.0133230217444687e-22, Dimensions(length=-3, mass=1), name='atomic_mass_units_per_cubic_inch', ascii_symbol='au in^-3', symbol='auin⁻³') -pounds_per_cubic_inch = NamedUnit(27679.904710203125, Dimensions(length=-3, mass=1), name='pounds_per_cubic_inch', ascii_symbol='lb in^-3', symbol='lbin⁻³') -ounces_per_cubic_inch = NamedUnit(1729.9940443876953, Dimensions(length=-3, mass=1), name='ounces_per_cubic_inch', ascii_symbol='oz in^-3', symbol='ozin⁻³') -moles_per_cubic_meter = NamedUnit(6.02214076e+23, Dimensions(length=-3, moles_hint=1), name='moles_per_cubic_meter', ascii_symbol='mol m^-3', symbol='molm⁻³') -millimoles_per_cubic_meter = NamedUnit(6.02214076e+20, Dimensions(length=-3, moles_hint=1), name='millimoles_per_cubic_meter', ascii_symbol='mmol m^-3', symbol='mmolm⁻³') -micromoles_per_cubic_meter = NamedUnit(6.02214076e+17, Dimensions(length=-3, moles_hint=1), name='micromoles_per_cubic_meter', ascii_symbol='umol m^-3', symbol='µmolm⁻³') -nanomoles_per_cubic_meter = NamedUnit(602214076000000.0, Dimensions(length=-3, moles_hint=1), name='nanomoles_per_cubic_meter', ascii_symbol='nmol m^-3', symbol='nmolm⁻³') -picomoles_per_cubic_meter = NamedUnit(602214076000.0, Dimensions(length=-3, moles_hint=1), name='picomoles_per_cubic_meter', ascii_symbol='pmol m^-3', symbol='pmolm⁻³') -femtomoles_per_cubic_meter = NamedUnit(602214076.0, Dimensions(length=-3, moles_hint=1), name='femtomoles_per_cubic_meter', ascii_symbol='fmol m^-3', symbol='fmolm⁻³') -attomoles_per_cubic_meter = NamedUnit(602214.076, Dimensions(length=-3, moles_hint=1), name='attomoles_per_cubic_meter', ascii_symbol='amol m^-3', symbol='amolm⁻³') -moles_per_cubic_exameter = NamedUnit(6.0221407599999995e-31, Dimensions(length=-3, moles_hint=1), name='moles_per_cubic_exameter', ascii_symbol='mol Em^-3', symbol='molEm⁻³') -millimoles_per_cubic_exameter = NamedUnit(6.02214076e-34, Dimensions(length=-3, moles_hint=1), name='millimoles_per_cubic_exameter', ascii_symbol='mmol Em^-3', symbol='mmolEm⁻³') -micromoles_per_cubic_exameter = NamedUnit(6.02214076e-37, Dimensions(length=-3, moles_hint=1), name='micromoles_per_cubic_exameter', ascii_symbol='umol Em^-3', symbol='µmolEm⁻³') -nanomoles_per_cubic_exameter = NamedUnit(6.022140759999999e-40, Dimensions(length=-3, moles_hint=1), name='nanomoles_per_cubic_exameter', ascii_symbol='nmol Em^-3', symbol='nmolEm⁻³') -picomoles_per_cubic_exameter = NamedUnit(6.022140759999999e-43, Dimensions(length=-3, moles_hint=1), name='picomoles_per_cubic_exameter', ascii_symbol='pmol Em^-3', symbol='pmolEm⁻³') -femtomoles_per_cubic_exameter = NamedUnit(6.02214076e-46, Dimensions(length=-3, moles_hint=1), name='femtomoles_per_cubic_exameter', ascii_symbol='fmol Em^-3', symbol='fmolEm⁻³') -attomoles_per_cubic_exameter = NamedUnit(6.022140759999999e-49, Dimensions(length=-3, moles_hint=1), name='attomoles_per_cubic_exameter', ascii_symbol='amol Em^-3', symbol='amolEm⁻³') -moles_per_cubic_petameter = NamedUnit(6.02214076e-22, Dimensions(length=-3, moles_hint=1), name='moles_per_cubic_petameter', ascii_symbol='mol Pm^-3', symbol='molPm⁻³') -millimoles_per_cubic_petameter = NamedUnit(6.0221407600000005e-25, Dimensions(length=-3, moles_hint=1), name='millimoles_per_cubic_petameter', ascii_symbol='mmol Pm^-3', symbol='mmolPm⁻³') -micromoles_per_cubic_petameter = NamedUnit(6.02214076e-28, Dimensions(length=-3, moles_hint=1), name='micromoles_per_cubic_petameter', ascii_symbol='umol Pm^-3', symbol='µmolPm⁻³') -nanomoles_per_cubic_petameter = NamedUnit(6.02214076e-31, Dimensions(length=-3, moles_hint=1), name='nanomoles_per_cubic_petameter', ascii_symbol='nmol Pm^-3', symbol='nmolPm⁻³') -picomoles_per_cubic_petameter = NamedUnit(6.0221407600000005e-34, Dimensions(length=-3, moles_hint=1), name='picomoles_per_cubic_petameter', ascii_symbol='pmol Pm^-3', symbol='pmolPm⁻³') -femtomoles_per_cubic_petameter = NamedUnit(6.022140760000001e-37, Dimensions(length=-3, moles_hint=1), name='femtomoles_per_cubic_petameter', ascii_symbol='fmol Pm^-3', symbol='fmolPm⁻³') -attomoles_per_cubic_petameter = NamedUnit(6.022140760000001e-40, Dimensions(length=-3, moles_hint=1), name='attomoles_per_cubic_petameter', ascii_symbol='amol Pm^-3', symbol='amolPm⁻³') -moles_per_cubic_terameter = NamedUnit(6.022140759999999e-13, Dimensions(length=-3, moles_hint=1), name='moles_per_cubic_terameter', ascii_symbol='mol Tm^-3', symbol='molTm⁻³') -millimoles_per_cubic_terameter = NamedUnit(6.02214076e-16, Dimensions(length=-3, moles_hint=1), name='millimoles_per_cubic_terameter', ascii_symbol='mmol Tm^-3', symbol='mmolTm⁻³') -micromoles_per_cubic_terameter = NamedUnit(6.02214076e-19, Dimensions(length=-3, moles_hint=1), name='micromoles_per_cubic_terameter', ascii_symbol='umol Tm^-3', symbol='µmolTm⁻³') -nanomoles_per_cubic_terameter = NamedUnit(6.02214076e-22, Dimensions(length=-3, moles_hint=1), name='nanomoles_per_cubic_terameter', ascii_symbol='nmol Tm^-3', symbol='nmolTm⁻³') -picomoles_per_cubic_terameter = NamedUnit(6.02214076e-25, Dimensions(length=-3, moles_hint=1), name='picomoles_per_cubic_terameter', ascii_symbol='pmol Tm^-3', symbol='pmolTm⁻³') -femtomoles_per_cubic_terameter = NamedUnit(6.02214076e-28, Dimensions(length=-3, moles_hint=1), name='femtomoles_per_cubic_terameter', ascii_symbol='fmol Tm^-3', symbol='fmolTm⁻³') -attomoles_per_cubic_terameter = NamedUnit(6.0221407599999995e-31, Dimensions(length=-3, moles_hint=1), name='attomoles_per_cubic_terameter', ascii_symbol='amol Tm^-3', symbol='amolTm⁻³') -moles_per_cubic_gigameter = NamedUnit(0.000602214076, Dimensions(length=-3, moles_hint=1), name='moles_per_cubic_gigameter', ascii_symbol='mol Gm^-3', symbol='molGm⁻³') -millimoles_per_cubic_gigameter = NamedUnit(6.022140760000001e-07, Dimensions(length=-3, moles_hint=1), name='millimoles_per_cubic_gigameter', ascii_symbol='mmol Gm^-3', symbol='mmolGm⁻³') -micromoles_per_cubic_gigameter = NamedUnit(6.02214076e-10, Dimensions(length=-3, moles_hint=1), name='micromoles_per_cubic_gigameter', ascii_symbol='umol Gm^-3', symbol='µmolGm⁻³') -nanomoles_per_cubic_gigameter = NamedUnit(6.02214076e-13, Dimensions(length=-3, moles_hint=1), name='nanomoles_per_cubic_gigameter', ascii_symbol='nmol Gm^-3', symbol='nmolGm⁻³') -picomoles_per_cubic_gigameter = NamedUnit(6.02214076e-16, Dimensions(length=-3, moles_hint=1), name='picomoles_per_cubic_gigameter', ascii_symbol='pmol Gm^-3', symbol='pmolGm⁻³') -femtomoles_per_cubic_gigameter = NamedUnit(6.02214076e-19, Dimensions(length=-3, moles_hint=1), name='femtomoles_per_cubic_gigameter', ascii_symbol='fmol Gm^-3', symbol='fmolGm⁻³') -attomoles_per_cubic_gigameter = NamedUnit(6.02214076e-22, Dimensions(length=-3, moles_hint=1), name='attomoles_per_cubic_gigameter', ascii_symbol='amol Gm^-3', symbol='amolGm⁻³') -moles_per_cubic_megameter = NamedUnit(602214.076, Dimensions(length=-3, moles_hint=1), name='moles_per_cubic_megameter', ascii_symbol='mol Mm^-3', symbol='molMm⁻³') -millimoles_per_cubic_megameter = NamedUnit(602.214076, Dimensions(length=-3, moles_hint=1), name='millimoles_per_cubic_megameter', ascii_symbol='mmol Mm^-3', symbol='mmolMm⁻³') -micromoles_per_cubic_megameter = NamedUnit(0.602214076, Dimensions(length=-3, moles_hint=1), name='micromoles_per_cubic_megameter', ascii_symbol='umol Mm^-3', symbol='µmolMm⁻³') -nanomoles_per_cubic_megameter = NamedUnit(0.000602214076, Dimensions(length=-3, moles_hint=1), name='nanomoles_per_cubic_megameter', ascii_symbol='nmol Mm^-3', symbol='nmolMm⁻³') -picomoles_per_cubic_megameter = NamedUnit(6.02214076e-07, Dimensions(length=-3, moles_hint=1), name='picomoles_per_cubic_megameter', ascii_symbol='pmol Mm^-3', symbol='pmolMm⁻³') -femtomoles_per_cubic_megameter = NamedUnit(6.02214076e-10, Dimensions(length=-3, moles_hint=1), name='femtomoles_per_cubic_megameter', ascii_symbol='fmol Mm^-3', symbol='fmolMm⁻³') -attomoles_per_cubic_megameter = NamedUnit(6.02214076e-13, Dimensions(length=-3, moles_hint=1), name='attomoles_per_cubic_megameter', ascii_symbol='amol Mm^-3', symbol='amolMm⁻³') -moles_per_cubic_kilometer = NamedUnit(602214076000000.0, Dimensions(length=-3, moles_hint=1), name='moles_per_cubic_kilometer', ascii_symbol='mol km^-3', symbol='molkm⁻³') -millimoles_per_cubic_kilometer = NamedUnit(602214076000.0, Dimensions(length=-3, moles_hint=1), name='millimoles_per_cubic_kilometer', ascii_symbol='mmol km^-3', symbol='mmolkm⁻³') -micromoles_per_cubic_kilometer = NamedUnit(602214076.0, Dimensions(length=-3, moles_hint=1), name='micromoles_per_cubic_kilometer', ascii_symbol='umol km^-3', symbol='µmolkm⁻³') -nanomoles_per_cubic_kilometer = NamedUnit(602214.076, Dimensions(length=-3, moles_hint=1), name='nanomoles_per_cubic_kilometer', ascii_symbol='nmol km^-3', symbol='nmolkm⁻³') -picomoles_per_cubic_kilometer = NamedUnit(602.214076, Dimensions(length=-3, moles_hint=1), name='picomoles_per_cubic_kilometer', ascii_symbol='pmol km^-3', symbol='pmolkm⁻³') -femtomoles_per_cubic_kilometer = NamedUnit(0.602214076, Dimensions(length=-3, moles_hint=1), name='femtomoles_per_cubic_kilometer', ascii_symbol='fmol km^-3', symbol='fmolkm⁻³') -attomoles_per_cubic_kilometer = NamedUnit(0.000602214076, Dimensions(length=-3, moles_hint=1), name='attomoles_per_cubic_kilometer', ascii_symbol='amol km^-3', symbol='amolkm⁻³') -moles_per_cubic_millimeter = NamedUnit(6.0221407599999995e+32, Dimensions(length=-3, moles_hint=1), name='moles_per_cubic_millimeter', ascii_symbol='mol mm^-3', symbol='molmm⁻³') -millimoles_per_cubic_millimeter = NamedUnit(6.02214076e+29, Dimensions(length=-3, moles_hint=1), name='millimoles_per_cubic_millimeter', ascii_symbol='mmol mm^-3', symbol='mmolmm⁻³') -micromoles_per_cubic_millimeter = NamedUnit(6.0221407599999996e+26, Dimensions(length=-3, moles_hint=1), name='micromoles_per_cubic_millimeter', ascii_symbol='umol mm^-3', symbol='µmolmm⁻³') -nanomoles_per_cubic_millimeter = NamedUnit(6.02214076e+23, Dimensions(length=-3, moles_hint=1), name='nanomoles_per_cubic_millimeter', ascii_symbol='nmol mm^-3', symbol='nmolmm⁻³') -picomoles_per_cubic_millimeter = NamedUnit(6.02214076e+20, Dimensions(length=-3, moles_hint=1), name='picomoles_per_cubic_millimeter', ascii_symbol='pmol mm^-3', symbol='pmolmm⁻³') -femtomoles_per_cubic_millimeter = NamedUnit(6.02214076e+17, Dimensions(length=-3, moles_hint=1), name='femtomoles_per_cubic_millimeter', ascii_symbol='fmol mm^-3', symbol='fmolmm⁻³') -attomoles_per_cubic_millimeter = NamedUnit(602214076000000.0, Dimensions(length=-3, moles_hint=1), name='attomoles_per_cubic_millimeter', ascii_symbol='amol mm^-3', symbol='amolmm⁻³') -moles_per_cubic_micrometer = NamedUnit(6.022140760000001e+41, Dimensions(length=-3, moles_hint=1), name='moles_per_cubic_micrometer', ascii_symbol='mol um^-3', symbol='molµm⁻³') -millimoles_per_cubic_micrometer = NamedUnit(6.022140760000001e+38, Dimensions(length=-3, moles_hint=1), name='millimoles_per_cubic_micrometer', ascii_symbol='mmol um^-3', symbol='mmolµm⁻³') -micromoles_per_cubic_micrometer = NamedUnit(6.0221407600000004e+35, Dimensions(length=-3, moles_hint=1), name='micromoles_per_cubic_micrometer', ascii_symbol='umol um^-3', symbol='µmolµm⁻³') -nanomoles_per_cubic_micrometer = NamedUnit(6.022140760000001e+32, Dimensions(length=-3, moles_hint=1), name='nanomoles_per_cubic_micrometer', ascii_symbol='nmol um^-3', symbol='nmolµm⁻³') -picomoles_per_cubic_micrometer = NamedUnit(6.022140760000001e+29, Dimensions(length=-3, moles_hint=1), name='picomoles_per_cubic_micrometer', ascii_symbol='pmol um^-3', symbol='pmolµm⁻³') -femtomoles_per_cubic_micrometer = NamedUnit(6.022140760000001e+26, Dimensions(length=-3, moles_hint=1), name='femtomoles_per_cubic_micrometer', ascii_symbol='fmol um^-3', symbol='fmolµm⁻³') -attomoles_per_cubic_micrometer = NamedUnit(6.0221407600000005e+23, Dimensions(length=-3, moles_hint=1), name='attomoles_per_cubic_micrometer', ascii_symbol='amol um^-3', symbol='amolµm⁻³') -moles_per_cubic_nanometer = NamedUnit(6.022140759999999e+50, Dimensions(length=-3, moles_hint=1), name='moles_per_cubic_nanometer', ascii_symbol='mol nm^-3', symbol='molnm⁻³') -millimoles_per_cubic_nanometer = NamedUnit(6.022140759999999e+47, Dimensions(length=-3, moles_hint=1), name='millimoles_per_cubic_nanometer', ascii_symbol='mmol nm^-3', symbol='mmolnm⁻³') -micromoles_per_cubic_nanometer = NamedUnit(6.022140759999999e+44, Dimensions(length=-3, moles_hint=1), name='micromoles_per_cubic_nanometer', ascii_symbol='umol nm^-3', symbol='µmolnm⁻³') -nanomoles_per_cubic_nanometer = NamedUnit(6.022140759999998e+41, Dimensions(length=-3, moles_hint=1), name='nanomoles_per_cubic_nanometer', ascii_symbol='nmol nm^-3', symbol='nmolnm⁻³') -picomoles_per_cubic_nanometer = NamedUnit(6.0221407599999985e+38, Dimensions(length=-3, moles_hint=1), name='picomoles_per_cubic_nanometer', ascii_symbol='pmol nm^-3', symbol='pmolnm⁻³') -femtomoles_per_cubic_nanometer = NamedUnit(6.022140759999999e+35, Dimensions(length=-3, moles_hint=1), name='femtomoles_per_cubic_nanometer', ascii_symbol='fmol nm^-3', symbol='fmolnm⁻³') -attomoles_per_cubic_nanometer = NamedUnit(6.022140759999999e+32, Dimensions(length=-3, moles_hint=1), name='attomoles_per_cubic_nanometer', ascii_symbol='amol nm^-3', symbol='amolnm⁻³') -moles_per_cubic_picometer = NamedUnit(6.0221407600000005e+59, Dimensions(length=-3, moles_hint=1), name='moles_per_cubic_picometer', ascii_symbol='mol pm^-3', symbol='molpm⁻³') -millimoles_per_cubic_picometer = NamedUnit(6.0221407600000005e+56, Dimensions(length=-3, moles_hint=1), name='millimoles_per_cubic_picometer', ascii_symbol='mmol pm^-3', symbol='mmolpm⁻³') -micromoles_per_cubic_picometer = NamedUnit(6.022140760000001e+53, Dimensions(length=-3, moles_hint=1), name='micromoles_per_cubic_picometer', ascii_symbol='umol pm^-3', symbol='µmolpm⁻³') -nanomoles_per_cubic_picometer = NamedUnit(6.0221407600000005e+50, Dimensions(length=-3, moles_hint=1), name='nanomoles_per_cubic_picometer', ascii_symbol='nmol pm^-3', symbol='nmolpm⁻³') -picomoles_per_cubic_picometer = NamedUnit(6.02214076e+47, Dimensions(length=-3, moles_hint=1), name='picomoles_per_cubic_picometer', ascii_symbol='pmol pm^-3', symbol='pmolpm⁻³') -femtomoles_per_cubic_picometer = NamedUnit(6.022140760000001e+44, Dimensions(length=-3, moles_hint=1), name='femtomoles_per_cubic_picometer', ascii_symbol='fmol pm^-3', symbol='fmolpm⁻³') -attomoles_per_cubic_picometer = NamedUnit(6.022140760000001e+41, Dimensions(length=-3, moles_hint=1), name='attomoles_per_cubic_picometer', ascii_symbol='amol pm^-3', symbol='amolpm⁻³') -moles_per_cubic_femtometer = NamedUnit(6.022140759999998e+68, Dimensions(length=-3, moles_hint=1), name='moles_per_cubic_femtometer', ascii_symbol='mol fm^-3', symbol='molfm⁻³') -millimoles_per_cubic_femtometer = NamedUnit(6.022140759999998e+65, Dimensions(length=-3, moles_hint=1), name='millimoles_per_cubic_femtometer', ascii_symbol='mmol fm^-3', symbol='mmolfm⁻³') -micromoles_per_cubic_femtometer = NamedUnit(6.022140759999999e+62, Dimensions(length=-3, moles_hint=1), name='micromoles_per_cubic_femtometer', ascii_symbol='umol fm^-3', symbol='µmolfm⁻³') -nanomoles_per_cubic_femtometer = NamedUnit(6.022140759999998e+59, Dimensions(length=-3, moles_hint=1), name='nanomoles_per_cubic_femtometer', ascii_symbol='nmol fm^-3', symbol='nmolfm⁻³') -picomoles_per_cubic_femtometer = NamedUnit(6.022140759999998e+56, Dimensions(length=-3, moles_hint=1), name='picomoles_per_cubic_femtometer', ascii_symbol='pmol fm^-3', symbol='pmolfm⁻³') -femtomoles_per_cubic_femtometer = NamedUnit(6.022140759999998e+53, Dimensions(length=-3, moles_hint=1), name='femtomoles_per_cubic_femtometer', ascii_symbol='fmol fm^-3', symbol='fmolfm⁻³') -attomoles_per_cubic_femtometer = NamedUnit(6.022140759999998e+50, Dimensions(length=-3, moles_hint=1), name='attomoles_per_cubic_femtometer', ascii_symbol='amol fm^-3', symbol='amolfm⁻³') -moles_per_cubic_attometer = NamedUnit(6.022140759999998e+77, Dimensions(length=-3, moles_hint=1), name='moles_per_cubic_attometer', ascii_symbol='mol am^-3', symbol='molam⁻³') -millimoles_per_cubic_attometer = NamedUnit(6.022140759999999e+74, Dimensions(length=-3, moles_hint=1), name='millimoles_per_cubic_attometer', ascii_symbol='mmol am^-3', symbol='mmolam⁻³') -micromoles_per_cubic_attometer = NamedUnit(6.022140759999999e+71, Dimensions(length=-3, moles_hint=1), name='micromoles_per_cubic_attometer', ascii_symbol='umol am^-3', symbol='µmolam⁻³') -nanomoles_per_cubic_attometer = NamedUnit(6.022140759999999e+68, Dimensions(length=-3, moles_hint=1), name='nanomoles_per_cubic_attometer', ascii_symbol='nmol am^-3', symbol='nmolam⁻³') -picomoles_per_cubic_attometer = NamedUnit(6.022140759999999e+65, Dimensions(length=-3, moles_hint=1), name='picomoles_per_cubic_attometer', ascii_symbol='pmol am^-3', symbol='pmolam⁻³') -femtomoles_per_cubic_attometer = NamedUnit(6.022140759999999e+62, Dimensions(length=-3, moles_hint=1), name='femtomoles_per_cubic_attometer', ascii_symbol='fmol am^-3', symbol='fmolam⁻³') -attomoles_per_cubic_attometer = NamedUnit(6.022140759999999e+59, Dimensions(length=-3, moles_hint=1), name='attomoles_per_cubic_attometer', ascii_symbol='amol am^-3', symbol='amolam⁻³') -moles_per_cubic_decimeter = NamedUnit(6.022140759999998e+26, Dimensions(length=-3, moles_hint=1), name='moles_per_cubic_decimeter', ascii_symbol='mol dm^-3', symbol='moldm⁻³') -millimoles_per_cubic_decimeter = NamedUnit(6.0221407599999985e+23, Dimensions(length=-3, moles_hint=1), name='millimoles_per_cubic_decimeter', ascii_symbol='mmol dm^-3', symbol='mmoldm⁻³') -micromoles_per_cubic_decimeter = NamedUnit(6.022140759999999e+20, Dimensions(length=-3, moles_hint=1), name='micromoles_per_cubic_decimeter', ascii_symbol='umol dm^-3', symbol='µmoldm⁻³') -nanomoles_per_cubic_decimeter = NamedUnit(6.022140759999999e+17, Dimensions(length=-3, moles_hint=1), name='nanomoles_per_cubic_decimeter', ascii_symbol='nmol dm^-3', symbol='nmoldm⁻³') -picomoles_per_cubic_decimeter = NamedUnit(602214075999999.9, Dimensions(length=-3, moles_hint=1), name='picomoles_per_cubic_decimeter', ascii_symbol='pmol dm^-3', symbol='pmoldm⁻³') -femtomoles_per_cubic_decimeter = NamedUnit(602214075999.9999, Dimensions(length=-3, moles_hint=1), name='femtomoles_per_cubic_decimeter', ascii_symbol='fmol dm^-3', symbol='fmoldm⁻³') -attomoles_per_cubic_decimeter = NamedUnit(602214075.9999999, Dimensions(length=-3, moles_hint=1), name='attomoles_per_cubic_decimeter', ascii_symbol='amol dm^-3', symbol='amoldm⁻³') -moles_per_cubic_centimeter = NamedUnit(6.022140759999999e+29, Dimensions(length=-3, moles_hint=1), name='moles_per_cubic_centimeter', ascii_symbol='mol cm^-3', symbol='molcm⁻³') -millimoles_per_cubic_centimeter = NamedUnit(6.022140759999999e+26, Dimensions(length=-3, moles_hint=1), name='millimoles_per_cubic_centimeter', ascii_symbol='mmol cm^-3', symbol='mmolcm⁻³') -micromoles_per_cubic_centimeter = NamedUnit(6.022140759999999e+23, Dimensions(length=-3, moles_hint=1), name='micromoles_per_cubic_centimeter', ascii_symbol='umol cm^-3', symbol='µmolcm⁻³') -nanomoles_per_cubic_centimeter = NamedUnit(6.022140759999999e+20, Dimensions(length=-3, moles_hint=1), name='nanomoles_per_cubic_centimeter', ascii_symbol='nmol cm^-3', symbol='nmolcm⁻³') -picomoles_per_cubic_centimeter = NamedUnit(6.022140759999999e+17, Dimensions(length=-3, moles_hint=1), name='picomoles_per_cubic_centimeter', ascii_symbol='pmol cm^-3', symbol='pmolcm⁻³') -femtomoles_per_cubic_centimeter = NamedUnit(602214075999999.9, Dimensions(length=-3, moles_hint=1), name='femtomoles_per_cubic_centimeter', ascii_symbol='fmol cm^-3', symbol='fmolcm⁻³') -attomoles_per_cubic_centimeter = NamedUnit(602214075999.9999, Dimensions(length=-3, moles_hint=1), name='attomoles_per_cubic_centimeter', ascii_symbol='amol cm^-3', symbol='amolcm⁻³') -moles_per_cubic_angstrom = NamedUnit(6.022140759999999e+53, Dimensions(length=-3, moles_hint=1), name='moles_per_cubic_angstrom', ascii_symbol='mol Ang^-3', symbol='molÅ⁻³') -millimoles_per_cubic_angstrom = NamedUnit(6.02214076e+50, Dimensions(length=-3, moles_hint=1), name='millimoles_per_cubic_angstrom', ascii_symbol='mmol Ang^-3', symbol='mmolÅ⁻³') -micromoles_per_cubic_angstrom = NamedUnit(6.022140759999999e+47, Dimensions(length=-3, moles_hint=1), name='micromoles_per_cubic_angstrom', ascii_symbol='umol Ang^-3', symbol='µmolÅ⁻³') -nanomoles_per_cubic_angstrom = NamedUnit(6.02214076e+44, Dimensions(length=-3, moles_hint=1), name='nanomoles_per_cubic_angstrom', ascii_symbol='nmol Ang^-3', symbol='nmolÅ⁻³') -picomoles_per_cubic_angstrom = NamedUnit(6.02214076e+41, Dimensions(length=-3, moles_hint=1), name='picomoles_per_cubic_angstrom', ascii_symbol='pmol Ang^-3', symbol='pmolÅ⁻³') -femtomoles_per_cubic_angstrom = NamedUnit(6.022140759999999e+38, Dimensions(length=-3, moles_hint=1), name='femtomoles_per_cubic_angstrom', ascii_symbol='fmol Ang^-3', symbol='fmolÅ⁻³') -attomoles_per_cubic_angstrom = NamedUnit(6.02214076e+35, Dimensions(length=-3, moles_hint=1), name='attomoles_per_cubic_angstrom', ascii_symbol='amol Ang^-3', symbol='amolÅ⁻³') -moles_per_cubic_micron = NamedUnit(6.022140760000001e+41, Dimensions(length=-3, moles_hint=1), name='moles_per_cubic_micron', ascii_symbol='mol micron^-3', symbol='molmicron⁻³') -millimoles_per_cubic_micron = NamedUnit(6.022140760000001e+38, Dimensions(length=-3, moles_hint=1), name='millimoles_per_cubic_micron', ascii_symbol='mmol micron^-3', symbol='mmolmicron⁻³') -micromoles_per_cubic_micron = NamedUnit(6.0221407600000004e+35, Dimensions(length=-3, moles_hint=1), name='micromoles_per_cubic_micron', ascii_symbol='umol micron^-3', symbol='µmolmicron⁻³') -nanomoles_per_cubic_micron = NamedUnit(6.022140760000001e+32, Dimensions(length=-3, moles_hint=1), name='nanomoles_per_cubic_micron', ascii_symbol='nmol micron^-3', symbol='nmolmicron⁻³') -picomoles_per_cubic_micron = NamedUnit(6.022140760000001e+29, Dimensions(length=-3, moles_hint=1), name='picomoles_per_cubic_micron', ascii_symbol='pmol micron^-3', symbol='pmolmicron⁻³') -femtomoles_per_cubic_micron = NamedUnit(6.022140760000001e+26, Dimensions(length=-3, moles_hint=1), name='femtomoles_per_cubic_micron', ascii_symbol='fmol micron^-3', symbol='fmolmicron⁻³') -attomoles_per_cubic_micron = NamedUnit(6.0221407600000005e+23, Dimensions(length=-3, moles_hint=1), name='attomoles_per_cubic_micron', ascii_symbol='amol micron^-3', symbol='amolmicron⁻³') -moles_per_cubic_mile = NamedUnit(144478840228220.0, Dimensions(length=-3, moles_hint=1), name='moles_per_cubic_mile', ascii_symbol='mol miles^-3', symbol='molmiles⁻³') -millimoles_per_cubic_mile = NamedUnit(144478840228.22003, Dimensions(length=-3, moles_hint=1), name='millimoles_per_cubic_mile', ascii_symbol='mmol miles^-3', symbol='mmolmiles⁻³') -micromoles_per_cubic_mile = NamedUnit(144478840.22822002, Dimensions(length=-3, moles_hint=1), name='micromoles_per_cubic_mile', ascii_symbol='umol miles^-3', symbol='µmolmiles⁻³') -nanomoles_per_cubic_mile = NamedUnit(144478.84022822, Dimensions(length=-3, moles_hint=1), name='nanomoles_per_cubic_mile', ascii_symbol='nmol miles^-3', symbol='nmolmiles⁻³') -picomoles_per_cubic_mile = NamedUnit(144.47884022822, Dimensions(length=-3, moles_hint=1), name='picomoles_per_cubic_mile', ascii_symbol='pmol miles^-3', symbol='pmolmiles⁻³') -femtomoles_per_cubic_mile = NamedUnit(0.14447884022822002, Dimensions(length=-3, moles_hint=1), name='femtomoles_per_cubic_mile', ascii_symbol='fmol miles^-3', symbol='fmolmiles⁻³') -attomoles_per_cubic_mile = NamedUnit(0.00014447884022822003, Dimensions(length=-3, moles_hint=1), name='attomoles_per_cubic_mile', ascii_symbol='amol miles^-3', symbol='amolmiles⁻³') -moles_per_cubic_yard = NamedUnit(7.876662736640442e+23, Dimensions(length=-3, moles_hint=1), name='moles_per_cubic_yard', ascii_symbol='mol yrd^-3', symbol='molyrd⁻³') -millimoles_per_cubic_yard = NamedUnit(7.876662736640442e+20, Dimensions(length=-3, moles_hint=1), name='millimoles_per_cubic_yard', ascii_symbol='mmol yrd^-3', symbol='mmolyrd⁻³') -micromoles_per_cubic_yard = NamedUnit(7.876662736640442e+17, Dimensions(length=-3, moles_hint=1), name='micromoles_per_cubic_yard', ascii_symbol='umol yrd^-3', symbol='µmolyrd⁻³') -nanomoles_per_cubic_yard = NamedUnit(787666273664044.2, Dimensions(length=-3, moles_hint=1), name='nanomoles_per_cubic_yard', ascii_symbol='nmol yrd^-3', symbol='nmolyrd⁻³') -picomoles_per_cubic_yard = NamedUnit(787666273664.0442, Dimensions(length=-3, moles_hint=1), name='picomoles_per_cubic_yard', ascii_symbol='pmol yrd^-3', symbol='pmolyrd⁻³') -femtomoles_per_cubic_yard = NamedUnit(787666273.6640443, Dimensions(length=-3, moles_hint=1), name='femtomoles_per_cubic_yard', ascii_symbol='fmol yrd^-3', symbol='fmolyrd⁻³') -attomoles_per_cubic_yard = NamedUnit(787666.2736640442, Dimensions(length=-3, moles_hint=1), name='attomoles_per_cubic_yard', ascii_symbol='amol yrd^-3', symbol='amolyrd⁻³') -moles_per_cubic_foot = NamedUnit(2.1266989388929195e+25, Dimensions(length=-3, moles_hint=1), name='moles_per_cubic_foot', ascii_symbol='mol ft^-3', symbol='molft⁻³') -millimoles_per_cubic_foot = NamedUnit(2.1266989388929197e+22, Dimensions(length=-3, moles_hint=1), name='millimoles_per_cubic_foot', ascii_symbol='mmol ft^-3', symbol='mmolft⁻³') -micromoles_per_cubic_foot = NamedUnit(2.1266989388929196e+19, Dimensions(length=-3, moles_hint=1), name='micromoles_per_cubic_foot', ascii_symbol='umol ft^-3', symbol='µmolft⁻³') -nanomoles_per_cubic_foot = NamedUnit(2.1266989388929196e+16, Dimensions(length=-3, moles_hint=1), name='nanomoles_per_cubic_foot', ascii_symbol='nmol ft^-3', symbol='nmolft⁻³') -picomoles_per_cubic_foot = NamedUnit(21266989388929.2, Dimensions(length=-3, moles_hint=1), name='picomoles_per_cubic_foot', ascii_symbol='pmol ft^-3', symbol='pmolft⁻³') -femtomoles_per_cubic_foot = NamedUnit(21266989388.9292, Dimensions(length=-3, moles_hint=1), name='femtomoles_per_cubic_foot', ascii_symbol='fmol ft^-3', symbol='fmolft⁻³') -attomoles_per_cubic_foot = NamedUnit(21266989.388929196, Dimensions(length=-3, moles_hint=1), name='attomoles_per_cubic_foot', ascii_symbol='amol ft^-3', symbol='amolft⁻³') -moles_per_cubic_inch = NamedUnit(3.6749357664069658e+28, Dimensions(length=-3, moles_hint=1), name='moles_per_cubic_inch', ascii_symbol='mol in^-3', symbol='molin⁻³') -millimoles_per_cubic_inch = NamedUnit(3.674935766406966e+25, Dimensions(length=-3, moles_hint=1), name='millimoles_per_cubic_inch', ascii_symbol='mmol in^-3', symbol='mmolin⁻³') -micromoles_per_cubic_inch = NamedUnit(3.674935766406966e+22, Dimensions(length=-3, moles_hint=1), name='micromoles_per_cubic_inch', ascii_symbol='umol in^-3', symbol='µmolin⁻³') -nanomoles_per_cubic_inch = NamedUnit(3.674935766406966e+19, Dimensions(length=-3, moles_hint=1), name='nanomoles_per_cubic_inch', ascii_symbol='nmol in^-3', symbol='nmolin⁻³') -picomoles_per_cubic_inch = NamedUnit(3.674935766406966e+16, Dimensions(length=-3, moles_hint=1), name='picomoles_per_cubic_inch', ascii_symbol='pmol in^-3', symbol='pmolin⁻³') -femtomoles_per_cubic_inch = NamedUnit(36749357664069.664, Dimensions(length=-3, moles_hint=1), name='femtomoles_per_cubic_inch', ascii_symbol='fmol in^-3', symbol='fmolin⁻³') -attomoles_per_cubic_inch = NamedUnit(36749357664.069664, Dimensions(length=-3, moles_hint=1), name='attomoles_per_cubic_inch', ascii_symbol='amol in^-3', symbol='amolin⁻³') - -# -# Lookup table from symbols to units -# - -symbol_lookup = { - "m": meters, - "Em": exameters, - "Pm": petameters, - "Tm": terameters, - "Gm": gigameters, - "Mm": megameters, - "km": kilometers, - "mm": millimeters, - "um": micrometers, - "µm": micrometers, - "nm": nanometers, - "pm": picometers, - "fm": femtometers, - "am": attometers, - "dm": decimeters, - "cm": centimeters, - "s": seconds, - "ms": milliseconds, - "us": microseconds, - "µs": microseconds, - "ns": nanoseconds, - "ps": picoseconds, - "fs": femtoseconds, - "as": attoseconds, - "g": grams, - "Eg": exagrams, - "Pg": petagrams, - "Tg": teragrams, - "Gg": gigagrams, - "Mg": megagrams, - "kg": kilograms, - "mg": milligrams, - "ug": micrograms, - "µg": micrograms, - "ng": nanograms, - "pg": picograms, - "fg": femtograms, - "ag": attograms, - "A": angstroms, - "EA": exaamperes, - "PA": petaamperes, - "TA": teraamperes, - "GA": gigaamperes, - "MA": megaamperes, - "kA": kiloamperes, - "mA": milliamperes, - "uA": microamperes, - "µA": microamperes, - "nA": nanoamperes, - "pA": picoamperes, - "fA": femtoamperes, - "aA": attoamperes, - "K": kelvin, - "EK": exakelvin, - "PK": petakelvin, - "TK": terakelvin, - "GK": gigakelvin, - "MK": megakelvin, - "kK": kilokelvin, - "mK": millikelvin, - "uK": microkelvin, - "µK": microkelvin, - "nK": nanokelvin, - "pK": picokelvin, - "fK": femtokelvin, - "aK": attokelvin, - "Hz": hertz, - "EHz": exahertz, - "PHz": petahertz, - "THz": terahertz, - "GHz": gigahertz, - "MHz": megahertz, - "kHz": kilohertz, - "mHz": millihertz, - "uHz": microhertz, - "µHz": microhertz, - "nHz": nanohertz, - "pHz": picohertz, - "fHz": femtohertz, - "aHz": attohertz, - "N": newtons, - "EN": exanewtons, - "PN": petanewtons, - "TN": teranewtons, - "GN": giganewtons, - "MN": meganewtons, - "kN": kilonewtons, - "mN": millinewtons, - "uN": micronewtons, - "µN": micronewtons, - "nN": nanonewtons, - "pN": piconewtons, - "fN": femtonewtons, - "aN": attonewtons, - "Pa": pascals, - "EPa": exapascals, - "PPa": petapascals, - "TPa": terapascals, - "GPa": gigapascals, - "MPa": megapascals, - "kPa": kilopascals, - "mPa": millipascals, - "uPa": micropascals, - "µPa": micropascals, - "nPa": nanopascals, - "pPa": picopascals, - "fPa": femtopascals, - "aPa": attopascals, - "J": joules, - "EJ": exajoules, - "PJ": petajoules, - "TJ": terajoules, - "GJ": gigajoules, - "MJ": megajoules, - "kJ": kilojoules, - "mJ": millijoules, - "uJ": microjoules, - "µJ": microjoules, - "nJ": nanojoules, - "pJ": picojoules, - "fJ": femtojoules, - "aJ": attojoules, - "W": watts, - "EW": exawatts, - "PW": petawatts, - "TW": terawatts, - "GW": gigawatts, - "MW": megawatts, - "kW": kilowatts, - "mW": milliwatts, - "uW": microwatts, - "µW": microwatts, - "nW": nanowatts, - "pW": picowatts, - "fW": femtowatts, - "aW": attowatts, - "C": kelvin, - "EC": exacoulombs, - "PC": petacoulombs, - "TC": teracoulombs, - "GC": gigacoulombs, - "MC": megacoulombs, - "kC": kilocoulombs, - "mC": millicoulombs, - "uC": microcoulombs, - "µC": microcoulombs, - "nC": nanocoulombs, - "pC": picocoulombs, - "fC": femtocoulombs, - "aC": attocoulombs, - "V": volts, - "EV": exavolts, - "PV": petavolts, - "TV": teravolts, - "GV": gigavolts, - "MV": megavolts, - "kV": kilovolts, - "mV": millivolts, - "uV": microvolts, - "µV": microvolts, - "nV": nanovolts, - "pV": picovolts, - "fV": femtovolts, - "aV": attovolts, - "Ohm": ohms, - "Ω": ohms, - "EOhm": exaohms, - "EΩ": exaohms, - "POhm": petaohms, - "PΩ": petaohms, - "TOhm": teraohms, - "TΩ": teraohms, - "GOhm": gigaohms, - "GΩ": gigaohms, - "MOhm": megaohms, - "MΩ": megaohms, - "kOhm": kiloohms, - "kΩ": kiloohms, - "mOhm": milliohms, - "mΩ": milliohms, - "uOhm": microohms, - "µΩ": microohms, - "nOhm": nanoohms, - "nΩ": nanoohms, - "pOhm": picoohms, - "pΩ": picoohms, - "fOhm": femtoohms, - "fΩ": femtoohms, - "aOhm": attoohms, - "aΩ": attoohms, - "F": farads, - "EF": exafarads, - "PF": petafarads, - "TF": terafarads, - "GF": gigafarads, - "MF": megafarads, - "kF": kilofarads, - "mF": millifarads, - "uF": microfarads, - "µF": microfarads, - "nF": nanofarads, - "pF": picofarads, - "fF": femtofarads, - "aF": attofarads, - "S": siemens, - "ES": exasiemens, - "PS": petasiemens, - "TS": terasiemens, - "GS": gigasiemens, - "MS": megasiemens, - "kS": kilosiemens, - "mS": millisiemens, - "uS": microsiemens, - "µS": microsiemens, - "nS": nanosiemens, - "pS": picosiemens, - "fS": femtosiemens, - "aS": attosiemens, - "Wb": webers, - "EWb": exawebers, - "PWb": petawebers, - "TWb": terawebers, - "GWb": gigawebers, - "MWb": megawebers, - "kWb": kilowebers, - "mWb": milliwebers, - "uWb": microwebers, - "µWb": microwebers, - "nWb": nanowebers, - "pWb": picowebers, - "fWb": femtowebers, - "aWb": attowebers, - "T": tesla, - "ET": exatesla, - "PT": petatesla, - "TT": teratesla, - "GT": gigatesla, - "MT": megatesla, - "kT": kilotesla, - "mT": millitesla, - "uT": microtesla, - "µT": microtesla, - "nT": nanotesla, - "pT": picotesla, - "fT": femtotesla, - "aT": attotesla, - "H": henry, - "EH": exahenry, - "PH": petahenry, - "TH": terahenry, - "GH": gigahenry, - "MH": megahenry, - "kH": kilohenry, - "mH": millihenry, - "uH": microhenry, - "µH": microhenry, - "nH": nanohenry, - "pH": picohenry, - "fH": femtohenry, - "aH": attohenry, - "Ang": angstroms, - "Å": angstroms, - "micron": microns, - "min": minutes, - "rpm": revolutions_per_minute, - "h": hours, - "d": days, - "y": years, - "deg": degrees, - "rad": radians, - "rot": rotations, - "sr": stradians, - "l": litres, - "eV": electronvolts, - "EeV": exaelectronvolts, - "PeV": petaelectronvolts, - "TeV": teraelectronvolts, - "GeV": gigaelectronvolts, - "MeV": megaelectronvolts, - "keV": kiloelectronvolts, - "meV": millielectronvolts, - "ueV": microelectronvolts, - "µeV": microelectronvolts, - "neV": nanoelectronvolts, - "peV": picoelectronvolts, - "feV": femtoelectronvolts, - "aeV": attoelectronvolts, - "au": atomic_mass_units, - "mol": moles, - "mmol": millimoles, - "umol": micromoles, - "µmol": micromoles, - "nmol": nanomoles, - "pmol": picomoles, - "fmol": femtomoles, - "amol": attomoles, - "kgForce": kg_force, - "miles": miles, - "yrd": yards, - "ft": feet, - "in": inches, - "lb": pounds, - "lbf": pounds_force, - "oz": ounces, - "psi": pounds_force_per_square_inch, - "percent": percent, - "%": percent, - "Amps": amperes, - "amps": amperes, - "Coulombs": degrees_celsius, - "coulombs": degrees_celsius, - "yr": years, - "year": years, - "day": days, - "hr": hours, - "hour": hours, - "amu": atomic_mass_units, - "degr": degrees, - "Deg": degrees, - "degree": degrees, - "degrees": degrees, - "Degrees": degrees, - "Counts": none, - "counts": none, - "cnts": none, - "Cnts": none, - "a.u.": none, - "fraction": none, - "Fraction": none, -} - - -# -# Units by type -# - - -length = UnitGroup( - name = 'length', - units = [ - meters, - exameters, - petameters, - terameters, - gigameters, - megameters, - kilometers, - millimeters, - micrometers, - nanometers, - picometers, - femtometers, - attometers, - decimeters, - centimeters, - angstroms, - microns, - miles, - yards, - feet, - inches, -]) - -area = UnitGroup( - name = 'area', - units = [ - square_meters, - square_exameters, - square_petameters, - square_terameters, - square_gigameters, - square_megameters, - square_kilometers, - square_millimeters, - square_micrometers, - square_nanometers, - square_picometers, - square_femtometers, - square_attometers, - square_decimeters, - square_centimeters, - square_angstroms, - square_microns, - square_miles, - square_yards, - square_feet, - square_inches, -]) - -volume = UnitGroup( - name = 'volume', - units = [ - litres, - cubic_meters, - cubic_exameters, - cubic_petameters, - cubic_terameters, - cubic_gigameters, - cubic_megameters, - cubic_kilometers, - cubic_millimeters, - cubic_micrometers, - cubic_nanometers, - cubic_picometers, - cubic_femtometers, - cubic_attometers, - cubic_decimeters, - cubic_centimeters, - cubic_angstroms, - cubic_microns, - cubic_miles, - cubic_yards, - cubic_feet, - cubic_inches, -]) - -inverse_length = UnitGroup( - name = 'inverse_length', - units = [ - per_meter, - per_exameter, - per_petameter, - per_terameter, - per_gigameter, - per_megameter, - per_kilometer, - per_millimeter, - per_micrometer, - per_nanometer, - per_picometer, - per_femtometer, - per_attometer, - per_decimeter, - per_centimeter, - per_angstrom, - per_micron, - per_mile, - per_yard, - per_foot, - per_inch, -]) - -inverse_area = UnitGroup( - name = 'inverse_area', - units = [ - per_square_meter, - per_square_exameter, - per_square_petameter, - per_square_terameter, - per_square_gigameter, - per_square_megameter, - per_square_kilometer, - per_square_millimeter, - per_square_micrometer, - per_square_nanometer, - per_square_picometer, - per_square_femtometer, - per_square_attometer, - per_square_decimeter, - per_square_centimeter, - per_square_angstrom, - per_square_micron, - per_square_mile, - per_square_yard, - per_square_foot, - per_square_inch, -]) - -inverse_volume = UnitGroup( - name = 'inverse_volume', - units = [ - per_cubic_meter, - per_cubic_exameter, - per_cubic_petameter, - per_cubic_terameter, - per_cubic_gigameter, - per_cubic_megameter, - per_cubic_kilometer, - per_cubic_millimeter, - per_cubic_micrometer, - per_cubic_nanometer, - per_cubic_picometer, - per_cubic_femtometer, - per_cubic_attometer, - per_cubic_decimeter, - per_cubic_centimeter, - per_cubic_angstrom, - per_cubic_micron, - per_cubic_mile, - per_cubic_yard, - per_cubic_foot, - per_cubic_inch, -]) - -time = UnitGroup( - name = 'time', - units = [ - seconds, - milliseconds, - microseconds, - nanoseconds, - picoseconds, - femtoseconds, - attoseconds, - minutes, - hours, - days, - years, -]) - -rate = UnitGroup( - name = 'rate', - units = [ - hertz, - exahertz, - petahertz, - terahertz, - gigahertz, - megahertz, - kilohertz, - millihertz, - microhertz, - nanohertz, - picohertz, - femtohertz, - attohertz, - revolutions_per_minute, -]) - -speed = UnitGroup( - name = 'speed', - units = [ - meters_per_second, - meters_per_millisecond, - meters_per_microsecond, - meters_per_nanosecond, - meters_per_picosecond, - meters_per_femtosecond, - meters_per_attosecond, - meters_per_minute, - meters_per_hour, - meters_per_day, - meters_per_year, - exameters_per_second, - exameters_per_millisecond, - exameters_per_microsecond, - exameters_per_nanosecond, - exameters_per_picosecond, - exameters_per_femtosecond, - exameters_per_attosecond, - exameters_per_minute, - exameters_per_hour, - exameters_per_day, - exameters_per_year, - petameters_per_second, - petameters_per_millisecond, - petameters_per_microsecond, - petameters_per_nanosecond, - petameters_per_picosecond, - petameters_per_femtosecond, - petameters_per_attosecond, - petameters_per_minute, - petameters_per_hour, - petameters_per_day, - petameters_per_year, - terameters_per_second, - terameters_per_millisecond, - terameters_per_microsecond, - terameters_per_nanosecond, - terameters_per_picosecond, - terameters_per_femtosecond, - terameters_per_attosecond, - terameters_per_minute, - terameters_per_hour, - terameters_per_day, - terameters_per_year, - gigameters_per_second, - gigameters_per_millisecond, - gigameters_per_microsecond, - gigameters_per_nanosecond, - gigameters_per_picosecond, - gigameters_per_femtosecond, - gigameters_per_attosecond, - gigameters_per_minute, - gigameters_per_hour, - gigameters_per_day, - gigameters_per_year, - megameters_per_second, - megameters_per_millisecond, - megameters_per_microsecond, - megameters_per_nanosecond, - megameters_per_picosecond, - megameters_per_femtosecond, - megameters_per_attosecond, - megameters_per_minute, - megameters_per_hour, - megameters_per_day, - megameters_per_year, - kilometers_per_second, - kilometers_per_millisecond, - kilometers_per_microsecond, - kilometers_per_nanosecond, - kilometers_per_picosecond, - kilometers_per_femtosecond, - kilometers_per_attosecond, - kilometers_per_minute, - kilometers_per_hour, - kilometers_per_day, - kilometers_per_year, - millimeters_per_second, - millimeters_per_millisecond, - millimeters_per_microsecond, - millimeters_per_nanosecond, - millimeters_per_picosecond, - millimeters_per_femtosecond, - millimeters_per_attosecond, - millimeters_per_minute, - millimeters_per_hour, - millimeters_per_day, - millimeters_per_year, - micrometers_per_second, - micrometers_per_millisecond, - micrometers_per_microsecond, - micrometers_per_nanosecond, - micrometers_per_picosecond, - micrometers_per_femtosecond, - micrometers_per_attosecond, - micrometers_per_minute, - micrometers_per_hour, - micrometers_per_day, - micrometers_per_year, - nanometers_per_second, - nanometers_per_millisecond, - nanometers_per_microsecond, - nanometers_per_nanosecond, - nanometers_per_picosecond, - nanometers_per_femtosecond, - nanometers_per_attosecond, - nanometers_per_minute, - nanometers_per_hour, - nanometers_per_day, - nanometers_per_year, - picometers_per_second, - picometers_per_millisecond, - picometers_per_microsecond, - picometers_per_nanosecond, - picometers_per_picosecond, - picometers_per_femtosecond, - picometers_per_attosecond, - picometers_per_minute, - picometers_per_hour, - picometers_per_day, - picometers_per_year, - femtometers_per_second, - femtometers_per_millisecond, - femtometers_per_microsecond, - femtometers_per_nanosecond, - femtometers_per_picosecond, - femtometers_per_femtosecond, - femtometers_per_attosecond, - femtometers_per_minute, - femtometers_per_hour, - femtometers_per_day, - femtometers_per_year, - attometers_per_second, - attometers_per_millisecond, - attometers_per_microsecond, - attometers_per_nanosecond, - attometers_per_picosecond, - attometers_per_femtosecond, - attometers_per_attosecond, - attometers_per_minute, - attometers_per_hour, - attometers_per_day, - attometers_per_year, - decimeters_per_second, - decimeters_per_millisecond, - decimeters_per_microsecond, - decimeters_per_nanosecond, - decimeters_per_picosecond, - decimeters_per_femtosecond, - decimeters_per_attosecond, - decimeters_per_minute, - decimeters_per_hour, - decimeters_per_day, - decimeters_per_year, - centimeters_per_second, - centimeters_per_millisecond, - centimeters_per_microsecond, - centimeters_per_nanosecond, - centimeters_per_picosecond, - centimeters_per_femtosecond, - centimeters_per_attosecond, - centimeters_per_minute, - centimeters_per_hour, - centimeters_per_day, - centimeters_per_year, - angstroms_per_second, - angstroms_per_millisecond, - angstroms_per_microsecond, - angstroms_per_nanosecond, - angstroms_per_picosecond, - angstroms_per_femtosecond, - angstroms_per_attosecond, - angstroms_per_minute, - angstroms_per_hour, - angstroms_per_day, - angstroms_per_year, - microns_per_second, - microns_per_millisecond, - microns_per_microsecond, - microns_per_nanosecond, - microns_per_picosecond, - microns_per_femtosecond, - microns_per_attosecond, - microns_per_minute, - microns_per_hour, - microns_per_day, - microns_per_year, - miles_per_second, - miles_per_millisecond, - miles_per_microsecond, - miles_per_nanosecond, - miles_per_picosecond, - miles_per_femtosecond, - miles_per_attosecond, - miles_per_minute, - miles_per_hour, - miles_per_day, - miles_per_year, - yards_per_second, - yards_per_millisecond, - yards_per_microsecond, - yards_per_nanosecond, - yards_per_picosecond, - yards_per_femtosecond, - yards_per_attosecond, - yards_per_minute, - yards_per_hour, - yards_per_day, - yards_per_year, - feet_per_second, - feet_per_millisecond, - feet_per_microsecond, - feet_per_nanosecond, - feet_per_picosecond, - feet_per_femtosecond, - feet_per_attosecond, - feet_per_minute, - feet_per_hour, - feet_per_day, - feet_per_year, - inches_per_second, - inches_per_millisecond, - inches_per_microsecond, - inches_per_nanosecond, - inches_per_picosecond, - inches_per_femtosecond, - inches_per_attosecond, - inches_per_minute, - inches_per_hour, - inches_per_day, - inches_per_year, -]) - -acceleration = UnitGroup( - name = 'acceleration', - units = [ - meters_per_square_second, - meters_per_square_millisecond, - meters_per_square_microsecond, - meters_per_square_nanosecond, - meters_per_square_picosecond, - meters_per_square_femtosecond, - meters_per_square_attosecond, - meters_per_square_minute, - meters_per_square_hour, - meters_per_square_day, - meters_per_square_year, - exameters_per_square_second, - exameters_per_square_millisecond, - exameters_per_square_microsecond, - exameters_per_square_nanosecond, - exameters_per_square_picosecond, - exameters_per_square_femtosecond, - exameters_per_square_attosecond, - exameters_per_square_minute, - exameters_per_square_hour, - exameters_per_square_day, - exameters_per_square_year, - petameters_per_square_second, - petameters_per_square_millisecond, - petameters_per_square_microsecond, - petameters_per_square_nanosecond, - petameters_per_square_picosecond, - petameters_per_square_femtosecond, - petameters_per_square_attosecond, - petameters_per_square_minute, - petameters_per_square_hour, - petameters_per_square_day, - petameters_per_square_year, - terameters_per_square_second, - terameters_per_square_millisecond, - terameters_per_square_microsecond, - terameters_per_square_nanosecond, - terameters_per_square_picosecond, - terameters_per_square_femtosecond, - terameters_per_square_attosecond, - terameters_per_square_minute, - terameters_per_square_hour, - terameters_per_square_day, - terameters_per_square_year, - gigameters_per_square_second, - gigameters_per_square_millisecond, - gigameters_per_square_microsecond, - gigameters_per_square_nanosecond, - gigameters_per_square_picosecond, - gigameters_per_square_femtosecond, - gigameters_per_square_attosecond, - gigameters_per_square_minute, - gigameters_per_square_hour, - gigameters_per_square_day, - gigameters_per_square_year, - megameters_per_square_second, - megameters_per_square_millisecond, - megameters_per_square_microsecond, - megameters_per_square_nanosecond, - megameters_per_square_picosecond, - megameters_per_square_femtosecond, - megameters_per_square_attosecond, - megameters_per_square_minute, - megameters_per_square_hour, - megameters_per_square_day, - megameters_per_square_year, - kilometers_per_square_second, - kilometers_per_square_millisecond, - kilometers_per_square_microsecond, - kilometers_per_square_nanosecond, - kilometers_per_square_picosecond, - kilometers_per_square_femtosecond, - kilometers_per_square_attosecond, - kilometers_per_square_minute, - kilometers_per_square_hour, - kilometers_per_square_day, - kilometers_per_square_year, - millimeters_per_square_second, - millimeters_per_square_millisecond, - millimeters_per_square_microsecond, - millimeters_per_square_nanosecond, - millimeters_per_square_picosecond, - millimeters_per_square_femtosecond, - millimeters_per_square_attosecond, - millimeters_per_square_minute, - millimeters_per_square_hour, - millimeters_per_square_day, - millimeters_per_square_year, - micrometers_per_square_second, - micrometers_per_square_millisecond, - micrometers_per_square_microsecond, - micrometers_per_square_nanosecond, - micrometers_per_square_picosecond, - micrometers_per_square_femtosecond, - micrometers_per_square_attosecond, - micrometers_per_square_minute, - micrometers_per_square_hour, - micrometers_per_square_day, - micrometers_per_square_year, - nanometers_per_square_second, - nanometers_per_square_millisecond, - nanometers_per_square_microsecond, - nanometers_per_square_nanosecond, - nanometers_per_square_picosecond, - nanometers_per_square_femtosecond, - nanometers_per_square_attosecond, - nanometers_per_square_minute, - nanometers_per_square_hour, - nanometers_per_square_day, - nanometers_per_square_year, - picometers_per_square_second, - picometers_per_square_millisecond, - picometers_per_square_microsecond, - picometers_per_square_nanosecond, - picometers_per_square_picosecond, - picometers_per_square_femtosecond, - picometers_per_square_attosecond, - picometers_per_square_minute, - picometers_per_square_hour, - picometers_per_square_day, - picometers_per_square_year, - femtometers_per_square_second, - femtometers_per_square_millisecond, - femtometers_per_square_microsecond, - femtometers_per_square_nanosecond, - femtometers_per_square_picosecond, - femtometers_per_square_femtosecond, - femtometers_per_square_attosecond, - femtometers_per_square_minute, - femtometers_per_square_hour, - femtometers_per_square_day, - femtometers_per_square_year, - attometers_per_square_second, - attometers_per_square_millisecond, - attometers_per_square_microsecond, - attometers_per_square_nanosecond, - attometers_per_square_picosecond, - attometers_per_square_femtosecond, - attometers_per_square_attosecond, - attometers_per_square_minute, - attometers_per_square_hour, - attometers_per_square_day, - attometers_per_square_year, - decimeters_per_square_second, - decimeters_per_square_millisecond, - decimeters_per_square_microsecond, - decimeters_per_square_nanosecond, - decimeters_per_square_picosecond, - decimeters_per_square_femtosecond, - decimeters_per_square_attosecond, - decimeters_per_square_minute, - decimeters_per_square_hour, - decimeters_per_square_day, - decimeters_per_square_year, - centimeters_per_square_second, - centimeters_per_square_millisecond, - centimeters_per_square_microsecond, - centimeters_per_square_nanosecond, - centimeters_per_square_picosecond, - centimeters_per_square_femtosecond, - centimeters_per_square_attosecond, - centimeters_per_square_minute, - centimeters_per_square_hour, - centimeters_per_square_day, - centimeters_per_square_year, - angstroms_per_square_second, - angstroms_per_square_millisecond, - angstroms_per_square_microsecond, - angstroms_per_square_nanosecond, - angstroms_per_square_picosecond, - angstroms_per_square_femtosecond, - angstroms_per_square_attosecond, - angstroms_per_square_minute, - angstroms_per_square_hour, - angstroms_per_square_day, - angstroms_per_square_year, - microns_per_square_second, - microns_per_square_millisecond, - microns_per_square_microsecond, - microns_per_square_nanosecond, - microns_per_square_picosecond, - microns_per_square_femtosecond, - microns_per_square_attosecond, - microns_per_square_minute, - microns_per_square_hour, - microns_per_square_day, - microns_per_square_year, - miles_per_square_second, - miles_per_square_millisecond, - miles_per_square_microsecond, - miles_per_square_nanosecond, - miles_per_square_picosecond, - miles_per_square_femtosecond, - miles_per_square_attosecond, - miles_per_square_minute, - miles_per_square_hour, - miles_per_square_day, - miles_per_square_year, - yards_per_square_second, - yards_per_square_millisecond, - yards_per_square_microsecond, - yards_per_square_nanosecond, - yards_per_square_picosecond, - yards_per_square_femtosecond, - yards_per_square_attosecond, - yards_per_square_minute, - yards_per_square_hour, - yards_per_square_day, - yards_per_square_year, - feet_per_square_second, - feet_per_square_millisecond, - feet_per_square_microsecond, - feet_per_square_nanosecond, - feet_per_square_picosecond, - feet_per_square_femtosecond, - feet_per_square_attosecond, - feet_per_square_minute, - feet_per_square_hour, - feet_per_square_day, - feet_per_square_year, - inches_per_square_second, - inches_per_square_millisecond, - inches_per_square_microsecond, - inches_per_square_nanosecond, - inches_per_square_picosecond, - inches_per_square_femtosecond, - inches_per_square_attosecond, - inches_per_square_minute, - inches_per_square_hour, - inches_per_square_day, - inches_per_square_year, -]) - -density = UnitGroup( - name = 'density', - units = [ - grams_per_cubic_meter, - exagrams_per_cubic_meter, - petagrams_per_cubic_meter, - teragrams_per_cubic_meter, - gigagrams_per_cubic_meter, - megagrams_per_cubic_meter, - kilograms_per_cubic_meter, - milligrams_per_cubic_meter, - micrograms_per_cubic_meter, - nanograms_per_cubic_meter, - picograms_per_cubic_meter, - femtograms_per_cubic_meter, - attograms_per_cubic_meter, - atomic_mass_units_per_cubic_meter, - pounds_per_cubic_meter, - ounces_per_cubic_meter, - grams_per_cubic_exameter, - exagrams_per_cubic_exameter, - petagrams_per_cubic_exameter, - teragrams_per_cubic_exameter, - gigagrams_per_cubic_exameter, - megagrams_per_cubic_exameter, - kilograms_per_cubic_exameter, - milligrams_per_cubic_exameter, - micrograms_per_cubic_exameter, - nanograms_per_cubic_exameter, - picograms_per_cubic_exameter, - femtograms_per_cubic_exameter, - attograms_per_cubic_exameter, - atomic_mass_units_per_cubic_exameter, - pounds_per_cubic_exameter, - ounces_per_cubic_exameter, - grams_per_cubic_petameter, - exagrams_per_cubic_petameter, - petagrams_per_cubic_petameter, - teragrams_per_cubic_petameter, - gigagrams_per_cubic_petameter, - megagrams_per_cubic_petameter, - kilograms_per_cubic_petameter, - milligrams_per_cubic_petameter, - micrograms_per_cubic_petameter, - nanograms_per_cubic_petameter, - picograms_per_cubic_petameter, - femtograms_per_cubic_petameter, - attograms_per_cubic_petameter, - atomic_mass_units_per_cubic_petameter, - pounds_per_cubic_petameter, - ounces_per_cubic_petameter, - grams_per_cubic_terameter, - exagrams_per_cubic_terameter, - petagrams_per_cubic_terameter, - teragrams_per_cubic_terameter, - gigagrams_per_cubic_terameter, - megagrams_per_cubic_terameter, - kilograms_per_cubic_terameter, - milligrams_per_cubic_terameter, - micrograms_per_cubic_terameter, - nanograms_per_cubic_terameter, - picograms_per_cubic_terameter, - femtograms_per_cubic_terameter, - attograms_per_cubic_terameter, - atomic_mass_units_per_cubic_terameter, - pounds_per_cubic_terameter, - ounces_per_cubic_terameter, - grams_per_cubic_gigameter, - exagrams_per_cubic_gigameter, - petagrams_per_cubic_gigameter, - teragrams_per_cubic_gigameter, - gigagrams_per_cubic_gigameter, - megagrams_per_cubic_gigameter, - kilograms_per_cubic_gigameter, - milligrams_per_cubic_gigameter, - micrograms_per_cubic_gigameter, - nanograms_per_cubic_gigameter, - picograms_per_cubic_gigameter, - femtograms_per_cubic_gigameter, - attograms_per_cubic_gigameter, - atomic_mass_units_per_cubic_gigameter, - pounds_per_cubic_gigameter, - ounces_per_cubic_gigameter, - grams_per_cubic_megameter, - exagrams_per_cubic_megameter, - petagrams_per_cubic_megameter, - teragrams_per_cubic_megameter, - gigagrams_per_cubic_megameter, - megagrams_per_cubic_megameter, - kilograms_per_cubic_megameter, - milligrams_per_cubic_megameter, - micrograms_per_cubic_megameter, - nanograms_per_cubic_megameter, - picograms_per_cubic_megameter, - femtograms_per_cubic_megameter, - attograms_per_cubic_megameter, - atomic_mass_units_per_cubic_megameter, - pounds_per_cubic_megameter, - ounces_per_cubic_megameter, - grams_per_cubic_kilometer, - exagrams_per_cubic_kilometer, - petagrams_per_cubic_kilometer, - teragrams_per_cubic_kilometer, - gigagrams_per_cubic_kilometer, - megagrams_per_cubic_kilometer, - kilograms_per_cubic_kilometer, - milligrams_per_cubic_kilometer, - micrograms_per_cubic_kilometer, - nanograms_per_cubic_kilometer, - picograms_per_cubic_kilometer, - femtograms_per_cubic_kilometer, - attograms_per_cubic_kilometer, - atomic_mass_units_per_cubic_kilometer, - pounds_per_cubic_kilometer, - ounces_per_cubic_kilometer, - grams_per_cubic_millimeter, - exagrams_per_cubic_millimeter, - petagrams_per_cubic_millimeter, - teragrams_per_cubic_millimeter, - gigagrams_per_cubic_millimeter, - megagrams_per_cubic_millimeter, - kilograms_per_cubic_millimeter, - milligrams_per_cubic_millimeter, - micrograms_per_cubic_millimeter, - nanograms_per_cubic_millimeter, - picograms_per_cubic_millimeter, - femtograms_per_cubic_millimeter, - attograms_per_cubic_millimeter, - atomic_mass_units_per_cubic_millimeter, - pounds_per_cubic_millimeter, - ounces_per_cubic_millimeter, - grams_per_cubic_micrometer, - exagrams_per_cubic_micrometer, - petagrams_per_cubic_micrometer, - teragrams_per_cubic_micrometer, - gigagrams_per_cubic_micrometer, - megagrams_per_cubic_micrometer, - kilograms_per_cubic_micrometer, - milligrams_per_cubic_micrometer, - micrograms_per_cubic_micrometer, - nanograms_per_cubic_micrometer, - picograms_per_cubic_micrometer, - femtograms_per_cubic_micrometer, - attograms_per_cubic_micrometer, - atomic_mass_units_per_cubic_micrometer, - pounds_per_cubic_micrometer, - ounces_per_cubic_micrometer, - grams_per_cubic_nanometer, - exagrams_per_cubic_nanometer, - petagrams_per_cubic_nanometer, - teragrams_per_cubic_nanometer, - gigagrams_per_cubic_nanometer, - megagrams_per_cubic_nanometer, - kilograms_per_cubic_nanometer, - milligrams_per_cubic_nanometer, - micrograms_per_cubic_nanometer, - nanograms_per_cubic_nanometer, - picograms_per_cubic_nanometer, - femtograms_per_cubic_nanometer, - attograms_per_cubic_nanometer, - atomic_mass_units_per_cubic_nanometer, - pounds_per_cubic_nanometer, - ounces_per_cubic_nanometer, - grams_per_cubic_picometer, - exagrams_per_cubic_picometer, - petagrams_per_cubic_picometer, - teragrams_per_cubic_picometer, - gigagrams_per_cubic_picometer, - megagrams_per_cubic_picometer, - kilograms_per_cubic_picometer, - milligrams_per_cubic_picometer, - micrograms_per_cubic_picometer, - nanograms_per_cubic_picometer, - picograms_per_cubic_picometer, - femtograms_per_cubic_picometer, - attograms_per_cubic_picometer, - atomic_mass_units_per_cubic_picometer, - pounds_per_cubic_picometer, - ounces_per_cubic_picometer, - grams_per_cubic_femtometer, - exagrams_per_cubic_femtometer, - petagrams_per_cubic_femtometer, - teragrams_per_cubic_femtometer, - gigagrams_per_cubic_femtometer, - megagrams_per_cubic_femtometer, - kilograms_per_cubic_femtometer, - milligrams_per_cubic_femtometer, - micrograms_per_cubic_femtometer, - nanograms_per_cubic_femtometer, - picograms_per_cubic_femtometer, - femtograms_per_cubic_femtometer, - attograms_per_cubic_femtometer, - atomic_mass_units_per_cubic_femtometer, - pounds_per_cubic_femtometer, - ounces_per_cubic_femtometer, - grams_per_cubic_attometer, - exagrams_per_cubic_attometer, - petagrams_per_cubic_attometer, - teragrams_per_cubic_attometer, - gigagrams_per_cubic_attometer, - megagrams_per_cubic_attometer, - kilograms_per_cubic_attometer, - milligrams_per_cubic_attometer, - micrograms_per_cubic_attometer, - nanograms_per_cubic_attometer, - picograms_per_cubic_attometer, - femtograms_per_cubic_attometer, - attograms_per_cubic_attometer, - atomic_mass_units_per_cubic_attometer, - pounds_per_cubic_attometer, - ounces_per_cubic_attometer, - grams_per_cubic_decimeter, - exagrams_per_cubic_decimeter, - petagrams_per_cubic_decimeter, - teragrams_per_cubic_decimeter, - gigagrams_per_cubic_decimeter, - megagrams_per_cubic_decimeter, - kilograms_per_cubic_decimeter, - milligrams_per_cubic_decimeter, - micrograms_per_cubic_decimeter, - nanograms_per_cubic_decimeter, - picograms_per_cubic_decimeter, - femtograms_per_cubic_decimeter, - attograms_per_cubic_decimeter, - atomic_mass_units_per_cubic_decimeter, - pounds_per_cubic_decimeter, - ounces_per_cubic_decimeter, - grams_per_cubic_centimeter, - exagrams_per_cubic_centimeter, - petagrams_per_cubic_centimeter, - teragrams_per_cubic_centimeter, - gigagrams_per_cubic_centimeter, - megagrams_per_cubic_centimeter, - kilograms_per_cubic_centimeter, - milligrams_per_cubic_centimeter, - micrograms_per_cubic_centimeter, - nanograms_per_cubic_centimeter, - picograms_per_cubic_centimeter, - femtograms_per_cubic_centimeter, - attograms_per_cubic_centimeter, - atomic_mass_units_per_cubic_centimeter, - pounds_per_cubic_centimeter, - ounces_per_cubic_centimeter, - grams_per_cubic_angstrom, - exagrams_per_cubic_angstrom, - petagrams_per_cubic_angstrom, - teragrams_per_cubic_angstrom, - gigagrams_per_cubic_angstrom, - megagrams_per_cubic_angstrom, - kilograms_per_cubic_angstrom, - milligrams_per_cubic_angstrom, - micrograms_per_cubic_angstrom, - nanograms_per_cubic_angstrom, - picograms_per_cubic_angstrom, - femtograms_per_cubic_angstrom, - attograms_per_cubic_angstrom, - atomic_mass_units_per_cubic_angstrom, - pounds_per_cubic_angstrom, - ounces_per_cubic_angstrom, - grams_per_cubic_micron, - exagrams_per_cubic_micron, - petagrams_per_cubic_micron, - teragrams_per_cubic_micron, - gigagrams_per_cubic_micron, - megagrams_per_cubic_micron, - kilograms_per_cubic_micron, - milligrams_per_cubic_micron, - micrograms_per_cubic_micron, - nanograms_per_cubic_micron, - picograms_per_cubic_micron, - femtograms_per_cubic_micron, - attograms_per_cubic_micron, - atomic_mass_units_per_cubic_micron, - pounds_per_cubic_micron, - ounces_per_cubic_micron, - grams_per_cubic_mile, - exagrams_per_cubic_mile, - petagrams_per_cubic_mile, - teragrams_per_cubic_mile, - gigagrams_per_cubic_mile, - megagrams_per_cubic_mile, - kilograms_per_cubic_mile, - milligrams_per_cubic_mile, - micrograms_per_cubic_mile, - nanograms_per_cubic_mile, - picograms_per_cubic_mile, - femtograms_per_cubic_mile, - attograms_per_cubic_mile, - atomic_mass_units_per_cubic_mile, - pounds_per_cubic_mile, - ounces_per_cubic_mile, - grams_per_cubic_yard, - exagrams_per_cubic_yard, - petagrams_per_cubic_yard, - teragrams_per_cubic_yard, - gigagrams_per_cubic_yard, - megagrams_per_cubic_yard, - kilograms_per_cubic_yard, - milligrams_per_cubic_yard, - micrograms_per_cubic_yard, - nanograms_per_cubic_yard, - picograms_per_cubic_yard, - femtograms_per_cubic_yard, - attograms_per_cubic_yard, - atomic_mass_units_per_cubic_yard, - pounds_per_cubic_yard, - ounces_per_cubic_yard, - grams_per_cubic_foot, - exagrams_per_cubic_foot, - petagrams_per_cubic_foot, - teragrams_per_cubic_foot, - gigagrams_per_cubic_foot, - megagrams_per_cubic_foot, - kilograms_per_cubic_foot, - milligrams_per_cubic_foot, - micrograms_per_cubic_foot, - nanograms_per_cubic_foot, - picograms_per_cubic_foot, - femtograms_per_cubic_foot, - attograms_per_cubic_foot, - atomic_mass_units_per_cubic_foot, - pounds_per_cubic_foot, - ounces_per_cubic_foot, - grams_per_cubic_inch, - exagrams_per_cubic_inch, - petagrams_per_cubic_inch, - teragrams_per_cubic_inch, - gigagrams_per_cubic_inch, - megagrams_per_cubic_inch, - kilograms_per_cubic_inch, - milligrams_per_cubic_inch, - micrograms_per_cubic_inch, - nanograms_per_cubic_inch, - picograms_per_cubic_inch, - femtograms_per_cubic_inch, - attograms_per_cubic_inch, - atomic_mass_units_per_cubic_inch, - pounds_per_cubic_inch, - ounces_per_cubic_inch, -]) - -force = UnitGroup( - name = 'force', - units = [ - newtons, - exanewtons, - petanewtons, - teranewtons, - giganewtons, - meganewtons, - kilonewtons, - millinewtons, - micronewtons, - nanonewtons, - piconewtons, - femtonewtons, - attonewtons, - kg_force, - pounds_force, -]) - -pressure = UnitGroup( - name = 'pressure', - units = [ - pascals, - exapascals, - petapascals, - terapascals, - gigapascals, - megapascals, - kilopascals, - millipascals, - micropascals, - nanopascals, - picopascals, - femtopascals, - attopascals, - pounds_force_per_square_inch, -]) - -energy = UnitGroup( - name = 'energy', - units = [ - joules, - exajoules, - petajoules, - terajoules, - gigajoules, - megajoules, - kilojoules, - millijoules, - microjoules, - nanojoules, - picojoules, - femtojoules, - attojoules, - electronvolts, - exaelectronvolts, - petaelectronvolts, - teraelectronvolts, - gigaelectronvolts, - megaelectronvolts, - kiloelectronvolts, - millielectronvolts, - microelectronvolts, - nanoelectronvolts, - picoelectronvolts, - femtoelectronvolts, - attoelectronvolts, -]) - -power = UnitGroup( - name = 'power', - units = [ - watts, - exawatts, - petawatts, - terawatts, - gigawatts, - megawatts, - kilowatts, - milliwatts, - microwatts, - nanowatts, - picowatts, - femtowatts, - attowatts, -]) - -charge = UnitGroup( - name = 'charge', - units = [ - coulombs, - exacoulombs, - petacoulombs, - teracoulombs, - gigacoulombs, - megacoulombs, - kilocoulombs, - millicoulombs, - microcoulombs, - nanocoulombs, - picocoulombs, - femtocoulombs, - attocoulombs, -]) - -potential = UnitGroup( - name = 'potential', - units = [ - volts, - exavolts, - petavolts, - teravolts, - gigavolts, - megavolts, - kilovolts, - millivolts, - microvolts, - nanovolts, - picovolts, - femtovolts, - attovolts, -]) - -resistance = UnitGroup( - name = 'resistance', - units = [ - ohms, - exaohms, - petaohms, - teraohms, - gigaohms, - megaohms, - kiloohms, - milliohms, - microohms, - nanoohms, - picoohms, - femtoohms, - attoohms, -]) - -capacitance = UnitGroup( - name = 'capacitance', - units = [ - farads, - exafarads, - petafarads, - terafarads, - gigafarads, - megafarads, - kilofarads, - millifarads, - microfarads, - nanofarads, - picofarads, - femtofarads, - attofarads, -]) - -conductance = UnitGroup( - name = 'conductance', - units = [ - siemens, - exasiemens, - petasiemens, - terasiemens, - gigasiemens, - megasiemens, - kilosiemens, - millisiemens, - microsiemens, - nanosiemens, - picosiemens, - femtosiemens, - attosiemens, -]) - -magnetic_flux = UnitGroup( - name = 'magnetic_flux', - units = [ - webers, - exawebers, - petawebers, - terawebers, - gigawebers, - megawebers, - kilowebers, - milliwebers, - microwebers, - nanowebers, - picowebers, - femtowebers, - attowebers, -]) - -magnetic_flux_density = UnitGroup( - name = 'magnetic_flux_density', - units = [ - tesla, - exatesla, - petatesla, - teratesla, - gigatesla, - megatesla, - kilotesla, - millitesla, - microtesla, - nanotesla, - picotesla, - femtotesla, - attotesla, -]) - -inductance = UnitGroup( - name = 'inductance', - units = [ - henry, - exahenry, - petahenry, - terahenry, - gigahenry, - megahenry, - kilohenry, - millihenry, - microhenry, - nanohenry, - picohenry, - femtohenry, - attohenry, -]) - -temperature = UnitGroup( - name = 'temperature', - units = [ - kelvin, - exakelvin, - petakelvin, - terakelvin, - gigakelvin, - megakelvin, - kilokelvin, - millikelvin, - microkelvin, - nanokelvin, - picokelvin, - femtokelvin, - attokelvin, - degrees_celsius, -]) - -dimensionless = UnitGroup( - name = 'dimensionless', - units = [ - none, - percent, -]) - -angle = UnitGroup( - name = 'angle', - units = [ - degrees, - radians, - rotations, -]) - -solid_angle = UnitGroup( - name = 'solid_angle', - units = [ - stradians, -]) - -amount = UnitGroup( - name = 'amount', - units = [ - moles, - millimoles, - micromoles, - nanomoles, - picomoles, - femtomoles, - attomoles, -]) - -concentration = UnitGroup( - name = 'concentration', - units = [ - moles_per_cubic_meter, - millimoles_per_cubic_meter, - micromoles_per_cubic_meter, - nanomoles_per_cubic_meter, - picomoles_per_cubic_meter, - femtomoles_per_cubic_meter, - attomoles_per_cubic_meter, - moles_per_cubic_exameter, - millimoles_per_cubic_exameter, - micromoles_per_cubic_exameter, - nanomoles_per_cubic_exameter, - picomoles_per_cubic_exameter, - femtomoles_per_cubic_exameter, - attomoles_per_cubic_exameter, - moles_per_cubic_petameter, - millimoles_per_cubic_petameter, - micromoles_per_cubic_petameter, - nanomoles_per_cubic_petameter, - picomoles_per_cubic_petameter, - femtomoles_per_cubic_petameter, - attomoles_per_cubic_petameter, - moles_per_cubic_terameter, - millimoles_per_cubic_terameter, - micromoles_per_cubic_terameter, - nanomoles_per_cubic_terameter, - picomoles_per_cubic_terameter, - femtomoles_per_cubic_terameter, - attomoles_per_cubic_terameter, - moles_per_cubic_gigameter, - millimoles_per_cubic_gigameter, - micromoles_per_cubic_gigameter, - nanomoles_per_cubic_gigameter, - picomoles_per_cubic_gigameter, - femtomoles_per_cubic_gigameter, - attomoles_per_cubic_gigameter, - moles_per_cubic_megameter, - millimoles_per_cubic_megameter, - micromoles_per_cubic_megameter, - nanomoles_per_cubic_megameter, - picomoles_per_cubic_megameter, - femtomoles_per_cubic_megameter, - attomoles_per_cubic_megameter, - moles_per_cubic_kilometer, - millimoles_per_cubic_kilometer, - micromoles_per_cubic_kilometer, - nanomoles_per_cubic_kilometer, - picomoles_per_cubic_kilometer, - femtomoles_per_cubic_kilometer, - attomoles_per_cubic_kilometer, - moles_per_cubic_millimeter, - millimoles_per_cubic_millimeter, - micromoles_per_cubic_millimeter, - nanomoles_per_cubic_millimeter, - picomoles_per_cubic_millimeter, - femtomoles_per_cubic_millimeter, - attomoles_per_cubic_millimeter, - moles_per_cubic_micrometer, - millimoles_per_cubic_micrometer, - micromoles_per_cubic_micrometer, - nanomoles_per_cubic_micrometer, - picomoles_per_cubic_micrometer, - femtomoles_per_cubic_micrometer, - attomoles_per_cubic_micrometer, - moles_per_cubic_nanometer, - millimoles_per_cubic_nanometer, - micromoles_per_cubic_nanometer, - nanomoles_per_cubic_nanometer, - picomoles_per_cubic_nanometer, - femtomoles_per_cubic_nanometer, - attomoles_per_cubic_nanometer, - moles_per_cubic_picometer, - millimoles_per_cubic_picometer, - micromoles_per_cubic_picometer, - nanomoles_per_cubic_picometer, - picomoles_per_cubic_picometer, - femtomoles_per_cubic_picometer, - attomoles_per_cubic_picometer, - moles_per_cubic_femtometer, - millimoles_per_cubic_femtometer, - micromoles_per_cubic_femtometer, - nanomoles_per_cubic_femtometer, - picomoles_per_cubic_femtometer, - femtomoles_per_cubic_femtometer, - attomoles_per_cubic_femtometer, - moles_per_cubic_attometer, - millimoles_per_cubic_attometer, - micromoles_per_cubic_attometer, - nanomoles_per_cubic_attometer, - picomoles_per_cubic_attometer, - femtomoles_per_cubic_attometer, - attomoles_per_cubic_attometer, - moles_per_cubic_decimeter, - millimoles_per_cubic_decimeter, - micromoles_per_cubic_decimeter, - nanomoles_per_cubic_decimeter, - picomoles_per_cubic_decimeter, - femtomoles_per_cubic_decimeter, - attomoles_per_cubic_decimeter, - moles_per_cubic_centimeter, - millimoles_per_cubic_centimeter, - micromoles_per_cubic_centimeter, - nanomoles_per_cubic_centimeter, - picomoles_per_cubic_centimeter, - femtomoles_per_cubic_centimeter, - attomoles_per_cubic_centimeter, - moles_per_cubic_angstrom, - millimoles_per_cubic_angstrom, - micromoles_per_cubic_angstrom, - nanomoles_per_cubic_angstrom, - picomoles_per_cubic_angstrom, - femtomoles_per_cubic_angstrom, - attomoles_per_cubic_angstrom, - moles_per_cubic_micron, - millimoles_per_cubic_micron, - micromoles_per_cubic_micron, - nanomoles_per_cubic_micron, - picomoles_per_cubic_micron, - femtomoles_per_cubic_micron, - attomoles_per_cubic_micron, - moles_per_cubic_mile, - millimoles_per_cubic_mile, - micromoles_per_cubic_mile, - nanomoles_per_cubic_mile, - picomoles_per_cubic_mile, - femtomoles_per_cubic_mile, - attomoles_per_cubic_mile, - moles_per_cubic_yard, - millimoles_per_cubic_yard, - micromoles_per_cubic_yard, - nanomoles_per_cubic_yard, - picomoles_per_cubic_yard, - femtomoles_per_cubic_yard, - attomoles_per_cubic_yard, - moles_per_cubic_foot, - millimoles_per_cubic_foot, - micromoles_per_cubic_foot, - nanomoles_per_cubic_foot, - picomoles_per_cubic_foot, - femtomoles_per_cubic_foot, - attomoles_per_cubic_foot, - moles_per_cubic_inch, - millimoles_per_cubic_inch, - micromoles_per_cubic_inch, - nanomoles_per_cubic_inch, - picomoles_per_cubic_inch, - femtomoles_per_cubic_inch, - attomoles_per_cubic_inch, -]) - - -unit_group_names = [ - 'length', - 'area', - 'volume', - 'inverse_length', - 'inverse_area', - 'inverse_volume', - 'time', - 'rate', - 'speed', - 'acceleration', - 'density', - 'force', - 'pressure', - 'energy', - 'power', - 'charge', - 'potential', - 'resistance', - 'capacitance', - 'conductance', - 'magnetic_flux', - 'magnetic_flux_density', - 'inductance', - 'temperature', - 'dimensionless', - 'angle', - 'solid_angle', - 'amount', - 'concentration', -] - -unit_groups = { - 'length': length, - 'area': area, - 'volume': volume, - 'inverse_length': inverse_length, - 'inverse_area': inverse_area, - 'inverse_volume': inverse_volume, - 'time': time, - 'rate': rate, - 'speed': speed, - 'acceleration': acceleration, - 'density': density, - 'force': force, - 'pressure': pressure, - 'energy': energy, - 'power': power, - 'charge': charge, - 'potential': potential, - 'resistance': resistance, - 'capacitance': capacitance, - 'conductance': conductance, - 'magnetic_flux': magnetic_flux, - 'magnetic_flux_density': magnetic_flux_density, - 'inductance': inductance, - 'temperature': temperature, - 'dimensionless': dimensionless, - 'angle': angle, - 'solid_angle': solid_angle, - 'amount': amount, - 'concentration': concentration, -} - +# This file is intentionally blank. It needs to exist so that the +# module loader can load it as a module, but the actual contents are +# dynamically created in __init__.py