Identikit (Mk0): An N-body/Data Visualization Tool
John Hibbard, NRAO
!!!WARNING!!! Work in progress!!
The Identikit program is a visualization tool to help match N-body numerical simulations of
interacting galaxies to
observational data of such systems
(primarily HI or CO spectral line mapping datacubes). It is composed
of two primary functions:
- A display for multi-dimensional datacubes. Plots data in each of 4
orthogonal projections: (x,y), (x,Vz), (y,Vz) and
(x,z). (See figure on the right and also this screen snapshot). The first three of
these projections are measurable with spectral line mapping
observations (yellow points in the figure), and the idea is to project
numerical N-body data points onto observational data displayed in
these three planes (blue and red points in the figure and also this screen snapshot). Menu items or
keyboard commands then allow the N-body data to be rotated or scaled
until they best match the observed data in all three planes
(See this mpeg video).
- A database of N-body "snapshots" run offline and stored on disk
or CD. These datafiles describe the dynamical encounter of two disk
galaxies. The novel approach taken here is that in the simulations,
each galaxy is modeled as having a live halo (N=4096), within which is
embedded 9x18 massless disks. These disks sample inclinations
(measured w.r.t. the orbital plane) ranging from -90 to +90 at
increments of 20 deg, and arguments of periapse (measured from the
direction of orbital periapse) from 0 to 340 deg in increments of
20deg. There is a disk of 512 massless particles for each combination
of angles for each galaxy. Each snapshot therefore contains
2*(4096+512*9*18) = 174080 points. The chosen inclinations only span
one sense of rotation, prograde or retrograde. This is b/c generally
the appearance of tidal features allows the user to guess whether the
progenitors experienced prograde or retrograde encounters.
The models have been run using the treecode implemented in the
Zeno software system developed by
Josh Barnes at the
Institute for Astronomy
Model matching proceeds in the following manner:
- The program is started up and a data file containing the
observational data is loaded and displayed. The observational data
consists of a set of measured intensities at a given right ascension,
declination and radial velocity. These may be obtained from the so-called
"Clean Components" of HI or CO datacubes. Screen
snapshot at the end of this phase
- The user specifies the desired N-body datafile, which contains the
output for a single time of an encounter of a set mass ratio,
ellipticity and pericentric separation. These are projected onto the four
orthogonal planes of the display. Screen
snapshot at the end of this phase
- Using the menu or keyboard, the user scales and rotates the N-body
data to roughly match the observed data
- The user quickly cycles through the disks various inclinations
and arguments of periapse, trading off these parameters along with
rotations. Screen
snapshot at the end of this phase
The first step in any model-matching exercise is to survey a range of
inclinations and arguments of periapse for each disk to get into the
right "ballpark" for the encounter geometry. This program greatly
facilities this process. Still, it is just a starting point - fully
consistent N-body models must still be run. The ultimate goal to to
automate, as much as possible, the determination of physically
unimportant parameters such as the disk orientation angles in order to
get at the physically interesting structural parameters, such as the
galaxy mass models.
The "Identikit" name came from the fact that this process is similar
(at least in my mind) to the police-blotter program for matching
noses, eyes, hairstyle etc to arrive at a composite drawing of a
suspect.
Examples of matches to data:
Wish list: (superceded by Josh's Identikit 1 program)
- Much better control panel GUI, including slide bars for
rotations, scales, and hopefully time, Rperi, ellipticity.
- Enable Click and drag rotations and rubber-banding
directly in the x-y, x-Vz, y-Vz display planes
- More intelligent memory usage and/or navigation to allow more
particles to be read in, or failing this more intelligent packaging
of data on disk to allow quick input. The goal is cycle through
different timesteps and encounter geometries as quickly as possible.
- Develop algorithms to optimize the match between the data and
simulations in the observed planes and to quantify the "goodness of
fit"
- Based on best matched model, set up scripts to run fully
self-consistent N-body realizations of the chosen parameters.
Related links:
John Hibbard
Last modified: Sat Feb 7 16:39:57 EST 2004