Konwolucja półkulistych harmonicznych

10

Harmoniczne sferyczne (SH) to sposób na reprezentowanie funkcji sferycznych niskiej częstotliwości przy użyciu tylko kilku współczynników. Mają ładne własności matematyczne, np. Splot z funkcją jądra h (x) (która ma symetrię kołową) można obliczyć jako

(h * f) ^ m_l = \ sqrt {\ frac {4 \ pi} {2l + 1}} h ^ 0_l f ^ m_l

W przypadku splotu z płatem cosinusowym dla rangi 3 SH powoduje to proste skalowanie pasm z czynnikami

[\ pi, \ frac {2 \ pi} {3}, \ frac {\ pi} {4}]

W wielu przypadkach, np. Światło padające na dany punkt na nieprzezroczystej powierzchni, pełna informacja sferyczna nie jest potrzebna, ponieważ połowa kuli jest zerowa / niezdefiniowana / nieużywana. Tak narodziły się półkuliste harmoniczne (HSH).

Jak działa splot z dowolnym jądrem (o symetrii kołowej) dla HSH? Czy splot z SH może zostać przedłużony lub czy jest jakiś papier, który szczegółowo omawia ten temat?

David Kuri
źródło
Piszesz „arbitralne jądro o symetrii kołowej”: Czy to nie znaczy, że tak naprawdę potrzebujesz tylko splotu z (półkulistą) częścią harmonicznych strefowych? Jeśli twoja oś symetrii jest inna, nadal możesz jej użyć, dodając obroty przed i po zwoju strefy. Sposób wykonywania obrotów opisano w artykule. Integracja z częścią strefową (m = 0) powinna być stosunkowo łatwa. Jednak, podobnie jak w przypadku sferycznych harmonicznych, nie będzie analitycznie możliwe do rozwiązania w przypadku dowolnych funkcji. Proste rzeczy, takie jak płaty cosinusowe, powinny działać dobrze (choć jeszcze nie próbowałem).
Wumpf
@Wumpf Masz rację, to właściwie wszystko. W przypadku SH po prostu skalowałbym „każde pasmo f według odpowiedniego terminu m = 0 z [funkcji jądra] h” (cytując głupie sztuczki Sloana). Pytanie brzmi: czy mogę zrobić to samo dla HSH?
David Kuri

Odpowiedzi:

3

W tej odpowiedzi przedstawiono krótki przegląd niektórych ważnych aspektów. Ponieważ definicja HSH jest dość złożona i nie mogłem znaleźć przeglądu niektórych wstępnie ocenionych funkcji, nie podałem przykładów po prostu dlatego, że zajęłoby mi to teraz zbyt dużo czasu.

Opis problemu i brutalna siła

Aby wyznaczyć dowolną splot z dowolnym zestawem funkcji bazowej, a tym samym obliczając współczynniki, na ogół musimy obliczyć całkę w domenie (= kula dla SH, półkula dla HSH). Wszystko, co musimy zrobić, aby przedstawić funkcję półkuli f , która jest zdefiniowana dla kątów theta („góra / dół”) i phi („lewo / prawo”), poprzez współczynnik c dla funkcji bazowych HSH H, jest następujący:

\ int_0 ^ {2 \ pi} \ int_0 ^ {\ frac {2} {\ pi}} f (\ theta, \ phi) \ cdot H_l ^ m (\ theta, \ phi) \ cdot sin (\ theta) \ , \, \ mathrm {d} \ theta \ mathrm {d} \ phi

Sin (theta) jest tam dlatego, że integracja na powierzchni kuli (połud- niowej). Pod względem koncepcyjnym wielkość fragmentu pochodzącego ze zmiany phi jest większa lub mniejsza w obecnym theta. Więcej na ten temat tutaj

Jeśli nie przejmujemy się zbytnio dokładnością ani czasem obliczeniowym, możemy rozwiązać ten problem po prostu przez próbkowanie: Wygeneruj równo rozłożone (!) Kierunki na półkuli, oblicz iloczyn f i H i uśrednij wyniki (jeśli naprawdę równo rozłożyłeś punkty, których nie potrzebujesz grzechu (theta) ).

Rozpocznij z rozwiązaniem analitycznym

Oczywiście chcielibyśmy mieć analityczne rozwiązanie dla naszej funkcji, ale tutaj sprawy mogą stać się bardzo trudne. Pierwszym krokiem może być konieczność przekształcenia funkcji podanej w kierunkach kartezjańskich na współrzędne sferyczne. Ta część jest nadal łatwa, wystarczy wymienić wszystkie x, y i z w następujący sposób:

(x, y, z) \ rightarrow (\ sin \ theta \ cos \ phi, \ sin \ theta \ sin \ phi, \ cos \ theta)

Zauważ, że daje to nam system, w którym oś Z jest „górą” półkuli (theta = 0), która powinna być reprezentowana przez HSH. Po tym może być już możliwe wstawienie wszystkiego do systemu algebry komputerowej i rozwiązanie równania. Nie próbuj rozwiązywać wszystkich m & l, ale raczej wypróbuj jeden współczynnik na raz, ponieważ jest mało prawdopodobne, aby istniało zwarte wyrażenie, które opisuje wszystkie z nich jednocześnie. Definicja HSH jest stosunkowo złożona, co sprawia, że ​​ocena tych funkcji jest bardzo nużąca. W tym artykule funkcje bazowe HSH zerowego i pierwszego rzędu są wymienione we współrzędnych kartezjańskich.

Uwagi na temat rotacji i harmonicznych strefowych

Funkcje symetryczne obrotowo wokół tej osi Z są bardzo dobrymi kandydatami do pomyślnego wyprowadzenia analitycznego, ponieważ wpływają tylko na współczynniki strefowe , które wszystkie są współczynnikami o indeksie m równym zero. Jest to szczególnie przydatne w przypadku bardziej ogólnych harmonicznych sferycznych, w których istnieje łatwa formuła, która pozwala obrócić dowolną strefową reprezentację harmonicznych sferycznych w dowolnym kierunku, co daje reprezentację harmonicznych sferycznych bez utraty danych (patrz tutaj). Oznacza to, że możesz wyliczyć współczynniki ZSH, zakładając, że twoja radialna symetryczna „funkcja wskazuje na z” i obraca ją następnie w dowolnym pożądanym kierunku. Działa to doskonale na przykład z różnymi odmianami płata cosinusowego, a także podaje czynniki wymienione w pytaniu.

Teraz zła wiadomość: dla HSH każdy obrót funkcji wokół innej osi niż z jest stratny, ponieważ twoja funkcja „dotknie” dolnej niezdefiniowanej półkuli po obrocie. Dlatego nie ma również dogodnej formuły rotacji „Hemi Zonal to HSH”. Zamiast tego istnieje wiele sposobów na zrobienie tego z różnymi wadami. Aby uzyskać więcej informacji, zobacz artykuł i prezentację .


Nawiasem mówiąc: Wszystko to jest łatwiejsze dzięki H-Basis , która jest również półkulista (ale pierwotnie zdefiniowana tylko dla ograniczonej liczby pasm częstotliwości).

Wumpf
źródło