Merge pull request #326 from fdischner/fix_derived_unit

Fix derived_ratio calculation
This commit is contained in:
Mateusz Pusz
2022-01-25 13:27:10 +01:00
committed by GitHub
2 changed files with 5 additions and 1 deletions

View File

@@ -47,7 +47,7 @@ constexpr ratio inverse_if_negative(const ratio& r)
template<Unit... Us, typename... Es>
constexpr ratio derived_ratio(exponent_list<Es...>)
{
return (... * inverse_if_negative<Es>(pow<detail::abs(Es::num)>(Us::ratio) / dimension_unit<typename Es::dimension>::ratio));
return (... * inverse_if_negative<Es>(pow<detail::abs(Es::num)>(Us::ratio / dimension_unit<typename Es::dimension>::ratio)));
}
template<DerivedDimension D, Unit... Us>

View File

@@ -59,6 +59,10 @@ static_assert(100_q_ft2 / 10_q_ft == 10_q_ft);
static_assert(detail::unit_text<dim_area, square_foot>() == basic_symbol_text("ft²", "ft^2"));
// volume
static_assert(1_q_yd * 1_q_yd * 1_q_yd == 1_q_yd3);
static_assert(cubic_yard::ratio / cubic_foot::ratio == ratio(27));
/* ************** DERIVED DIMENSIONS WITH NAMED UNITS **************** */
// acceleration