Orbit count results¶
The orbit counting result counts pericenters. This information can be used to separate particles into a 1-halo term (particles that have undergone at least one pericenter) and material on a first infall trajectory.
Algorithm
As a tracer is created, we set its orbit counter to zero. If the tracer is born outside the halo,
we know that this count is reliable. If it is born inside or under other dubious circumstances,
we set the n_is_lower_limit
flag to indicate that there could have been pericenters before the
count was started.
Similar to the Splashback results, we look for a change in radial velocity from negative to positive.
Each time such a switch occurs, we increase the orbit counter. Unlike other results, the orbit
count result would never end, i.e., a tracer can always accumulate more pericenters. This means
that tracers are being kept alive even if all their other results have been recorded. To avoid
unnecessary tracers that cost memory and computation, the user can set a maximum number of
pericenters, res_oct_max_norbit
.
The orbit count result allows us to tell which tracers are on a first infall into the halo (zero pericenters), which are on their first orbit, or have had multiple orbits. This information can then be used for example in the Density profile analysis.
Compile-time parameters
Parameter |
Explanation |
---|---|
|
Write orbit count results to output file |
|
Save the orbit count to the output file (the result makes little sense without this number) |
|
Save a flag indicating whether the orbit count is a lower limit (recommended) |
|
Save the snapshot of infall/where lower limit was set/where last pericenter was detected |
Run-time parameters
Parameter |
Type |
Default |
Explanation |
---|---|---|---|
|
int |
3 |
When a tracer has completed this many orbits, stop counting |
Output fields
Field |
Type |
Dimensions |
Exists if |
Explanation |
---|---|---|---|---|
|
int64 |
|
Always |
The index of the first result for each halo (or -1 if none exists for a halo). |
|
int32 |
|
Always |
The number of results of this type for each halo (can be 0). |
|
int64 |
|
Always |
The ID of the tracer to which this result refers. |
|
int16 |
|
OUTPUT_RESULT_ORBITCOUNT_OCT |
The number of orbits (completed pericenters). |
|
int8 |
|
OUTPUT_RESULT_ORBITCOUNT_LOWER_LIMIT |
Whether |
|
int16 |
|
OUTPUT_RESULT_ORBITCOUNT_LAST_SNAP |
If no orbit counts recorded, the snapshot of infall; if no orbit counts but a lower limit, the snapshot where the lower limit was set; if the orbit count is greater than zero, the last snapshot where a pericenter was detected. |