YAML Configuration Reference¶
AstroFlow is configured with one YAML file passed to the astroflow command:
astroflow search.yaml
Most searches need four groups of settings: input/output, compute resources, search grid, and plotting.
Minimal Single-File Example¶
input: FRB180417.fil
output: frb180417
mode: single
dedgpu: 0
detgpu: 0
cputhread: 8
plotworker: 1
modelname: yolov11n
confidence: 0.4
timedownfactor: 1
gencand: true
savedmt: false
rfi:
use_mask: false
use_zero_dm: false
use_iqrm: true
iqrm:
mode: 1
radius_frac: 0.1
nsigma: 10.0
geofactor: 1.5
win_sec: 0
hop_sec: 0.5
include_tail: true
tsample:
- name: t0
t: 0.5
dm_limt:
- name: dm_all
dm_low: 0
dm_high: 800
dmrange:
- name: dm_10_600
dm_low: 10
dm_high: 600
dm_step: 1
freqrange:
- name: fullband
freq_start: 1130
freq_end: 1465
dmtconfig:
minpercentile: 0
maxpercentile: 99.99
specconfig:
minpercentile: 0.1
maxpercentile: 99.9
tband: 120
mode: subband
subfreq: 128
subtsamp: 2
dtrend: false
norm: true
savetype: png
Top-Level Options¶
Option |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
string |
Yes |
none |
Input |
|
string |
Yes |
none |
Output directory for logs, cached products, candidate images, and candidate CSV files. Created automatically. |
|
string |
Yes |
none |
Processing mode. One of |
|
string |
Dataset mode only |
none |
Candidate CSV path for ground-truth matching in |
|
string |
No |
|
PSRFITS reader backend. One of |
|
boolean |
No |
|
Write |
|
boolean |
No |
|
Save candidate metrics without generating full candidate plots. Useful when metrics are needed but image products are not. |
|
boolean |
No |
|
Use the lightweight candidate-output path and reduce plotting overhead. Recommended for high-throughput benchmarks. |
|
boolean |
No |
|
Save detected candidate DMT images and label files for model finetune. |
|
boolean |
No |
|
Include the final partial processing chunk when enabled. |
|
number |
No |
|
In monitor mode, only process files older than this many seconds. Helps avoid reading files that are still being written. |
Processing And GPU Options¶
Option |
Type |
Default |
Description |
|---|---|---|---|
|
integer |
|
GPU device index for dedispersion. |
|
integer |
|
GPU device index for AI detection. |
|
integer |
|
CPU worker/thread count. Also sets |
|
integer |
|
Number of plotting worker processes. |
|
integer |
|
Detection batch size. |
|
integer or null |
none |
Time-axis downsampling factor passed into search configuration. Set explicitly for normal runs. |
Detection Options¶
Option |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
string |
Yes |
none |
Detector model name. Currently only |
|
string |
No |
auto-downloaded bundled model |
Path to model weights. If omitted, AstroFlow downloads and verifies the default YOLO model under |
|
number |
Recommended |
none |
Detector confidence threshold. Typical value: |
|
number |
No |
|
SNR threshold for candidate filtering. |
Search Grid Options¶
tsample¶
List of time chunk definitions.
Field |
Type |
Description |
|---|---|---|
|
string |
Label used in output names/logs. |
|
number |
Time span in seconds for each detection slice. |
tsample:
- name: t0
t: 0.5
Shorter t values can help narrow pulses but increase the number of chunks; wider values are often more robust for broader or scattered pulses.
dmrange¶
Actual DM trial grid used for dedispersion.
Field |
Type |
Description |
|---|---|---|
|
string |
Label used in output names/logs. |
|
number |
Lower DM bound in pc cm^-3. |
|
number |
Upper DM bound in pc cm^-3. |
|
number |
DM trial spacing. |
dmrange:
- name: dm_10_600
dm_low: 10
dm_high: 600
dm_step: 1
For FRB searches, use enough trials to cover the expected source DM and keep the number of DM trials large enough for stable detector behavior.
dm_limt¶
Candidate DM acceptance ranges. The configuration key is dm_limt for compatibility with existing AstroFlow configuration files.
Field |
Type |
Description |
|---|---|---|
|
string |
Label for the candidate DM range. |
|
number |
Lower candidate DM bound. |
|
number |
Upper candidate DM bound. |
dm_limt:
- name: valid_frb_dm
dm_low: 0
dm_high: 800
If omitted, the detector receives None for the candidate DM limits.
freqrange¶
Frequency windows in MHz.
Field |
Type |
Description |
|---|---|---|
|
string |
Label used in output names/logs. |
|
number |
Start frequency in MHz. |
|
number |
End frequency in MHz. |
freqrange:
- name: fullband
freq_start: 1130
freq_end: 1465
Multiple tsample, dmrange, and freqrange entries are combined as a Cartesian product, so the number of runs grows quickly.
RFI Options¶
rfi:
use_mask: false
use_zero_dm: false
use_iqrm: true
iqrm:
mode: 1
radius_frac: 0.1
nsigma: 10.0
geofactor: 1.5
win_sec: 0
hop_sec: 0.5
include_tail: true
Option |
Type |
Default |
Description |
|---|---|---|---|
|
boolean |
|
Apply external bad-channel masks. Requires |
|
boolean |
|
Apply zero-DM filtering. This can suppress broadband RFI but may affect bright astrophysical signals. |
|
boolean |
|
Enable IQRM-based RFI mitigation. |
|
string |
empty |
Single bad-channel mask file. The file must exist when configured. |
|
string |
none |
Directory containing masks named like |
iqrm¶
iqrm is required when rfi.use_iqrm: true and must contain every field below.
Field |
Type |
Description |
|---|---|---|
|
integer |
IQRM statistic mode. Use |
|
number |
Radius as a fraction of channel count for lag selection. |
|
number |
Outlier threshold. Higher values are more conservative. |
|
number |
Geometric progression factor for lag selection. |
|
number |
Window length in seconds. |
|
number |
Sliding-window hop in seconds. |
|
boolean |
Process the remaining tail window when the data length is not an exact multiple of the hop. |
Plotting Options¶
dmtconfig¶
Option |
Type |
Default |
Description |
|---|---|---|---|
|
number |
|
Lower percentile for DM-time image scaling. |
|
number |
|
Upper percentile for DM-time image scaling. |
Older examples may include meadianbulr and guassion. These options are preserved for backward compatibility; new configurations only need the percentile controls above.
specconfig¶
Option |
Type |
Default |
Description |
|---|---|---|---|
|
number |
|
Lower percentile for dynamic-spectrum image scaling. |
|
number |
|
Upper percentile for dynamic-spectrum image scaling. |
|
number |
|
Dynamic-spectrum time window in milliseconds. |
|
string |
|
Spectrum display mode. Supported values are |
|
integer |
|
Time aggregation factor used in subband plotting. |
|
integer |
|
Number of output frequency subbands. Values less than or equal to zero use all channels. |
|
boolean |
|
Apply linear detrending in |
|
boolean |
|
Normalize subbands before plotting. |
|
string |
|
Candidate image format. Use |
|
number or null |
|
Maximum boxcar width for SNR estimation in milliseconds. Alias: |
|
boolean |
|
Save spectrum-only output instead of the full candidate panel in supported plotting paths. |
|
integer |
|
Run garbage collection after this many plotted files. Use |
Mode Behavior¶
Mode |
|
Behavior |
|---|---|---|
|
File |
Search one |
|
Directory |
Search supported files in a directory. |
|
Directory |
Compatibility alias for multi-file directory search. |
|
Directory |
Watch a directory and process new files. CLI options |
|
Directory |
Search files and compare detections with |
Output Layout¶
A typical run creates:
output/
├── astroflow.log
├── background/
├── cached/
├── candidate/
├── detect/
├── frb/
└── astroflow_cands.csv
The exact folders depend on the selected mode and whether candidate plotting or CSV generation is enabled.