template<typename T> octonion<T> spherical(T const & rho, T const & theta, T const & phi1, T const & phi2, T const & phi3, T const & phi4, T const & phi5, T const & phi6);
template<typename T> octonion<T> multipolar(T const & rho1, T const & theta1, T const & rho2, T const & theta2, T const & rho3, T const & theta3, T const & rho4, T const & theta4);
template<typename T> octonion<T> cylindrical(T const & r, T const & angle, T const & h1, T const & h2, T const & h3, T const & h4, T const & h5, T const & h6);
Они строят октонионы таким же образом, как полярные строят сложные числа, поскольку для октононов нет строгого эквивалента полярных координат.
<spherical
>представляет собой простую транспозицию<polar
>, она принимает в качестве входов (положительную) величину и точку на гиперсфере, заданную тремя углами. Первый из них.имеет естественный диапазон от -pi до +pi, а два других имеют естественные диапазоны от -pi/2 до +pi/2 (как в случае с обычными сферическими координатами вR3).. Из-за множества симметрий и периодичностей ничего не происходит, если величина отрицательная или углы находятся за пределами их естественных диапазонов. Тем не менее, ожидаемые дегенерации (величина нуля игнорирует настройки углов ...) случаются.
<cylindrical
>также является простой транспозицией обычных цилиндрических координат вR3, что, в свою очередь, является еще одной производной плоских полярных координат. Первые два входа являются полярными координатами первогоCкомпонента октониона. Третий и четвертый входы помещаются в третий и четвертыйRкомпоненты октониона соответственно.
<multipolar
>— ещё одно простое обобщение полярных координат. На этот раз обаCкомпонента октониона приведены в полярных координатах.
В этой версии нашей реализации октононов нет аналога комплексной операции значений arg, поскольку ситуация несколько сложнее.