TypeSI
Units of 'Système international' Blended for C++
Loading...
Searching...
No Matches
Functions
Si::Math Namespace Reference

Mathematical operations with Si units. More...

Functions

template<typename Power , typename T , typename Function = Internal::std_pow<T>, typename... Powers>
Internal::Unit< T, std::ratio_multiply< Power, Powers >... > pow (const Internal::Unit< T, Powers... > &base)
 Function for exponentiation with Unit as base. More...
 
template<typename Power , typename Unit , typename Function = Internal::std_pow<decltype(+std::declval<Unit>())>, typename PrefixRatio >
Internal::GenericPrefix< typename std::ratio< static_cast< std::intmax_t >(std::pow(PrefixRatio::num, Power::num)), static_cast< std::intmax_t >(std::pow(PrefixRatio::den, Power::num))>::type, decltype(pow< Power >(std::declval< Unit >()))> pow (const Internal::GenericPrefix< PrefixRatio, Unit > &base)
 Function for exponentiation with prefixed Unit as base. More...
 

Detailed Description

Mathematical operations with Si units.

Function Documentation

◆ pow() [1/2]

template<typename Power , typename Unit , typename Function = Internal::std_pow<decltype(+std::declval<Unit>())>, typename PrefixRatio >
Internal::GenericPrefix< typename std::ratio< static_cast< std::intmax_t >(std::pow(PrefixRatio::num, Power::num)), static_cast< std::intmax_t >(std::pow(PrefixRatio::den, Power::num))>::type, decltype(pow< Power >(std::declval< Unit >()))> Si::Math::pow ( const Internal::GenericPrefix< PrefixRatio, Unit > &  base)

Function for exponentiation with prefixed Unit as base.

Template Parameters
Powerstd::ratio representing power
Unit(optional) Unit type of base
Function(optional) Class with operator() defined as pow function for container type
PrefixRatio(optional) std::ratio of GenericPrefix(supposed to always be filled by the compiler)

◆ pow() [2/2]

template<typename Power , typename T , typename Function = Internal::std_pow<T>, typename... Powers>
Internal::Unit< T, std::ratio_multiply< Power, Powers >... > Si::Math::pow ( const Internal::Unit< T, Powers... > &  base)

Function for exponentiation with Unit as base.

Template Parameters
Powerstd::ratio representing power
T(optional) Container type for Unit
Function(optional) Class with operator() defined as pow function for container type
Powers(optional) Sequence of std::ratio from Unit argument(supposed to always be filled by the compiler)