Basic Execution
The WaveDiff pipeline is launched by the entrypoint script: src/wf_psf/run.py, which is referenced by the command wavediff.
A list of command-line arguments can be displayed using the --help option:
> wavediff --help
usage: run.py [-h] --conffile CONFFILE --outputdir OUTPUTDIR
required arguments:
--conffile CONFFILE, -c CONFFILE
a configuration file containing program settings.
--outputdir OUTPUTDIR, -o OUTPUTDIR
the path of the output directory.
optional arguments:
-h, --help show this help message and exit
The first argument: --confile CONFFILE specifies the path to the master configuration file storing the pipeline tasks to be executed at runtime.
The second argument: --outputdir OUTPUTDIR is used to set the path to the main output directory, which stores the WaveDiff results.
To run WaveDiff, use the following command:
> wavediff -c /path/to/config/file -o /path/to/output/dir
WaveDiff Output Directory Structure
WaveDiff creates an output directory at the location specified by --outputdir for each run. The parent directory is named with the prefix wf-outputs- and a timestamp accurate to the microsecond, e.g., wf-outputs-20231119151932213823.
Inside this directory, the following subdirectories are generated:
wf-outputs-20231119151932213823
├── checkpoint
├── config
├── log-files
├── metrics
├── optim-hist
├── plots
└── psf_model
A description of each subdirectory is provided in the following table.
Sub-directory |
Description |
|---|---|
checkpoint |
Checkpoint weights saved during training. |
config |
Input configuration files used for this run (see Configuration). |
log-files |
Log files generated during the run. |
metrics |
Evaluation metrics produced by the metrics pipeline. |
optim-hist |
Optimization history of model parameters during training. |
plots |
Plots generated by the plotting pipeline. |
psf_models |
Final PSF models, including full model graphs for each training cycle. |
Notes: All subdirectory names are consistent across runs. Timestamps ensure unique output directories for each execution. This structure supports reproducibility and easy access to intermediate results.
Next, we cover how the configuration files are organized.