Open measrainsey opened 1 month ago
Attention: Patch coverage is 80.00000%
with 1 line
in your changes missing coverage. Please review.
Project coverage is 52.1%. Comparing base (
dad8f8a
) to head (2d29f05
).
A minor request: can we please use nested lists rather than a sub-heading in doc/whatsnew? See for example https://github.com/iiasa/message-ix-models/blob/dad8f8a5cbdacb85ae8881e267982dad944b8c70/doc/whatsnew.rst?plain=1#L113-L127
Generally we reserve use of sub-headings to separate "All changes" from an occasional section "Migration notes" when we need to give clear instructions to users on how to adapt to changed code.
Add option in costs model (
use_vintages
) which affect how fixed O&M costs are projectedCurrently, fixed O&M costs (
fix_cost
) are projected in this way: for a certainyear_vtg
, thefix_cost
is a percentage of investment cost (inv_cost
). Then from theyear_vtg
to the end of the modeling horizon, the fixed O&M cost changes by a rate specified byfom_rate
(as of present, the defaultfom_rate
is 0, so there is no change).However, this does not match with the current implementation in MESSAGEix. To match the MESSAGEix implementation, the
fix_cost
in a certainyear_act
should be the same across allyear_vtg
. As such, I've added an option to specifyuse_vintage
. IfTrue
then the first projection method forfix_cost
is used. IfFalse
(which is the default setting now), thenfix_cost
is calculated for eachyear_act
instead as a percentage of theinv_cost
in that year.Here is a figure showing the difference (Previous refers to
use_vintages=True
and Updated refers touse_vintages=False
) using solar_pv_ppl as an example.How to review
For @khaeru and/or @glatterf42 : Read the diff and note that the CI checks all pass.
PR checklist