Coverage for /usr/lib/python3/dist-packages/sympy/physics/units/systems/mksa.py: 100%
15 statements
« prev ^ index » next coverage.py v7.9.1, created at 2025-06-14 15:55 +0200
« prev ^ index » next coverage.py v7.9.1, created at 2025-06-14 15:55 +0200
1"""
2MKS unit system.
4MKS stands for "meter, kilogram, second, ampere".
5"""
7from __future__ import annotations
9from sympy.physics.units.definitions import Z0, ampere, coulomb, farad, henry, siemens, tesla, volt, weber, ohm
10from sympy.physics.units.definitions.dimension_definitions import (
11 capacitance, charge, conductance, current, impedance, inductance,
12 magnetic_density, magnetic_flux, voltage)
13from sympy.physics.units.prefixes import PREFIXES, prefix_unit
14from sympy.physics.units.systems.mks import MKS, dimsys_length_weight_time
15from sympy.physics.units.quantities import Quantity
17dims = (voltage, impedance, conductance, current, capacitance, inductance, charge,
18 magnetic_density, magnetic_flux)
20units = [ampere, volt, ohm, siemens, farad, henry, coulomb, tesla, weber]
22all_units: list[Quantity] = []
23for u in units:
24 all_units.extend(prefix_unit(u, PREFIXES))
25all_units.extend(units)
27all_units.append(Z0)
29dimsys_MKSA = dimsys_length_weight_time.extend([
30 # Dimensional dependencies for base dimensions (MKSA not in MKS)
31 current,
32], new_dim_deps={
33 # Dimensional dependencies for derived dimensions
34 "voltage": {"mass": 1, "length": 2, "current": -1, "time": -3},
35 "impedance": {"mass": 1, "length": 2, "current": -2, "time": -3},
36 "conductance": {"mass": -1, "length": -2, "current": 2, "time": 3},
37 "capacitance": {"mass": -1, "length": -2, "current": 2, "time": 4},
38 "inductance": {"mass": 1, "length": 2, "current": -2, "time": -2},
39 "charge": {"current": 1, "time": 1},
40 "magnetic_density": {"mass": 1, "current": -1, "time": -2},
41 "magnetic_flux": {"length": 2, "mass": 1, "current": -1, "time": -2},
42})
44MKSA = MKS.extend(base=(ampere,), units=all_units, name='MKSA', dimension_system=dimsys_MKSA, derived_units={
45 magnetic_flux: weber,
46 impedance: ohm,
47 current: ampere,
48 voltage: volt,
49 inductance: henry,
50 conductance: siemens,
51 magnetic_density: tesla,
52 charge: coulomb,
53 capacitance: farad,
54})