Basis Unit Constants

Relative scalefactors for each built-in unit.

Context

_images/ditaa-cec989073f835607919dbe4cb7ee2cecf0fa3971.png

Introduction

Constants in the xo::qty::detail::bu namespace represent low-level building blocks for specifying units. Relative scalefactors for each unit are chosen here.

Application code will not typically use these values directtly; instead it’s expected to use units from the xo::qty::u namespace. Those units are implemented on top of the basis units described here.

#include <xo/unit/basis_unit.hpp>

using xo::qty::detail::bu;

Mass Basis Units

group basis_unit mass units

Variables

basis_unit picogram = mass_unit(1, 1000000000000)

basis unit of 10^-12 grams

basis_unit nanogram = mass_unit(1, 1000000000)

basis unit of 10^-9 grams

basis_unit microgram = mass_unit(1, 1000000)

basis unit of 10^-6 grams

basis_unit milligram = mass_unit(1, 1000)

basis unit of 10^-3 grams

basis_unit gram = mass_unit(1, 1)

basis unit of 1 gram

basis_unit kilogram = mass_unit(1000, 1)

basis unit of 10^3 grams

basis_unit tonne = mass_unit(1000000, 1)

basis unit of 10^6 grams = 10^3 kilograms

basis_unit kilotonne = mass_unit(1000000000, 1)

basis unit of 10^9 grams = 10^6 kilograms = 10^3 tonnes

basis_unit megatonne = mass_unit(1000000000000, 1)

basis unit of 10^12 grams = 10^9 kilograms = 10^6 tonnes

basis_unit gigatonne = mass_unit(1000000000000000, 1)

basis unit of 10^15 grams = 10^12 kilograms = 10^9 tonnes

Distance Basis Units

group basis_unit distance units

Variables

basis_unit picometer = distance_unit(1, 1000000000000)

basis unit of 10^-12 meters

basis_unit nanometer = distance_unit(1, 1000000000)

basis unit of 10^-9 meters

basis_unit micrometer = distance_unit(1, 1000000)

basis unit of 10^-6 meters

basis_unit millimeter = distance_unit(1, 1000)

basis unit of 10^-3 meters

basis_unit meter = distance_unit(1, 1)

basis unit of 1 meter

basis_unit kilometer = distance_unit(1000, 1)

basis unit of 10^3 meters

basis_unit megameter = distance_unit(1000000, 1)

basis unit of 10^6 meters (for form’s sake &#8212; not commonly used)

basis_unit gigameter = distance_unit(1000000000, 1)

basis unit of 10^9 meters (for form’s sake &#8212; not commonly used)

basis_unit lightsecond = distance_unit(299792458, 1)

basis unit of 1 light-second = distance light travels in a vacuum in 1 second

basis_unit astronomicalunit = distance_unit(149597870700, 1)

basis unit of 1 astronomical unit, representing approximate radius of earth orbit.

basis_unit picometre = picometer

international spelling for picometer

basis_unit nanometre = nanometer

international spelling for nanometer

basis_unit micrometre = micrometer

international spelling for micrometer

basis_unit millimetre = millimeter

international spelling for millimeter

basis_unit metre = meter

international spelling for meter

basis_unit kilometre = kilometer

international spelling for kilometer

basis_unit megametre = megameter

international spelling for megameter

basis_unit gigametre = gigameter

international spelling for gigameter

basis_unit inch = distance_unit(3048, 120000)

basis-unit representing 1 inch; defined as exactly 1/12 feet

basis_unit foot = distance_unit(3048, 10000)

basis-unit representing 1 foot; defined as exactly 0.3048 meters

basis_unit yard = distance_unit(3 * 3048, 10000)

basis-unit representing 1 yard; defined as exactly 3 feet

basis_unit mile = distance_unit(5280 * 3048, 10000)

basis-unit representing 1 mile; defined as exactly 1760 yards = 5280 feet

Time Basis Units

group basis_unit time units

Variables

basis_unit picosecond = time_unit(1, 1000000000000)

basis unit of 10^-12 seconds

basis_unit nanosecond = time_unit(1, 1000000000)

basis unit of 10^-9 seconds

basis_unit microsecond = time_unit(1, 1000000)

basis unit of 10^-6 seconds

basis_unit millisecond = time_unit(1, 1000)

basis unit of 10^-3 seconds

basis_unit second = time_unit(1, 1)

basis unit of 1 second

basis_unit minute = time_unit(60, 1)

basis unit of 1 minute = 60 seconds

basis_unit hour = time_unit(3600, 1)

basis unit of 1 hour = 3600 seconds

basis_unit day = time_unit(24 * 3600, 1)

basis unit of 1 day = exactly 24 hours

basis_unit week = time_unit(7 * 24 * 3600, 1)

basis unit of 1 week = exactly 7 days

basis_unit month = time_unit(30 * 24 * 3600, 1)

basis unit of 1 month = exactly 30 days

basis_unit year = time_unit((365 * 24 + 6) * 3600, 1)

basis unit of 1 year, defined as 365.25 days

basis_unit year365 = time_unit(365 * 24 * 3600, 1)

basis unit of 1 year365 = exactly 365 days

basis_unit year360 = time_unit(360 * 24 * 3600, 1)

basis unit of 1 year360 = exactly 360 days

basis_unit year250 = time_unit(250 * 24 * 3600, 1)

basis unit of 1 year250 = exactly 250 days. Approximate number of business days in one year