cleoanka

etkileşimli bir sayfa · n-cisim

Yörüngeyi bir kerede çözmek

Adım adım ilerlemek yerine bütün geleceği tahmin et, sonra tahmini kendi kendine düzelt. Waveform relaxation, gecikmeli kütleçekim ve neden parça parça çözüldüğü.

canvas ve kod, bağımlılık yok · GitHub’da aura-volterra-engine


1

Adım adım değil, bütün olarak

Bir gezegenin yörüngesini hesaplamanın okul yolu bellidir: şu anki konum ve hızdan küçük bir adım at, kuvveti yeniden hesapla, bir adım daha at. RK4 gibi yöntemler bunu çok iyi yapar ama doğası gereği sıralıdır; ikinci adım birinci bitmeden başlayamaz.

Aynı hareket denklemi bir integral olarak da yazılabilir: bir andaki konum, başlangıç konumu artı başlangıç hızıyla gidilen yol, artı o ana kadar etkiyen bütün ivmelerin iki kez toplanmış halidir. Bu Volterra formunda ilginç bir şey yapılabilir: bütün yörüngeyi tahmin et, tahmin üzerinde ivmeleri hesapla, integrali al ve yeni, daha iyi bir yörünge elde et. Buna Picard iterasyonu, bütün yörüngeye birden uygulanınca da waveform relaxation denir.

FIG. 1 — İlk tahmin düz bir çizgi: gezegen hiç çekilmiyormuş gibi. Her iterasyon bütün eğriyi birden günceller; yeşil kısım artık doğru olan bölüm. Soluk kesikli çizgi tam yörünge. Sağ alttaki grafik, iterasyonlar arasındaki en büyük değişim (logaritmik).

Oynat’a bas ve yeşil bölgeyi izle. Doğruluk t = 0’dan bir dalga cephesi gibi ilerler: her tarama bütün eğriyi değiştirir ama doğru olan kısmı sadece biraz uzatır. Volterra denklemlerinde Picard, sonlu her ufukta sonunda yakınsar; bu teorinin güzel bir garantisi. Ama iterasyon sayısı ufukla birlikte büyür ve yakın geçişlerde, kuvvetin çok sertleştiği yerlerde, uzun bir ufuk iterasyonu neredeyse durdurabilir. Sönümleme (β < 1) sert durumlarda güvenlik sağlar ama kolay durumlarda sadece yavaşlatır.

2

Parça parça: pencereler

Madem her tarama bütün ufku baştan geziyor ama doğru kısmı sadece biraz ilerletiyor, uzun bir ufku tek parça çözmek israftır. Onu kısa pencerelere böl; her pencereyi kendi içinde yakınsat, bittiği yerdeki konum ve hız bir sonrakinin başlangıcı olsun. aura-volterra-engine’in sürekli modu bunu yapar ve belleği sabit tutan bir gecikme tamponuyla pencereleri sonsuza kadar kaydırabilir.

FIG. 2 — Yakın geçişli bir yörüngenin üç turu, seçtiğin sayıda pencereye bölünmüş. Altta her pencerenin kaç iterasyonda yakınsadığı. Not satırı toplam iş yükünü (ivme hesabı sayısı) ve sonucun aynı ızgarada adım adım çözülen cevaptan farkını gösterir.

Tek pencere de yakınsar, ama yaklaşık 90 bin ivme hesabına mal olur. On iki pencereye bölünce iterasyon sayısı artar ama her iterasyon kısa bir parçayı taradığı için iş beş kat azalır; yirmi dört pencerede sekiz kata yaklaşır. Bedeli küçük ve dürüstçe görünür: her pencere belli bir toleransla bitirilir ve bu kalıntı, yakın geçişlerde bir sonraki pencereye büyüyerek taşınır. Sonuç yine de adım adım çözümün aynısıdır: relaxation başka bir cevap bulmuyor, aynı cevaba paralelleşebilir bir yoldan varıyor.

3

Kütleçekimi anlık değildir

Newton’un kütleçekimi sonsuz hızla yayılır: yıldız kıpırdadığı anda gezegen bunu hisseder. Gerçekte etki ışık hızıyla gelir, yani gezegen yıldızın eskiden olduğu yere çekilir. Volterra formu bunu doğal olarak taşır, çünkü zaten geçmişin tamamını içeren bir integral.

Ama saf haliyle uygulanan gecikme bir tuzak kurar. Gezegeni yıldızın eski konumuna çekmek yörüngeye küçük bir tork ekler ve yörünge yavaş yavaş büyür. Laplace bunu 1805’te fark edip kütleçekiminin ışıktan milyonlarca kat hızlı olması gerektiği sonucuna varmıştı. Genel görelilikte bu etki neredeyse tamamen sönümlenir: alan kaynağın hızını da taşıdığı için kuvvet, yıldızın şimdiki konumuna çok yakın bir yeri gösterir. Motorun aberasyon düzeltmesi bunu modeller.

FIG. 3 — Yıldız görünmeyen bir eşin etrafında küçük bir çember çiziyor. Halkalar, yıldızdan c hızıyla yayılan etkiler. İçi boş daire, gezegenin o an “gördüğü” yıldız; ince çizgi kuvvetin yönü. Alttaki eğri, gezegenin yörünge enerjisindeki sapma.

Saf gecikmede enerji sapması tek yönde birikir; aberasyon düzeltmesi açıkken aynı c değerinde çok daha küçük kalır ve Newton’un salınımına benzer. Bu figür bir oyuncak model: gerçek motor tam 1PN (Einstein–Infeld–Hoffmann) denklemlerini kullanır. Ama tuzağın ve çıkışın şekli aynı.

picard
Bütün yörüngeyi tahmin edip tekrar tekrar düzelten sabit nokta iterasyonu.
pencereler
Uzun ufku yakınsayabilen kısa parçalara bölmek; sürekli modda sabit bellekle kayar.
gecikme
Sonlu hızla yayılan kütleçekimi; saf hali yörüngeyi şişirir, aberasyon düzeltmesi dengeler.