Benchmark tool for cross comparison of DDA codes.
pip install dda-benchgit clone https://github.com/Argencle/dda-bench.git
cd dda-bench
pip install -e .This package does not ship external DDA solvers. You must provide executables and point your config to valid paths.
Full configuration reference:
This repository is linked to, and was developed as part of, a benchmark paper.
The dataset used for that paper is available in:
To reproduce the equivalent parameter agreement between codes reported in Appendix C of the paper, patches from that data repository must be applied to ADDA and DDSCAT before running dda-bench.
The corresponding benchmark command set is provided in:
dda-bench --initThis creates starter files in current directory:
DDA_commandsdda_codes.jsonbin/
The starter dda_codes.json points to executables under bin/.
--init copies only bin/diel/* and bin/*.dat/bin/*.par support files, not solver executables.
Then run:
dda-benchdda-bench without options expects:
./DDA_commands./dda_codes.json
Override with your own files:
dda-bench --commands /path/to/DDA_commands --code-config /path/to/dda_codes.jsonOther options:
dda-bench --output outputs --omp 1 --cleanThe command writes:
dda_bench.logdda_bench.errors.log- per-case
results.jsonunder output directory summary.csvin output directory
If you use this code in your research, please cite both the software archived specific version and the associated paper.
Argentin C. (2026). dda-bench (vX.Y.Z). Zenodo. 10.5281/zenodo.18836855
Please replace vX.Y.Z with the exact release version used.
Argentin, C., Chaumet, P. C., Gross, M., & Yurkin, M. A. (2026).
Floating-point--consistent cross-verification methodology for reproducible and interoperable DDA solvers with fair benchmarking.
Computer Physics Communications
You can click the “Cite this repository” button on the right-hand side of the GitHub page for citation formats (BibTeX, APA, etc.).