There are a few programs with which orbits can be initialized:
Let's start with an example of creating a simple orbit by itself with no associated potential.
% mkorbit out=orb1 x=1 y=0 z=0 vx=0 vy=0.2 vz=0 ### Warning [mkorbit]: Potential potname= not used; set etot=0.0 pos: 1.000000 0.000000 0.000000 vel: 0.000000 0.200000 0.000000 etot: 0.000000 lz=0.200000 % tsf orb1 char History[59] "mkorbit out=orb1 x=1 y=0 z=0 vx=0 vy=0.2 vz=0 VERSION =3.2b" set Orbit set Parameters int Ndim 03 double Mass 1.00000 double IOM[3] 0.00000 0.200000 0.00000 int Nsteps 01 tes set Potential tes set Path double TimePath[1] 0.00000 double PhasePath[1][2][3] 1.00000 0.00000 0.00000 0.00000 0.200000 0.00000 tes tes
mkplummer out=p100 nbody=p100 foreach i (`nemoinp 0:100:10`) stoo in=p100 out=orb$i ibody=$i orbint orb$i orb$i.out 10000 0.01 10000 potname=plummer orbstat orb$i.out end
The reverse program, otos turns an orbit into a snapshot, and may come in handy since the snapshot package has far more advanced analysis programs.