Reproduction dataset and screening workbook for regional small modular reactor screening in Greece after lignite
Description
This dataset provides the inputs, code, outputs, provenance and a human readable workbook that regenerate every composite score and sensitivity result reported in the associated article, titled Reactor size and host system eligibility in regional small modular reactor screening for Greece after lignite. The study builds a transparent two stage screen for five Greek regional cases, namely Western Macedonia, Eastern Macedonia and Thrace, Central Macedonia, Crete and a Dodecanese large island proxy, across three reference reactor tiers of about 300, 30 and 5 MWe. Stage 1 applies rule based exclusions on protected areas, archaeological constraints, tsunami exposure, fault proximity, exposed population, ultimate heat sink adequacy and host system absorption. Stage 2 applies a weighted sum model over five ordinal criteria, namely seismic characterization, population exposure, ultimate heat sink adequacy, grid readiness and strategic transition rationale, with a declared weight vector of 0.42, 0.16, 0.26, 0.10 and 0.06. The archive contains three input tables in the inputs folder, two Python scripts in the code folder, the regenerated result tables in the outputs folder, a parameter provenance file, a license, a README, and the file Supplementary_Workbook.xlsx. The workbook mirrors every input, output and sensitivity table across its tabs so that the same numbers can be inspected without running the code, and all stored values are literal, so they display in any spreadsheet viewer without recalculation. The robustness material covers Dirichlet weight sampling, one at a time perturbation with renormalization, a PROMETHEE II outranking check, an equal weights scenario, a monotone rescaling of the ordinal levels, and a seismic recoding and scaling check. The dataset is released under the Creative Commons Attribution 4.0 International license.
Files
Steps to reproduce
1. Install Python 3.12.3 and numpy 2.4.4. The script code/reproduce.py depends only on numpy, and code/seismic_scaling.py depends only on the Python standard library. 2. Extract the archive and open a terminal in the top folder that contains the inputs, code and outputs directories. 3. Run python code/reproduce.py. This reads the three input tables in the inputs folder, namely raw_scores.csv, weights.csv and seismic_anchors.csv, and regenerates nine result tables in the outputs folder, namely composite_scores.csv, weighted_products.csv, dirichlet_stability.csv, dirichlet_broad.csv, oat_thresholds.csv, promethee_netflows.csv, monotone_rescaling.csv, s7_equal_weights.csv and seismic_recoding.csv. The Dirichlet results use a fixed random seed of 20260718, so the probabilities regenerate identically. 4. Run python code/seismic_scaling.py. This regenerates outputs/seismic_scaling.csv from the same inputs. 5. Compare the regenerated files with the deposited files in the outputs folder. They match byte for byte. Three further tables in the outputs folder, namely s8_coding_justification.csv, s9_grid_absorption_check.csv and ghs_pop_region_stats.csv, are deposited documentation that the scripts do not regenerate, and they are described in the README file manifest. 6. To read the same numbers without running the code, open Supplementary_Workbook.xlsx, where each tab corresponds to one input, output or sensitivity table and every value is stored literally.
Institutions
- National and Kapodistrian University of AthensAttica, Athens