All figures and tables are generated directly from the CSVs by this repository's analysis script.
Re-running the script on the raw data reproduces every number on this page.
Source data
The complete dataset is in the repository's data/ folder. Every figure and table on this page is derived from it. Published figures are the 300 DPI PNGs in /docs.
Raw per-trial results (one row per trial):
wvc_results.csv — headline three-mode experiment (60 trials)
wvc_results_<param>.csv — one file per sweep, for the 13 swept parameters: spacing, radar_range, size, detection_rate, awareness_beta, awareness_tau, hesitate_dwell, freeze_mid_cross, animal_density, traffic_volume, driver_reaction, cruise_speed, caution_speed
Computed statistics (wvc_stats_*), per experiment and metric — collision rate, _det_rate, and _latency — each with a matching _interaction file holding the treatment × parameter test:
wvc_stats_headline.csv (+ _det_rate, _latency) — headline per-mode statistics and pairwise tests
wvc_stats_<param>.csv (+ metric and _interaction variants) — per-sweep effect sizes and interaction tests; the interaction p-values in §03 are read from the *_interaction.csv files
The magnetometer vehicle-sensing ablation (§05) is a separate run; its CSVs are not part of this data/ sweep set. To offer one-click downloads from this page instead of linking to the repository, copy data/ into docs/data/ and point the links at data/….
Requirements
git clone https://github.com/Gnacode/WILDLIFE-VEHICLE-COLLISION-MONTECARLO.git
cd WILDLIFE-VEHICLE-COLLISION-MONTECARLO
python -m pip install numpy pandas scipy statsmodels matplotlib seaborn
Full reproduction (data → stats → figures)
The whole tool is the single script wvc.py, driven by subcommands and a global
--workdir (the folder it reads CSVs from and writes outputs to). One command runs the
entire pipeline:
python wvc.py --workdir data pipeline --jobs 8
Or run the stages individually
python wvc.py --workdir data data --jobs 8 # raw per-trial CSVs (~30-60 min)
python wvc.py --workdir data data --skip-sweeps # headline experiment only (~5 min)
python wvc.py --workdir data stats # wvc_stats_*.csv (Welch, Poisson/NB GLM, bootstrap, interaction)
python wvc.py --workdir data figures --dpi 300 # publication PNGs (figures 3-6, S1-S11)
python wvc.py --workdir data ablation # magnetometer vehicle-model ablation (sec 05)
The figures stage writes the PNGs
(figure_3_headline.png … figure_S11_radar_range.png) into the working directory;
copy them into docs/ to publish, since this page references them by relative path.
Standalone statistics (as referenced in the manuscript)
python compute_stats.py --csv-dir data
Interactive local console (optional)
A browser-based control panel for running wvc.py locally:
python wvc_web.py --workdir data # serves http://127.0.0.1:8753
Appendix A and supplementary materials
Appendix A (Extended Methods and Results) contains the full coverage-geometry and FID-distribution derivations, the statistical-analysis battery, per-sweep robustness narratives, Supplementary Tables S1–S5, and Supplementary Figures S1–S12.
Citation
If you use these results, please cite the accompanying paper and the archived software release:
Makovetskyi, S. & Thomsen, L. (2026).
A Radar-Magnetometer Sensor Network with LoRa-Mediated Awareness Propagation
for Wildlife-Vehicle Collision Mitigation: A Monte Carlo Simulation-Based
Proof of Concept. Submitted to MDPI Sustainability.
Software (this release): Zenodo, v2.0.0.
Concept DOI (always latest): 10.5281/zenodo.[CONCEPT_ID]
This version: 10.5281/zenodo.[NEW_VERSION_ID]
Replace the two DOI placeholders with the values Zenodo mints after the v2.0.0 GitHub release (the concept DOI is in the “Cite all versions” box on the Zenodo record).