1use crate::prelude::*;
2use crate::quantities::*;
3use crate::{
4 impl_div, impl_mul, impl_mul_relation_with_other, impl_mul_relation_with_self,
5 impl_mul_with_self, impl_sqrt,
6};
7use ndarray::{Array1, Array2};
8#[cfg(feature = "pyo3")]
9use pyo3::pymethods;
10
11impl_mul_relation_with_other!(Acceleration, Time, Velocity);
12impl_mul_relation_with_other!(Acceleration, Mass, Force);
13impl_mul_relation_with_other!(AngularVelocity, Time, Angle);
14impl_mul_relation_with_other!(AngularVelocity, Distance, Velocity);
15impl_mul_relation_with_other!(AngularAcceleration, Time, AngularVelocity);
16impl_mul_relation_with_other!(Area, Stress, Force);
17impl_mul_relation_with_other!(Force, Stress, ForceStress);
18impl_mul_relation_with_other!(InverseDistance, Volume, Area);
19impl_mul_relation_with_other!(InverseArea, AreaOfMoment, Area);
20impl_mul_relation_with_other!(Distance, Volume, AreaOfMoment);
21impl_mul_relation_with_other!(Compliance, Force, Distance);
22impl_mul_relation_with_other!(Compliance, ForceArea, Volume);
23impl_mul_relation_with_other!(Density, Volume, Mass);
24impl_mul_relation_with_other!(Distance, Area, Volume);
25impl_mul_relation_with_other!(Distance, Stiffness, Force);
26impl_mul_relation_with_other!(Distance, InverseArea, InverseDistance);
27impl_mul_relation_with_other!(InverseDistance, Area, Distance);
28impl_mul_relation_with_other!(Velocity, Time, Distance);
29impl_mul_relation_with_other!(Force, Distance, ForceDistance);
30impl_mul_relation_with_other!(Force, Area, ForceArea);
31impl_mul_relation_with_other!(ForceArea, Distance, ForceVolume);
32impl_mul_relation_with_other!(AreaOfMoment, Stress, ForceArea);
33impl_mul_relation_with_other!(ForceDistance, Distance, ForceArea);
34impl_mul_relation_with_other!(Mass, VelocitySquared, ForceDistance);
35impl_mul_relation_with_other!(Voltage, Charge, ForceDistance);
36impl_mul_relation_with_other!(Stress, Volume, ForceDistance);
37impl_mul_relation_with_other!(ForcePerDistancePowerFour, Volume, Stiffness);
38impl_mul_relation_with_other!(ForcePerVolume, InverseDistance, ForcePerDistancePowerFour);
39impl_mul_relation_with_other!(ForcePerVolume, Volume, Force);
40impl_mul_relation_with_other!(Density, Acceleration, ForcePerVolume);
41impl_mul_relation_with_other!(ForcePerVolume, Area, Stiffness);
42impl_mul_relation_with_other!(ForcePerVolume, Distance, Stress);
43impl_mul_relation_with_other!(InverseDistance, Stress, ForcePerVolume);
44impl_mul_relation_with_other!(InverseDistance, ForceDistance, Force);
45impl_mul_relation_with_other!(Stress, Distance, Stiffness);
46impl_mul_relation_with_other!(StressSquared, Area, ForceStress);
47impl_mul_relation_with_other!(Velocity, Distance, Time);
48impl_mul_relation_with_other!(MassPerDistance, Distance, Mass);
49impl_mul_relation_with_other!(Area, Density, MassPerDistance);
50impl_mul_relation_with_other!(MassPerDistance, Acceleration, Stiffness);
51impl_mul_relation_with_other!(Stiffness, AreaOfMoment, ForceVolume);
52impl_mul_relation_with_other!(RotationalStiffness, Angle, ForceDistance);
53impl_mul_relation_with_other!(InverseArea, Volume, Distance);
54impl_mul_relation_with_other!(AngularAcceleration, Density, MassDivTimeSquaredVolume);
55impl_mul_relation_with_other!(MassDivTimeSquaredVolume, Area, Stress);
56impl_mul_relation_with_other!(Force, Volume, ForceVolume);
57impl_mul_relation_with_other!(Velocity, AngularVelocity, Acceleration);
58
59impl_mul_relation_with_self!(Distance, Area);
60impl_mul_relation_with_self!(Area, AreaOfMoment);
61impl_mul_relation_with_self!(InverseDistance, InverseArea);
62impl_mul_relation_with_self!(Stress, StressSquared);
63impl_mul_relation_with_self!(AngularVelocity, AngularAcceleration);