std.quantities
Generated by
sema docfromcrates/sema-runtime/assets/stdlib/sema/quantities.sema. Import withfrom std.quantities import …. For a narrative introduction see std.quantities.
quantities
Section titled “quantities”std.quantities - bounded physical dimensions and SI-normalized quantities.
Dimensions use the seven SI base exponents. Quantities store canonical SI values; conversion and arithmetic validate dimensions explicitly. Affine units such as Celsius, symbolic units, uncertainty-bearing quantities, and automatic equation inference are intentionally outside this bounded foundation.
struct Dimension
Section titled “struct Dimension”Fields
| field | type | descriptor |
|---|---|---|
length |
int |
|
mass |
int |
|
time |
int |
|
current |
int |
|
temperature |
int |
|
amount |
int |
|
luminosity |
int |
struct Unit
Section titled “struct Unit”Fields
| field | type | descriptor |
|---|---|---|
symbol |
str |
|
dimension |
Dimension |
|
scale_to_si |
f64 |
struct Quantity
Section titled “struct Quantity”Fields
| field | type | descriptor |
|---|---|---|
si_value |
f64 |
|
dimension |
Dimension |
|
display_unit |
Unit |
def dimensionless
Section titled “def dimensionless”def dimensionless() -> Dimension !{}Returns Dimension
Effects !{}
def length_dimension
Section titled “def length_dimension”def length_dimension() -> Dimension !{}Returns Dimension
Effects !{}
def mass_dimension
Section titled “def mass_dimension”def mass_dimension() -> Dimension !{}Returns Dimension
Effects !{}
def time_dimension
Section titled “def time_dimension”def time_dimension() -> Dimension !{}Returns Dimension
Effects !{}
def current_dimension
Section titled “def current_dimension”def current_dimension() -> Dimension !{}Returns Dimension
Effects !{}
def temperature_dimension
Section titled “def temperature_dimension”def temperature_dimension() -> Dimension !{}Returns Dimension
Effects !{}
def amount_dimension
Section titled “def amount_dimension”def amount_dimension() -> Dimension !{}Returns Dimension
Effects !{}
def luminosity_dimension
Section titled “def luminosity_dimension”def luminosity_dimension() -> Dimension !{}Returns Dimension
Effects !{}
def same_dimension
Section titled “def same_dimension”def same_dimension(left: Dimension, right: Dimension) -> bool !{}Parameters
| name | type |
|---|---|
left |
Dimension |
right |
Dimension |
Returns bool
Effects !{}
def multiply_dimensions
Section titled “def multiply_dimensions”def multiply_dimensions(left: Dimension, right: Dimension) -> Dimension !{}Parameters
| name | type |
|---|---|
left |
Dimension |
right |
Dimension |
Returns Dimension
Effects !{}
def divide_dimensions
Section titled “def divide_dimensions”def divide_dimensions(left: Dimension, right: Dimension) -> Dimension !{}Parameters
| name | type |
|---|---|
left |
Dimension |
right |
Dimension |
Returns Dimension
Effects !{}
def power_dimension
Section titled “def power_dimension”def power_dimension(value: Dimension, exponent: int) -> Dimension !{}Parameters
| name | type |
|---|---|
value |
Dimension |
exponent |
int |
Returns Dimension
Effects !{}
def unit
Section titled “def unit”def unit(symbol: str, scale_to_si: f64, dimension: Dimension) -> Unit !{}Parameters
| name | type |
|---|---|
symbol |
str |
scale_to_si |
f64 |
dimension |
Dimension |
Returns Unit
Effects !{}
def scalar_unit
Section titled “def scalar_unit”def scalar_unit() -> Unit !{}Returns Unit
Effects !{}
def seconds
Section titled “def seconds”def seconds() -> Unit !{}Returns Unit
Effects !{}
def milliseconds
Section titled “def milliseconds”def milliseconds() -> Unit !{}Returns Unit
Effects !{}
def meters
Section titled “def meters”def meters() -> Unit !{}Returns Unit
Effects !{}
def kilometers
Section titled “def kilometers”def kilometers() -> Unit !{}Returns Unit
Effects !{}
def kilograms
Section titled “def kilograms”def kilograms() -> Unit !{}Returns Unit
Effects !{}
def quantity
Section titled “def quantity”def quantity(value: f64, source_unit: Unit) -> Quantity !{}Parameters
| name | type |
|---|---|
value |
f64 |
source_unit |
Unit |
Returns Quantity
Effects !{}
def convert
Section titled “def convert”def convert(value: Quantity, target_unit: Unit) -> Quantity !{}Parameters
| name | type |
|---|---|
value |
Quantity |
target_unit |
Unit |
Returns Quantity
Effects !{}
def display_value
Section titled “def display_value”def display_value(value: Quantity) -> f64 !{}Parameters
| name | type |
|---|---|
value |
Quantity |
Returns f64
Effects !{}
def canonical_unit
Section titled “def canonical_unit”def canonical_unit(symbol: str, dimension: Dimension) -> Unit !{}Parameters
| name | type |
|---|---|
symbol |
str |
dimension |
Dimension |
Returns Unit
Effects !{}
def scale
Section titled “def scale”def scale(value: Quantity, factor: f64) -> Quantity !{}Parameters
| name | type |
|---|---|
value |
Quantity |
factor |
f64 |
Returns Quantity
Effects !{}
def powi
Section titled “def powi”def powi(value: Quantity, exponent: int) -> Quantity !{}Parameters
| name | type |
|---|---|
value |
Quantity |
exponent |
int |
Returns Quantity
Effects !{}
def derivative_dimension
Section titled “def derivative_dimension”def derivative_dimension(state: Dimension, independent: Dimension) -> Dimension !{}Parameters
| name | type |
|---|---|
state |
Dimension |
independent |
Dimension |
Returns Dimension
Effects !{}
def derivative_compatible
Section titled “def derivative_compatible”def derivative_compatible(state: Dimension, independent: Dimension, derivative: Dimension) -> bool !{}Parameters
| name | type |
|---|---|
state |
Dimension |
independent |
Dimension |
derivative |
Dimension |
Returns bool
Effects !{}