Этот ответ пытается дать краткий обзор некоторых важных аспектов. Поскольку определение HSH довольно сложное, и я не смог найти общий обзор некоторых предварительно оцененных функций, я не привел примеры просто потому, что сейчас мне потребуется слишком много времени.
Описание проблемы и грубая сила
Чтобы определить свертку с любым набором базисных функций и, таким образом, вычислить коэффициенты, нам обычно нужно вычислить интеграл по области (= сфера для SH, полусфера для HSH). Все , что нам нужно сделать, чтобы представить полусферической функцию п , которая определяется через углы тета ( «вверх / вниз») и фи ( «влево / вправо»), через коэффициент с для базисных функций HSH H является следующее:
Грех (тета) существует , потому что мы интегрируем по поверхности (полу-) сфере. Концептуально, размер части области, которая появляется в результате изменения фи , больше или меньше в текущей тэте. Подробнее об этом здесь
Если мы не слишком заботимся о точности или времени вычислений, мы можем решить эту проблему просто путем выборки: генерировать одинаково распределенные (!) Направления на полушарии, вычислять произведение f и H и усреднять результаты (если вы действительно распределены одинаково указывает, что вам не нужен грех (тета) ).
Начните с аналитического решения
Конечно, мы хотели бы иметь аналитическое решение для нашей функции, но это то, где все может быть очень сложно. В качестве первого шага нам может понадобиться преобразовать функцию, заданную в декартовых направлениях, в сферические координаты. Эта часть все еще проста, просто замените все ваши x, y и z следующим образом:
Обратите внимание, что это дает нам систему, в которой ось z представляет собой «полушарие» вверх (тета = 0), которое должно быть представлено HSH. После этого уже может быть возможно вставить все в систему компьютерной алгебры и решить уравнение. Не пытайтесь решить для всех m & l, а скорее попробуйте один коэффициент за раз, так как маловероятно, что есть компактное выражение, которое описывает все их сразу. Определение HSH является относительно сложным, что делает очень утомительным оценивать эти функции. В этой статье базисные функции HSH нулевого и первого порядка упоминаются в декартовых координатах.
Заметки о вращениях и зональных гармониках
Функции, которые являются вращательно-симметричными вокруг этой оси z, являются очень хорошими кандидатами для успешного аналитического вывода, поскольку они влияют только на зональные коэффициенты, у которых все коэффициенты с индексом m равны нулю. Это особенно полезно для более общих Сферических Гармоник, где существует простая формула, которая позволяет повернуть любое представление Зональной Сферической Гармоники в произвольном направлении, что приводит к представлению Сферической Гармоники без потери данных (см. Здесь). Это означает, что вы можете вывести коэффициенты ZSH, предполагая, что ваша радиальная симметричная «функция указывает на z» и затем поворачивает ее в любом желаемом направлении. Это прекрасно работает, например, с различными вариациями косинусных долей, а также дает вам факторы, которые вы упомянули в вопросе.
Теперь плохие новости: для HSH любое вращение функции вокруг другой оси, кроме z, с потерями, так как ваша функция будет «касаться» нижней неопределенной полусферы после вращения. Следовательно, также не существует удобной формулы вращения "Hemi Zonal to HSH". Вместо этого есть несколько способов сделать это с разными недостатками. Для более подробной информации см. Документ и презентацию .
Кстати, все это проще с H-Basis , которая также является полусферической (но первоначально определялась только для ограниченного числа полос частот).