Capital recovery factor calucation #92
Replies: 9 comments 14 replies
-
What we have in Python is the reciprocal of the CRF in the report. So we've basically calculated the 1/CRF value and call it the CRF in the code. |
Beta Was this translation helpful? Give feedback.
-
Hi, sorry, I have two more simple questions about pvf_capital(t).
|
Beta Was this translation helpful? Give feedback.
-
Hi ReEDS team, would you mind explaining the application of 'pvf_onm=1/capital recovery factor' in the objective function. What is the implication of choosing the capital recovery factor to calculate the present value of operating costs? I still can't fully understand it. Because in engineering economics, the capital recovery factor is used in the annualized calculation of capital cost. Thank you very much! |
Beta Was this translation helpful? Give feedback.
-
Hi! I just wondering why ReEDS would choose the capital recovery factor to calculate the present value instead of using the discount factor (1+r)^-1. Thank you in advance! |
Beta Was this translation helpful? Give feedback.
-
It really depends on your perspective with the CRF being used as an
adjustment to operations to allow for myopic solve (ie weight operations as
if they were to persist for X years) and the discount factor being used to
create a NPV from the stream of costs across time. For ReEDS, the discount
factor is applied to the objective function in combination with the CRF
with the former being applied to both operations and investment and the
reciprocal of the latter being applied solely to the operations component.
Good question btw
…On Wed, Mar 2, 2022 at 10:07 PM wanyingw193 ***@***.***> wrote:
Hi! I just wondering why ReEDS would choose the capital recovery factor to
calculate the present value instead of using the discount factor (1+r)^-1.
Thank you in advance!
—
Reply to this email directly, view it on GitHub
<#92 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AIHEAOWL5NQRHKPXIUTB563U6BCKLANCNFSM5N4ZBAOQ>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
You are receiving this because you are subscribed to this thread.Message
ID: ***@***.***
com>
|
Beta Was this translation helpful? Give feedback.
-
Hi, I just want to confirm some of my understanding. As I understand it, pvf_onm is based on the constant t=20 to calculate the NPV operating cost in the objective function. And there are no other parameters/variables to capture the difference in plant age between existing and new installed capacity. Or am I not fully understanding? Does the model have other parameters/variables to handle the different plant ages between existing and old capacity in the objective function? As an example, if one plant is installed in 2010 and the second plant is installed in 2020. Then in 2024, first plant is 14 years old and the second plant is 4 years old, will they both be evaluated by collapsing the operating costs over a 20 year economic period? Or would the first plant's OM cost be collapsed over 6 years and the second plant over 16 years? Thank you! |
Beta Was this translation helpful? Give feedback.
-
Responses to...
"As I understand it, pvf_onm is based on the constant t=20 to calculate the
NPV operating cost in the objective function."
- Correct, it weights operations as 20 years generally assuming that the
current conditions remain constant (although there are some means by which
we can say "fuel prices will rise" or "there's a penalty given foreseen
increasing policy stringency")
"And there are no other parameters/variables to capture the difference in
plant age between existing and new installed capacity."
- Not sure here, need more details to be 100% certain -but- there are
parameters like cost_cap_fin_mult which include assumed construction times,
loan lifetimes, incentives, and several other considerations. Generally,
tho, investments are considered fixed after they occur and the cost of
financing is faced upfront (ie rolled into an overnight cost)
"As an example, if one plant is installed in 2010 and the second plant is
installed in 2020. Then in 2024, first plant is 14 years old and the second
plant is 4 years old, will they both be evaluated by collapsing the
operating costs over a 20 year economic period? Or would the first plant's
OM cost be collapsed over 6 years and the second plant over 16 years?"
- In the sequential case, this is true... in intertemporal/window settings
the model can see that the plant has a finite lifespan (ie I'd see my
investment will only survive for X years). The myopic viewpoint and
assumption boils down to the question: would a generating unit behave
differently knowing that it will only survive for X more years? again
speaking generally, the perspective taken with ReEDS is that it would
generate regardless of remaining lifespan if the marginal revenue exceeds
marginal cost
…--
If you'd like, you can reach out to me at maxwell.brown 'at' nrel.gov to
set up a meeting and go over some of these questions.. I'd also be
interested in hearing about your work
Best,
Max
On Wed, May 4, 2022 at 9:45 AM wanyingw193 ***@***.***> wrote:
Hi, I just want to confirm some of my understanding.
As I understand it, pvf_onm is based on the constant t=20 to calculate the
NPV operating cost in the objective function. And there are no other
parameters/variables to capture the difference in plant age between
existing and new installed capacity.
Or am I not fully understanding? Does the model have other
parameters/variables to handle the different plant ages between existing
and old capacity in the objective function?
As an example, if one plant is installed in 2010 and the second plant is
installed in 2020. Then in 2024, first plant is 14 years old and the second
plant is 4 years old, will they both be evaluated by collapsing the
operating costs over a 20 year economic period? Or would the first plant's
OM cost be collapsed over 6 years and the second plant over 16 years?
Thank you!
—
Reply to this email directly, view it on GitHub
<#92 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AIHEAOWIRT2BAIXOBF3P74LVIKLQBANCNFSM5N4ZBAOQ>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
Beta Was this translation helpful? Give feedback.
-
Morning! I just want to know what are the equations for pvf_capital and pvf_onm in the intertemporal model? Do they use CRF or discount factor to calculate? When I did the CRF calculation, I can't get the same numbers from input_case/pvf_cap and pvf_onm_int. Could I get some guidance? |
Beta Was this translation helpful? Give feedback.
-
So pvf_onm in intertemporal mode will also encapsulate/sum over skipped
years - so 2010 is actually the pvf_onm that would exist in 2010 [plus] the
pvf_onm for 2011
Again, the perspective/assumption here is that the operations in the
modeled year persist through gap/unmodeled years -but- in this case we know
what the conditions of future years would be. Said differently, in the
myopic version we assume operations will last 20 years and weight pvf_onm
accordingly; with the intertemporal version we assume they last X years
where X = gap between solve years.
The final, 2050 solve year is weighted to persist for 20 years via the same
methods as the myopic solve -but- we can talk about other terminal year
assumptions that can be made (Barr-Manne, year extensions, ...) if this of
interest to you
…On Fri, May 6, 2022 at 12:57 AM wanyingw193 ***@***.***> wrote:
Morning! I just want to know what are the equations for pvf_capital and
pvf_onm in the intertemporal model? Do they use CRF or discount factor to
calculate? When I did the CRF calculation, I can't get the same numbers
from input_case/pvf_cap and pvf_onm_int. Could I get some guidance?
[image: image]
<https://user-images.githubusercontent.com/78582696/167082011-95fd5337-f8da-41dc-a1aa-e139f9cacff2.png>
—
Reply to this email directly, view it on GitHub
<#92 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AIHEAOW4RUQ4RBGOXSRGSGTVIS7HBANCNFSM5N4ZBAOQ>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
Beta Was this translation helpful? Give feedback.
-
Hi ReEDS team!
I have a question about the calculation of the capital recovery factor. In the "Regional Energy Deployment System (ReEDS) Model Document: 2020 Edition". It describes the capital recovery factor as equal to (1- 1/(1+ real discount rate)^economic horizon)/real discount rate. However, in support_function.py, the formula is calculated as sys_financials['crf'] = (sys_financials['d_real'] - 1. 0) / (1 - (1 / sys_financials['d_real']**sys _eval_years )), which stands for: real discount rate / (1 - 1/(1 + real discount rate) ^ economic horizon). Am I understanding this correctly? If correct, why the crf equation in python is different from the one in the report file.
Attached is a screenshot of the report
and a screenshot of the python file .
Thanks!
Beta Was this translation helpful? Give feedback.
All reactions