Options reference¶
Every option dscim accepts, from the catalogue that validate, the
commands, and this page all read. Each option carries a status:
- supported: works through dscim-cil.
- unsupported: accepted by dscim but broken or restricted; the
reason and source are given.
--allow-unsupportedlifts the validation block where noted. - dead: accepted by dscim and ignored.
- removed: exists only on other dscim branches, not on main.
Restrictions are classed by origin: library (a dscim limitation),
data (a consequence of precomputed inputs), or specification (a
policy choice). The same records are available from the command line
through dscim-cil options and dscim-cil explain OPTION.
base_period¶
GMST rebasing window.
- status: supported
- stages: fair
- modes: ssp, rff
- default:
(2001, 2010) - source: simple_storage.py:57
ce_path¶
Directory of reduced-damage zarrs; derived by dscim-cil from paths.reduced_damages_library and the sector, not set directly.
- status: supported
- stages: fit
- modes: ssp
- default:
None - source: main_recipe.py:94; consumers simple_storage.py:387,414
clip_gmsl¶
Clip FaIR GMSL at the damage function's local maximum; only implemented for the two gmsl-quadratic formulas.
- status: supported
- stages: fair
- modes: ssp, rff
- default:
False - source: main_recipe.py:96; assert main_recipe.py:264-270
combine_fit¶
Also merge the fitted-values files when combining CAMEL coefficients (midprocessing parameter name: fit).
- status: dead (library restriction)
- stages: combine
- modes: ssp
- default:
True - source: midprocessing.py:18; rebinding midprocessing.py (coefs, fit = {}, {})
combine_CAMEL_coefs rebinds fit to an empty dict before testing it (coefs, fit = {}, {} then if fit:), so the fitted-values merge does not run for any argument value.
country_mapping_path¶
ISO mapping CSV for country aggregation (named country_ISOs on generalize_df_fit).
- status: removed (specification restriction)
- stages: fit
- modes: ssp, rff
- default:
None - source: absent from main; named country_ISOs on generalize_df_fit
Not on dscim main.
damage_function_path¶
Directory of precomputed damage-function coefficients; presence makes the run skip fitting. Required for every sector in rff mode.
- status: supported
- stages: fit
- modes: ssp, rff
- default:
None - source: main_recipe.py:95; loaders main_recipe.py (damage_function_coefficients); rff requirement utils/menu_runs.py:163-167
damages_pulse_conversion_path¶
Per-gas pulse-to-tonne conversion file.
- status: supported
- stages: fair
- modes: ssp, rff
- default:
required - source: simple_storage.py:52
discounting_type¶
Discounting scheme; also controls damage-function fit grouping and population collapse.
- status: supported
- stages: fit, discount
- modes: ssp, rff
- default:
required in config (dscim's own default: None) - source: main_recipe.py:88 (default None); accepted set main_recipe.py:52-61; assert main_recipe.py:245-247
Accepted values:
'constant': supported'constant_model_collapsed': supported'constant_gwr': unsupported (library restriction)- Listed in DISCOUNT_TYPES but its non-constant discount-factor path has no branch in calculate_stream_discount_factors and raises UnboundLocalError; never used in any production repo or in dscim's own test matrix.
- source: main_recipe.py:52-61; calculate_stream_discount_factors has no constant_gwr branch; dscim's tests/conftest.py discount_types fixture omits it
'naive_ramsey': supported'euler_ramsey': supported'naive_gwr': supported'gwr_gwr': supported'euler_gwr': supported
discrete_discounting¶
Discrete rather than continuous discounting.
- status: supported
- stages: discount
- modes: ssp, rff
- default:
False - source: main_recipe.py:103
ecs_mask_name¶
Mask variable to apply; both path and name must be set for masking to occur. Open set; five names are used in production.
- status: unsupported (library restriction)
- stages: fair
- modes: ssp
- default:
None - source: simple_storage.py:56; application in Climate.anomalies; production names from dscim-research main/run_integration_result.py:183-190
Climate.anomalies assigns the result of Dataset.update, which returns None on current xarray, so every masked run crashes with TypeError before computing anything; masking worked only with the older xarray where update returned the dataset.
Known values:
'truncate_at_ecs995symmetric_passing_mask': supported'truncate_at_ecs990symmetric_passing_mask': supported'truncate_at_ecs950symmetric_passing_mask': supported'truncate_at_ecs830symmetric_passing_mask': supported'truncate_at_ecs750symmetric_passing_mask': supported- other values are legal; these are the catalogued ones
ecs_mask_path¶
File of boolean masks over FaIR simulations.
- status: supported
- stages: fair
- modes: ssp
- default:
None - source: simple_storage.py:55
emission_scenarios¶
RCP/SSP scenarios to select from the FaIR files; must be null for runid-shaped (RFF) files.
- status: supported
- stages: fair
- modes: ssp, rff
- default:
('ssp119', 'ssp126', 'ssp245', 'ssp460', 'ssp370', 'ssp585') - source: simple_storage.py:58 (default expansion :61-69)
eta¶
Utility-function curvature; consumed by CE reduction, Weitzman bottom-coding, and discount factors. eta == 1 switches to log utility.
- status: supported
- stages: reduce, fair, discount
- modes: ssp, rff
- default:
required in config (dscim's own default: 1.421158116) - source: main_recipe.py:86
ext_end_year¶
Extrapolation and discounting horizon.
- status: supported
- stages: fit, discount
- modes: ssp, rff
- default:
2300 - source: main_recipe.py:92
ext_method¶
Extrapolation method for the damage function beyond the fit window.
- status: supported
- stages: fit
- modes: ssp, rff
- default:
'global_c_ratio' - source: main_recipe.py:89; implementation utils/utils.py (model_outputs)
Accepted values:
'global_c_ratio': supported'time_trends': removed (library restriction)- Appears in one archived production config from an older dscim era; current dscim implements only global_c_ratio and any other value falls through to UnboundLocalError.
- source: utils/utils.py model_outputs (global_c_ratio only); dscim-research configs/archive/hybrid_mortality_config.yaml:15
ext_subset_end_year¶
Last year of the fit range and extrapolation-basis window.
- status: supported
- stages: fit
- modes: ssp, rff
- default:
2099 - source: main_recipe.py:91
ext_subset_start_year¶
First year of the extrapolation-basis window.
- status: supported
- stages: fit
- modes: ssp, rff
- default:
2085 - source: main_recipe.py:90
extrap_formula¶
Stored and never read by current dscim; was a live config key in the 96k-era production configs.
- status: dead (library restriction)
- stages: none
- modes: ssp, rff
- default:
None - source: main_recipe.py:107; last configured in dscim-research configs/archive/96k_config.yaml:23
Assigned in init and never used; the feature it configured was removed from dscim.
fair_aggregation¶
How to collapse FaIR uncertainty into SCCs. An empty list skips the collapsed-SCC computation and leaves the uncollapsed trio.
- status: supported
- stages: fair, discount
- modes: ssp, rff
- default:
('ce', 'mean', 'gwr_mean', 'median', 'median_params') - source: main_recipe.py:101,118-119; dispatch main_recipe.py (marginal_damages)
Accepted values:
'ce': supported'mean': supported'gwr_mean': supported'median': supported'median_params': supported'uncollapsed': unsupported (library restriction)- Not a valid member: marginal_damages has no branch for it and raises NotImplementedError, which breaks calculate_scc. The uncollapsed pipeline is reached by fair_aggregation: [] plus the dscim-cil scc command, which composes SCCs from the uncollapsed outputs.
- source: main_recipe.py marginal_damages (no uncollapsed branch) and order_plate
fair_dims¶
Dimensions collapsed by the FaIR CE/mean/median aggregations; production sweeps four sets. Non-default sets add a fair_collapsed_* segment to the save path.
- status: supported
- stages: fair, discount
- modes: ssp, rff
- default:
('simulation',) - source: main_recipe.py:108,180-181; path rule utils/menu_runs.py:65-70
filename_suffix¶
Suffix appended to every saved artifact filename.
- status: supported
- stages: output
- modes: ssp, rff
- default:
'' - source: main_recipe.py:102; decorators.py:33
fit_type¶
Damage-function estimation type.
- status: supported
- stages: fit
- modes: ssp, rff
- default:
'ols' - source: main_recipe.py:87; dispatch utils/utils.py (modeler)
Accepted values:
'ols': supported'quantreg': unsupported (specification restriction)- dscim asserts it is incompatible with risk_aversion reduction; it emits a different artifact set (full_uncertainty_iqr/stat_uncertainty_iqr instead of the standard SCC outputs) and requires batch-keeping reduced damages, a storage layout incompatible with the reduced files the run stage otherwise consumes. Production used it only for the labor and agriculture papers, never for CAMEL.
- source: preprocessing.py:85-92 (risk_aversion assert); main_recipe.py order_plate quantreg branch
formula¶
Damage-function formula; must match one of dscim's 12 strings exactly (whitespace included) because downstream dispatch is whole-string equality.
- status: supported
- stages: fit, fair
- modes: ssp, rff
- default:
required - source: main_recipe.py:82; whitelist main_recipe.py:62-75; assert main_recipe.py:249-251
Accepted values:
'damages ~ -1 + np.power(anomaly, 2)': supported'damages ~ gmsl + np.power(gmsl, 2)': supported'damages ~ -1 + gmsl + np.power(gmsl, 2)': supported'damages ~ -1 + gmsl': supported'damages ~ anomaly + np.power(anomaly, 2)': supported'damages ~ -1 + anomaly + np.power(anomaly, 2)': supported'damages ~ -1 + gmsl + anomaly + np.power(anomaly, 2)': supported'damages ~ -1 + anomaly + np.power(anomaly, 2) + gmsl + np.power(gmsl, 2)': supported'damages ~ -1 + anomaly * gmsl + anomaly * np.power(gmsl, 2) + gmsl * np.power(anomaly, 2) + np.power(anomaly, 2) * np.power(gmsl, 2)': supported'damages ~ anomaly + np.power(anomaly, 2) + gmsl + np.power(gmsl, 2)': supported'damages ~ -1 + anomaly:gmsl + anomaly:np.power(gmsl, 2) + gmsl:np.power(anomaly, 2) + np.power(anomaly, 2):np.power(gmsl, 2)': supported'damages ~ -1 + gmsl:anomaly + gmsl:np.power(anomaly, 2)': supported
full_uncertainty_quantiles¶
Quantiles for the quantreg IQR outputs.
- status: unsupported (specification restriction)
- stages: output
- modes: ssp, rff
- default:
(0.01, 0.05, 0.17, 0.25, 0.5, 0.75, 0.83, 0.95, 0.99) - source: main_recipe.py:106,167-178
Consumed only by the quantile-regression IQR outputs (full_uncertainty_iqr/stat_uncertainty_iqr); carries the same restrictions as fit_type: quantreg (see that option).
gas_conversions¶
Pulse-to-tonne conversion factors per gas, given inline instead of a conversion netCDF. The file dscim reads is generated from these values at {paths.results}/gas_conversions.nc4. Exactly one of gas_conversions and damages_pulse_conversion_path must be set.
- status: supported
- stages: fair
- modes: ssp, rff
- default:
None - source: consumed via simple_storage.py conversion; inline factors follow dscim-facts-epa (scghg_utils.py gas_conversions)
gases¶
Gas labels to select; must match the FaIR file's gas coordinate exactly.
- status: supported
- stages: fair
- modes: ssp, rff
- default:
('CO2_Fossil', 'CH4', 'N2O') - source: simple_storage.py:59,70-71
gdppc_bottom_code¶
Floor applied to per-capita GDP.
- status: supported
- stages: reduce
- modes: ssp, rff
- default:
39.39265060424805 - source: main_recipe.py:97
geography¶
Regional aggregation level (ir/country/globe).
- status: removed (specification restriction)
- stages: fit
- modes: ssp, rff
- default:
None - source: absent from main (MainRecipe.init main_recipe.py:77-110); exists on generalize_df_fit and the harmonize branch
Absent from dscim main's MainRecipe; the regional surface exists only on the generalize_df_fit and harmonize branches.
gmsl_fair_path¶
FaIR GMSL control/pulse file; when set, gmsl joins the anomaly variables.
- status: supported
- stages: fair
- modes: ssp, rff
- default:
None - source: simple_storage.py:54
gmsl_path¶
GMSL zarr used when fitting damage functions for gmsl formulas.
- status: supported
- stages: fit
- modes: ssp
- default:
required - source: simple_storage.py:50
gmst_fair_path¶
FaIR temperature control/pulse file.
- status: supported
- stages: fair
- modes: ssp, rff
- default:
required - source: simple_storage.py:51
gmst_path¶
GMST anomalies CSV used when fitting damage functions.
- status: supported
- stages: fit
- modes: ssp
- default:
required - source: simple_storage.py:49
individual_region¶
Single-region subsetting used by the regional-SCC SLURM fan-out.
- status: removed (specification restriction)
- stages: fit
- modes: ssp, rff
- default:
None - source: absent from main; consumed on generalize_df_fit (regional-scc data/SCCs/3_ir_sccs.py)
Not on dscim main.
order¶
Menu course to execute.
- status: supported
- stages: output
- modes: ssp, rff
- default:
'scc' - source: order_plate courses main_recipe.py:280
Accepted values:
'scc': supported'damage_function': supported
path_econ¶
Socioeconomics file (gdp and pop variables); config key econ.path. Years to 2300 plus a runid dimension are what dscim duck-types as RFF data.
- status: supported
- stages: econ
- modes: ssp, rff
- default:
required - source: simple_storage.py (EconVars); rff detection in main_recipe.py global_consumption
pulse_year¶
Year of the emissions pulse; must exist as a coordinate in the FaIR files.
- status: supported
- stages: fair, discount
- modes: ssp, rff
- default:
required - source: simple_storage.py:53; selection in Climate.anomalies
quantreg¶
Keep the batch dimension through reduction for quantile regression.
- status: unsupported (specification restriction)
- stages: reduce
- modes: ssp
- default:
False - source: preprocessing.py:83; adding_up-only behavior in ce_from_chunk; risk_aversion assert preprocessing.py:91-92
Only affects the adding_up branch (risk_aversion asserts against it) and keeps batch in the reduced output, a layout consumed only by quantile-regression fits (see fit_type: quantreg).
quantreg_quantiles¶
Quantiles for quantile-regression fits; only meaningful under fit_type quantreg.
- status: unsupported (specification restriction)
- stages: fit
- modes: ssp, rff
- default:
(0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5, 0.55, 0.6, 0.65, 0.7, 0.75, 0.8, 0.85, 0.9, 0.95) - source: main_recipe.py:104,121-142
Consumed only by quantile-regression fits; carries the same restrictions as fit_type: quantreg (see that option).
quantreg_weights¶
Accepted and length-checked against quantreg_quantiles, then never used: downstream weights are recomputed by get_weights().
- status: dead (library restriction)
- stages: none
- modes: ssp, rff
- default:
(0.075, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.075) - source: main_recipe.py:105,144-165; assert main_recipe.py:241-243; utils/utils.py get_weights
Only consumed by a length assertion; real weights come from utils.get_weights.
recipe¶
Menu recipe selecting the aggregation of damages over uncertainty.
- status: supported
- stages: reduce, fit, fair, discount
- modes: ssp, rff
- default:
required - source: src/dscim/init.py:21-25 (MENU_OPTIONS)
Accepted values:
'adding_up': supported'risk_aversion': supported'equity': supported
reduction¶
Which counterfactual to reduce.
- status: supported
- stages: reduce
- modes: ssp
- default:
required - source: preprocessing.py (reduce_damages); accepted set in ce_from_chunk
Accepted values:
'cc': supported'no_cc': supported
rho¶
Pure rate of time preference; consumed only by Ramsey/GWR discount factors, yet embedded in every output filename.
- status: supported
- stages: discount
- modes: ssp, rff
- default:
required in config (dscim's own default: 0.00461878399) - source: main_recipe.py:85; filename decorators.py:33
save_files¶
Artifact names to write; membership gates saving.
- status: supported
- stages: output
- modes: ssp, rff
- default:
('damage_function_points', 'damage_function_coefficients', 'damage_function_fit', 'marginal_damages', 'discount_factors', 'uncollapsed_sccs', 'scc', 'uncollapsed_discount_factors', 'uncollapsed_marginal_damages', 'global_consumption', 'global_consumption_no_pulse') - source: main_recipe.py:109,183-196; gate decorators.py:29
Accepted values:
'damage_function_points': supported'damage_function_coefficients': supported'damage_function_fit': supported'marginal_damages': supported'discount_factors': supported'uncollapsed_sccs': supported'scc': supported'uncollapsed_discount_factors': supported'uncollapsed_marginal_damages': supported'global_consumption': supported'global_consumption_no_pulse': supported'ce_fair_pulse': supported'ce_fair_no_pulse': supported'global_consumption_pulse': supported'stat_uncertainty_iqr': supported'full_uncertainty_iqr': supported
scc_quantiles¶
Stored on the recipe but read by nothing.
- status: dead (library restriction)
- stages: none
- modes: ssp, rff
- default:
(0.05, 0.17, 0.25, 0.5, 0.75, 0.83, 0.95) - source: main_recipe.py:98,112-113
Assigned in init and never used anywhere in dscim.
scenario_dimensions¶
Dimensions to group damage-function fits by; discrete-SSP production always leaves this None (single fit).
- status: supported
- stages: fit
- modes: ssp, rff
- default:
None - source: main_recipe.py:99; left None in every discrete-SSP production config
sector¶
Sector name; a free string keying the config sectors block. Names containing 'agriculture' drop the ACCESS1-0/rcp85 combination and names containing 'coastal' change reduce chunking.
- status: supported
- stages: reduce, fit
- modes: ssp, rff
- default:
required - source: main_recipe.py:81; substring behavior main_recipe.py (agriculture filter) and preprocessing.py:100 (coastal)
subset_dict¶
Dimension subsets applied when cutting damages; keys absent from the data are silently ignored.
- status: supported
- stages: reduce, fit
- modes: ssp, rff
- default:
None - source: main_recipe.py:93; simple_storage.py (cut)
weitzman_parameter¶
Bottom-coding thresholds; each value <= 1 is a share of no-climate-change global consumption, > 1 an absolute value. Values become string coordinates in outputs.
- status: supported
- stages: fair
- modes: ssp, rff
- default:
(0.1, 0.5) - source: main_recipe.py:100,115-116; semantics main_recipe.py (weitzman_min)
zero¶
Zero out histclim in the no_cc reduction.
- status: supported
- stages: reduce
- modes: ssp
- default:
False - source: preprocessing.py:81 (reduce_damages signature)