forked from arendMoerman/Sym4
-
Notifications
You must be signed in to change notification settings - Fork 0
/
README
66 lines (42 loc) · 2.35 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
Fixed-timestep parallel softened N-body code with 4th order symplectic integrator
To build, simply 'make' in this directory
#################### INPUT PARAMETERS ####################
input:
./Main.exe t_begin t_end dt_snap eta N config param
t_begin = begin time of simulation
t_end = end time
dt_snap = snapshot output interval
eta = internal timestep
N = number of bodies
numThreads = number of software threads
config = initial condition mode
param = parameters
if config = "file", param is the initial condition filename
filename = file with initial condition as such:
mass1 x1 y1 z1 vx1 vy1 vz1
mass2 x2 y2 z2 vx2 vy2 vz2
etc...
It is assumed that the initial condition is placed in the 'inputs' folder
if config = "cold_plummer", a cold plummer sphere with N bodies is generated.
if config = "plummer", a warm plummer sphere with N bodies and randomized velocities is generated.
Optimal softening parameter epsilon is calculated internally
Example:
./Main.exe 0 6300 6.3 0.001 10 2 file Solar_Syst.in
Simulates approximately 1000 years of our solar system (including Pluto) with 2 threads
and a snapshot output interval of 1 year
Example:
./Main.exe 0 10 0.01 0.00001 1000 100 plummer
Simulates a realization of a warm plummer distribution with N=1000 for 10 time units with 100 threads
After a simulation, CPU time is printed to the screen
Writes output and energies to file
#################### data.out structure ####################
A row represents one body at one snapshot in time. Format is as such:
mass x y z vx vy vz (just like manual initial condition)
This means that, for each snapshot, there are N rows corresponding to N bodies. Column 0 is mass, columns 1, 2 and 3 represent x, y and z coordinate
and columns 5, 6 and 7 represent velocity in x, y and z respectively. Concisely, the data.out file contains an array with
(t_end - t_begin) / dt_snap * N rows
7 columns
################## energies.out structure ##################
This file contains the total energy for the cluster per snapshot interval. Format is a s such:
timestamp energy
This means that for each snapshot there is a timestamp and an energy.