Table of Contents


modysnap - convert Mody’s bin pos-vel files to snapshot


modysnap [parameter=value]


modysnap converts snapshot-style datasets from the n-mody MOND N-body integrator to a standard NEMO snapshot(5NEMO) .


The following parameters are recognized in any order if the keyword is also given:
Input mody pos-vel file (moutXX.bin style). Multiple files can be given. No default.
Output snapshot file. No default.
Random verbiage []
Swap bytes in each int/float if endianism differs . This is only needed if the input files come from a machine with the opposite endianism as your local host. Not implemented yet.
Read the header? Needed for MODY style, but e.g. QuMOND only carries particle information, so nbody= is needed instead (see below) Default: true
Set the number of particles to read. Only used when header=f for QuMOND style files. In principle by setting smaller value of nbody, you could use this to split the output snapshot in pieces.


Here is an example of running n-mody. First create in input file:
  % cp $NEMO/usr/n_mody/example_init/ .
  % rungb
  20.013u 7.036s 0:27.05 99.9%    0+0k 0+0io 0pf+0w
  % modysnap mout00.bin snap0
   ...    nbody=2048000 mods=1
   ...    totms=1.000000 tnow=0.000000 tdyn=8.332943 vir=0.000000
then get the parameters for the integration and run the standard benchmark % cp $NEMO/usr/n_mody/run/ .
% rmond
565.048u 6.426s 9:31.90 99.9%    0+0k 0+0io 0pf+0w

though notice this benchmark does not produce extra mout01.bin etc. files

To process multiple files, a Unix pipe should be used:

  % cat mout??.bin | modysnap - mout.snap


Currently only the moutXX.bin (pos-vel) files can be processed. However, it’s not hard to have a poutXX.bin type to be merged in and produce a snapshot with potentials as well.

There is no good alternative for the mondXX.bin files in NEMO yet.


There are a number of files used by rmond:

moutXX.bin: a small 5 integer and 5 real header, followed by nbody float "posvel" vectors.

mondXX.bin: grid data

poutXX.bin: particle potentials. Same


See Also

rungb, rmond, runmond(1NEMO) , snapmody(1NEMO) , snapshot(5NEMO)


$NEMO/src/nbody/io/modysnap.c -- code


Peter Teuben

Update History

23-Feb-09    V1.0 Created    PJT
26-feb-09    V1.2 process multiple files if present    PJT
10-jun-11    V1.3 added header= and nbody=    PJT

Table of Contents