Journals / İTÜ Dergisi Seri D: Mühendislik / 2010 / Cilt: 9 - Sayı: 5
A time-symmetric individual block time step algorithm in n-body integration
- Pages
- 57–67
- DOI
- —
Abstract
The gravitational N-body problem can not be solvedanalytically except for two-body cases. While thereare various approximate methods, such as MonteCarlo or Fokker-Planck method, the most accurateway to solve the N-body problem is by direct inte- gration of the orbits of the N bodies. Direct integra- tion of the N-body problem is a necessity for manycases such as star cluster simulations.During the last fifteen years, two approaches havebeen put forward to improve numerical conservationof energy and other theoretically conserved quanti- ties: symplectic integration schemes, where the sim- ulated system is guaranteed to follow a slightly per- turbed Hamiltonian system, and time-symmetric in- tegration schemes, where the simulated system fol- lows the same trajectory in phase space, when runbackward or forward. Time-symmetric integrationschemes share with symplectic schemes the propertythat their energy errors show a much better behav- ior than the case for generic integration schemes.Allowing adaptive time steps typically leads to a lossof symplecticity. In contrast, time symmetry can beeasily maintained, at least for a continuous choice oftime step size. An iterative scheme must be combinedwith individual block time step scheme to apply thenew algorithm to the n-body problem effectively.However, straightforward implementation of time- symmetry, translated to block time steps, faces sig- nificant hurdles for N-body problem. For example,iteration can lead to oscillatory behavior, and evenwhen such behavior is suppressed, energy errorsshow a linear drift in time.In this work it is aimed to construct a time symmet- ric block time step integration scheme. We first con- sider to analyze block time step scheme with timesymmetrization procedure for the gravitational two- body problem. It is hard to generate an efficient al- gorithm for N -body problem without deep and clearunderstanding of this fundamental problem. Howev- er it is easy to correct the algorithm in Kepler prob- lem. Besides, it is known that contributions to theenergy error are largely generated by close encoun- ters between two particles. For these reasons, two- body problem is preferred to develop the algorithmin the first instance.The algorithm is developed and tested in two-bodyproblem for accuracy and energy conservations inmany different Kepler problem with different itera- tion numbers. In the process of the developmentwork, leapfrog integration scheme which is the se- cond order time-symmetry scheme is preferred. Alsofourth, sixth, and eighth order Hermite integrationschemes are used for test runs. The major conceptual difficulty in designing a time- symmetric block time step scheme is the global con- text information that is needed, with extensions to- ward the future as well as the past. We present anapproach that circumvents these problems. We di- vide and conquer: we split the total history of oursimulation into a number of smaller periods, whichwe call every one as era. Each era extends a periodin time equal to the largest allowed time step tmax,or to an integer multiple of tmax, whatever turns outto be the most convenient.For such reasons, we have analyzed the era conceptin more detail for time symmetrized block time steps.Our test results show that size of era must be chosencarefully for stable and robust integrations. This isimportant especially for long term simulations withhighly desirable energy conservations. Era size isalso important to avoid extra data storage and use- lessly high number of iterations which require toomuch running times.As a second gain of the work, we re-designed theprevious scheme, and suggested dynamically chang- ing size for era. With this scheme, iteration processof the integration can follow needs of the simulationadaptively. And, era size will be well-adjusted withphysics of the problem with proper criterion.Our basic integrator in the work is leapfrog scheme.It is a well known, second order, time symmetric in- tegration scheme for fixed time steps. We also usedfourth, sixth, and eighth order Hermite schemes tosee the ability of the algorithm with higher orderintegration methods. We used different Kepler prob- lems in two-body tests, and used Plummer modelinitial conditions for N-body tests. The algorithmdoes not show linear growing error with time sym- metric integrations. It also shows high energy con- servations with other integration schemes especiallyfor long integration times.
Özet
Ayrık blok zaman adımlı integrasyon algoritmaları, çok-cisim problemlerinde sıklıkla kullanılanalgoritmalardandır. Farklı zaman ölçeklerine sahip cisimlerin aynı problemin parçaları olduğu du- rumlarda, kullanımları kaçınılmazdır. Ancak kullanılan integrasyon şeması zaman-simetrik bile ol- sa, blok zaman adımları kullanıldığında zaman simetrisi bozulmaktadır. Zaman simetrisinin bozul- masının doğal sonucu, toplam enerji üzerindeki hata birikiminin doğrusal olarak artmasıdır. Buçalışmada, zaman-simetrik blok zaman adımlı bir algoritma geliştirilmiştir. Geliştirilen algoritma,sabit zaman adımları kullanıldığında zaman-simetrik yapısını koruyan integrasyon şemalarının,değişken ayrık blok adımlı bir algoritma içerisinde de zaman simetrik yapısını korumasını sağla- maktadır. Hatta integrasyon şeması tam olarak zaman simetrik olmasa bile, geliştirilen algoritmaile yüksek enerji korunumu sağlandığı gözlenmiştir. Özellikle uzun süreli integrasyonlarda algorit- manın yüksek başarımı belirgindir. Zaman-simetrik ayrık blok zaman adımlı algoritma, bir yinele- me yapısı içermektedir. Bu yinelemenin ayrık zaman adımlı integrasyon şemasıyla uygulanabilmesiiçin, çağ aralıkları (era) belirlenmiş, yineleme işlemleri bu çağ aralıkları üzerinden sağlanmıştır.Yapılan testlerde bu çağ aralıklarının büyüklüğünün hem yineleme sayısı, hem de bellek tüketimiaçısından önemli olduğu gözlenmiştir. Çalışmanın bu safhasında, algoritma çağ aralıklarının değiş- ken tutulabildiği bir yapıya kavuşturulmuştur. Algoritma Leapfrog integrasyon şeması kullanılarakgeliştirilmiş, etkinliği daha yüksek dereceden integrasyon şemalarıyla da sınanmıştır. İçerdiği yine- leme yapısı yüzünden ayrık zaman adımlı önceki algoritmalardan daha yüksek zaman ve bellek tü- ketimine sahiptir. Ancak toplam enerji üzerindeki hata birikimlerini büyük ölçüde azaltmaktadır.