The dynamic object loader package (loadobj(3NEMO) ) provides a lower level interface to load the images in memory return pointers to requested functions, but in the case of bodytrans, a higher level interface is available (bodytrans(3NEMO) ). Although on most modern computers this is implemented via dlopen(3) , at the time when NEMO was developed, in the mid-80s, this was by no means common place.
The file $NEMOOBJ/bodytrans/BTNAMES contains a table with entries of non-standard bodytrans functions. The first column is the full expression used to return a scalar value, and the second column the file name under which this function is saved in that same directory. This file must be writable by NEMO users if the SAVE_OBJ function is turned on in bodytrans(3NEMO) .
Name Type Description 0 int constant, always returns 0 (or: FALSE) 1 int constant, always returns 1 (or: TRUE) i int returns i, the index of the particle (0..nbody-1) key int returns key, auxilliary integer of a Body 0 real constant, always returns 0.0 1 real constant, always returns 1.0 aux real returns aux, the auxilliary part of a Body ax real returns ax, the X-accelleration ay real returns ay, the Y-accelleration az real returns az, the Z-accelleration ekin real returns 0.5*(vx*vx + vy*vy + vz*vz), the kinetic energy eps real returns smoothing length etot real returns phi + 0.5*(vx*vx + vy*vy + vz*vz), the total energy glon real returns the galactic longitude atan2(y,x)*180/pi in degrees (GC at +x-axis) glat real returns the galactic latitude atan2(z,w)*180/pi in degrees (GC at +x-axis) i real returns i, the index of a particle, as a real jtot real returns total angular momentum of a Body key real returns key, as a real m real returns the mass of a Body mub real returns proper motion in galactic latitude B mul real returns proper motion in galactic longitude L phi real returns the potential, phi, of a Body r real returns the radius of a Body t real returns the radius time of a Body (snapshot) v real returns velocity of a Body vr real returns radial velocity of a Body vt real returns absolute value of tangential velocity of a Body vp real returns rotational parallax vt/r vx real returns vx, the X-velocity vy real returns vy, the Y-velocity vz real returns vz, the Z-velocity x real returns x, the X-position y real returns y, the Y-position z real returns z, the Z-position xsky real returns atan2(x,z)*180/pi, the RA---TAN projection ysky real returns atan2(y,z)*180/pi, the DEC---TAN projection r2 real returns the Z-projected 2D radius in the X,Y plane v2 real returns the Z-projected 2D velocity in the X,Y plane vr2 real returns the Z-projected 2D radial velocity in the X,Y plane vt2 real returns the Z-projected 2D tangential velocity in the X,Y plane
glon,glat is the galactic coordinate system, useful to observe a galactic disk in it full internal glory.
xsky,ysky is a tangential plane projection scheme,
which is probably only useful for nearby galaxies such as LMC and SMC.
set a=80 # extent in angle to plot set d=1.5 # distance to disk (of size 1) set inc=70 # inclination of disk mkconfig - 360 ring | snaprotate - - $inc x | snapshift - - 0,0,$d | snapplot - xvar=xsky yvar=ysky xrange=-${a}:${a} yrange=-${a}:${a}
20-nov-89 Created PJT 27-nov-90 Added table of functions PJT 15-may-05 Some long overdue updates PJT 26-aug-2018 Add 2D projection shortcuts PJT