Revenue & Cashflow Profile period output aligned with NREL convention used to calculate NPV. See NREL#344
3.8.6: Baseline well drilling cost curves updated to NREL's 2025 cost curve update: Akindipe, D. and Witter. E. 2025. "2025 Geothermal Drilling Cost Curves Update". https://pangea.stanford.edu/ERE/db/GeoConf/papers/SGW/2025/Akindipe.pdf?t=1740084555.
Intermediate and ideal correlations retain existing values from GeoVision: DOE 2019. "GeoVision" p. 163. https://www.energy.gov/sites/prod/files/2019/06/f63/GeoVision-full-report-opt.pdf.
"Well depth (or total length, if not vertical)" output field renamed to "Well depth" per NREL#321
3.7.3: Heat to Power Conversion Efficiency output added.
3.7.5: Injection Well Drilling and Completion Capital Cost Adjustment Factor, if not provided, is now automatically set to the provided value of Well Drilling and Completion Capital Cost Adjustment Factor.
3.7.6: Fixes bugs pertaining to specifying non-CLGS laterals and display of per-lateral costs.
3.7.21:
- Carbon Revenue Profile (CCUS Profile replacement) added to client result.
- Electricity annual revenue profile data issue resolved.
3.7.23: Surface Plant time series integration fix: production and revenue in the final year of project lifetime are now fully accounted for in results.
Changes default output file path to the original working directory instead of the the GEOPHIRES module source directory (usually geophires-x
or src/geophires_x
, depending on package installation type).
This affects:
- Users who call GEOPHIRES as a script from a working directory outside of the module source directory and pass no output file argument or a non-absolute output file argument e.g.
python ./geophires-x/GEOPHIRESv3.py my-input.txt
. In prior versions, the output file would have been generated at./geophires_x/HDR.out
; in v.3.6 it is generated at./HDR.out
instead. (Users who call GEOPHIRES as a module –python -m geophires_x my-input.txt
– will see no change since the module has always output relative to the working directory.) - Inputs with
HTML Output File
and/orImproved Text Output File
parameters specified as non-absolute paths. The associated output files will now be generated relative to the working directory instead of the GEOPHIRES module source directory.
Affected users who do not want the new behavior can specify absolute output paths instead of relative ones e.g. python ./geophires-x/GEOPHIRESv3.py my-input.txt /home/user/my-geophires-project/geophires-x/HDR.out
(Most users are expected to be unaffected.)
3.6.1: Fixed Internal Rate default value changed to 7% from 6.25% per NREL#301
3.6.3: Discount Rate and Fixed Internal Rate are now synonymous. If one is provided, the other's value will be automatically set to the same value.
Milestone version for case studies, SHR temperatures, and other changes since 3.0. An overview is given in the July 2024 NREL GEOPHIRES Workshop Version 3.5 Announcement session recording.
3.5.3: SBT Reservoir Model (Slender Body Theory)
Monte Carlo moved to dedicated module
- Surface plant objectification. Note: some input values of
End-Use Option
will need to be updated toPlant Type
, see SUTRAExample1.txt update for example - Introduction of HIP-RA-X
Bug fixes
Internal changes to support unit testing
- New repository: https://github.com/NREL/GEOPHIRES-X (Originally https://github.com/NREL/python-geophires-x, renamed to GEOPHIRES-X 2023-12-15 per NREL#48.)
- Ported from malcolm-dsider/GEOPHIRES-X and softwareengineerprogrammer/python-geophires-x using ionelmc/cookiecutter-pylibrary.
- Releases now marked with tags/version metadata generated with
bumpversion
GEOPHIRES 3.0 (GEOPHIRES-X) and subsequent releases use semantic versioning. Major, minor, and notable patch versions are documented above. You may also be interested in viewing the list of all PRs merged into the repository here.
Each semantic version has a corresponding tag, the full list of which can be viewed here. The patch version displayed on the package badge in the README and patch versions explicitly mentioned in this changelog are always suitable for public consumption; but note that not all patch version tags in the list are meant for public consumption as intermediate internal-only patch versions are sometimes introduced during the development process. (Improved designation and distribution of releases for public consumption may eventually be addressed by publishing to PyPI and/or use of GitHub releases.)