diff --git a/.bumpversion.cfg b/.bumpversion.cfg index 19d844f3..4e5cf9df 100644 --- a/.bumpversion.cfg +++ b/.bumpversion.cfg @@ -1,5 +1,5 @@ [bumpversion] -current_version = 3.6.0 +current_version = 3.6.1 commit = True tag = True diff --git a/.cookiecutterrc b/.cookiecutterrc index c10fa5b6..b5bb0c1a 100644 --- a/.cookiecutterrc +++ b/.cookiecutterrc @@ -54,7 +54,7 @@ default_context: sphinx_doctest: "no" sphinx_theme: "sphinx-py3doc-enhanced-theme" test_matrix_separate_coverage: "no" - version: 3.6.0 + version: 3.6.1 version_manager: "bump2version" website: "https://github.com/NREL" year_from: "2023" diff --git a/CHANGELOG.rst b/CHANGELOG.rst index e7b057e9..866bb379 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -21,6 +21,8 @@ This affects: 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 https://github.com/NREL/GEOPHIRES-X/issues/301 + 3.5 ^^^ diff --git a/README.rst b/README.rst index dbb86640..56d7dd04 100644 --- a/README.rst +++ b/README.rst @@ -51,9 +51,9 @@ Free software: `MIT license `__ :alt: Supported implementations :target: https://pypi.org/project/geophires-x -.. |commits-since| image:: https://img.shields.io/github/commits-since/softwareengineerprogrammer/GEOPHIRES-X/v3.6.0.svg +.. |commits-since| image:: https://img.shields.io/github/commits-since/softwareengineerprogrammer/GEOPHIRES-X/v3.6.1.svg :alt: Commits since latest release - :target: https://github.com/softwareengineerprogrammer/GEOPHIRES-X/compare/v3.6.0...main + :target: https://github.com/softwareengineerprogrammer/GEOPHIRES-X/compare/v3.6.1...main .. |docs| image:: https://readthedocs.org/projects/GEOPHIRES-X/badge/?style=flat :target: https://nrel.github.io/GEOPHIRES-X diff --git a/docs/conf.py b/docs/conf.py index 0e706ab2..a756f774 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -18,7 +18,7 @@ year = '2024' author = 'NREL' copyright = f'{year}, {author}' -version = release = '3.6.0' +version = release = '3.6.1' pygments_style = 'trac' templates_path = ['./templates'] diff --git a/setup.py b/setup.py index e3698b14..ef77bb37 100755 --- a/setup.py +++ b/setup.py @@ -13,7 +13,7 @@ def read(*names, **kwargs): setup( name='geophires-x', - version='3.6.0', + version='3.6.1', license='MIT', description='GEOPHIRES is a free and open-source geothermal techno-economic simulator.', long_description='{}\n{}'.format( diff --git a/src/geophires_x/AGSEconomics.py b/src/geophires_x/AGSEconomics.py index 1b0258ff..4db72ec5 100644 --- a/src/geophires_x/AGSEconomics.py +++ b/src/geophires_x/AGSEconomics.py @@ -110,8 +110,8 @@ def read_parameters(self, model: Model) -> None: # including the ones that are specific to this class # inputs we already have - needs to be set at ReadParameter time so values set at the latest possible time - self.Discount_rate = model.economics.discountrate.value # same units are GEOPHIRES - self.Electricity_rate = model.surfaceplant.electricity_cost_to_buy.value # same units are GEOPHIRES + self.Discount_rate = model.economics.discountrate.value # same units as GEOPHIRES + self.Electricity_rate = model.surfaceplant.electricity_cost_to_buy.value # same units as GEOPHIRES model.logger.info(f'complete {__class__!s}: {sys._getframe().f_code.co_name}') diff --git a/src/geophires_x/AGSOutputs.py b/src/geophires_x/AGSOutputs.py index 01ad1e44..c06e06e8 100644 --- a/src/geophires_x/AGSOutputs.py +++ b/src/geophires_x/AGSOutputs.py @@ -5,13 +5,14 @@ import geophires_x -from .Parameter import ConvertUnitsBack, ConvertOutputUnits -from .OptionList import EndUseOptions, EconomicModel -from .Units import * +from geophires_x.OptionList import EndUseOptions, EconomicModel + import geophires_x.Model as Model import geophires_x.Outputs as Outputs import numpy as np +from geophires_x.Units import TemperatureUnit + NL = "\n" @@ -28,27 +29,8 @@ def PrintOutputs(self, model: Model): :return: None """ model.logger.info(f'Init {str(__class__)}: {sys._getframe().f_code.co_name}') - # Deal with converting Units back to PreferredUnits, if required. - # before we write the outputs, we go thru all the parameters for all of the objects and set the values - # back to the units that the user entered the data in - # We do this because the value may be displayed in the output, and we want the user to recognize their value, - # not some converted value - for obj in [model.reserv, model.wellbores, model.surfaceplant, model.economics]: - for key in obj.ParameterDict: - param = obj.ParameterDict[key] - if not param.UnitsMatch: - ConvertUnitsBack(param, model) - - # now we need to loop thru all the output parameters to update their units to whatever units the user has specified. - # i.e., they may have specified that all LENGTH results must be in feet, so we need to convert - # those from whatever LENGTH unit they are to feet. - # same for all the other classes of units (TEMPERATURE, DENSITY, etc). - - for obj in [model.reserv, model.wellbores, model.surfaceplant, model.economics]: - for key in obj.OutputParameterDict: - if key in self.ParameterDict: - if self.ParameterDict[key] != obj.OutputParameterDict[key].CurrentUnits: - ConvertOutputUnits(obj.OutputParameterDict[key], self.ParameterDict[key], model) + + self._convert_units(model) # --------------------------------------- # write results to output file and screen diff --git a/src/geophires_x/Economics.py b/src/geophires_x/Economics.py index 75b80963..91e2e01c 100644 --- a/src/geophires_x/Economics.py +++ b/src/geophires_x/Economics.py @@ -837,15 +837,17 @@ def __init__(self, model: Model): ErrMessage="assume default fixed charge rate (0.1)", ToolTipText="Fixed charge rate (FCR) used in the Fixed Charge Rate Model" ) + + discount_rate_default_val = 0.07 self.discountrate = self.ParameterDict[self.discountrate.Name] = floatParameter( "Discount Rate", - DefaultValue=0.07, + DefaultValue=discount_rate_default_val, Min=0.0, Max=1.0, UnitType=Units.PERCENT, - PreferredUnits=PercentUnit.TENTH, + PreferredUnits=PercentUnit.PERCENT, CurrentUnits=PercentUnit.TENTH, - ErrMessage="assume default discount rate (0.07)", + ErrMessage=f'assume default discount rate ({discount_rate_default_val})', ToolTipText="Discount rate used in the Standard Levelized Cost Model" ) self.FIB = self.ParameterDict[self.FIB.Name] = floatParameter( @@ -1379,15 +1381,18 @@ def __init__(self, model: Model): PreferredUnits=CurrencyUnit.MDOLLARS, CurrentUnits=CurrencyUnit.MDOLLARS ) + + fir_default_unit = PercentUnit.PERCENT + fir_default_val = self.discountrate.quantity().to(convertible_unit(fir_default_unit)).magnitude self.FixedInternalRate = self.ParameterDict[self.FixedInternalRate.Name] = floatParameter( "Fixed Internal Rate", - DefaultValue=6.25, + DefaultValue=fir_default_val, Min=0.0, Max=100.0, UnitType=Units.PERCENT, PreferredUnits=PercentUnit.PERCENT, - CurrentUnits=PercentUnit.PERCENT, - ErrMessage="assume default for fixed internal rate (6.25%)", + CurrentUnits=fir_default_unit, + ErrMessage=f'assume default for fixed internal rate ({fir_default_val}%)', ToolTipText="Fixed Internal Rate (used in NPV calculation)" ) self.CAPEX_heat_electricity_plant_ratio = self.ParameterDict[self.CAPEX_heat_electricity_plant_ratio.Name] = floatParameter( diff --git a/src/geophires_x/GEOPHIRES3_newunits.txt b/src/geophires_x/GEOPHIRES3_newunits.txt index e8afe4c4..d5f52780 100644 --- a/src/geophires_x/GEOPHIRES3_newunits.txt +++ b/src/geophires_x/GEOPHIRES3_newunits.txt @@ -1,2 +1,4 @@ USD = [currency] cents = USD / 100 +KUSD = USD * 1000 +MMBTU = BTU * 1_000_000 diff --git a/src/geophires_x/GeoPHIRESUtils.py b/src/geophires_x/GeoPHIRESUtils.py index 762edbde..e660c3fd 100644 --- a/src/geophires_x/GeoPHIRESUtils.py +++ b/src/geophires_x/GeoPHIRESUtils.py @@ -18,7 +18,7 @@ import CoolProp.CoolProp as CP from geophires_x.Parameter import ParameterEntry, Parameter -from geophires_x.Units import get_unit_registry +from geophires_x.Units import get_unit_registry, convertible_unit _logger = logging.getLogger('root') # TODO use __name__ instead of root @@ -224,7 +224,7 @@ def quantity(value: float, unit: str) -> PlainQuantity: :rtype: pint.registry.Quantity - note type annotation uses PlainQuantity due to issues with python 3.8 failing to import the Quantity TypeAlias """ - return _ureg.Quantity(value, unit) + return _ureg.Quantity(value, convertible_unit(unit)) @lru_cache diff --git a/src/geophires_x/Outputs.py b/src/geophires_x/Outputs.py index 271c7bac..ddbd8021 100644 --- a/src/geophires_x/Outputs.py +++ b/src/geophires_x/Outputs.py @@ -744,15 +744,7 @@ def read_parameters(self, model: Model, default_output_path: Path = None) -> Non model.logger.info(f'Complete {__class__!s}: {__name__}') - def PrintOutputs(self, model: Model): - """ - PrintOutputs writes the standard outputs to the output file. - :param model: The container class of the application, giving access to everything else, including the logger - :type model: :class:`~geophires_x.Model.Model` - :return: None - """ - model.logger.info(f'Init {str(__class__)}: {sys._getframe().f_code.co_name}') - + def _convert_units(self, model: Model): # Deal with converting Units back to PreferredUnits, if required. # before we write the outputs, we go thru all the parameters for all of the objects and set the values back # to the units that the user entered the data in @@ -779,6 +771,17 @@ def PrintOutputs(self, model: Model): elif not output_param.UnitsMatch: obj.OutputParameterDict[key] = output_param.with_preferred_units() + def PrintOutputs(self, model: Model): + """ + PrintOutputs writes the standard outputs to the output file. + :param model: The container class of the application, giving access to everything else, including the logger + :type model: :class:`~geophires_x.Model.Model` + :return: None + """ + model.logger.info(f'Init {str(__class__)}: {sys._getframe().f_code.co_name}') + + self._convert_units(model) + #data structures and assignments for HTML and Improved Text Output formats simulation_metadata = [] summary = [] @@ -1634,7 +1637,11 @@ def PrintOutputs(self, model: Model): f.write(f' Fixed Charge Rate (FCR): {model.economics.FCR.value*100.0:10.2f} ' + model.economics.FCR.CurrentUnits.value + NL) elif model.economics.econmodel.value == EconomicModel.STANDARDIZED_LEVELIZED_COST: f.write(' Economic Model = ' + model.economics.econmodel.value.value + NL) - f.write(f' Interest Rate: {model.economics.discountrate.value*100.0:10.2f} ' + model.economics.discountrate.CurrentUnits.value + NL) + + # FIXME discountrate should not be multiplied by 100 here - + # it appears to be incorrectly claiming its units are percent when the actual value is in tenths. + f.write(f' Interest Rate: {model.economics.discountrate.value*100.0:10.2f} {model.economics.discountrate.CurrentUnits.value}\n') + elif model.economics.econmodel.value == EconomicModel.BICYCLE: f.write(' Economic Model = ' + model.economics.econmodel.value.value + NL) f.write(f' Accrued financing during construction: {model.economics.inflrateconstruction.value*100:10.2f} ' + model.economics.inflrateconstruction.CurrentUnits.value + NL) diff --git a/src/geophires_x/OutputsAddOns.py b/src/geophires_x/OutputsAddOns.py index e9364bac..bab710f8 100644 --- a/src/geophires_x/OutputsAddOns.py +++ b/src/geophires_x/OutputsAddOns.py @@ -20,6 +20,8 @@ def PrintOutputs(self, model) -> tuple: """ model.logger.info(f'Init {str(__class__)}: {__name__}') + self._convert_units(model) + # now do AddOn output, which will append to the original output # write results to output file and screen try: diff --git a/src/geophires_x/OutputsCCUS.py b/src/geophires_x/OutputsCCUS.py index 0cb2cd00..e187c5a4 100644 --- a/src/geophires_x/OutputsCCUS.py +++ b/src/geophires_x/OutputsCCUS.py @@ -16,7 +16,9 @@ def PrintOutputs(self, model): :type model: :class:`~geophires_x.Model.Model` :return: Nothing """ - model.logger.info("Init " + str(__class__) + ": " + sys._getframe().f_code.co_name) + model.logger.info(f'Init {__class__!s}: sys._getframe().f_code.co_name') + + self._convert_units(model) if np.sum(model.ccuseconomics.CCUSRevenue.value) == 0: return # don't bother if we have nothing to report. diff --git a/src/geophires_x/OutputsS_DAC_GT.py b/src/geophires_x/OutputsS_DAC_GT.py index f9b20b31..b92d83e8 100644 --- a/src/geophires_x/OutputsS_DAC_GT.py +++ b/src/geophires_x/OutputsS_DAC_GT.py @@ -18,6 +18,8 @@ def PrintOutputs(self, model) -> tuple: """ model.logger.info(f'Init {str(__class__)}: {__name__}') + self._convert_units(model) + # now do S_DAC_GT output, which will append to the original output # write results to output file and screen try: diff --git a/src/geophires_x/Parameter.py b/src/geophires_x/Parameter.py index 9e3669c8..f986c870 100644 --- a/src/geophires_x/Parameter.py +++ b/src/geophires_x/Parameter.py @@ -76,7 +76,7 @@ def UnitsMatch(self) -> str: def with_preferred_units(self) -> Any: # Any is a proxy for Self ret: OutputParameter = dataclasses.replace(self) - ret.value = ret.quantity().to(ret.PreferredUnits).magnitude + ret.value = ret.quantity().to(convertible_unit(ret.PreferredUnits)).magnitude ret.CurrentUnits = ret.PreferredUnits return ret @@ -609,7 +609,7 @@ def ConvertUnitsBack(ParamToModify: Parameter, model): model.logger.info(f'Init {str(__name__)}: {sys._getframe().f_code.co_name} for {ParamToModify.Name}') try: - ParamToModify.value = _ureg.Quantity(ParamToModify.value, ParamToModify.CurrentUnits.value).to(ParamToModify.PreferredUnits.value).magnitude + ParamToModify.value = _ureg.Quantity(ParamToModify.value, convertible_unit(ParamToModify.CurrentUnits)).to(convertible_unit(ParamToModify.PreferredUnits)).magnitude ParamToModify.CurrentUnits = ParamToModify.PreferredUnits except AttributeError as ae: # TODO refactor to check for/convert currency instead of relying on try/except once currency conversion is @@ -848,7 +848,7 @@ def ConvertOutputUnits(oparam: OutputParameter, newUnit: Units, model): """ try: - oparam.value = _ureg.Quantity(oparam.value, oparam.CurrentUnits.value).to(newUnit.value).magnitude + oparam.value = _ureg.Quantity(oparam.value, oparam.CurrentUnits.value).to(convertible_unit(newUnit.value)).magnitude oparam.CurrentUnits = newUnit return except AttributeError as ae: diff --git a/src/geophires_x/SUTRAEconomics.py b/src/geophires_x/SUTRAEconomics.py index 89537243..f1a00cb0 100644 --- a/src/geophires_x/SUTRAEconomics.py +++ b/src/geophires_x/SUTRAEconomics.py @@ -111,19 +111,6 @@ def __init__(self, model: Model): ToolTipText="Multiplier for built-in surface plant capital cost correlation", ) - self.discountrate = self.ParameterDict[self.discountrate.Name] = floatParameter( - "Discount Rate", - value=0.07, - DefaultValue=0.07, - Min=0.0, - Max=1.0, - UnitType=Units.PERCENT, - PreferredUnits=PercentUnit.PERCENT, - CurrentUnits=PercentUnit.TENTH, - ErrMessage="assume default discount rate (0.07)", - ToolTipText="Discount rate used in the Standard Levelized Cost Model", - ) - self.inflrateconstruction = self.ParameterDict[self.inflrateconstruction.Name] = floatParameter( "Inflation Rate During Construction", value=0.0, diff --git a/src/geophires_x/SUTRAOutputs.py b/src/geophires_x/SUTRAOutputs.py index b6c2a15c..7e98d6d8 100644 --- a/src/geophires_x/SUTRAOutputs.py +++ b/src/geophires_x/SUTRAOutputs.py @@ -3,10 +3,11 @@ import sys import geophires_x -import numpy as np import geophires_x.Model as Model from geophires_x.Outputs import Outputs -from .OptionList import EconomicModel +from geophires_x.OptionList import EconomicModel + +import numpy as np NL="\n" @@ -47,6 +48,7 @@ def PrintOutputs(self, model: Model): """ model.logger.info(f'Init {str(__class__)}: {sys._getframe().f_code.co_name}') + self._convert_units(model) # write results to output file and screen try: @@ -83,7 +85,11 @@ def PrintOutputs(self, model: Model): f.write(f" Fixed Charge Rate (FCR): {model.economics.FCR.value*100.0:10.2f} " + model.economics.FCR.CurrentUnits.value + NL) elif model.economics.econmodel.value == EconomicModel.STANDARDIZED_LEVELIZED_COST: f.write(" Economic Model = " + model.economics.econmodel.value.value + NL) - f.write(f" Interest Rate: {model.economics.discountrate.value*100.0:10.2f} " + model.economics.discountrate.PreferredUnits.value + NL) + + # FIXME discountrate should not be multiplied by 100 here - + # it appears to be incorrectly claiming its units are percent when the actual value is in tenths. + f.write(f" Interest Rate: {model.economics.discountrate.value*100.0:10.2f} {model.economics.discountrate.CurrentUnits.value}\n") + elif model.economics.econmodel.value == EconomicModel.BICYCLE: f.write(" Economic Model = " + model.economics.econmodel.value.value + NL) f.write(f" Accrued financing during construction: {model.economics.inflrateconstruction.value*100:10.2f} " + model.economics.inflrateconstruction.PreferredUnits.value + NL) diff --git a/src/geophires_x/Units.py b/src/geophires_x/Units.py index 7e8bf2d3..50509c73 100644 --- a/src/geophires_x/Units.py +++ b/src/geophires_x/Units.py @@ -1,11 +1,13 @@ # copyright, 2023, Malcolm I Ross from enum import IntEnum, Enum, auto +from typing import Any import pint import os - _UREG = None + + def get_unit_registry(): global _UREG if _UREG is None: @@ -14,6 +16,19 @@ def get_unit_registry(): return _UREG + +def convertible_unit(unit: Any) -> Any: + """ + pint can't handle '%' as a unit in python 3.8, so use this method when constructing quantities + + :type unit: str|Enum + """ + if unit == Units.PERCENT or unit == PercentUnit.PERCENT or unit == Units.PERCENT.value: + return 'percent' + + return unit + + class Units(IntEnum): """All possible systems of measure""" NONE = auto() @@ -59,8 +74,8 @@ class Units(IntEnum): POWERPERUNITAREA = auto() HEATPERUNITVOLUME = auto() POWERPERUNITVOLUME = auto() - DECAY_RATE=auto() - INFLATION_RATE=auto() + DECAY_RATE = auto() + INFLATION_RATE = auto() DYNAMIC_VISCOSITY = auto() @@ -158,6 +173,7 @@ class EnergyFrequencyUnit(str, Enum): MWhPERYEAR = "MWh/year" GWhPERYEAR = "GWh/year" + class CurrencyUnit(str, Enum): """Currency Units""" MDOLLARS = "MUSD" @@ -327,41 +343,41 @@ class MassUnit(str, Enum): OZ = "ounce" -class PopDensityUnit(str,Enum): +class PopDensityUnit(str, Enum): """Population Density Units""" perkm2 = "Population per square km" -class HeatPerUnitAreaUnit(str,Enum): +class HeatPerUnitAreaUnit(str, Enum): """Population Density Units""" KJPERSQKM = "kJ/km**2" -class PowerPerUnitAreaUnit(str,Enum): +class PowerPerUnitAreaUnit(str, Enum): """Population Density Units""" MWPERSQKM = "MW/km**2" -class HeatPerUnitVolumeUnit(str,Enum): +class HeatPerUnitVolumeUnit(str, Enum): """Population Density Units""" KJPERCUBICKM = "kJ/km**3" -class PowerPerUnitVolumeUnit(str,Enum): +class PowerPerUnitVolumeUnit(str, Enum): """Population Density Units""" MWPERCUBICKM = "MW/km**3" -class Decay_RateUnit(str,Enum): +class Decay_RateUnit(str, Enum): """Decay rate Units""" PERCENTPERYEAR = "%/yr" -class Inflation_RateUnit(str,Enum): +class Inflation_RateUnit(str, Enum): """Decay rate Units""" KPASCALPERYEAR = "kPa/yr" -class Dynamic_ViscosityUnit(str,Enum): +class Dynamic_ViscosityUnit(str, Enum): """Dynamic Viscosity Units""" PASCALSEC = "PaSec" diff --git a/src/geophires_x/__init__.py b/src/geophires_x/__init__.py index 826cf62c..bce59824 100644 --- a/src/geophires_x/__init__.py +++ b/src/geophires_x/__init__.py @@ -1 +1 @@ -__version__ = '3.6.0' +__version__ = '3.6.1' diff --git a/src/geophires_x_schema_generator/geophires-request.json b/src/geophires_x_schema_generator/geophires-request.json index 9cfc3ae6..caf08496 100644 --- a/src/geophires_x_schema_generator/geophires-request.json +++ b/src/geophires_x_schema_generator/geophires-request.json @@ -2086,7 +2086,7 @@ "type": "number", "units": "%", "category": "Economics", - "default": 6.25, + "default": 7.00, "minimum": 0.0, "maximum": 100.0 }, diff --git a/tests/example1_addons.csv b/tests/example1_addons.csv index 6d5318af..2e98f307 100644 --- a/tests/example1_addons.csv +++ b/tests/example1_addons.csv @@ -12,9 +12,9 @@ ECONOMIC PARAMETERS,Economic Model,,Fixed Charge Rate (FCR), ECONOMIC PARAMETERS,Accrued financing during construction,,0.0, ECONOMIC PARAMETERS,Project lifetime,,30,yr ECONOMIC PARAMETERS,Capacity factor,,90.0,% -ECONOMIC PARAMETERS,Project NPV,,75.32,MUSD +ECONOMIC PARAMETERS,Project NPV,,65.9,MUSD ECONOMIC PARAMETERS,Project IRR,,20.11,% -ECONOMIC PARAMETERS,Project VIR=PI=PIR,,3.42, +ECONOMIC PARAMETERS,Project VIR=PI=PIR,,3.12, ECONOMIC PARAMETERS,Project MOIC,,36.27, ECONOMIC PARAMETERS,Fixed Charge Rate (FCR),,5.0, ECONOMIC PARAMETERS,Project Payback Period,,7.05,yr @@ -23,9 +23,9 @@ EXTENDED ECONOMICS,"Adjusted Project LCOE (after incentives\, grants\, AddOns\,e EXTENDED ECONOMICS,"Adjusted Project LCOH (after incentives\, grants\, AddOns\,etc)",,0.0,USD/MMBTU EXTENDED ECONOMICS,"Adjusted Project CAPEX (after incentives\, grants\, AddOns\, etc)",,101.07,MUSD EXTENDED ECONOMICS,"Adjusted Project OPEX (after incentives\, grants\, AddOns\, etc)",,0.88,MUSD -EXTENDED ECONOMICS,Project NPV (including AddOns),,-5.2,MUSD +EXTENDED ECONOMICS,Project NPV (including AddOns),,-13.02,MUSD EXTENDED ECONOMICS,Project IRR (including AddOns),,0.06,% -EXTENDED ECONOMICS,Project VIR=PI=PIR (including AddOns),,0.95, +EXTENDED ECONOMICS,Project VIR=PI=PIR (including AddOns),,0.87, EXTENDED ECONOMICS,Project MOIC (including AddOns),,1.0, EXTENDED ECONOMICS,Total Add-on CAPEX,,70.0,MUSD EXTENDED ECONOMICS,Total Add-on OPEX,,1.7,MUSD/yr @@ -97,7 +97,7 @@ SURFACE EQUIPMENT SIMULATION RESULTS,Average Annual Total Electricity Generation SURFACE EQUIPMENT SIMULATION RESULTS,Average Annual Net Electricity Generation,,42.3,GWh SURFACE EQUIPMENT SIMULATION RESULTS,Average Pumping Power,,0.2,MW SURFACE EQUIPMENT SIMULATION RESULTS,Initial pumping power/net installed power,,3.82,% -Simulation Metadata,GEOPHIRES Version,,3.4.42, +Simulation Metadata,GEOPHIRES Version,,3.6.0, POWER GENERATION PROFILE,THERMAL DRAWDOWN,1,1.0, POWER GENERATION PROFILE,THERMAL DRAWDOWN,2,1.0056, POWER GENERATION PROFILE,THERMAL DRAWDOWN,3,1.0073, diff --git a/tests/examples/Beckers_et_al_2023_Tabulated_Database_Coaxial_sCO2_heat.out b/tests/examples/Beckers_et_al_2023_Tabulated_Database_Coaxial_sCO2_heat.out index 601ca766..9119098c 100644 --- a/tests/examples/Beckers_et_al_2023_Tabulated_Database_Coaxial_sCO2_heat.out +++ b/tests/examples/Beckers_et_al_2023_Tabulated_Database_Coaxial_sCO2_heat.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.4.4 - Simulation Date: 2024-03-02 - Simulation Time: 14:11 - Calculation Time: 1.178 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:07 + Calculation Time: 0.783 sec ***AGS/CLGS STYLE OUTPUT*** @@ -19,7 +19,7 @@ Simulation Metadata Flow rate: 40.0 kg/sec Lateral Length: 1000 meter Vertical Depth: 3 kilometer - Geothermal Gradient: 0.0600 degC/km + Geothermal Gradient: 60.0000 degC/km Wellbore Diameter: 8.5000 in Injection Temperature: 60.0 degC Thermal Conductivity: 3.00 W/m/K diff --git a/tests/examples/Beckers_et_al_2023_Tabulated_Database_Coaxial_water_heat.out b/tests/examples/Beckers_et_al_2023_Tabulated_Database_Coaxial_water_heat.out index deb133e3..2491e87f 100644 --- a/tests/examples/Beckers_et_al_2023_Tabulated_Database_Coaxial_water_heat.out +++ b/tests/examples/Beckers_et_al_2023_Tabulated_Database_Coaxial_water_heat.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.4.4 - Simulation Date: 2024-03-02 - Simulation Time: 14:12 - Calculation Time: 1.004 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:07 + Calculation Time: 0.721 sec ***AGS/CLGS STYLE OUTPUT*** @@ -19,7 +19,7 @@ Simulation Metadata Flow rate: 20.0 kg/sec Lateral Length: 9000 meter Vertical Depth: 3 kilometer - Geothermal Gradient: 0.0600 degC/m + Geothermal Gradient: 60.0000 degC/km Wellbore Diameter: 8.5000 in Injection Temperature: 60.0 degC Thermal Conductivity: 3.00 W/m/K diff --git a/tests/examples/Beckers_et_al_2023_Tabulated_Database_Uloop_sCO2_elec.out b/tests/examples/Beckers_et_al_2023_Tabulated_Database_Uloop_sCO2_elec.out index a3f80275..e5d4c283 100644 --- a/tests/examples/Beckers_et_al_2023_Tabulated_Database_Uloop_sCO2_elec.out +++ b/tests/examples/Beckers_et_al_2023_Tabulated_Database_Uloop_sCO2_elec.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.4.4 - Simulation Date: 2024-03-02 - Simulation Time: 14:13 - Calculation Time: 1.085 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:08 + Calculation Time: 0.800 sec ***AGS/CLGS STYLE OUTPUT*** @@ -19,7 +19,7 @@ Simulation Metadata Flow rate: 40.0 kg/sec Lateral Length: 9000 meter Vertical Depth: 3 kilometer - Geothermal Gradient: 0.0600 degC/m + Geothermal Gradient: 60.0000 degC/km Wellbore Diameter: 8.5000 in Injection Temperature: 60.0 degC Thermal Conductivity: 3.00 W/m/K diff --git a/tests/examples/Beckers_et_al_2023_Tabulated_Database_Uloop_sCO2_heat.out b/tests/examples/Beckers_et_al_2023_Tabulated_Database_Uloop_sCO2_heat.out index 9f8b837f..8d050264 100644 --- a/tests/examples/Beckers_et_al_2023_Tabulated_Database_Uloop_sCO2_heat.out +++ b/tests/examples/Beckers_et_al_2023_Tabulated_Database_Uloop_sCO2_heat.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.4.4 - Simulation Date: 2024-03-02 - Simulation Time: 14:13 - Calculation Time: 1.093 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:08 + Calculation Time: 0.822 sec ***AGS/CLGS STYLE OUTPUT*** @@ -19,7 +19,7 @@ Simulation Metadata Flow rate: 40.0 kg/sec Lateral Length: 9000 meter Vertical Depth: 3 kilometer - Geothermal Gradient: 0.0600 degC/m + Geothermal Gradient: 60.0000 degC/km Wellbore Diameter: 8.5000 in Injection Temperature: 60.0 degC Thermal Conductivity: 3.00 W/m/K diff --git a/tests/examples/Beckers_et_al_2023_Tabulated_Database_Uloop_water_elec.out b/tests/examples/Beckers_et_al_2023_Tabulated_Database_Uloop_water_elec.out index 337917d6..0ae64f28 100644 --- a/tests/examples/Beckers_et_al_2023_Tabulated_Database_Uloop_water_elec.out +++ b/tests/examples/Beckers_et_al_2023_Tabulated_Database_Uloop_water_elec.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.4.4 - Simulation Date: 2024-03-02 - Simulation Time: 14:14 - Calculation Time: 1.073 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:07 + Calculation Time: 0.792 sec ***AGS/CLGS STYLE OUTPUT*** @@ -19,7 +19,7 @@ Simulation Metadata Flow rate: 20.0 kg/sec Lateral Length: 9000 meter Vertical Depth: 3 kilometer - Geothermal Gradient: 0.0600 degC/m + Geothermal Gradient: 60.0000 degC/km Wellbore Diameter: 8.5000 in Injection Temperature: 60.0 degC Thermal Conductivity: 3.00 W/m/K diff --git a/tests/examples/Beckers_et_al_2023_Tabulated_Database_Uloop_water_heat.out b/tests/examples/Beckers_et_al_2023_Tabulated_Database_Uloop_water_heat.out index 48deb5ee..3219c3da 100644 --- a/tests/examples/Beckers_et_al_2023_Tabulated_Database_Uloop_water_heat.out +++ b/tests/examples/Beckers_et_al_2023_Tabulated_Database_Uloop_water_heat.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.4.4 - Simulation Date: 2024-03-02 - Simulation Time: 14:14 - Calculation Time: 1.026 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:08 + Calculation Time: 0.856 sec ***AGS/CLGS STYLE OUTPUT*** @@ -19,7 +19,7 @@ Simulation Metadata Flow rate: 20.0 kg/sec Lateral Length: 9000 meter Vertical Depth: 3 kilometer - Geothermal Gradient: 0.0600 degC/m + Geothermal Gradient: 60.0000 degC/km Wellbore Diameter: 8.5000 in Injection Temperature: 60.0 degC Thermal Conductivity: 3.00 W/m/K diff --git a/tests/examples/Fervo_Norbeck_Latimer_2023.out b/tests/examples/Fervo_Norbeck_Latimer_2023.out index 0341a33a..807fb9b6 100644 --- a/tests/examples/Fervo_Norbeck_Latimer_2023.out +++ b/tests/examples/Fervo_Norbeck_Latimer_2023.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.5.0 - Simulation Date: 2024-07-24 - Simulation Time: 18:06 - Calculation Time: 1.152 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:08 + Calculation Time: 0.447 sec ***SUMMARY OF RESULTS*** @@ -27,9 +27,9 @@ Simulation Metadata Accrued financing during construction: 5.00 Project lifetime: 10 yr Capacity factor: 90.0 % - Project NPV: -12.65 MUSD + Project NPV: -13.14 MUSD Project IRR: -5.39 % - Project VIR=PI=PIR: 0.53 + Project VIR=PI=PIR: 0.51 Project MOIC: -0.21 Project Payback Period: N/A Estimated Jobs Created: 6 diff --git a/tests/examples/Fervo_Project_Cape-2.out b/tests/examples/Fervo_Project_Cape-2.out index a649f433..68a9d187 100644 --- a/tests/examples/Fervo_Project_Cape-2.out +++ b/tests/examples/Fervo_Project_Cape-2.out @@ -5,9 +5,9 @@ Simulation Metadata ---------------------- GEOPHIRES Version: 3.6.0 - Simulation Date: 2024-10-04 - Simulation Time: 13:05 - Calculation Time: 0.653 sec + Simulation Date: 2024-10-15 + Simulation Time: 13:08 + Calculation Time: 0.662 sec ***SUMMARY OF RESULTS*** @@ -27,9 +27,9 @@ Simulation Metadata Accrued financing during construction: 5.00 Project lifetime: 15 yr Capacity factor: 90.0 % - Project NPV: 46.67 MUSD + Project NPV: 41.82 MUSD Project IRR: 17.54 % - Project VIR=PI=PIR: 1.92 + Project VIR=PI=PIR: 1.82 Project MOIC: 1.40 Project Payback Period: 6.50 yr Estimated Jobs Created: 19 diff --git a/tests/examples/Fervo_Project_Cape-3.out b/tests/examples/Fervo_Project_Cape-3.out index 5863d60f..0caa17e2 100644 --- a/tests/examples/Fervo_Project_Cape-3.out +++ b/tests/examples/Fervo_Project_Cape-3.out @@ -6,8 +6,8 @@ Simulation Metadata ---------------------- GEOPHIRES Version: 3.6.0 Simulation Date: 2024-10-15 - Simulation Time: 12:15 - Calculation Time: 0.688 sec + Simulation Time: 13:08 + Calculation Time: 0.658 sec ***SUMMARY OF RESULTS*** @@ -27,9 +27,9 @@ Simulation Metadata Accrued financing during construction: 5.00 Project lifetime: 15 yr Capacity factor: 90.0 % - Project NPV: 3504.77 MUSD + Project NPV: 3259.56 MUSD Project IRR: 32.85 % - Project VIR=PI=PIR: 3.42 + Project VIR=PI=PIR: 3.25 Project MOIC: 3.59 Project Payback Period: 4.15 yr Estimated Jobs Created: 975 diff --git a/tests/examples/Fervo_Project_Cape.out b/tests/examples/Fervo_Project_Cape.out index 97aa4f9b..ce11efa5 100644 --- a/tests/examples/Fervo_Project_Cape.out +++ b/tests/examples/Fervo_Project_Cape.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.5.3 - Simulation Date: 2024-09-18 - Simulation Time: 09:42 - Calculation Time: 0.673 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:08 + Calculation Time: 0.657 sec ***SUMMARY OF RESULTS*** @@ -27,9 +27,9 @@ Simulation Metadata Accrued financing during construction: 5.00 Project lifetime: 15 yr Capacity factor: 90.0 % - Project NPV: 566.32 MUSD + Project NPV: 516.24 MUSD Project IRR: 20.97 % - Project VIR=PI=PIR: 2.17 + Project VIR=PI=PIR: 2.07 Project MOIC: 1.87 Project Payback Period: 5.67 yr Estimated Jobs Created: 226 diff --git a/tests/examples/SUTRAExample1.out b/tests/examples/SUTRAExample1.out index 848a42c6..fd714035 100644 --- a/tests/examples/SUTRAExample1.out +++ b/tests/examples/SUTRAExample1.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.0 - Simulation Date: 2023-11-06 - Simulation Time: 17:26 - Calculation Time: 1.566 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:07 + Calculation Time: 0.507 sec ***SUMMARY OF RESULTS*** @@ -17,13 +17,13 @@ Simulation Metadata Number of Production Wells: 1 Number of Injection Wells: 1 Lifetime Average Well Flow Rate: 16.2 kg/sec - Well depth: 600.0 meter + Well depth: 0.6 kilometer ***ECONOMIC PARAMETERS*** Economic Model = Standard Levelized Cost - Interest Rate: 7.00 % + Interest Rate: 7.00 Accrued financing during construction: 0.00 % Project lifetime: 30 yr @@ -31,11 +31,11 @@ Simulation Metadata Number of Production Wells: 1 Number of Injection Wells: 1 - Well Depth: 600.0 meter + Well Depth: 0.6 kilometer Pump efficiency: 0.8 Lifetime Average Well Flow Rate: 16.2 kg/sec - Injection well casing ID: 0.198 meter - Production well casing ID: 0.198 meter + Injection well casing ID: 7.800 in + Production well casing ID: 7.800 in ***RESERVOIR SIMULATION RESULTS*** diff --git a/tests/examples/Wanju_Yuan_Closed-Loop_Geothermal_Energy_Recovery.out b/tests/examples/Wanju_Yuan_Closed-Loop_Geothermal_Energy_Recovery.out index b164cd35..3663a464 100644 --- a/tests/examples/Wanju_Yuan_Closed-Loop_Geothermal_Energy_Recovery.out +++ b/tests/examples/Wanju_Yuan_Closed-Loop_Geothermal_Energy_Recovery.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.4.34 - Simulation Date: 2024-06-19 - Simulation Time: 07:42 - Calculation Time: 1.614 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:08 + Calculation Time: 1.590 sec ***SUMMARY OF RESULTS*** @@ -27,7 +27,7 @@ Simulation Metadata Accrued financing during construction: 0.00 Project lifetime: 40 yr Capacity factor: 90.0 % - Project NPV: -90.47 MUSD + Project NPV: -89.77 MUSD Project IRR: 0.00 % Project VIR=PI=PIR: -0.09 Project MOIC: -0.85 diff --git a/tests/examples/example1.out b/tests/examples/example1.out index 5297ae23..8c68c41b 100644 --- a/tests/examples/example1.out +++ b/tests/examples/example1.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.4.34 - Simulation Date: 2024-06-19 - Simulation Time: 07:42 - Calculation Time: 0.609 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:07 + Calculation Time: 0.780 sec ***SUMMARY OF RESULTS*** @@ -28,9 +28,9 @@ Simulation Metadata Accrued financing during construction: 0.00 Project lifetime: 30 yr Capacity factor: 90.0 % - Project NPV: -40.91 MUSD + Project NPV: -41.83 MUSD Project IRR: -3.80 % - Project VIR=PI=PIR: 0.23 + Project VIR=PI=PIR: 0.22 Project MOIC: -0.27 Project Payback Period: N/A Estimated Jobs Created: 12 diff --git a/tests/examples/example10_HP.out b/tests/examples/example10_HP.out index eb006d71..05484c4e 100644 --- a/tests/examples/example10_HP.out +++ b/tests/examples/example10_HP.out @@ -4,9 +4,9 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.4.34 - Simulation Date: 2024-06-19 - Simulation Time: 07:42 + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:08 Calculation Time: 0.104 sec ***SUMMARY OF RESULTS*** @@ -25,13 +25,13 @@ Simulation Metadata ***ECONOMIC PARAMETERS*** Economic Model = Standard Levelized Cost - Interest Rate: 5.00 + Interest Rate: 5.00 % Accrued financing during construction: 5.00 Project lifetime: 30 yr Capacity factor: 90.0 % - Project NPV: 6.00 MUSD + Project NPV: 3.32 MUSD Project IRR: 8.07 % - Project VIR=PI=PIR: 1.19 + Project VIR=PI=PIR: 1.11 Project MOIC: 1.01 Project Payback Period: 11.96 yr diff --git a/tests/examples/example11_AC.out b/tests/examples/example11_AC.out index 822c3601..4129d7f2 100644 --- a/tests/examples/example11_AC.out +++ b/tests/examples/example11_AC.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.4.34 - Simulation Date: 2024-06-19 - Simulation Time: 07:42 - Calculation Time: 0.106 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:07 + Calculation Time: 0.104 sec ***SUMMARY OF RESULTS*** @@ -26,13 +26,13 @@ Simulation Metadata ***ECONOMIC PARAMETERS*** Economic Model = Standard Levelized Cost - Interest Rate: 5.00 + Interest Rate: 5.00 % Accrued financing during construction: 5.00 Project lifetime: 30 yr Capacity factor: 90.0 % - Project NPV: 1.74 MUSD + Project NPV: -0.53 MUSD Project IRR: 6.82 % - Project VIR=PI=PIR: 1.06 + Project VIR=PI=PIR: 0.98 Project MOIC: 0.83 Project Payback Period: 13.36 yr diff --git a/tests/examples/example12_DH.out b/tests/examples/example12_DH.out index 340e952b..0e3f988e 100644 --- a/tests/examples/example12_DH.out +++ b/tests/examples/example12_DH.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.4.42 - Simulation Date: 2024-07-16 - Simulation Time: 17:55 - Calculation Time: 0.453 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:08 + Calculation Time: 0.584 sec ***SUMMARY OF RESULTS*** @@ -28,13 +28,13 @@ Simulation Metadata ***ECONOMIC PARAMETERS*** Economic Model = Standard Levelized Cost - Interest Rate: 7.00 + Interest Rate: 7.00 % Accrued financing during construction: 0.00 Project lifetime: 20 yr Capacity factor: 96.3 % - Project NPV: -18.32 MUSD + Project NPV: -20.81 MUSD Project IRR: 2.18 % - Project VIR=PI=PIR: 0.71 + Project VIR=PI=PIR: 0.67 Project MOIC: 0.16 Project Payback Period: 16.46 yr diff --git a/tests/examples/example13.out b/tests/examples/example13.out index a5acf112..93f31ba9 100644 --- a/tests/examples/example13.out +++ b/tests/examples/example13.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.4.37 - Simulation Date: 2024-06-24 - Simulation Time: 11:25 - Calculation Time: 0.037 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:07 + Calculation Time: 0.035 sec ***SUMMARY OF RESULTS*** @@ -26,13 +26,13 @@ Simulation Metadata ***ECONOMIC PARAMETERS*** Economic Model = Standard Levelized Cost - Interest Rate: 5.00 + Interest Rate: 5.00 % Accrued financing during construction: 0.00 Project lifetime: 30 yr Capacity factor: 80.0 % - Project NPV: -44.41 MUSD + Project NPV: -45.14 MUSD Project IRR: -5.99 % - Project VIR=PI=PIR: 0.21 + Project VIR=PI=PIR: 0.20 Project MOIC: -0.22 Project Payback Period: N/A CHP: Percent cost allocation for electrical plant: 60.28 % diff --git a/tests/examples/example1_addons.out b/tests/examples/example1_addons.out index 808bb231..032da885 100644 --- a/tests/examples/example1_addons.out +++ b/tests/examples/example1_addons.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.4.42 - Simulation Date: 2024-07-01 - Simulation Time: 08:20 - Calculation Time: 0.618 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:07 + Calculation Time: 0.781 sec ***SUMMARY OF RESULTS*** @@ -29,9 +29,9 @@ Simulation Metadata Accrued financing during construction: 0.00 Project lifetime: 30 yr Capacity factor: 90.0 % - Project NPV: 75.32 MUSD + Project NPV: 65.90 MUSD Project IRR: 20.11 % - Project VIR=PI=PIR: 3.42 + Project VIR=PI=PIR: 3.12 Project MOIC: 36.27 Project Payback Period: 7.05 yr Estimated Jobs Created: 12 @@ -250,9 +250,9 @@ ________________________________________________________________________________ Adjusted Project LCOH (after incentives, grants, AddOns,etc): 0.00 USD/MMBTU Adjusted Project CAPEX (after incentives, grants, AddOns, etc): 101.07 MUSD Adjusted Project OPEX (after incentives, grants, AddOns, etc): 0.88 MUSD - Project NPV (including AddOns): -5.20 MUSD + Project NPV (including AddOns): -13.02 MUSD Project IRR (including AddOns): 0.06 % - Project VIR=PI=PIR (including AddOns): 0.95 + Project VIR=PI=PIR (including AddOns): 0.87 Project MOIC (including AddOns): 1.00 Total Add-on CAPEX: 70.00 MUSD Total Add-on OPEX: 1.70 MUSD/yr diff --git a/tests/examples/example1_outputunits.out b/tests/examples/example1_outputunits.out index 86d09793..5aa2dc84 100644 --- a/tests/examples/example1_outputunits.out +++ b/tests/examples/example1_outputunits.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.4.34 - Simulation Date: 2024-06-19 - Simulation Time: 07:43 - Calculation Time: 0.587 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:07 + Calculation Time: 0.831 sec ***SUMMARY OF RESULTS*** @@ -28,9 +28,9 @@ Simulation Metadata Accrued financing during construction: 0.00 Project lifetime: 30 yr Capacity factor: 90.0 % - Project NPV: -33.63 MUSD + Project NPV: -34.61 MUSD Project IRR: -2.77 % - Project VIR=PI=PIR: 0.28 + Project VIR=PI=PIR: 0.26 Project MOIC: -0.20 Project Payback Period: N/A Estimated Jobs Created: 12 diff --git a/tests/examples/example2.out b/tests/examples/example2.out index 1b9b377c..1b899424 100644 --- a/tests/examples/example2.out +++ b/tests/examples/example2.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.4.34 - Simulation Date: 2024-06-19 - Simulation Time: 07:43 - Calculation Time: 0.210 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:07 + Calculation Time: 0.208 sec ***SUMMARY OF RESULTS*** @@ -24,13 +24,13 @@ Simulation Metadata ***ECONOMIC PARAMETERS*** Economic Model = Standard Levelized Cost - Interest Rate: 5.00 + Interest Rate: 5.00 % Accrued financing during construction: 0.00 Project lifetime: 25 yr Capacity factor: 90.0 % - Project NPV: -1.01 MUSD + Project NPV: -3.54 MUSD Project IRR: 5.97 % - Project VIR=PI=PIR: 0.98 + Project VIR=PI=PIR: 0.91 Project MOIC: 0.52 Project Payback Period: 13.21 yr diff --git a/tests/examples/example3.out b/tests/examples/example3.out index 14ecf71e..b28c0a61 100644 --- a/tests/examples/example3.out +++ b/tests/examples/example3.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.4.37 - Simulation Date: 2024-06-24 - Simulation Time: 11:25 - Calculation Time: 0.125 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:07 + Calculation Time: 0.119 sec ***SUMMARY OF RESULTS*** @@ -29,9 +29,9 @@ Simulation Metadata Accrued financing during construction: 5.00 Project lifetime: 35 yr Capacity factor: 90.0 % - Project NPV: -3.15 MUSD + Project NPV: -11.42 MUSD Project IRR: 5.99 % - Project VIR=PI=PIR: 0.97 + Project VIR=PI=PIR: 0.90 Project MOIC: 0.64 Project Payback Period: 14.84 yr CHP: Percent cost allocation for electrical plant: 93.48 % diff --git a/tests/examples/example4.out b/tests/examples/example4.out index b9052feb..4590fd6d 100644 --- a/tests/examples/example4.out +++ b/tests/examples/example4.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.4.34 - Simulation Date: 2024-06-19 - Simulation Time: 07:43 - Calculation Time: 0.049 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:07 + Calculation Time: 0.050 sec ***SUMMARY OF RESULTS*** @@ -27,9 +27,9 @@ Simulation Metadata Accrued financing during construction: 0.00 Project lifetime: 30 yr Capacity factor: 90.0 % - Project NPV: -37.02 MUSD + Project NPV: -38.19 MUSD Project IRR: -2.92 % - Project VIR=PI=PIR: 0.33 + Project VIR=PI=PIR: 0.31 Project MOIC: -0.17 Project Payback Period: N/A Estimated Jobs Created: 18 diff --git a/tests/examples/example5.out b/tests/examples/example5.out index fcd3018d..faf8aae3 100644 --- a/tests/examples/example5.out +++ b/tests/examples/example5.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.4.34 - Simulation Date: 2024-06-19 - Simulation Time: 07:43 - Calculation Time: 0.049 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:07 + Calculation Time: 0.048 sec ***SUMMARY OF RESULTS*** @@ -27,9 +27,9 @@ Simulation Metadata Accrued financing during construction: 0.00 Project lifetime: 30 yr Capacity factor: 90.0 % - Project NPV: -1.43 MUSD + Project NPV: -3.98 MUSD Project IRR: 5.86 % - Project VIR=PI=PIR: 0.97 + Project VIR=PI=PIR: 0.90 Project MOIC: 0.49 Project Payback Period: 13.32 yr diff --git a/tests/examples/example8.out b/tests/examples/example8.out index 5c5b042f..ac76d9d2 100644 --- a/tests/examples/example8.out +++ b/tests/examples/example8.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.4.34 - Simulation Date: 2024-06-19 - Simulation Time: 07:43 - Calculation Time: 0.601 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:08 + Calculation Time: 0.795 sec ***SUMMARY OF RESULTS*** @@ -28,9 +28,9 @@ Simulation Metadata Accrued financing during construction: 0.00 Project lifetime: 30 yr Capacity factor: 60.0 % - Project NPV: -9.94 MUSD + Project NPV: -10.75 MUSD Project IRR: 1.02 % - Project VIR=PI=PIR: 0.53 + Project VIR=PI=PIR: 0.49 Project MOIC: 0.10 Project Payback Period: 26.31 yr diff --git a/tests/examples/example9.out b/tests/examples/example9.out index 72b2ab80..3d8941b2 100644 --- a/tests/examples/example9.out +++ b/tests/examples/example9.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.4.34 - Simulation Date: 2024-06-19 - Simulation Time: 07:43 - Calculation Time: 0.591 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:08 + Calculation Time: 0.792 sec ***SUMMARY OF RESULTS*** @@ -28,9 +28,9 @@ Simulation Metadata Accrued financing during construction: 0.00 Project lifetime: 30 yr Capacity factor: 90.0 % - Project NPV: -31.12 MUSD + Project NPV: -30.84 MUSD Project IRR: 0.00 % - Project VIR=PI=PIR: -0.13 + Project VIR=PI=PIR: -0.12 Project MOIC: -0.86 Project Payback Period: N/A Estimated Jobs Created: 1 diff --git a/tests/examples/example_ITC.out b/tests/examples/example_ITC.out index 52cbea37..b9bf1a19 100644 --- a/tests/examples/example_ITC.out +++ b/tests/examples/example_ITC.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.4.34 - Simulation Date: 2024-06-19 - Simulation Time: 07:43 - Calculation Time: 0.596 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:08 + Calculation Time: 0.792 sec ***SUMMARY OF RESULTS*** @@ -27,9 +27,9 @@ Simulation Metadata Accrued financing during construction: 0.00 Project lifetime: 30 yr Capacity factor: 90.0 % - Project NPV: 8.47 MUSD + Project NPV: 3.40 MUSD Project IRR: 7.56 % - Project VIR=PI=PIR: 1.14 + Project VIR=PI=PIR: 1.06 Project MOIC: 0.61 Project Payback Period: 12.74 yr Estimated Jobs Created: 41 diff --git a/tests/examples/example_PTC.out b/tests/examples/example_PTC.out index ccbdc3a4..0ff8ede5 100644 --- a/tests/examples/example_PTC.out +++ b/tests/examples/example_PTC.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.4.34 - Simulation Date: 2024-06-19 - Simulation Time: 07:43 - Calculation Time: 0.593 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:07 + Calculation Time: 0.797 sec ***SUMMARY OF RESULTS*** @@ -27,9 +27,9 @@ Simulation Metadata Accrued financing during construction: 0.00 Project lifetime: 30 yr Capacity factor: 90.0 % - Project NPV: 8.16 MUSD + Project NPV: 0.96 MUSD Project IRR: 7.11 % - Project VIR=PI=PIR: 1.07 + Project VIR=PI=PIR: 1.01 Project MOIC: 0.55 Project Payback Period: 10.02 yr Estimated Jobs Created: 41 diff --git a/tests/examples/example_SBT_Hi_T.out b/tests/examples/example_SBT_Hi_T.out index 30fc221c..e55504e0 100644 --- a/tests/examples/example_SBT_Hi_T.out +++ b/tests/examples/example_SBT_Hi_T.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.5.2 - Simulation Date: 2024-09-02 - Simulation Time: 13:59 - Calculation Time: 14.837 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:08 + Calculation Time: 6.257 sec ***SUMMARY OF RESULTS*** @@ -27,9 +27,9 @@ Simulation Metadata Accrued financing during construction: 0.00 Project lifetime: 30 yr Capacity factor: 90.0 % - Project NPV: 0.96 MUSD + Project NPV: -9.40 MUSD Project IRR: 6.32 % - Project VIR=PI=PIR: 1.01 + Project VIR=PI=PIR: 0.94 Project MOIC: 0.65 Project Payback Period: 13.59 yr Estimated Jobs Created: 0 diff --git a/tests/examples/example_SBT_Lo_T.out b/tests/examples/example_SBT_Lo_T.out index 1390f1bd..58a0a5fa 100644 --- a/tests/examples/example_SBT_Lo_T.out +++ b/tests/examples/example_SBT_Lo_T.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.5.2 - Simulation Date: 2024-09-02 - Simulation Time: 14:35 - Calculation Time: 45.642 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:07 + Calculation Time: 1.393 sec ***SUMMARY OF RESULTS*** @@ -27,9 +27,9 @@ Simulation Metadata Accrued financing during construction: 0.00 Project lifetime: 30 yr Capacity factor: 90.0 % - Project NPV: -47.18 MUSD + Project NPV: -46.54 MUSD Project IRR: 0.00 % - Project VIR=PI=PIR: -0.22 + Project VIR=PI=PIR: -0.21 Project MOIC: -1.00 Project Payback Period: N/A Estimated Jobs Created: 0 diff --git a/tests/examples/example_SHR-1.out b/tests/examples/example_SHR-1.out index 424e1cfc..cb428cf8 100644 --- a/tests/examples/example_SHR-1.out +++ b/tests/examples/example_SHR-1.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.4.42 - Simulation Date: 2024-07-01 - Simulation Time: 09:06 - Calculation Time: 0.622 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:08 + Calculation Time: 0.790 sec ***SUMMARY OF RESULTS*** @@ -29,9 +29,9 @@ Simulation Metadata Accrued financing during construction: 0.00 Project lifetime: 30 yr Capacity factor: 90.0 % - Project NPV: 27.21 MUSD + Project NPV: 5.52 MUSD Project IRR: 7.21 % - Project VIR=PI=PIR: 1.11 + Project VIR=PI=PIR: 1.02 Project MOIC: 1.29 Project Payback Period: 13.38 yr Estimated Jobs Created: 66 diff --git a/tests/examples/example_SHR-2.out b/tests/examples/example_SHR-2.out index 562cad61..6cfa3b2d 100644 --- a/tests/examples/example_SHR-2.out +++ b/tests/examples/example_SHR-2.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.4.42 - Simulation Date: 2024-07-11 - Simulation Time: 09:48 - Calculation Time: 0.409 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:08 + Calculation Time: 0.528 sec ***SUMMARY OF RESULTS*** @@ -29,9 +29,9 @@ Simulation Metadata Accrued financing during construction: 0.00 Project lifetime: 20 yr Capacity factor: 95.0 % - Project NPV: 385.10 MUSD + Project NPV: 334.92 MUSD Project IRR: 15.06 % - Project VIR=PI=PIR: 1.92 + Project VIR=PI=PIR: 1.80 Project MOIC: 2.00 Project Payback Period: 7.61 yr Estimated Jobs Created: 221 diff --git a/tests/examples/example_multiple_gradients-2.out b/tests/examples/example_multiple_gradients-2.out index f73cb7de..d36ab3bb 100644 --- a/tests/examples/example_multiple_gradients-2.out +++ b/tests/examples/example_multiple_gradients-2.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.4.34 - Simulation Date: 2024-06-19 - Simulation Time: 07:44 - Calculation Time: 0.596 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:08 + Calculation Time: 0.793 sec ***SUMMARY OF RESULTS*** @@ -34,9 +34,9 @@ Simulation Metadata Accrued financing during construction: 0.00 Project lifetime: 30 yr Capacity factor: 90.0 % - Project NPV: -54.68 MUSD + Project NPV: -56.19 MUSD Project IRR: -3.25 % - Project VIR=PI=PIR: 0.28 + Project VIR=PI=PIR: 0.26 Project MOIC: -0.23 Project Payback Period: N/A Estimated Jobs Created: 17 diff --git a/tests/examples/example_multiple_gradients.out b/tests/examples/example_multiple_gradients.out index f73cb7de..41f023d6 100644 --- a/tests/examples/example_multiple_gradients.out +++ b/tests/examples/example_multiple_gradients.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.4.34 - Simulation Date: 2024-06-19 - Simulation Time: 07:44 - Calculation Time: 0.596 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:08 + Calculation Time: 0.808 sec ***SUMMARY OF RESULTS*** @@ -34,9 +34,9 @@ Simulation Metadata Accrued financing during construction: 0.00 Project lifetime: 30 yr Capacity factor: 90.0 % - Project NPV: -54.68 MUSD + Project NPV: -56.19 MUSD Project IRR: -3.25 % - Project VIR=PI=PIR: 0.28 + Project VIR=PI=PIR: 0.26 Project MOIC: -0.23 Project Payback Period: N/A Estimated Jobs Created: 17 diff --git a/tests/examples/example_overpressure.out b/tests/examples/example_overpressure.out index a1eee6dc..d81e9464 100644 --- a/tests/examples/example_overpressure.out +++ b/tests/examples/example_overpressure.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.4.34 - Simulation Date: 2024-06-19 - Simulation Time: 07:44 - Calculation Time: 0.591 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:07 + Calculation Time: 0.779 sec ***SUMMARY OF RESULTS*** @@ -28,9 +28,9 @@ Simulation Metadata Accrued financing during construction: 0.00 Project lifetime: 30 yr Capacity factor: 90.0 % - Project NPV: 1.27 MUSD + Project NPV: -2.88 MUSD Project IRR: 6.47 % - Project VIR=PI=PIR: 1.03 + Project VIR=PI=PIR: 0.94 Project MOIC: 0.78 Project Payback Period: 14.60 yr Estimated Jobs Created: 13 diff --git a/tests/examples/example_overpressure2.out b/tests/examples/example_overpressure2.out index 698c8ee7..2d56bd56 100644 --- a/tests/examples/example_overpressure2.out +++ b/tests/examples/example_overpressure2.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.4.34 - Simulation Date: 2024-06-19 - Simulation Time: 07:44 - Calculation Time: 0.592 sec + GEOPHIRES Version: 3.6.0 + Simulation Date: 2024-10-15 + Simulation Time: 13:08 + Calculation Time: 0.797 sec ***SUMMARY OF RESULTS*** @@ -28,9 +28,9 @@ Simulation Metadata Accrued financing during construction: 0.00 Project lifetime: 30 yr Capacity factor: 90.0 % - Project NPV: 2.89 MUSD + Project NPV: -1.42 MUSD Project IRR: 6.74 % - Project VIR=PI=PIR: 1.06 + Project VIR=PI=PIR: 0.97 Project MOIC: 0.83 Project Payback Period: 14.38 yr Estimated Jobs Created: 13