Power Grid Operations & Renewable Economics
Solar Curtailment LCOE & Duck-Curve Ramp Formula
Calculate Curtailment-Adjusted Delivered LCOE = LCOE_gross / (1 - c_curt), Nonlinear Curtailment Cost Penalty c_curt / (1 - c_curt), Duck-Belly Midday Net Load, and Sunset Thermal/BESS Ramp Rate (MW/hr).
Avoid the linear-curtailment LCOE fallacy and size evening Duck-Curve ramp capacity!
Because utility-scale solar PV has near-zero marginal fuel cost, 100% of CAPEX and fixed O&M must be recovered over DELIVERED (uncurtailed) megawatt-hours! When grid congestion or negative midday prices curtail fraction c_curt of potential output, Effective Delivered LCOE rises hyperbolically as LCOE_eff = LCOE_gross / (1 - c_curt)—meaning 25.0% curtailment inflates LCOE by c_curt / (1 - c_curt) = 0.25 / 0.75 = +33.33% (NOT +25.0%), and 50.0% curtailment DOUBLES LCOE (+100%)! Simultaneously, high solar penetration carves out the famous CAISO "Duck Curve": Midday Net Load drops to L_belly = L_midday - S_solar, forcing dispatchable gas turbines and batteries to climb to Sunset Evening Peak L_evening across h_ramp hours at Required Ramp Rate = (L_evening - L_belly) / h_ramp (MW/hr)!
Verify on Uncurtailed_Gross_LCOE = $36.00/MWh (B2), Curtailment_Rate c_curt = 0.25 (25.0%, B3), Midday_Gross_Load L_midday = 18,000 MW (B4), Midday_Solar_Generation S_solar = 11,000 MW (B5), Evening_Peak_Load L_evening = 22,000 MW (at zero post-sunset solar, B6), and Sunset_Ramp_Window h_ramp = 3.0 hours (B7): Effective Delivered LCOE jumps to 36.00 / 0.75 = $48.00/MWh (E2), Nonlinear LCOE Inflation is +0.3333 (+33.33% in E3), Midday Duck-Belly Net Load is 18,000 - 11,000 = 7,000 MW (E4), and Required Evening Ramp Rate is (22,000 - 7,000) / 3.0 = 5,000.00 MW/hr (E5)! Double curtailment to c_curt = 0.50: Delivered LCOE doubles to $72.00/MWh!
| Grid Solar Integration Metric ($36/MWh Gross, 25% Curtail, 11 GW Solar) | Formula | Verified Output |
|---|---|---|
| Effective Delivered LCOE ($/MWh) | LCOE_gross / (1 - c_curt) | $48.00 / MWh |
| Curtailment LCOE Penalty (%) | c_curt / (1 - c_curt) | +0.3333 (+33.33% Cost Lift) |
| Duck-Belly Midday Net Load (MW) | L_midday - S_solar | 7,000.00 MW |
| Evening Net-Load Ramp Rate (MW/hr) | (L_evening - (L_midday - S_solar)) / h_ramp | 5,000.00 MW/hr |
Curtailment-Adjusted Effective Delivered LCOE Formula
Validate LCOE_gross > 0, 0 <= c_curt < 1, L_midday > 0, S_solar >= 0, L_evening > 0, and h_ramp > 0!
=LET(lc_g, B2, cr_r, B3, ld_m, B4, sl_m, B5, ld_e, B6, hr_r, B7, IF(OR(lc_g <= 0, cr_r < 0, cr_r >= 1, ld_m <= 0, sl_m < 0, ld_e <= 0, hr_r <= 0), "Invalid Grid Dispatch", ROUND(lc_g / (1 - cr_r), 2)))Sunset Duck-Curve Evening Ramp Rate (MW/hr) Formula
Notice how co-locating 4-hour Battery Energy Storage (absorbing midday solar to discharge during the 3-hour evening peak) simultaneously slashes c_curt AND flattens E5!
=IF(ISTEXT(E2), E2, ROUND((B6 - (B4 - B5)) / B7, 2))Try the example
Use the original values or change them to test your understanding.