Cost Reduction Framework#
The Cost Reduction Framework estimates how overnight capital cost, total
capital investment, and construction duration change across a sequence of firm
reactor orders. It is available as the crf Python package inside ACCERT.
Python API#
Use run_one_scenario when you want to evaluate one deterministic set of
cost-reduction levers.
from crf import run_one_scenario, print_scenario_result
config = {
"reactor_type": "AP1000", # AP1000, SFR, or HTGR
"f_22": 250_000_000,
"f_2321": 150_000_000,
"land_cost_per_acre_0": 22_000,
"startup_0": 28,
"staggering_ratio": 0.75,
}
levers = {
"num_orders": 10,
"num_NOAK": 8,
"itc_percent": 0,
"n_itc": 0,
"interest_percent": 6,
"design_completion_percent": 70,
"design_maturity": 1,
"proc_exp": 0.5,
"N_proc": 3,
"ce_exp": 0.5,
"N_cons": 5,
"ae_exp": 0.5,
"N_AE": 4,
"standardization_percent": 80,
"modularity_code": 0,
"bop_grade_code": 0,
"rb_grade_code": 0,
}
result = run_one_scenario(config, levers)
print_scenario_result(result)
The returned dictionary includes the static lever values, per-unit metrics such
as OCC_1, TCI_1, and duration_1, and summary metrics such as
avg_OCC, avg_TCI, avg_duration, and
occ_reduction_from_FOAK_to_NOAK_percent.
Visualization#
Use save_dashboard to generate dashboard-style capital-cost figures from a
scenario result. The dashboard includes a lever input table, OCC, TCI,
construction duration, cost breakdowns, a staggered construction timeline, and
the FOAK-to-NOAK OCC reduction waterfall by lever. Set show_levers=False to
omit the lever input table and generate the compact chart-only dashboard.
from crf import run_one_scenario, save_dashboard
result = run_one_scenario(config, levers)
save_dashboard(
result,
"cost_reduction_framework_dashboard.png",
title="AP1000 Cost Reduction Framework",
show_levers=True,
)
For downstream analysis, results_to_dataframe converts the scenario result
to a chart-ready pandas.DataFrame with one row per plant, while
levers_to_dataframe returns the lever table and waterfall_to_dataframe
returns the FOAK-to-NOAK waterfall values using the lever labels from the Excel
dashboard.
Configuration#
config describes the reactor and fixed project assumptions.
Key |
Description |
|---|---|
|
Built-in Cost Reduction Framework baseline: |
|
Reactor building cost adjustment. |
|
Turbine generator cost adjustment. |
|
Baseline land cost per acre. |
|
First-unit startup duration in months. |
|
Fractional overlap between sequential unit construction schedules. The timeline chart delays later plant starts when needed so construction and startup finish dates do not move backward. |
Levers#
levers contains the scenario variables. Percent inputs are entered as
percent values, for example 6 for a six-percent interest rate. Binary code
inputs use 0 or 1 and are converted internally to model labels.
Key |
Meaning |
|---|---|
|
Number of firm plant orders to evaluate. |
|
Plant number used for nth-of-a-kind learning. Defaults to |
|
Investment tax credit percentage. Values are rounded to the nearest supported Cost Reduction Framework ITC level. |
|
Number of first units eligible for ITC. |
|
Interest rate in percent. |
|
Initial design completion in percent. |
|
Initial technology/design maturity factor. |
|
Supply chain proficiency and number of plants to reach best proficiency. |
|
Construction proficiency and number of plants to reach best proficiency. |
|
Architect-engineer proficiency and number of plants to reach best proficiency. |
|
Cross-site standardization in percent. |
|
|
|
|
|
|
Sampling from Excel#
Use run_sampling_from_excel to run Monte Carlo samples from an Excel workbook
with a sheet named Levers.
from crf import run_sampling_from_excel
run_sampling_from_excel(
config=config,
levers_xlsx="crf_levers.xlsx",
n_samples=100,
out_csv="crf_samples.csv",
out_pkl="crf_samples.pkl",
seed=42,
)
The Levers sheet must include these columns:
Levers, Min, Low, Median, High, Max, Distribution, Type, Set, Probabilities
The lever rows must follow the order expected by the Cost Reduction Framework because several rows share the same display name:
Number of firm orders
ITC amount
Number of plants claiming ITC
Interest rate
Design completion
Design maturity (technology maturity)
Supply chain proficiency
Number of plants to achieve best proficiency
Construction proficiency
Number of plants to achieve best proficiency
A/E proficiency
Number of plants to achieve best proficiency
Cross-site standardization
Modular civil construction
Commercial BOP
Non-safety-related RB
Runnable deterministic examples are available in tutorial/crf_ap1000_example.py,
tutorial/crf_htgr_example.py, and tutorial/crf_sfr_example.py.