pub struct Length(/* private fields */);Expand description
Length [m].
Implementations§
Source§impl Length
impl Length
Sourcepub fn kilometers(val: &Ex) -> Self
pub fn kilometers(val: &Ex) -> Self
Create a Length from a value in kilometers.
Sourcepub fn centimeters(val: &Ex) -> Self
pub fn centimeters(val: &Ex) -> Self
Create a Length from a value in centimeters.
Sourcepub fn millimeters(val: &Ex) -> Self
pub fn millimeters(val: &Ex) -> Self
Create a Length from a value in millimeters.
Sourcepub fn micrometers(val: &Ex) -> Self
pub fn micrometers(val: &Ex) -> Self
Create a Length from a value in micrometers.
Sourcepub fn inches(val: &Ex) -> Self
pub fn inches(val: &Ex) -> Self
Create a Length from a value in inches (1 in = 0.0254 m exactly).
Sourcepub fn yards(val: &Ex) -> Self
pub fn yards(val: &Ex) -> Self
Create a Length from a value in yards (1 yd = 0.9144 m exactly).
Sourcepub fn miles(val: &Ex) -> Self
pub fn miles(val: &Ex) -> Self
Create a Length from a value in miles (1 mi = 1609.344 m exactly).
Sourcepub fn nautical_miles(val: &Ex) -> Self
pub fn nautical_miles(val: &Ex) -> Self
1 nautical mile = 1852 m (exact).
Source§impl Length
impl Length
Sourcepub fn from_ex(ex: impl IntoEx) -> Self
pub fn from_ex(ex: impl IntoEx) -> Self
Create from a symbolic expression (or anything that implements IntoEx).
Sourcepub fn checked_from_ex(ex: impl IntoEx, dims: &DimMap) -> Result<Self, String>
pub fn checked_from_ex(ex: impl IntoEx, dims: &DimMap) -> Result<Self, String>
Create from a symbolic expression with runtime dimension validation.
Checks that the expression’s inferred dimension matches this type’s
dimension using the provided DimMap. Returns an error if the
dimensions don’t match.
Use this instead of from_ex when you want runtime validation
of dimensional correctness (e.g., in tests or debug builds).
Sourcepub fn symbol(ctx: &Context, name: &str) -> Self
pub fn symbol(ctx: &Context, name: &str) -> Self
Create a named symbolic variable with this dimension.
Sourcepub fn into_inner(self) -> Ex
pub fn into_inner(self) -> Ex
Escape hatch: drop dimension, return raw Ex.
Sourcepub fn dim_name_str() -> &'static str
pub fn dim_name_str() -> &'static str
Runtime dimension name.
Sourcepub fn dim_symbol_str() -> &'static str
pub fn dim_symbol_str() -> &'static str
Runtime dimension symbol.
Sourcepub fn simplify_full(&self) -> Self
pub fn simplify_full(&self) -> Self
Full multi-pass simplification, preserving dimension.
Sourcepub fn simplify_trig(&self) -> Self
pub fn simplify_trig(&self) -> Self
Trigonometric simplification, preserving dimension.
Sourcepub fn simplify_powers(&self) -> Self
pub fn simplify_powers(&self) -> Self
Power/exponent simplification, preserving dimension.
Sourcepub fn simplify_rational(&self) -> Self
pub fn simplify_rational(&self) -> Self
Rational simplification, preserving dimension.
Sourcepub fn expand_trig(&self) -> Self
pub fn expand_trig(&self) -> Self
Expand trigonometric identities, preserving dimension.
Sourcepub fn expand_log(&self) -> Self
pub fn expand_log(&self) -> Self
Expand logarithmic identities, preserving dimension.
Sourcepub fn log_combine(&self) -> Self
pub fn log_combine(&self) -> Self
Combine logarithmic terms, preserving dimension.
Sourcepub fn trig_combine(&self) -> Self
pub fn trig_combine(&self) -> Self
Combine trigonometric terms, preserving dimension.
Sourcepub fn factor(&self, var: &impl AsRef<Ex>) -> Self
pub fn factor(&self, var: &impl AsRef<Ex>) -> Self
Factor with respect to a variable, preserving dimension.
Sourcepub fn collect(&self, var: &impl AsRef<Ex>) -> Self
pub fn collect(&self, var: &impl AsRef<Ex>) -> Self
Collect terms with respect to a variable, preserving dimension.
Sourcepub fn together(&self) -> Self
pub fn together(&self) -> Self
Combine fractions over a common denominator, preserving dimension.
Sourcepub fn partial_fractions(&self, var: &impl AsRef<Ex>) -> Self
pub fn partial_fractions(&self, var: &impl AsRef<Ex>) -> Self
Partial-fraction decomposition with respect to a variable, preserving dimension.
Sourcepub fn rationalize_denom(&self) -> Self
pub fn rationalize_denom(&self) -> Self
Rationalize the denominator, preserving dimension.
Sourcepub fn diff(&self, var: &impl AsRef<Ex>) -> Ex
pub fn diff(&self, var: &impl AsRef<Ex>) -> Ex
Differentiate with respect to a variable. Returns raw Ex.
Wrap result in the correct output type: Acceleration::from_ex(v.diff(&t))
Sourcepub fn integrate(&self, var: &impl AsRef<Ex>) -> Ex
pub fn integrate(&self, var: &impl AsRef<Ex>) -> Ex
Integrate with respect to a variable. Returns raw Ex.
Sourcepub fn free_symbols(&self) -> Vec<Ex> ⓘ
pub fn free_symbols(&self) -> Vec<Ex> ⓘ
Free symbols in the expression.
Sourcepub fn contains(&self, other: &impl AsRef<Ex>) -> bool
pub fn contains(&self, other: &impl AsRef<Ex>) -> bool
Whether the expression contains a given sub-expression.
Sourcepub fn term_count(&self) -> usize
pub fn term_count(&self) -> usize
Number of top-level additive terms.
Sourcepub fn equals(&self, other: &Self) -> bool
pub fn equals(&self, other: &Self) -> bool
Check symbolic equality with another quantity of the same type.
Sourcepub fn eval_f64(&self) -> Result<f64, SymplexError>
pub fn eval_f64(&self) -> Result<f64, SymplexError>
Evaluate to f64.
Sourcepub fn eval_f64_with(&self, subs: &[(&Ex, i64)]) -> Result<f64, SymplexError>
pub fn eval_f64_with(&self, subs: &[(&Ex, i64)]) -> Result<f64, SymplexError>
Substitute integer values and evaluate to f64.
Sourcepub fn eval_decimal(&self, digits: u32) -> Result<String, SymplexError>
pub fn eval_decimal(&self, digits: u32) -> Result<String, SymplexError>
Evaluate to a decimal string with the given number of digits.
Trait Implementations§
Source§impl FromDimExpr<Dim<PInt<UInt<UTerm, B1>>, Z0, Z0, Z0, Z0, Z0, Z0>> for Length
impl FromDimExpr<Dim<PInt<UInt<UTerm, B1>>, Z0, Z0, Z0, Z0, Z0, Z0>> for Length
Source§fn from_dim_expr(qty: Qty<LengthDim>) -> Self
fn from_dim_expr(qty: Qty<LengthDim>) -> Self
Auto Trait Implementations§
impl !RefUnwindSafe for Length
impl !UnwindSafe for Length
impl Freeze for Length
impl Send for Length
impl Sync for Length
impl Unpin for Length
impl UnsafeUnpin for Length
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more