Table of Contents

Name

hackcode3, hackcode3_qp - hierarchical N-body code (3)

Synopsis

hackcode3 [parameter=value] ...

Description

hackcode3 is fully based on hackcode1, except it allows you to fiddle with the potential in various ways. They all have as a result that the total energy of the system is (generally) not conserved.

The keyword nrigid allows you to fix the first nrigid particles in space.

The keywords potname, potpars and potfile allow you to add a "static" background potential in the potential(5NEMO) formulation.

Parameters

The following parameters are recognized; they may be given in any order.
in=in-file
If given, initial conditions will be read from in-file in snapshot format. At most one of in, restart, or continue may be specified.
out=out-file
If given, results are written to out-file in snapshot format. Note as of version 1.4 only the non-rigid particles are output.
restart=state-file
If given, the system state will be read from state-file. New values are accepted for the following parameters: out, save, eps, tol, options, fcells, tstop, freqout, minor_freqout, and debug. At most one of in, restart, or continue may be specified.
continue=state-file
If given, the system state will be read from state-file. New values are accepted for the following parameters: out, save, and debug. At most one of in, restart, or continue may be specified.
save=state-file
If given, the system state will be saved in state-file after each timestep.
nbody=nbody-value
Number of bodies for test data, generated only if none of in, restart, or continue are specified. Default is 128.
seed=random-seed
Random number seed used in generating initial conditions. Default is 123.
cencon=cencon-flag
If true, generate centrally concentrated test system. Default is false.
freq=integ-freq
Inverse time-step, to be used with a leap-frog integrator. Default is 32.0 (32 steps per unit time).
eps=soft-length
Force softening parameter. Default is 0.05.
tol=theta-value
Opening-angle tolerence parameter. Default is 1.0.
fcells=fcells-value
Ratio of cells to bodies, used when allocating cells. Default is 0.75.
options=option-string
Miscellaneous control options, specified as a comma-separated list of keywords. Currently recognized keywords are: reset_time: when reading initial data, set tnow to zero; new_tout: when restarting, set new output times; mass, phi, acc: output mass, potential, acceleration data with major data outputs.
nrigid=nrigid
The first nrigid particles are taken as rigid. [default: 0]
tstop=stop-time
Time to stop integration in N-body model units. Default is 2.0.
freqout=out-freq
Frequency of major N-body data outputs. Default is 4.0 (4 frames per unit time).
minor_freqout=out-freq
Frequency of minor diagnostic outputs. If this frequency is not a simple fraction of freq (see above), the program can waiste significant amounts of time. Default is 32.0 (32 diagnostic measurements per unit time).
potname=pot_name
Descriptor name for potential(5) . [default: none].
potpars=parameters
Parameters for potential(5) . The first one is normally reserverd for pattern speed, and is now set to 0.0. If a name for the potential is given, and no parameters are given here, intrinsic defaults are used. [default: none].
potfile=file
Optional additional filename for potential(5) . For historic reasons the parameter list in potpars can only contain numbers. If for any reason it also needs a character string (often a filename associated with the potential), the potfile parameter is used. [default: none].
debug=debug-flag
Debugging switch; generates lots of output. Default is false.

See Also

newton0(1NEMO) .

Bugs/Limitations

When a restart is specified, values must be given for ALL legal parameters which do not take default values.

For relatively large values of nrigid the code is inefficient, because it still calculates the forces for all rigid particles on every timestep. It would only be necessary when diagnostics are computed.

The nrigid algorithm used will only work when the force does not depend on the velocities of the particles.

Author

Peter Teuben

Files

$NEMO/src/nbody/evolve/hackcode/hackcode3

History


26-Jan-90    V1.2  nrigid added    PJT
2-apr-90    V1.2a etot bug removed    PJT
8-may-92    formally added to NEMO    PJT
21-dec-2012    V1.4 only non-rigid particles output    PJT


Table of Contents