Contents Previous Next

starlab

A package for simulating the evolution of dense stellar systems

Version : 3.6
Author(s) : Piet Hut (IAS), Steve McMillan (Drexel U.), Jun Makino (U. Tokyo) Simon Portegies Zwart (U. of Amsterdam)
License : starlab
Website : http://www.sns.ias.edu/~starlab/starlab.html

Disk space required for installation is 3.07 Mb

After the package is installed it can be accessed using the command


		/opt/lfa/startstarlab

     

A shortcut will be installed in the KDE/GNOME desktop menu system,
as an entry in the Astronomy submenu

Summary

Starlab is a software package for simulating the evolution of dense
stellar systems, and analyzing the resultant data. It is a collection
of loosely coupled programs, linked at the level of the UNIX operating
system, that share a common data structure, and can be combined in
arbitrarily complex ways to study the dynamics of star clusters and
galactic nuclei. Current improvements in both the quality and the
quantity of observational data, together with ongoing and anticipated
increases in available computational power, combine to make this
project both necessary and feasible.

All stellar-dynamical $N$-body simulations rely on sophisticated
integration schemes to follow the motion of all particles in the
system under study. It is the job of the $N$-body program to deliver
a faithful representation of the dynamical evolution of the system,
along with information on all stellar interactions of interest, to the
user, subject only to the fundamental limitations imposed by the
chaotic equations of motion and the laws of physics. It is becoming
increasingly clear that, in order to make detailed comparisons between
simulations and the high-quality data now available, $N$-body (and
perhaps also detailed Monte-Carlo) simulations are really the only
viable option.

Performing $N$-body simulations is already is a complex and demanding
task. However, generating data is only half the job. The other half
of the work of a computational theorist parallels that of the
observer, and lies in the job of data reduction. As in the
observational case, a good set of tools is essential, and unless the
tools can be used in a flexible and coherent software environment,
their usefulness will be severely limited. Three requirements are
central in handling the data flow from a full-scale globular cluster
simulation: modularity, flexibility, and compatibility. Starlab
incorporates these three requirements.

To some extent, Starlab is modeled on NEMO, a stellar dynamics
software environment developed six years ago at the Institute for
Advanced Study, in large part by Josh Barnes, with input from Peter
Teuben and Piet Hut (and subsequently maintained and extended by Peter
Teuben). Starlab differs from NEMO mainly in the following areas: it
emphasizes the use of UNIX pipes, rather than temporary files; its use
of tree structures rather than arrays to represent $N$-body systems;
and its guarantee of data conservation---data which are not understood
by a given module are simply passed on rather than filtered out.


How to perform specific common tasks using Starlab tools.
--------------------------------------------------------

Note: Most tools are just simple interfaces onto the corresponding
library functions, so the tasks listed below could in principle
also be carried out by compiled programs rather than by
pipes. However, the use of pipes is in many ways clearer and
much more flexible.

For more information on Starlab tools, see the file TOOLS in
this directory. For details on a specific tool, type

tool-name --help


* Create a linked list of 100 equal-mass nodes of unit total mass

mknode -n 100 -m 1

* Create a system of 100 nodes with a Salpeter mass spectrum with masses
in the range 0.5 to 10

mknode -n 100 | mkmass -f 1 -x -2.35 -l 0.5 -u 10

* Create a system of 100 nodes with a mass spectrum and evolve the
stars without dynamics

mknode -n 100 | mkmass -f 1 -x -2.35 -l 0.5 -u 10 | ???Simon???

* Create a 500-particle Plummer model, with numbered stars, scaled to
standard dynamical units

mkplummer -n 500 -i

* Create a 500-particle W0 = 5 King model, with numbered stars,
unscaled

mkking -n 500 -w 5 -i -u

* Create a 500-particle W0 = 5 King model with a Miller-Scalo mass
spectrum between 0.1 and 20 solar masses, then rescale to unit total
mass, total energy -0.25, and virial ratio 0.5 and display the
results graphically

mkking -n 500 -w 5 -i -u \
| mkmass -f 2 -l 0.1 -u 20 \
| scale -m 1 -e -0.25 -q 0.5 \
| xstarplot -l 5 -P .5

* Create a 500-particle W0 = 5 King model with a Miller-Scalo mass
spectrum between 0.1 and 20 solar masses, add in a 10 percent 1-10 kT
binary population, then rescale to unit total mass, total energy
(top-level nodes) -0.25, and virial ratio (top-level nodes) 0.5, and
finally verify the results by analyzing the final snapshot

mkking -n 500 -w 5 -i -u \
| mkmass -f 2 -l 0.1 -u 20 \
| mksecondary -f 0.1 -l 0.25 \
| mkbinary -l 1 -u 10 \
| scale -m 1 -e -0.25 -q 0.5 \
| sys_stats -n -s

* Evolve this model without stellar evolution for 100 dynamical times,
with log output ever dynamical time and snapshot output every 10
dynamical times, with a self-consistent tidal field, removing
escapers when they are more than two Jacobi radii from the cluster
center

mkking -n 500 -w 5 -i -u \
| mkmass -f 2 -l 0.1 -u 20 \
| mksecondary -f 0.1 -l 0.25 \
| mkbinary -l 1 -u 10 \
| scale -m 1 -e -0.25 -q 0.5 \
| dstar_kira -t 100 -d 1 -D 10 -Q -G 2

* Create a King model with a power-law mass spectrum and a binary
population, then evolve it with stellar and binary evolution

mkking -n 500 -w 5 -i -u \
| mkmass -f 1 -x -2.0 -l 0.1 -u 20 \
| mksecondary -f 0.1 -l 0.1 \
| addstar -Q 0.5 -R 5 \
| scale -M 1 -E -0.25 -Q 0.5 \
| mkbinary -f 1 -l 1 -u 1000 -o 2 \
| dstar_kira -t 100 -d 1 -D 10 -f 0.3 -n 10 -q 0.5 -Q -G 2 -S -B

* Perform a series of 100 3-body scattering experiments involving an
equal-mass circular binary and a double-mass incomer, with impact
parameter equal to the binary semimajor axis, relative velocity at
infinity half that needed for zero total energy, and all other
parameters chosen randomly, and display the results as a movie

scatter3 -m 0.5 -e 0 -M 1 -r 1 -v 0.5 -n 100 -C 5 -D 0.1 \
| xstarplot -l 4

* Compute cross-sections for interactions between a circular binary
with component masses 0.75 and 0.25 and an incoming star of mass 1
and velocity at infinity 0.1, all stars having radius 0.05 binary
semimajor axes

sigma3 -d 100 -m 0.25 -e 0 -M 1 -v 0.1 -x 0.05 -y 0.05 -z 0.05

* Create a scattering configuration involving a head-on collision
between a circular binary and a stable hierarchical triple, and
verify the result

mkscat -M 1.5 -r 0 -v 1 -t -a 1 -e 0 -p -a 1 -e 0 -p1 -a 0.1 -e 0 \
| flatten | make_tree -D 1 | pretty_print_tree

* Create a scattering configuration involving a head-on collision
between a circular binary and a stable hierarchical triple, and
integrate it forward in time

scatter -i "-M 1.5 -r 0 -v 1 -t -a 1 -e 0 -p -a 1 -e 0 -p1 -a 0.1 -e 0" \
-t 100 -d 1 -v

(etc.)

Screenshots


Contents Previous Next