NREL / GEOPHIRES-X

MIT License
30 stars 24 forks source link

Fixed Internal Rate versus Discount Rate #301

Open NicholasFry opened 6 days ago

NicholasFry commented 6 days ago

Hi all, I want to point out that the standardized cost model is using two different inputs for discount rate. This could mislead the user, such as myself, into thinking that the discount rate is being used in the NPV formula, as is the norm. Instead, under the economics.py script, discountrate and FixedInternalRate are defined separately. At present the discount rate is only used in discount vector, which separately tabulates the LCOE, LCOH, LCOC. Unless there is an objective reason that exceeds my understanding of project economics, discountrate should be equal to FixedInternalRate.

softwareengineerprogrammer commented 4 days ago

Relevant code for reference:

Fixed Internal Rate: https://github.com/NREL/GEOPHIRES-X/blob/95c37b76f201d0ea94b521b882920e4fff3def7a/src/geophires_x/Economics.py#L1382-L1392

Discount Rate: https://github.com/NREL/GEOPHIRES-X/blob/95c37b76f201d0ea94b521b882920e4fff3def7a/src/geophires_x/Economics.py#L840-L850

softwareengineerprogrammer commented 4 days ago

@NicholasFry Can you confirm that the highlighted diff in this commit to set Discount Rate and Fixed Internal Rate to the same default value is aligned with the issue as you're describing it? https://github.com/softwareengineerprogrammer/GEOPHIRES-X/commit/14bc59daf2785ab91b66a63ad65ad5b2c67338a9#diff-372dea2554a92733824c98709c9bdb5720c183c31762c3795bd3990f069a2f24R841-L1392

(Assuming it is, I will start putting together a PR with it + changes to synchronize DR & FIR iff exactly one is provided, and otherwise warn the user that providing differing values is probably incorrect/inconsistent)

softwareengineerprogrammer commented 4 days ago

@kfbeckers Can you confirm that the premise of this issue is correct in that Discount Rate and Fixed Internal Rate should, conceptually, always be the same value?

NicholasFry commented 4 days ago

This looks correct, yes. It also looks like you fixed the units (% versus decimal) for each as well. These were the changes I was suggesting make sense to me. Thank you.