From 143cdfc2184998bb341e3a1bf372d23d6d199fd3 Mon Sep 17 00:00:00 2001 From: ivanpanch Date: Sun, 27 Jul 2025 09:54:20 +0200 Subject: [PATCH 1/2] Update prefixes.hpp --- include/boost/units/systems/si/prefixes.hpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/include/boost/units/systems/si/prefixes.hpp b/include/boost/units/systems/si/prefixes.hpp index ec36fd0d..dc18019c 100644 --- a/include/boost/units/systems/si/prefixes.hpp +++ b/include/boost/units/systems/si/prefixes.hpp @@ -26,6 +26,8 @@ namespace si { typedef make_scaled_unit > >::type name ## _type;\ BOOST_UNITS_STATIC_CONSTANT(name, name ## _type) +BOOST_UNITS_METRIC_PREFIX(-30, quecto); +BOOST_UNITS_METRIC_PREFIX(-27, ronto); BOOST_UNITS_METRIC_PREFIX(-24, yocto); BOOST_UNITS_METRIC_PREFIX(-21, zepto); BOOST_UNITS_METRIC_PREFIX(-18, atto); @@ -46,8 +48,12 @@ BOOST_UNITS_METRIC_PREFIX(15, peta); BOOST_UNITS_METRIC_PREFIX(18, exa); BOOST_UNITS_METRIC_PREFIX(21, zetta); BOOST_UNITS_METRIC_PREFIX(24, yotta); +BOOST_UNITS_METRIC_PREFIX(27, ronna); +BOOST_UNITS_METRIC_PREFIX(30, quetta); -/*BOOST_UNITS_STATIC_CONSTANT(yocto,long double) = (1e-24); ///< metric prefix for 1.0e-24 +/*BOOST_UNITS_STATIC_CONSTANT(quecto,long double) = (1e-30); ///< metric prefix for 1.0e-30 +BOOST_UNITS_STATIC_CONSTANT(ronto,long double) = (1e-27); ///< metric prefix for 1.0e-27 +BOOST_UNITS_STATIC_CONSTANT(yocto,long double) = (1e-24); ///< metric prefix for 1.0e-24 BOOST_UNITS_STATIC_CONSTANT(zepto,long double) = (1e-21); ///< metric prefix for 1.0e-21 BOOST_UNITS_STATIC_CONSTANT(atto,long double) = (1e-18); ///< metric prefix for 1.0e-18 BOOST_UNITS_STATIC_CONSTANT(femto,long double) = (1e-15); ///< metric prefix for 1.0e-15 @@ -66,7 +72,9 @@ BOOST_UNITS_STATIC_CONSTANT(tera,long double) = (1e12); ///< metric pref BOOST_UNITS_STATIC_CONSTANT(peta,long double) = (1e15); ///< metric prefix for 1.0e+15 BOOST_UNITS_STATIC_CONSTANT(exa,long double) = (1e18); ///< metric prefix for 1.0e+18 BOOST_UNITS_STATIC_CONSTANT(zetta,long double) = (1e21); ///< metric prefix for 1.0e+21 -BOOST_UNITS_STATIC_CONSTANT(yotta,long double) = (1e24); ///< metric prefix for 1.0e+24 */ +BOOST_UNITS_STATIC_CONSTANT(yotta,long double) = (1e24); ///< metric prefix for 1.0e+24 +BOOST_UNITS_STATIC_CONSTANT(ronna,long double) = (1e27); ///< metric prefix for 1.0e+27 +BOOST_UNITS_STATIC_CONSTANT(quetta,long double) = (1e30); ///< metric prefix for 1.0e+30*/ } // namespace si From 7be59360c0f7cbddbaf1ba1aaccf616079a0d564 Mon Sep 17 00:00:00 2001 From: ivanpanch Date: Sun, 27 Jul 2025 10:09:57 +0200 Subject: [PATCH 2/2] Update scale.hpp --- include/boost/units/scale.hpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/include/boost/units/scale.hpp b/include/boost/units/scale.hpp index 7d64cd54..327788cb 100644 --- a/include/boost/units/scale.hpp +++ b/include/boost/units/scale.hpp @@ -94,6 +94,8 @@ struct scale \ #define BOOST_UNITS_SCALE_DEF(exponent_,value_,name_,symbol_) \ BOOST_UNITS_SCALE_SPECIALIZATION(10,static_rational,value_, name_, symbol_) +BOOST_UNITS_SCALE_DEF(-30, 1e-30, quecto, q); +BOOST_UNITS_SCALE_DEF(-27, 1e-27, ronto, r); BOOST_UNITS_SCALE_DEF(-24, 1e-24, yocto, y); BOOST_UNITS_SCALE_DEF(-21, 1e-21, zepto, z); BOOST_UNITS_SCALE_DEF(-18, 1e-18, atto, a); @@ -115,6 +117,8 @@ BOOST_UNITS_SCALE_DEF(15, 1e15, peta, P); BOOST_UNITS_SCALE_DEF(18, 1e18, exa, E); BOOST_UNITS_SCALE_DEF(21, 1e21, zetta, Z); BOOST_UNITS_SCALE_DEF(24, 1e24, yotta, Y); +BOOST_UNITS_SCALE_DEF(27, 1e27, ronna, R); +BOOST_UNITS_SCALE_DEF(30, 1e30, quetta, Q); BOOST_UNITS_SCALE_SPECIALIZATION(2, static_rational<10>, 1024.0, kibi, Ki); BOOST_UNITS_SCALE_SPECIALIZATION(2, static_rational<20>, 1048576.0, mebi, Mi); @@ -124,6 +128,8 @@ BOOST_UNITS_SCALE_SPECIALIZATION(2, static_rational<50>, 1125899906842624.0, peb BOOST_UNITS_SCALE_SPECIALIZATION(2, static_rational<60>, 1152921504606846976.0, exbi, Ei); BOOST_UNITS_SCALE_SPECIALIZATION(2, static_rational<70>, 1180591620717411303424.0, zebi, Zi); BOOST_UNITS_SCALE_SPECIALIZATION(2, static_rational<80>, 1208925819614629174706176.0, yobi, Yi); +BOOST_UNITS_SCALE_SPECIALIZATION(2, static_rational<90>, 1237940039285380274899124224.0, robi, Ri); +BOOST_UNITS_SCALE_SPECIALIZATION(2, static_rational<100>, 1267650600228229401496703205376.0, quebi, Qi); #undef BOOST_UNITS_SCALE_DEF #undef BOOST_UNITS_SCALE_SPECIALIZATION