Среднее вращение кватерниона
возвращает среднее вращение элементов quatAverage
= meanrot(quat
)quat
вдоль первого измерения массива, размер которого не действительно равняется 1.
Если quat
вектор, meanrot(quat)
возвращает среднее вращение элементов.
Если quat
матрица, meanrot(quat)
возвращает вектор-строку, содержащий среднее вращение каждого столбца.
Если quat
многомерный массив, затем mearot(quat)
действует вдоль первого измерения массива, размер которого не равняется 1, обрабатывая элементы как векторы. Эта размерность становится 1, в то время как размеры всех других размерностей остаются то же самое.
meanrot
функция нормирует входные кватернионы, quat
, прежде, чем вычислить среднее значение.
возвратите среднее вращение по измерению quatAverage
= meanrot(quat
,dim
)dim
. Например, если quat
матрица, затем meanrot(quat,2)
вектор-столбец, содержащий среднее значение каждой строки.
задает, включать ли или не использовать quatAverage
= meanrot(___,nanflag
)NaN
значения от вычисления для любого из предыдущих синтаксисов. meanrot(quat,'includenan')
включает весь NaN
значения в вычислении, в то время как mean(quat,'omitnan')
игнорирует их.
meanrot
определяет среднее значение кватерниона, , согласно [1]. кватернион, который минимизирует норму Фробениуса в квадрате различия между матрицами вращения:
[1] Markley, Ф. Лэндис, Янг Чен, Джон Лукас Крэссидис и Яаков Ошман. "Средние Кватернионы". Журнал Руководства, Управления и Динамики. Издание 30, Выпуск 4, 2007, стр 1193-1197.