В этой реализации не предусмотрено<log
>или<sqrt
>для кватернионов, а<pow
>также ограничено интегральными полномочиями экспонента. Причин этому несколько: с одной стороны, еще предстоит тщательно исследовать эквивалент аналитического продолжения для кватернионов («разрезов ветвей») (во всяком случае, мною...), и мы хотим избежать вводимой в стандарт бессмыслицы экспоненциаций комплексов комплексами (которая хорошо определена, но не в стандарте...). Говоря о чепухе, сказать, что<pow(0,0)
>— это «определение реализации», — это просто смерть мозга.
Однако мы предоставляем несколько трансцендентальных, главным из которых является экспоненциальный. Этот автор утверждает полное доказательство «закрытой формулы» как своего собственного, так и ее самостоятельного изобретения (есть претензии к предшествующему изобретению формулы, например, к одному профессору Шомаке, и возможно, что формула была известна пару веков назад, но в отсутствие библиографической ссылки вопрос находится на рассмотрении, ожидая дальнейшего исследования; с другой стороны, определение и существование экспоненциального на кватернионах, конечно, факт, известный очень долго). В основном, любые сходящиеся силовые ряды с реальными коэффициентами, которые допускают замкнутую формулу вСможно перевести наH. Более трансцендентные элементы этого типа могут быть добавлены в дальнейшем пересмотре по запросу. Следует отметить, что именно эти функции вызывают зависимость отboost/math/special_functions/sinc.hppиboost/math/special_functions/sinhc.hpp.Заголовок.
template<typename T> quaternion<T> exp(quaternion<T> const & q);
Вычисляет экспоненциал кватерниона.
template<typename T> quaternion<T> cos(quaternion<T> const & q);
Вычисляет косинус кватерниона
template<typename T> quaternion<T> sin(quaternion<T> const & q);
Вычисляет синус кватерниона.
template<typename T> quaternion<T> tan(quaternion<T> const & q);
Вычисляет тангенс кватерниона.
template<typename T> quaternion<T> cosh(quaternion<T> const & q);
Вычисляет гиперболический косинус кватерниона.
template<typename T> quaternion<T> sinh(quaternion<T> const & q);
Вычисляет гиперболический синус кватерниона.
template<typename T> quaternion<T> tanh(quaternion<T> const & q);
Вычисляет гиперболический тангенс кватерниона.
template<typename T> quaternion<T> pow(quaternion<T> const & q, int n);
Вычисляет n-ю силу кватерниона q.