3. Numerical method and its validation
For all runs, we used the integration program in the Starlab software toolset (McMillan & Hut 1996). Starlab is a collection of utility programs developed for numerical simulation of star clusters and the data analysis of the results of the simulation. Utility programs in Starlab are divided into four classes: (a) programs which create N-body snapshots, (b) programs which apply some transformation to N-body snapshots, (c) programs which perform time integration, and (d) programs which analyze N-body snapshots. The I/O interface of all of these programs is unified in such a way that the output of one program can always be used as the input for another program through the UNIX pipe mechanism.
The integration program performs the online analysis needed in this work. The time integration scheme used in is the individual timestep with a 4th-order Hermite scheme (Makino & Aarseth 1992), which is essentially the same as the one used in Aarseth's NBODY4 and NBODY6. What sets apart from these other programs is the way it handles close encounters and compact subsystems. In NBODYx, the subsystems are handled by various regularization techniques according to the number of particles and their dynamical states. In contrast, models any compact subsystem as a local hierarchical binary tree. This procedure provides a great algorithmic simplification, without significant loss in either accuracy or speed.
Another difference between and the older NBODYx codes concerns the data structures used. is written in an object-oriented style in which each star is an object with properties which represent the dynamics (mass in dynamical units, position, velocity etc.) and properties which represent the stellar evolution (mass in solar masses, age, effective temperature, luminosity, state of the star, chemical composition and so on). The part of the code which handles the dynamics and the part that handles the stellar evolution are completely independent of each other. The communication between the two parts can take place only locally, for one individual star at a time, and only at one well-defined point in the code, where the dynamical and evolutionary information of that star are allowed to exchange information. This design makes it possible to combine complex N-body integration programs and complex stellar evolution packages without major problems in either compatibility or maintenance.
Currently, the stellar evolution is handled in the following way. At a pre-specified time interval, the diagnostic time step (see Fig. 3), the stellar evolution package is called for all stars in the system and the mass and state of the stars are updated. If the change of the mass of any star exceeds a prescribed limit, the mass of all stars used in the N-body integrator is updated, the energy change due to that change is calculated, and the integrator is re-initialized.
Since we invoke stellar evolution and tidal truncation only at fixed time intervals, the results of the calculation might conceivably depend on the specific time interval used. We discuss this possibility below, in Sect. 3.3.
3.2. The hardware
The time integration in for this study is performed using the special purpose computer GRAPE-4 (Makino et al. 1997). GRAPE-4 is an attached processor which calculates the gravitational interactions between stars. The actual time integration is done on the host computer, which runs the UNIX operating system. Starlab programs and packages all reside on the host computer.
The peak speed of the fully configured GRAPE-4 system is 1.08 Tflops. For this study, we mostly use the smallest configuration with a peak speed of 30 Gflops.
3.3. Test of the method
In this section, we describe the result of the test runs in which we varied the time intervals to invoke the stellar evolution package and tidal removal of stars. As we mentioned above, this choice could have a large effect, in particular at the early stage where the high-mass stars, which evolve very quickly, dominate the evolution of the stellar system.
We performed the simulation from the same initial conditions for 1024- and 4096-body systems, changing the time interval to invoke the mass loss due to stellar evolution from 1/256 to 4. The time interval to remove the stars out of the tidal radius is taken to be the same as the time interval for stellar mass loss. All these runs resulted in the evaporation of the cluster in less than 100 Myrs. Table 1 and Fig. 3 give overviews of the results.
Table 1. Series of test runs with 1k and 4k particles of star clusters with the following initial conditions , between 0.4 and 14 and pc and pc for the runs with 1k and 4k stars, respectively (where we keep the crossing time fixed, at Myr). The numbers in the table are in units of the N-body time. The first column gives the name of each test model. The second column gives the diagnostic time step for synchronization of the dynamical integrator and the stellar evolution part of the code. The next two columns give the time (in units of a N-body time) in which the 1k models dissolves, followed by two columns that display the time in which the 4k models dissolve. The columns listed as "1k" and "4k" refer to calculations in which the exact same initial conditions were used throughout a single column. The columns listed with an extra "(r)" refer to calculations for which each run was started from a new, random realization.
If the stellar evolution time interval is taken to be larger than the crossing time, then the lifetime of the stellar system is extended considerably. On the other hand, as long as the evolution time step is taken to be a small fraction of the crossing time, its precise choice of value has a relatively small effect on the lifetime of the cluster and run-to-run variations due to small number statistics are larger than any systematic effects caused by the choice of time interval.
In these models, the crossing time corresponds to 1.7 Myr. If the diagnostic time interval is chosen to be longer than the crossing time, it would exceed the lifetime of the most massive stars. This in turn would delay the effects of stellar evolution to be felt dynamically, which would artificially extend the lifetime of the cluster. This effect is illustrated in Fig. 3.
For the following computations we adopt a diagnostic timestep for synchronization of the dynamical integrator and the stellar evolution part of the code of . This suffices in terms of accuracy without too much performance lost.
We performed a second set of test runs using the same initial conditions as one of the runs in FH95 (the run shown in their Fig. 7). The results of our test runs is given in Table 2. There are two reasons to perform this test, namely to investigate the effect of the rather large softening used by FH95, and to evaluate to what extent different treatments of a tidal limit influence the value of the final dissipation time.
Table 2. The computations in which we attempt to reproduce the results from FH95 are based on a star cluster of family 1 (see CW90), with a total mass of . The mass function is given by between 0.4 and 14 and . The time unit is about 1.9 Myr and the distance to the galactic center is about 4 kpc. The first column gives the model name, followed by the number of particles in the simulation, the tidal radius, the virial radius, and the time for dissolving the system in the tidal field of the galaxy in crossing times and in billion years.
Fig. 4 demonstrates that the evolution of the total mass is qualitatively different for runs with less than 16k particles and the run with 16k particle. In FH95, this transition took place around . This result is quite natural since the relaxation effect is 2-3 times smaller in the FH95 runs, because of the large softening.
Our cluster dissolution times turn out to be roughly a factor of two longer than those reported by of FH95. There are two reasons for this discrepancy, as can be read from Fig. 5. One reason is the fact that we do not use any softening in our production runs. Adding a softening, comparable to that used by FH95, cuts our dissolution time roughly in half. Another reason stems from the difference in treatment of tidal limitations of the model cluster. Our choice of a simple tidal cutoff, rather than the more elaborate and physically correct tidal field employed by FH95, effectively weakens the tidal effect in our calculations, increasing the cluster lifetime.
Fig. 5 compares several realizations of run FH8 (Table 2), some using our simple spherical cutoff, others with a tidal field equivalent to that employed by FH95. All runs were performed using . When both changes are made, adding a large softening as well as a more accurate treatment of the tidal field (dotted line), the dissolution time diminishes even further, to less than 40% of that of our normal run (solid line).
FH95's treatment of the tidal field is physically correct, but it complicates comparison of the N-body results with the CW90's Fokker-Plank results. For that reason, in the remainder of this comparative paper, we continue to use a simple tidal cutoff. However, the reader should note that the dissolution times reported below are probably too long by a factor of two.
3.4. Initial IC and IR models
We consider the King model with with an initial half-mass relaxation time of 2.87 billion years (family 1 of CW90) as our standard model. (Note here that the relaxation time used by CW90 is defined at the tidal radius of the star cluster instead of at the virial radius, see Eq. 4.) The slope of the initial mass function is fixed to . The cutoff values of the mass distribution at high- and low-mass end are taken as 14 and 0.4 , respectively. These values are chosen so that they are the same as the parameters used in CW90. (Note that CW90 quote both 14 and 15 as upper limits for their initial mass function.)
The number of particles we used for the standard model is 32768. Table 3 summarizes the characteristics of the standard model.
Table 3. Initial conditions and resulting dissolution time of the main model with 32k stars. The first column gives the name of the model followed by the number of stars, the tidal radius and the virial radius (both in parsecs), the time unit in million years and the relaxation time (in billions of years). The last two columns contain the dissolution time in units of the time unit and in billions of years.'
Starting from the standard model, we generated two series of initial models. We designed the first series of runs (referred to below as iso-relaxation, or IR, models) so that our N-body results can be directly compared with the Fokker-Planck calculation of CW90. All parameters except for the number of stars are chosen to be the same as used by those authors. Models of this series have the same initial relaxation time, and therefore all belong to CW90's family 1. The only difference is that our models are N-body systems with finite crossing time and a fully 6-dimensional phase-space distribution of particles, while CW90 used Fokker-Planck calculations with infinitesimal crossing time and one-dimensional distribution function. CW90 obtained a lifetime of 280Myr for this particular model. This first sequence is shown as thick solid line in Fig. 6.
Models in the second series (iso-crossing, or IC, models) have the same initial half-mass crossing time; these are similar to the runs described by FH95. This sequence is shown as thick dashed line in Fig. 6.
© European Southern Observatory (ESO) 1998
Online publication: August 17, 1998