mirror of
https://github.com/mpusz/mp-units.git
synced 2025-08-07 06:04:27 +02:00
fix: mechanics quantity specifications fixed
This commit is contained in:
@@ -37,7 +37,7 @@ QUANTITY_SPEC(surface_mass_density, mass / area);
|
||||
inline constexpr auto surface_density = surface_mass_density;
|
||||
QUANTITY_SPEC(linear_mass_density, mass / length);
|
||||
inline constexpr auto linear_density = linear_mass_density;
|
||||
QUANTITY_SPEC(momentum, mass* velocity); // TODO vector?
|
||||
QUANTITY_SPEC(momentum, mass* velocity); // vector
|
||||
QUANTITY_SPEC(force, mass* acceleration); // vector // TODO what is a correct equation here?
|
||||
QUANTITY_SPEC(weight, force); // vector // TODO g?
|
||||
QUANTITY_SPEC(static_friction_force, force); // vector
|
||||
@@ -61,7 +61,7 @@ QUANTITY_SPEC(normal_stress, pressure, quantity_character::scalar);
|
||||
QUANTITY_SPEC(shear_stress, pressure, quantity_character::scalar);
|
||||
QUANTITY_SPEC(strain, dimensionless, quantity_character::tensor);
|
||||
QUANTITY_SPEC(relative_linear_strain, length / length);
|
||||
QUANTITY_SPEC(shear_strain, displacement / thickness); // TODO scalar or vector?
|
||||
QUANTITY_SPEC(shear_strain, displacement / thickness, quantity_character::scalar);
|
||||
QUANTITY_SPEC(relative_volume_strain, volume / volume);
|
||||
QUANTITY_SPEC(Poisson_number, width / length);
|
||||
QUANTITY_SPEC(modulus_of_elasticity, normal_stress / relative_linear_strain);
|
||||
@@ -82,9 +82,9 @@ inline constexpr auto coefficient_of_static_friction = static_friction_coefficie
|
||||
QUANTITY_SPEC(kinetic_friction_factor, kinetic_friction_force / force, quantity_character::scalar);
|
||||
inline constexpr auto dynamic_friction_factor = kinetic_friction_factor;
|
||||
QUANTITY_SPEC(rolling_resistance_factor, force / force, quantity_character::scalar);
|
||||
QUANTITY_SPEC(drag_coefficient, drag_force / (mass_density * pow<2>(speed) * area)); // TODO scalar or vector?
|
||||
// QUANTITY_SPEC(drag_coefficient, mag<2>* drag_force / (mass_density * pow<2>(speed) * area)); // TODO should we
|
||||
// support that?
|
||||
QUANTITY_SPEC(drag_coefficient, drag_force / (mass_density * pow<2>(speed) * area), quantity_character::scalar);
|
||||
// QUANTITY_SPEC(drag_coefficient, mag<2>* drag_force / (mass_density * pow<2>(speed) * area),
|
||||
// quantity_character::scalar); // TODO should we support that?
|
||||
inline constexpr auto drag_factor = drag_coefficient;
|
||||
QUANTITY_SPEC(dynamic_viscosity, shear_stress* length / velocity);
|
||||
QUANTITY_SPEC(kinematic_viscosity, dynamic_viscosity / mass_density);
|
||||
@@ -99,7 +99,7 @@ QUANTITY_SPEC(kinetic_energy, mass* pow<2>(speed));
|
||||
QUANTITY_SPEC(mechanical_energy, potential_energy);
|
||||
QUANTITY_SPEC(mechanical_work, force* displacement, quantity_character::scalar);
|
||||
inline constexpr auto work = mechanical_work;
|
||||
QUANTITY_SPEC(efficiency, power / power);
|
||||
QUANTITY_SPEC(efficiency_mechanics, power / power);
|
||||
QUANTITY_SPEC(mass_flow, mass_density* velocity); // vector
|
||||
QUANTITY_SPEC(mass_flow_rate, mass_flow* area, quantity_character::scalar);
|
||||
QUANTITY_SPEC(mass_change_rate, mass / time);
|
||||
|
@@ -101,7 +101,7 @@ static_assert(verify(isq::surface_density, scalar, kg / m2));
|
||||
static_assert(verify(isq::linear_mass_density, scalar, kg / m));
|
||||
static_assert(verify(isq::linear_density, scalar, kg / m));
|
||||
static_assert(verify(isq::moment_of_inertia, tensor, kg* m2));
|
||||
static_assert(verify(isq::momentum, vector, kg* m / s)); // TODO vector?
|
||||
static_assert(verify(isq::momentum, vector, kg* m / s));
|
||||
static_assert(verify(isq::force, vector, N, kg* m / s2));
|
||||
static_assert(verify(isq::weight, vector, N, kg* m / s2));
|
||||
static_assert(verify(isq::static_friction_force, vector, N, kg* m / s2));
|
||||
@@ -124,7 +124,7 @@ static_assert(verify(isq::normal_stress, scalar, Pa, N / m2, kg / m / s2));
|
||||
static_assert(verify(isq::shear_stress, scalar, Pa, N / m2, kg / m / s2));
|
||||
static_assert(verify(isq::strain, tensor, one));
|
||||
static_assert(verify(isq::relative_linear_strain, scalar, one));
|
||||
static_assert(verify(isq::shear_strain, vector, one)); // TODO scalar or vector?
|
||||
static_assert(verify(isq::shear_strain, scalar, one));
|
||||
static_assert(verify(isq::relative_volume_strain, scalar, one));
|
||||
static_assert(verify(isq::Poisson_number, scalar, one));
|
||||
static_assert(verify(isq::modulus_of_elasticity, scalar, Pa, N / m2, kg / m / s2));
|
||||
@@ -143,8 +143,8 @@ static_assert(verify(isq::coefficient_of_static_friction, scalar, one));
|
||||
static_assert(verify(isq::kinetic_friction_factor, scalar, one));
|
||||
static_assert(verify(isq::dynamic_friction_factor, scalar, one));
|
||||
static_assert(verify(isq::rolling_resistance_factor, scalar, one));
|
||||
static_assert(verify(isq::drag_coefficient, vector, one));
|
||||
static_assert(verify(isq::drag_factor, vector, one));
|
||||
static_assert(verify(isq::drag_coefficient, scalar, one));
|
||||
static_assert(verify(isq::drag_factor, scalar, one));
|
||||
static_assert(verify(isq::dynamic_viscosity, scalar, Pa* s, kg / m / s));
|
||||
static_assert(verify(isq::kinematic_viscosity, scalar, m2 / s));
|
||||
static_assert(verify(isq::surface_tension, scalar, N / m, kg / s2));
|
||||
@@ -154,7 +154,7 @@ static_assert(verify(isq::kinetic_energy, scalar, J, kg* m2 / s2));
|
||||
static_assert(verify(isq::mechanical_energy, scalar, J, kg* m2 / s2));
|
||||
static_assert(verify(isq::mechanical_work, scalar, J, kg* m2 / s2));
|
||||
static_assert(verify(isq::work, scalar, J, kg* m2 / s2));
|
||||
static_assert(verify(isq::efficiency, scalar, one));
|
||||
static_assert(verify(isq::efficiency_mechanics, scalar, one));
|
||||
static_assert(verify(isq::mass_flow, vector, kg / m2 / s));
|
||||
static_assert(verify(isq::mass_flow_rate, scalar, kg / s));
|
||||
static_assert(verify(isq::mass_change_rate, scalar, kg / s));
|
||||
|
Reference in New Issue
Block a user