Czy mogę raytracować soczewkowanie grawitacyjne przy użyciu tylko jednego punktu grawitacji?


10

Chciałbym zasymulować powiększenie bardzo odległych obiektów przez efekt soczewkowania mniej odległej galaktyki. Czy będę musiał modelować dużą liczbę mas punktowych, czy może uda mi się uzyskać tylko jedną średnią masę punktową?

Widzę, jak przeprowadzić raytrace za pomocą hiperboli dla promieni, na które wpływa jedna masa punktowa, ale nie wiedziałbym, od czego zacząć od wielu mas punktowych. Więc zanim spróbuję zbudować ten raytracer, chciałbym wiedzieć, czy będę w stanie uniknąć wielu mas i nadal mieć wiarygodne wyniki.


2
To może być lepsze pytanie dla Physics.SE lub Astronomy.SE . Wiem, że masa punktowa wywołuje efekty soczewkowania (patrz np. To ), ale nie mam pojęcia, czy galaktykę można dobrze przybliżyć przez masę punktową dla czegoś takiego.
Nathan Reed

Odpowiedzi:


8

Jak zapewne zauważyłeś, na ogół nie można rozwiązać w postaci zamkniętej równań trajektorii promienia wokół wielu zniekształcających obiektów.

Standardowym podejściem do takich rzeczy jest dyskrecja. To wygląda jak integracja Eulera. Wystarczy skierować promień trochę w stronę obiektu, obliczyć grawitację ze wszystkich źródeł i wygiąć go, a następnie przesunąć go jeszcze bardziej, a następnie zmniejszyć. To się nazywa raymarching .

Ponieważ interesują Cię problemy w skali astrofizycznej, możesz założyć, że promień jest wystarczająco liniowy z dala od obiektu, przy minimalnym błędzie.


Oto scena, którą renderowałem jakiś czas temu przy użyciu homebrew photonmapper (bez QMC) przy użyciu tej techniki raymarching.

Przedstawiam: relatywistyczne mapowanie fotonów: czarna dziura w pudełku Cornella! czarna dziura w pudełku Cornella

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.