diff --git a/.bumpversion.cfg b/.bumpversion.cfg index 2add8640..5e85f5fa 100644 --- a/.bumpversion.cfg +++ b/.bumpversion.cfg @@ -1,5 +1,5 @@ [bumpversion] -current_version = 3.6.7 +current_version = 3.7.0 commit = True tag = True diff --git a/.cookiecutterrc b/.cookiecutterrc index e6891dc4..659adb46 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.7 + version: 3.7.0 version_manager: "bump2version" website: "https://github.com/NREL" year_from: "2023" diff --git a/CHANGELOG.rst b/CHANGELOG.rst index ac3550da..f0c3b4e6 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -2,9 +2,17 @@ Changelog ========= -GEOPHIRES-X (2023-2024) +GEOPHIRES-X (2023-2025) ------------------------ +3.7 +^^^ + +`release `__ | `diff `__ + +"Well depth (or total length, if not vertical)" output field renamed to "Well depth" per https://github.com/NREL/GEOPHIRES-X/issues/321 + + 3.6 ^^^ diff --git a/README.rst b/README.rst index f2b86c52..693f17d8 100644 --- a/README.rst +++ b/README.rst @@ -56,9 +56,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.7.svg +.. |commits-since| image:: https://img.shields.io/github/commits-since/softwareengineerprogrammer/GEOPHIRES-X/v3.7.0.svg :alt: Commits since latest release - :target: https://github.com/softwareengineerprogrammer/GEOPHIRES-X/compare/v3.6.7...main + :target: https://github.com/softwareengineerprogrammer/GEOPHIRES-X/compare/v3.7.0...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 9efdfdbe..9fd7d385 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.7' +version = release = '3.7.0' pygments_style = 'trac' templates_path = ['./templates'] diff --git a/setup.py b/setup.py index efd76749..8d089863 100755 --- a/setup.py +++ b/setup.py @@ -13,7 +13,7 @@ def read(*names, **kwargs): setup( name='geophires-x', - version='3.6.7', + version='3.7.0', license='MIT', description='GEOPHIRES is a free and open-source geothermal techno-economic simulator.', long_description='{}\n{}'.format( diff --git a/src/geophires_x/Outputs.py b/src/geophires_x/Outputs.py index ca9e6a89..75fa7156 100644 --- a/src/geophires_x/Outputs.py +++ b/src/geophires_x/Outputs.py @@ -638,6 +638,8 @@ class Outputs: This class handles all the outputs for the GEOPHIRESv3 model. """ + VERTICAL_WELL_DEPTH_OUTPUT_NAME = 'Well depth' + def __init__(self, model:Model, output_file:str ='HDR.out'): model.logger.info(f'Init {__class__!s}: {__name__}') self.ParameterDict = {} @@ -860,7 +862,7 @@ def PrintOutputs(self, model: Model): summary.append(OutputTableItem('Number of injection wells', '{0:10.0f}'.format(model.wellbores.ninj.value))) summary.append(OutputTableItem('Flowrate per production well', '{0:10.1f}'.format(model.wellbores.prodwellflowrate.value), model.wellbores.prodwellflowrate.CurrentUnits.value)) - summary.append(OutputTableItem('Well depth (or total length, if not vertical)', + summary.append(OutputTableItem(Outputs.VERTICAL_WELL_DEPTH_OUTPUT_NAME, '{0:10.1f}'.format(model.reserv.depth.value), model.reserv.depth.CurrentUnits.value)) @@ -926,7 +928,7 @@ def PrintOutputs(self, model: Model): engineering_parameters.append(OutputTableItem('Number of Production Wells', '{0:10.0f}'.format(model.wellbores.nprod.value))) engineering_parameters.append(OutputTableItem('Number of Injection Wells', '{0:10.0f}'.format(model.wellbores.ninj.value))) - engineering_parameters.append(OutputTableItem('Well depth (or total length, if not vertical)', + engineering_parameters.append(OutputTableItem(Outputs.VERTICAL_WELL_DEPTH_OUTPUT_NAME, '{0:10.1f}'.format(model.reserv.depth.value), model.reserv.depth.CurrentUnits.value)) engineering_parameters.append(OutputTableItem('Water loss rate', '{0:10.1f}'.format(model.reserv.waterloss.value * 100), @@ -1613,7 +1615,7 @@ def PrintOutputs(self, model: Model): f.write(f' Number of production wells: {model.wellbores.nprod.value:10.0f}'+NL) f.write(f' Number of injection wells: {model.wellbores.ninj.value:10.0f}'+NL) f.write(f' Flowrate per production well: {model.wellbores.prodwellflowrate.value:10.1f} ' + model.wellbores.prodwellflowrate.CurrentUnits.value + NL) - f.write(f' Well depth (or total length, if not vertical): {model.reserv.depth.value:10.1f} ' +model.reserv.depth.CurrentUnits.value + NL) + f.write(f' {Outputs._field_label(Outputs.VERTICAL_WELL_DEPTH_OUTPUT_NAME, 49)}{model.reserv.depth.value:10.1f} ' + model.reserv.depth.CurrentUnits.value + NL) if model.reserv.numseg.value == 1: f.write(f' Geothermal gradient: {model.reserv.gradient.value[0]:10.4g} ' + model.reserv.gradient.CurrentUnits.value + NL) @@ -1669,7 +1671,7 @@ def PrintOutputs(self, model: Model): f.write(NL) f.write(f' Number of Production Wells: {model.wellbores.nprod.value:10.0f}' + NL) f.write(f' Number of Injection Wells: {model.wellbores.ninj.value:10.0f}' + NL) - f.write(f' Well depth (or total length, if not vertical): {model.reserv.depth.value:10.1f} ' + model.reserv.depth.CurrentUnits.value + NL) + f.write(f' {Outputs._field_label(Outputs.VERTICAL_WELL_DEPTH_OUTPUT_NAME, 49)}{model.reserv.depth.value:10.1f} ' + model.reserv.depth.CurrentUnits.value + NL) f.write(f' Water loss rate: {model.reserv.waterloss.value*100:10.1f} ' + model.reserv.waterloss.CurrentUnits.value + NL) f.write(f' Pump efficiency: {model.surfaceplant.pump_efficiency.value:10.1f} ' + model.surfaceplant.pump_efficiency.CurrentUnits.value + NL) f.write(f' Injection temperature: {model.wellbores.Tinj.value:10.1f} ' + model.wellbores.Tinj.CurrentUnits.value + NL) @@ -1809,7 +1811,7 @@ def PrintOutputs(self, model: Model): elif econ.cost_lateral_section.value > 0.0: f.write(f' Drilling and completion costs per vertical production well: {econ.cost_one_production_well.value:10.2f} ' + econ.cost_one_production_well.CurrentUnits.value + NL) f.write(f' Drilling and completion costs per vertical injection well: {econ.cost_one_injection_well.value:10.2f} ' + econ.cost_one_injection_well.CurrentUnits.value + NL) - f.write(f' Drilling and completion costs per non-vertical sections: {econ.cost_lateral_section.value:10.2f} ' + econ.cost_lateral_section.CurrentUnits.value + NL) + f.write(f' Drilling and completion costs per non-vertical section: {econ.cost_lateral_section.value:10.2f} ' + econ.cost_lateral_section.CurrentUnits.value + NL) else: f.write(f' Drilling and completion costs per well: {model.economics.Cwell.value/(model.wellbores.nprod.value+model.wellbores.ninj.value):10.2f} ' + model.economics.Cwell.CurrentUnits.value + NL) f.write(f' Stimulation costs: {model.economics.Cstim.value:10.2f} ' + model.economics.Cstim.CurrentUnits.value + NL) @@ -1822,7 +1824,7 @@ def PrintOutputs(self, model: Model): f.write(f' of which Peaking Boiler Cost: {model.economics.peakingboilercost.value:10.2f} ' + model.economics.peakingboilercost.CurrentUnits.value + NL) f.write(f' Field gathering system costs: {model.economics.Cgath.value:10.2f} ' + model.economics.Cgath.CurrentUnits.value + NL) if model.surfaceplant.piping_length.value > 0: - f.write(f' Transmission pipeline cost {model.economics.Cpiping.value:10.2f} ' + model.economics.Cpiping.CurrentUnits.value + NL) + f.write(f' Transmission pipeline cost: {model.economics.Cpiping.value:10.2f} ' + model.economics.Cpiping.CurrentUnits.value + NL) if model.surfaceplant.plant_type.value == PlantType.DISTRICT_HEATING: f.write(f' District Heating System Cost: {model.economics.dhdistrictcost.value:10.2f} ' + model.economics.dhdistrictcost.CurrentUnits.value + NL) f.write(f' Total surface equipment costs: {(model.economics.Cplant.value+model.economics.Cgath.value):10.2f} ' + model.economics.Cplant.CurrentUnits.value + NL) @@ -2163,3 +2165,7 @@ def o(output_param: OutputParameter): model.logger.info(f'Complete {__class__!s}: {sys._getframe().f_code.co_name}') + + @staticmethod + def _field_label(field_name:str, print_width_before_value: int) -> str: + return f'{field_name}:{" " * (print_width_before_value - len(field_name) - 1)}' diff --git a/src/geophires_x/SUTRAOutputs.py b/src/geophires_x/SUTRAOutputs.py index ef7113e6..58a047c1 100644 --- a/src/geophires_x/SUTRAOutputs.py +++ b/src/geophires_x/SUTRAOutputs.py @@ -97,7 +97,7 @@ def PrintOutputs(self, model: Model): f.write(NL) f.write(f" Number of Production Wells: {model.wellbores.nprod.value:10.0f}" + NL) f.write(f" Number of Injection Wells: {model.wellbores.ninj.value:10.0f}" + NL) - f.write(f" Well Depth: {model.reserv.depth.value:10.1f} " + model.reserv.depth.CurrentUnits.value + NL) + f.write(f" Well depth: {model.reserv.depth.value:10.1f} " + model.reserv.depth.CurrentUnits.value + NL) pump_efficiency_display_unit = model.surfaceplant.pump_efficiency.CurrentUnits.value pump_efficiency_display = f'{model.surfaceplant.pump_efficiency.value:10.1f} {pump_efficiency_display_unit}' diff --git a/src/geophires_x/SurfacePlant.py b/src/geophires_x/SurfacePlant.py index 3c0de46f..a6514c22 100644 --- a/src/geophires_x/SurfacePlant.py +++ b/src/geophires_x/SurfacePlant.py @@ -340,7 +340,7 @@ def __init__(self, model: Model): UnitType=Units.LENGTH, PreferredUnits=LengthUnit.KILOMETERS, CurrentUnits=LengthUnit.KILOMETERS, - ErrMessage="assume default piping length (5km)" + ErrMessage="assume default piping length (0km)" ) self.plant_outlet_pressure = self.ParameterDict[self.plant_outlet_pressure.Name] = floatParameter( "Plant Outlet Pressure", diff --git a/src/geophires_x/SurfacePlantDoubleFlash.py b/src/geophires_x/SurfacePlantDoubleFlash.py index b3b2f531..238067d5 100644 --- a/src/geophires_x/SurfacePlantDoubleFlash.py +++ b/src/geophires_x/SurfacePlantDoubleFlash.py @@ -118,7 +118,7 @@ def Calculate(self, model: Model) -> None: model.wellbores.Tinj.value, ReinjTemp, self.T_chp_bottom.value, self.enduse_efficiency_factor.value, self.chp_fraction.value) - # subtract pumping power for net electricity and calculate first law efficiency + # subtract pumping power for net electricity and calculate first law efficiency self.NetElectricityProduced.value = self.ElectricityProduced.value - model.wellbores.PumpingPower.value self.FirstLawEfficiency.value = self.NetElectricityProduced.value/HeatExtractedTowardsElectricity diff --git a/src/geophires_x/__init__.py b/src/geophires_x/__init__.py index 02e4ad00..8c3336cc 100644 --- a/src/geophires_x/__init__.py +++ b/src/geophires_x/__init__.py @@ -1 +1 @@ -__version__ = '3.6.7' +__version__ = '3.7.0' diff --git a/src/geophires_x_client/geophires_x_result.py b/src/geophires_x_client/geophires_x_result.py index ab6a7b76..b6457de3 100644 --- a/src/geophires_x_client/geophires_x_result.py +++ b/src/geophires_x_client/geophires_x_result.py @@ -43,7 +43,7 @@ class GeophiresXResult: 'Number of injection wells', 'Flowrate per production well', 'Well depth', - 'Well depth (or total length, if not vertical)', + 'Well depth (or total length, if not vertical)', # deprecated 'Geothermal gradient', 'Segment 1 Geothermal gradient', 'Segment 1 Thickness', @@ -101,7 +101,8 @@ class GeophiresXResult: 'ENGINEERING PARAMETERS': [ 'Number of Production Wells', 'Number of Injection Wells', - 'Well depth (or total length, if not vertical)', + 'Well depth', + 'Well depth (or total length, if not vertical)', # deprecated 'Water loss rate', # % 'Pump efficiency', # % 'Injection temperature', @@ -195,18 +196,23 @@ class GeophiresXResult: 'Drilling and completion costs per injection well', 'Drilling and completion costs per vertical production well', 'Drilling and completion costs per vertical injection well', - 'Drilling and completion costs per non - vertical sections', + 'Drilling and completion costs per non-vertical section', + 'Drilling and completion costs (for redrilling)', + 'Drilling and completion costs per redrilled well', 'Stimulation costs', + 'Stimulation costs (for redrilling)', 'Surface power plant costs', 'of which Absorption Chiller Cost', 'of which Heat Pump Cost', 'of which Peaking Boiler Cost', + 'Transmission pipeline cost', 'District Heating System Cost', 'Field gathering system costs', 'Total surface equipment costs', 'Exploration costs', 'Investment Tax Credit', 'Total capital costs', + 'Annualized capital costs', # AGS/CLGS 'Total CAPEX', 'Drilling Cost', diff --git a/tests/example1_addons.csv b/tests/example1_addons.csv index d5c3f7ba..84e0b1e1 100644 --- a/tests/example1_addons.csv +++ b/tests/example1_addons.csv @@ -5,7 +5,7 @@ SUMMARY OF RESULTS,Electricity breakeven price,,1.74,cents/kWh SUMMARY OF RESULTS,Number of production wells,,2,count SUMMARY OF RESULTS,Number of injection wells,,2,count SUMMARY OF RESULTS,Flowrate per production well,,55.0,kg/sec -SUMMARY OF RESULTS,"Well depth (or total length\, if not vertical)",,3.0,kilometer +SUMMARY OF RESULTS,Well depth,,3.0,kilometer SUMMARY OF RESULTS,Geothermal gradient,,50,degC/km SUMMARY OF RESULTS,Total Avoided Carbon Emissions,,472.02,kilotonne ECONOMIC PARAMETERS,Economic Model,,Fixed Charge Rate (FCR), @@ -35,7 +35,7 @@ EXTENDED ECONOMICS,Total Add-on Profit,,2.84,MUSD/yr EXTENDED ECONOMICS,AddOns Payback Period,,0.0,yr ENGINEERING PARAMETERS,Number of Production Wells,,2,count ENGINEERING PARAMETERS,Number of Injection Wells,,2,count -ENGINEERING PARAMETERS,"Well depth (or total length\, if not vertical)",,3.0,kilometer +ENGINEERING PARAMETERS,Well depth,,3.0,kilometer ENGINEERING PARAMETERS,Water loss rate,,2.0, ENGINEERING PARAMETERS,Pump efficiency,,80.0,% ENGINEERING PARAMETERS,Injection temperature,,50.0,degC @@ -80,6 +80,7 @@ CAPITAL COSTS (M$),Field gathering system costs,,2.3,MUSD CAPITAL COSTS (M$),Total surface equipment costs,,23.1,MUSD CAPITAL COSTS (M$),Exploration costs,,5.33,MUSD CAPITAL COSTS (M$),Total capital costs,,31.07,MUSD +CAPITAL COSTS (M$),Annualized capital costs,,1.55,MUSD OPERATING AND MAINTENANCE COSTS (M$/yr),Wellfield maintenance costs,,0.44,MUSD/yr OPERATING AND MAINTENANCE COSTS (M$/yr),Power plant maintenance costs,,0.9,MUSD/yr OPERATING AND MAINTENANCE COSTS (M$/yr),Water costs,,0.06,MUSD/yr @@ -97,7 +98,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.6.3, +Simulation Metadata,GEOPHIRES Version,,3.7.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/Fervo_Norbeck_Latimer_2023.out b/tests/examples/Fervo_Norbeck_Latimer_2023.out index 2fb56c8a..76d5d0a5 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.6.6 - Simulation Date: 2024-11-21 - Simulation Time: 10:38 - Calculation Time: 0.439 sec + GEOPHIRES Version: 3.7.0 + Simulation Date: 2025-01-20 + Simulation Time: 10:49 + Calculation Time: 0.454 sec ***SUMMARY OF RESULTS*** @@ -17,7 +17,7 @@ Simulation Metadata Number of production wells: 1 Number of injection wells: 1 Flowrate per production well: 41.0 kg/sec - Well depth (or total length, if not vertical): 2.3 kilometer + Well depth: 2.3 kilometer Geothermal gradient: 74 degC/km @@ -38,7 +38,7 @@ Simulation Metadata Number of Production Wells: 1 Number of Injection Wells: 1 - Well depth (or total length, if not vertical): 2.3 kilometer + Well depth: 2.3 kilometer Water loss rate: 10.0 Pump efficiency: 80.0 % Injection temperature: 41.0 degC @@ -97,7 +97,7 @@ Simulation Metadata Drilling and completion costs: 10.13 MUSD Drilling and completion costs per vertical production well: 3.02 MUSD Drilling and completion costs per vertical injection well: 3.02 MUSD - Drilling and completion costs per non-vertical sections: 3.61 MUSD + Drilling and completion costs per non-vertical section: 3.61 MUSD Stimulation costs: 1.51 MUSD Surface power plant costs: 11.34 MUSD Field gathering system costs: 1.52 MUSD diff --git a/tests/examples/Fervo_Project_Cape-2.out b/tests/examples/Fervo_Project_Cape-2.out index 528773cf..9583bd75 100644 --- a/tests/examples/Fervo_Project_Cape-2.out +++ b/tests/examples/Fervo_Project_Cape-2.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.6.3 - Simulation Date: 2024-11-18 - Simulation Time: 16:56 - Calculation Time: 2.730 sec + GEOPHIRES Version: 3.7.0 + Simulation Date: 2025-01-20 + Simulation Time: 10:49 + Calculation Time: 0.685 sec ***SUMMARY OF RESULTS*** @@ -17,7 +17,7 @@ Simulation Metadata Number of production wells: 1 Number of injection wells: 2 Flowrate per production well: 93.0 kg/sec - Well depth (or total length, if not vertical): 2.6 kilometer + Well depth: 2.6 kilometer Geothermal gradient: 74 degC/km @@ -38,7 +38,7 @@ Simulation Metadata Number of Production Wells: 1 Number of Injection Wells: 2 - Well depth (or total length, if not vertical): 2.6 kilometer + Well depth: 2.6 kilometer Water loss rate: 2.0 Pump efficiency: 80.0 % Injection temperature: 56.7 degC diff --git a/tests/examples/Fervo_Project_Cape-3.out b/tests/examples/Fervo_Project_Cape-3.out index eb58b4a6..10f6cf54 100644 --- a/tests/examples/Fervo_Project_Cape-3.out +++ b/tests/examples/Fervo_Project_Cape-3.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.6.4 - Simulation Date: 2024-11-18 - Simulation Time: 19:49 - Calculation Time: 3.484 sec + GEOPHIRES Version: 3.7.0 + Simulation Date: 2025-01-20 + Simulation Time: 10:49 + Calculation Time: 0.915 sec ***SUMMARY OF RESULTS*** @@ -17,7 +17,7 @@ Simulation Metadata Number of production wells: 39 Number of injection wells: 39 Flowrate per production well: 120.0 kg/sec - Well depth (or total length, if not vertical): 2.6 kilometer + Well depth: 2.6 kilometer Geothermal gradient: 74 degC/km @@ -38,7 +38,7 @@ Simulation Metadata Number of Production Wells: 39 Number of Injection Wells: 39 - Well depth (or total length, if not vertical): 2.6 kilometer + Well depth: 2.6 kilometer Water loss rate: 5.0 Pump efficiency: 80.0 % Injection temperature: 56.7 degC diff --git a/tests/examples/Fervo_Project_Cape.out b/tests/examples/Fervo_Project_Cape.out index af367b1c..6c422551 100644 --- a/tests/examples/Fervo_Project_Cape.out +++ b/tests/examples/Fervo_Project_Cape.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.6.3 - Simulation Date: 2024-11-18 - Simulation Time: 16:54 - Calculation Time: 3.061 sec + GEOPHIRES Version: 3.7.0 + Simulation Date: 2025-01-20 + Simulation Time: 10:49 + Calculation Time: 0.688 sec ***SUMMARY OF RESULTS*** @@ -17,7 +17,7 @@ Simulation Metadata Number of production wells: 12 Number of injection wells: 12 Flowrate per production well: 98.0 kg/sec - Well depth (or total length, if not vertical): 2.6 kilometer + Well depth: 2.6 kilometer Geothermal gradient: 73 degC/km @@ -38,7 +38,7 @@ Simulation Metadata Number of Production Wells: 12 Number of Injection Wells: 12 - Well depth (or total length, if not vertical): 2.6 kilometer + Well depth: 2.6 kilometer Water loss rate: 2.0 Pump efficiency: 80.0 % Injection temperature: 56.2 degC diff --git a/tests/examples/S-DAC-GT.out b/tests/examples/S-DAC-GT.out index d556ff7f..d44e454a 100644 --- a/tests/examples/S-DAC-GT.out +++ b/tests/examples/S-DAC-GT.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.6.3 - Simulation Date: 2024-11-11 - Simulation Time: 15:20 - Calculation Time: 0.406 sec + GEOPHIRES Version: 3.7.0 + Simulation Date: 2025-01-20 + Simulation Time: 10:49 + Calculation Time: 0.106 sec ***SUMMARY OF RESULTS*** @@ -19,7 +19,7 @@ Simulation Metadata Number of production wells: 3 Number of injection wells: 3 Flowrate per production well: 70.0 kg/sec - Well depth (or total length, if not vertical): 3.1 kilometer + Well depth: 3.1 kilometer Geothermal gradient: 70 degC/km @@ -40,7 +40,7 @@ Simulation Metadata Number of Production Wells: 3 Number of Injection Wells: 3 - Well depth (or total length, if not vertical): 3.1 kilometer + Well depth: 3.1 kilometer Water loss rate: 2.0 Pump efficiency: 80.0 % Injection temperature: 70.0 degC 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 b4d452a8..a0a12121 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.6.3 - Simulation Date: 2024-11-11 - Simulation Time: 15:24 - Calculation Time: 6.425 sec + GEOPHIRES Version: 3.7.0 + Simulation Date: 2025-01-20 + Simulation Time: 10:49 + Calculation Time: 1.659 sec ***SUMMARY OF RESULTS*** @@ -17,7 +17,7 @@ Simulation Metadata Number of production wells: 1 Number of injection wells: 1 Flowrate per production well: 110.0 kg/sec - Well depth (or total length, if not vertical): 4.0 kilometer + Well depth: 4.0 kilometer Geothermal gradient: 26.25 degC/km @@ -38,7 +38,7 @@ Simulation Metadata Number of Production Wells: 1 Number of Injection Wells: 1 - Well depth (or total length, if not vertical): 4.0 kilometer + Well depth: 4.0 kilometer Water loss rate: 0.0 Pump efficiency: 80.0 % Injection temperature: 60.0 degC @@ -77,7 +77,7 @@ The AGS models contain an intrinsic reservoir model that doesn't expose values t Drilling and completion costs: 65.80 MUSD Drilling and completion costs per vertical production well: 10.24 MUSD Drilling and completion costs per vertical injection well: 10.24 MUSD - Drilling and completion costs per non-vertical sections: 42.18 MUSD + Drilling and completion costs per non-vertical section: 42.18 MUSD Stimulation costs: 0.00 MUSD Surface power plant costs: 6.74 MUSD Field gathering system costs: 0.99 MUSD diff --git a/tests/examples/example1.out b/tests/examples/example1.out index 276e0de5..f37c0087 100644 --- a/tests/examples/example1.out +++ b/tests/examples/example1.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.6.3 - Simulation Date: 2024-11-11 - Simulation Time: 14:48 - Calculation Time: 3.450 sec + GEOPHIRES Version: 3.7.0 + Simulation Date: 2025-01-20 + Simulation Time: 10:48 + Calculation Time: 1.049 sec ***SUMMARY OF RESULTS*** @@ -17,7 +17,7 @@ Simulation Metadata Number of production wells: 2 Number of injection wells: 2 Flowrate per production well: 55.0 kg/sec - Well depth (or total length, if not vertical): 3.0 kilometer + Well depth: 3.0 kilometer Geothermal gradient: 50 degC/km @@ -39,7 +39,7 @@ Simulation Metadata Number of Production Wells: 2 Number of Injection Wells: 2 - Well depth (or total length, if not vertical): 3.0 kilometer + Well depth: 3.0 kilometer Water loss rate: 2.0 Pump efficiency: 80.0 % Injection temperature: 50.0 degC diff --git a/tests/examples/example10_HP.out b/tests/examples/example10_HP.out index 067e2606..cf5e652e 100644 --- a/tests/examples/example10_HP.out +++ b/tests/examples/example10_HP.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.6.3 - Simulation Date: 2024-11-11 - Simulation Time: 15:04 - Calculation Time: 0.421 sec + GEOPHIRES Version: 3.6.7 + Simulation Date: 2025-01-14 + Simulation Time: 08:40 + Calculation Time: 0.104 sec ***SUMMARY OF RESULTS*** @@ -18,7 +18,7 @@ Simulation Metadata Number of production wells: 2 Number of injection wells: 2 Flowrate per production well: 70.0 kg/sec - Well depth (or total length, if not vertical): 2.1 kilometer + Well depth: 2.1 kilometer Geothermal gradient: 45 degC/km @@ -39,7 +39,7 @@ Simulation Metadata Number of Production Wells: 2 Number of Injection Wells: 2 - Well depth (or total length, if not vertical): 2.1 kilometer + Well depth: 2.1 kilometer Water loss rate: 2.0 Pump efficiency: 80.0 % Injection temperature: 83.0 degC diff --git a/tests/examples/example11_AC.out b/tests/examples/example11_AC.out index bbc9ec4e..4969ad6c 100644 --- a/tests/examples/example11_AC.out +++ b/tests/examples/example11_AC.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.6.3 - Simulation Date: 2024-11-11 - Simulation Time: 15:06 - Calculation Time: 0.430 sec + GEOPHIRES Version: 3.6.7 + Simulation Date: 2025-01-14 + Simulation Time: 08:40 + Calculation Time: 0.103 sec ***SUMMARY OF RESULTS*** @@ -19,7 +19,7 @@ Simulation Metadata Number of production wells: 2 Number of injection wells: 2 Flowrate per production well: 50.0 kg/sec - Well depth (or total length, if not vertical): 2.1 kilometer + Well depth: 2.1 kilometer Geothermal gradient: 45 degC/km @@ -40,7 +40,7 @@ Simulation Metadata Number of Production Wells: 2 Number of Injection Wells: 2 - Well depth (or total length, if not vertical): 2.1 kilometer + Well depth: 2.1 kilometer Water loss rate: 2.0 Pump efficiency: 80.0 % Injection temperature: 83.0 degC diff --git a/tests/examples/example12_DH.out b/tests/examples/example12_DH.out index 55ace5e1..dd752b19 100644 --- a/tests/examples/example12_DH.out +++ b/tests/examples/example12_DH.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.6.3 - Simulation Date: 2024-11-11 - Simulation Time: 15:07 - Calculation Time: 2.426 sec + GEOPHIRES Version: 3.6.7 + Simulation Date: 2025-01-14 + Simulation Time: 08:40 + Calculation Time: 0.581 sec ***SUMMARY OF RESULTS*** @@ -21,7 +21,7 @@ Simulation Metadata Number of production wells: 2 Number of injection wells: 2 Flowrate per production well: 50.0 kg/sec - Well depth (or total length, if not vertical): 3.5 kilometer + Well depth: 3.5 kilometer Geothermal gradient: 23.4 degC/km @@ -42,7 +42,7 @@ Simulation Metadata Number of Production Wells: 2 Number of Injection Wells: 2 - Well depth (or total length, if not vertical): 3.5 kilometer + Well depth: 3.5 kilometer Water loss rate: 0.0 Pump efficiency: 80.0 % Injection temperature: 50.0 degC diff --git a/tests/examples/example13.out b/tests/examples/example13.out index b632f144..d24ccc51 100644 --- a/tests/examples/example13.out +++ b/tests/examples/example13.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.6.3 - Simulation Date: 2024-11-11 - Simulation Time: 15:07 - Calculation Time: 0.143 sec + GEOPHIRES Version: 3.7.0 + Simulation Date: 2025-01-20 + Simulation Time: 10:48 + Calculation Time: 0.036 sec ***SUMMARY OF RESULTS*** @@ -19,7 +19,7 @@ Simulation Metadata Number of production wells: 2 Number of injection wells: 2 Flowrate per production well: 50.0 kg/sec - Well depth (or total length, if not vertical): 4.0 kilometer + Well depth: 4.0 kilometer Geothermal gradient: 50 degC/km @@ -41,7 +41,7 @@ Simulation Metadata Number of Production Wells: 2 Number of Injection Wells: 2 - Well depth (or total length, if not vertical): 4.0 kilometer + Well depth: 4.0 kilometer Water loss rate: 0.0 Pump efficiency: 80.0 % Injection temperature: 50.0 degC diff --git a/tests/examples/example1_addons.out b/tests/examples/example1_addons.out index d122ddb5..c896258f 100644 --- a/tests/examples/example1_addons.out +++ b/tests/examples/example1_addons.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.6.3 - Simulation Date: 2024-11-11 - Simulation Time: 15:09 - Calculation Time: 3.281 sec + GEOPHIRES Version: 3.7.0 + Simulation Date: 2025-01-20 + Simulation Time: 10:48 + Calculation Time: 0.825 sec ***SUMMARY OF RESULTS*** @@ -17,7 +17,7 @@ Simulation Metadata Number of production wells: 2 Number of injection wells: 2 Flowrate per production well: 55.0 kg/sec - Well depth (or total length, if not vertical): 3.0 kilometer + Well depth: 3.0 kilometer Geothermal gradient: 50 degC/km Total Avoided Carbon Emissions: 472.02 kilotonne @@ -40,7 +40,7 @@ Simulation Metadata Number of Production Wells: 2 Number of Injection Wells: 2 - Well depth (or total length, if not vertical): 3.0 kilometer + Well depth: 3.0 kilometer Water loss rate: 2.0 Pump efficiency: 80.0 % Injection temperature: 50.0 degC diff --git a/tests/examples/example1_outputunits.out b/tests/examples/example1_outputunits.out index 122c009f..a86a04f6 100644 --- a/tests/examples/example1_outputunits.out +++ b/tests/examples/example1_outputunits.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.6.3 - Simulation Date: 2024-11-11 - Simulation Time: 15:10 - Calculation Time: 3.381 sec + GEOPHIRES Version: 3.7.0 + Simulation Date: 2025-01-20 + Simulation Time: 10:48 + Calculation Time: 0.820 sec ***SUMMARY OF RESULTS*** @@ -17,7 +17,7 @@ Simulation Metadata Number of production wells: 2 Number of injection wells: 2 Flowrate per production well: 55.0 kg/sec - Well depth (or total length, if not vertical): 3.0 kilometer + Well depth: 3.0 kilometer Geothermal gradient: 50 degC/km @@ -39,7 +39,7 @@ Simulation Metadata Number of Production Wells: 2 Number of Injection Wells: 2 - Well depth (or total length, if not vertical): 3.0 kilometer + Well depth: 3.0 kilometer Water loss rate: 2.0 Pump efficiency: 80.0 % Injection temperature: 50.0 degC diff --git a/tests/examples/example2.out b/tests/examples/example2.out index d567b07e..ac59c9ec 100644 --- a/tests/examples/example2.out +++ b/tests/examples/example2.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.6.3 - Simulation Date: 2024-11-11 - Simulation Time: 15:11 - Calculation Time: 0.788 sec + GEOPHIRES Version: 3.6.7 + Simulation Date: 2025-01-14 + Simulation Time: 08:40 + Calculation Time: 0.218 sec ***SUMMARY OF RESULTS*** @@ -17,7 +17,7 @@ Simulation Metadata Number of production wells: 2 Number of injection wells: 2 Flowrate per production well: 30.0 kg/sec - Well depth (or total length, if not vertical): 3.0 kilometer + Well depth: 3.0 kilometer Geothermal gradient: 55 degC/km @@ -38,7 +38,7 @@ Simulation Metadata Number of Production Wells: 2 Number of Injection Wells: 2 - Well depth (or total length, if not vertical): 3.0 kilometer + Well depth: 3.0 kilometer Water loss rate: 0.0 Pump efficiency: 80.0 % Injection temperature: 70.0 degC diff --git a/tests/examples/example3.out b/tests/examples/example3.out index fa26b5e8..f2f42175 100644 --- a/tests/examples/example3.out +++ b/tests/examples/example3.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.6.3 - Simulation Date: 2024-11-11 - Simulation Time: 15:11 - Calculation Time: 0.455 sec + GEOPHIRES Version: 3.7.0 + Simulation Date: 2025-01-20 + Simulation Time: 10:48 + Calculation Time: 0.120 sec ***SUMMARY OF RESULTS*** @@ -19,7 +19,7 @@ Simulation Metadata Number of production wells: 3 Number of injection wells: 3 Flowrate per production well: 70.0 kg/sec - Well depth (or total length, if not vertical): 3.1 kilometer + Well depth: 3.1 kilometer Geothermal gradient: 70 degC/km @@ -40,7 +40,7 @@ Simulation Metadata Number of Production Wells: 3 Number of Injection Wells: 3 - Well depth (or total length, if not vertical): 3.1 kilometer + Well depth: 3.1 kilometer Water loss rate: 2.0 Pump efficiency: 80.0 % Injection temperature: 73.0 degC diff --git a/tests/examples/example4.out b/tests/examples/example4.out index ed0180ca..9549f34a 100644 --- a/tests/examples/example4.out +++ b/tests/examples/example4.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.6.3 - Simulation Date: 2024-11-11 - Simulation Time: 15:12 - Calculation Time: 0.192 sec + GEOPHIRES Version: 3.7.0 + Simulation Date: 2025-01-20 + Simulation Time: 10:48 + Calculation Time: 0.049 sec ***SUMMARY OF RESULTS*** @@ -17,7 +17,7 @@ Simulation Metadata Number of production wells: 3 Number of injection wells: 2 Flowrate per production well: 110.0 kg/sec - Well depth (or total length, if not vertical): 2.0 kilometer + Well depth: 2.0 kilometer Geothermal gradient: 65 degC/km @@ -38,7 +38,7 @@ Simulation Metadata Number of Production Wells: 3 Number of Injection Wells: 2 - Well depth (or total length, if not vertical): 2.0 kilometer + Well depth: 2.0 kilometer Water loss rate: 0.0 Pump efficiency: 80.0 % Injection temperature: 70.0 degC diff --git a/tests/examples/example5.out b/tests/examples/example5.out index 225bca6a..65b8632a 100644 --- a/tests/examples/example5.out +++ b/tests/examples/example5.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.6.3 - Simulation Date: 2024-11-11 - Simulation Time: 15:12 - Calculation Time: 0.192 sec + GEOPHIRES Version: 3.6.7 + Simulation Date: 2025-01-14 + Simulation Time: 08:40 + Calculation Time: 0.050 sec ***SUMMARY OF RESULTS*** @@ -17,7 +17,7 @@ Simulation Metadata Number of production wells: 2 Number of injection wells: 2 Flowrate per production well: 50.0 kg/sec - Well depth (or total length, if not vertical): 3.0 kilometer + Well depth: 3.0 kilometer Geothermal gradient: 45 degC/km @@ -37,7 +37,7 @@ Simulation Metadata Number of Production Wells: 2 Number of Injection Wells: 2 - Well depth (or total length, if not vertical): 3.0 kilometer + Well depth: 3.0 kilometer Water loss rate: 2.0 Pump efficiency: 80.0 % Injection temperature: 80.0 degC diff --git a/tests/examples/example8.out b/tests/examples/example8.out index 1be0f2f3..067fef74 100644 --- a/tests/examples/example8.out +++ b/tests/examples/example8.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.6.3 - Simulation Date: 2024-11-11 - Simulation Time: 15:13 - Calculation Time: 3.040 sec + GEOPHIRES Version: 3.6.7 + Simulation Date: 2025-01-14 + Simulation Time: 08:40 + Calculation Time: 0.805 sec ***SUMMARY OF RESULTS*** @@ -17,7 +17,7 @@ Simulation Metadata Number of production wells: 1 Number of injection wells: 1 Flowrate per production well: 40.0 kg/sec - Well depth (or total length, if not vertical): 2.8 kilometer + Well depth: 2.8 kilometer Geothermal gradient: 28 degC/km @@ -38,7 +38,7 @@ Simulation Metadata Number of Production Wells: 1 Number of Injection Wells: 1 - Well depth (or total length, if not vertical): 2.8 kilometer + Well depth: 2.8 kilometer Water loss rate: 2.0 Pump efficiency: 80.0 % Injection temperature: 30.0 degC diff --git a/tests/examples/example9.out b/tests/examples/example9.out index dc85f773..b661655a 100644 --- a/tests/examples/example9.out +++ b/tests/examples/example9.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.6.3 - Simulation Date: 2024-11-11 - Simulation Time: 15:13 - Calculation Time: 3.033 sec + GEOPHIRES Version: 3.7.0 + Simulation Date: 2025-01-20 + Simulation Time: 10:50 + Calculation Time: 0.818 sec ***SUMMARY OF RESULTS*** @@ -17,7 +17,7 @@ Simulation Metadata Number of production wells: 1 Number of injection wells: 1 Flowrate per production well: 40.0 kg/sec - Well depth (or total length, if not vertical): 3.8 kilometer + Well depth: 3.8 kilometer Geothermal gradient: 28 degC/km @@ -39,7 +39,7 @@ Simulation Metadata Number of Production Wells: 1 Number of Injection Wells: 1 - Well depth (or total length, if not vertical): 3.8 kilometer + Well depth: 3.8 kilometer Water loss rate: 2.0 Pump efficiency: 80.0 % Injection temperature: 60.0 degC diff --git a/tests/examples/example_ITC.out b/tests/examples/example_ITC.out index 6a16d907..7b322142 100644 --- a/tests/examples/example_ITC.out +++ b/tests/examples/example_ITC.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.6.3 - Simulation Date: 2024-11-11 - Simulation Time: 15:14 - Calculation Time: 3.140 sec + GEOPHIRES Version: 3.7.0 + Simulation Date: 2025-01-20 + Simulation Time: 10:49 + Calculation Time: 0.819 sec ***SUMMARY OF RESULTS*** @@ -17,7 +17,7 @@ Simulation Metadata Number of production wells: 2 Number of injection wells: 2 Flowrate per production well: 55.0 kg/sec - Well depth (or total length, if not vertical): 5.0 kilometer + Well depth: 5.0 kilometer Geothermal gradient: 55 degC/km @@ -38,7 +38,7 @@ Simulation Metadata Number of Production Wells: 2 Number of Injection Wells: 2 - Well depth (or total length, if not vertical): 5.0 kilometer + Well depth: 5.0 kilometer Water loss rate: 2.0 Pump efficiency: 80.0 % Injection temperature: 50.0 degC diff --git a/tests/examples/example_PTC.out b/tests/examples/example_PTC.out index 339a11e3..a5313423 100644 --- a/tests/examples/example_PTC.out +++ b/tests/examples/example_PTC.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.6.3 - Simulation Date: 2024-11-11 - Simulation Time: 15:16 - Calculation Time: 3.056 sec + GEOPHIRES Version: 3.7.0 + Simulation Date: 2025-01-20 + Simulation Time: 10:48 + Calculation Time: 0.817 sec ***SUMMARY OF RESULTS*** @@ -17,7 +17,7 @@ Simulation Metadata Number of production wells: 2 Number of injection wells: 2 Flowrate per production well: 55.0 kg/sec - Well depth (or total length, if not vertical): 5.0 kilometer + Well depth: 5.0 kilometer Geothermal gradient: 55 degC/km @@ -38,7 +38,7 @@ Simulation Metadata Number of Production Wells: 2 Number of Injection Wells: 2 - Well depth (or total length, if not vertical): 5.0 kilometer + Well depth: 5.0 kilometer Water loss rate: 2.0 Pump efficiency: 80.0 % Injection temperature: 50.0 degC diff --git a/tests/examples/example_SBT_Hi_T.out b/tests/examples/example_SBT_Hi_T.out index 0bed5a59..46b0c205 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.6.3 - Simulation Date: 2024-11-11 - Simulation Time: 16:24 - Calculation Time: 16.016 sec + GEOPHIRES Version: 3.7.0 + Simulation Date: 2025-01-20 + Simulation Time: 10:49 + Calculation Time: 50.962 sec ***SUMMARY OF RESULTS*** @@ -17,7 +17,7 @@ Simulation Metadata Number of production wells: 1 Number of injection wells: 1 Flowrate per production well: 80.0 kg/sec - Well depth (or total length, if not vertical): 5.8 kilometer + Well depth: 5.8 kilometer Geothermal gradient: 60 degC/km @@ -38,7 +38,7 @@ Simulation Metadata Number of Production Wells: 1 Number of Injection Wells: 1 - Well depth (or total length, if not vertical): 5.8 kilometer + Well depth: 5.8 kilometer Water loss rate: 0.0 Pump efficiency: 75.0 % Injection temperature: 56.9 degC @@ -77,7 +77,7 @@ The AGS models contain an intrinsic reservoir model that doesn't expose values t Drilling and completion costs: 104.87 MUSD Drilling and completion costs per vertical production well: 6.19 MUSD Drilling and completion costs per vertical injection well: 6.19 MUSD - Drilling and completion costs per non-vertical sections: 92.48 MUSD + Drilling and completion costs per non-vertical section: 92.48 MUSD Stimulation costs: 0.00 MUSD Surface power plant costs: 52.76 MUSD Field gathering system costs: 0.97 MUSD diff --git a/tests/examples/example_SBT_Lo_T.out b/tests/examples/example_SBT_Lo_T.out index c593feec..1e92ccf9 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.6.3 - Simulation Date: 2024-11-11 - Simulation Time: 16:24 - Calculation Time: 4.189 sec + GEOPHIRES Version: 3.7.0 + Simulation Date: 2025-01-20 + Simulation Time: 10:48 + Calculation Time: 24.020 sec ***SUMMARY OF RESULTS*** @@ -17,7 +17,7 @@ Simulation Metadata Number of production wells: 1 Number of injection wells: 1 Flowrate per production well: 6.0 kg/sec - Well depth (or total length, if not vertical): 2.5 kilometer + Well depth: 2.5 kilometer Geothermal gradient: 31.25 degC/km @@ -38,7 +38,7 @@ Simulation Metadata Number of Production Wells: 1 Number of Injection Wells: 1 - Well depth (or total length, if not vertical): 2.5 kilometer + Well depth: 2.5 kilometer Water loss rate: 0.0 Pump efficiency: 75.0 % Injection temperature: 24.0 degC @@ -77,7 +77,7 @@ The AGS models contain an intrinsic reservoir model that doesn't expose values t Drilling and completion costs: 37.58 MUSD Drilling and completion costs per vertical production well: 3.28 MUSD Drilling and completion costs per vertical injection well: 3.28 MUSD - Drilling and completion costs per non-vertical sections: 31.02 MUSD + Drilling and completion costs per non-vertical section: 31.02 MUSD Stimulation costs: 0.00 MUSD Surface power plant costs: 0.03 MUSD Field gathering system costs: 0.97 MUSD diff --git a/tests/examples/example_SHR-1.out b/tests/examples/example_SHR-1.out index c2886e86..e7df3d78 100644 --- a/tests/examples/example_SHR-1.out +++ b/tests/examples/example_SHR-1.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.6.3 - Simulation Date: 2024-11-11 - Simulation Time: 15:18 - Calculation Time: 3.005 sec + GEOPHIRES Version: 3.7.0 + Simulation Date: 2025-01-20 + Simulation Time: 10:49 + Calculation Time: 0.820 sec ***SUMMARY OF RESULTS*** @@ -17,7 +17,7 @@ Simulation Metadata Number of production wells: 2 Number of injection wells: 2 Flowrate per production well: 55.0 kg/sec - Well depth (or total length, if not vertical): 7.5 kilometer + Well depth: 7.5 kilometer Geothermal gradient: 50 degC/km Total Avoided Carbon Emissions: 3087.50 kilotonne @@ -40,7 +40,7 @@ Simulation Metadata Number of Production Wells: 2 Number of Injection Wells: 2 - Well depth (or total length, if not vertical): 7.5 kilometer + Well depth: 7.5 kilometer Water loss rate: 2.0 Pump efficiency: 80.0 % Injection temperature: 50.0 degC diff --git a/tests/examples/example_SHR-2.out b/tests/examples/example_SHR-2.out index ff1a8732..d896bf58 100644 --- a/tests/examples/example_SHR-2.out +++ b/tests/examples/example_SHR-2.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.6.3 - Simulation Date: 2024-11-11 - Simulation Time: 15:19 - Calculation Time: 2.049 sec + GEOPHIRES Version: 3.7.0 + Simulation Date: 2025-01-20 + Simulation Time: 10:49 + Calculation Time: 0.551 sec ***SUMMARY OF RESULTS*** @@ -17,7 +17,7 @@ Simulation Metadata Number of production wells: 2 Number of injection wells: 1 Flowrate per production well: 60.0 kg/sec - Well depth (or total length, if not vertical): 5.0 kilometer + Well depth: 5.0 kilometer Geothermal gradient: 112 degC/km Total Avoided Carbon Emissions: 7295.77 kilotonne @@ -40,7 +40,7 @@ Simulation Metadata Number of Production Wells: 2 Number of Injection Wells: 1 - Well depth (or total length, if not vertical): 5.0 kilometer + Well depth: 5.0 kilometer Water loss rate: 2.0 Pump efficiency: 80.0 % Injection temperature: 50.0 degC diff --git a/tests/examples/example_multiple_gradients-2.out b/tests/examples/example_multiple_gradients-2.out index c5f8fe8f..9ee8e9c6 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.6.3 - Simulation Date: 2024-11-11 - Simulation Time: 15:15 - Calculation Time: 3.092 sec + GEOPHIRES Version: 3.7.0 + Simulation Date: 2025-01-20 + Simulation Time: 10:50 + Calculation Time: 0.824 sec ***SUMMARY OF RESULTS*** @@ -17,7 +17,7 @@ Simulation Metadata Number of production wells: 2 Number of injection wells: 2 Flowrate per production well: 60.0 kg/sec - Well depth (or total length, if not vertical): 4.0 kilometer + Well depth: 4.0 kilometer Segment 1 Geothermal gradient: 50 degC/km Segment 1 Thickness: 1 kilometer Segment 2 Geothermal gradient: 40 degC/km @@ -45,7 +45,7 @@ Simulation Metadata Number of Production Wells: 2 Number of Injection Wells: 2 - Well depth (or total length, if not vertical): 4.0 kilometer + Well depth: 4.0 kilometer Water loss rate: 2.0 Pump efficiency: 80.0 % Injection temperature: 50.0 degC diff --git a/tests/examples/example_multiple_gradients.out b/tests/examples/example_multiple_gradients.out index f9fc3fa8..e46f09cd 100644 --- a/tests/examples/example_multiple_gradients.out +++ b/tests/examples/example_multiple_gradients.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.6.3 - Simulation Date: 2024-11-11 - Simulation Time: 15:15 - Calculation Time: 3.235 sec + GEOPHIRES Version: 3.7.0 + Simulation Date: 2025-01-20 + Simulation Time: 10:49 + Calculation Time: 0.820 sec ***SUMMARY OF RESULTS*** @@ -17,7 +17,7 @@ Simulation Metadata Number of production wells: 2 Number of injection wells: 2 Flowrate per production well: 60.0 kg/sec - Well depth (or total length, if not vertical): 4.0 kilometer + Well depth: 4.0 kilometer Segment 1 Geothermal gradient: 50 degC/km Segment 1 Thickness: 1 kilometer Segment 2 Geothermal gradient: 40 degC/km @@ -45,7 +45,7 @@ Simulation Metadata Number of Production Wells: 2 Number of Injection Wells: 2 - Well depth (or total length, if not vertical): 4.0 kilometer + Well depth: 4.0 kilometer Water loss rate: 2.0 Pump efficiency: 80.0 % Injection temperature: 50.0 degC diff --git a/tests/examples/example_overpressure.out b/tests/examples/example_overpressure.out index ddf3a8a6..d5ba3f63 100644 --- a/tests/examples/example_overpressure.out +++ b/tests/examples/example_overpressure.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.6.3 - Simulation Date: 2024-11-11 - Simulation Time: 15:16 - Calculation Time: 3.088 sec + GEOPHIRES Version: 3.7.0 + Simulation Date: 2025-01-20 + Simulation Time: 10:48 + Calculation Time: 0.857 sec ***SUMMARY OF RESULTS*** @@ -17,7 +17,7 @@ Simulation Metadata Number of production wells: 2 Number of injection wells: 2 Flowrate per production well: 70.0 kg/sec - Well depth (or total length, if not vertical): 3.0 kilometer + Well depth: 3.0 kilometer Geothermal gradient: 47 degC/km @@ -39,7 +39,7 @@ Simulation Metadata Number of Production Wells: 2 Number of Injection Wells: 2 - Well depth (or total length, if not vertical): 3.0 kilometer + Well depth: 3.0 kilometer Water loss rate: 2.0 Pump efficiency: 80.0 % Injection temperature: 50.0 degC diff --git a/tests/examples/example_overpressure2.out b/tests/examples/example_overpressure2.out index 720ee95a..f2425b5a 100644 --- a/tests/examples/example_overpressure2.out +++ b/tests/examples/example_overpressure2.out @@ -4,10 +4,10 @@ Simulation Metadata ---------------------- - GEOPHIRES Version: 3.6.3 - Simulation Date: 2024-11-11 - Simulation Time: 15:16 - Calculation Time: 3.037 sec + GEOPHIRES Version: 3.7.0 + Simulation Date: 2025-01-20 + Simulation Time: 10:48 + Calculation Time: 0.821 sec ***SUMMARY OF RESULTS*** @@ -17,7 +17,7 @@ Simulation Metadata Number of production wells: 2 Number of injection wells: 2 Flowrate per production well: 70.0 kg/sec - Well depth (or total length, if not vertical): 3.0 kilometer + Well depth: 3.0 kilometer Geothermal gradient: 47 degC/km @@ -39,7 +39,7 @@ Simulation Metadata Number of Production Wells: 2 Number of Injection Wells: 2 - Well depth (or total length, if not vertical): 3.0 kilometer + Well depth: 3.0 kilometer Water loss rate: 2.0 Pump efficiency: 80.0 % Injection temperature: 50.0 degC diff --git a/tests/test_geophires_x.py b/tests/test_geophires_x.py index dd886b7d..75a4ae6a 100644 --- a/tests/test_geophires_x.py +++ b/tests/test_geophires_x.py @@ -583,3 +583,15 @@ def assertHasLogRecordWithMessage(logs_, message): assertHasLogRecordWithMessage( logs2, 'Set Discount Rate to 0.042 because Fixed Internal Rate was provided (4.2 percent)' ) + + def test_transmission_pipeline_cost(self): + result = GeophiresXClient().get_geophires_result( + GeophiresInputParameters( + from_file_path=self._get_test_file_path(Path('examples/Fervo_Norbeck_Latimer_2023.txt')), + params={'Surface Piping Length': 5}, + ) + ) + + self.assertAlmostEqual( + result.result['CAPITAL COSTS (M$)']['Transmission pipeline cost']['value'], 3.75, delta=0.5 + ) diff --git a/tests/test_geophires_x_client.py b/tests/test_geophires_x_client.py index 8e155a35..a5ecd6c1 100644 --- a/tests/test_geophires_x_client.py +++ b/tests/test_geophires_x_client.py @@ -392,6 +392,13 @@ def test_ccus_profile(self): ccus_profile, ) + def test_non_vertical_section_cost(self): + result_path = self._get_test_file_path('examples/Fervo_Norbeck_Latimer_2023.out') + result = GeophiresXResult(result_path) + entry = result.result['CAPITAL COSTS (M$)']['Drilling and completion costs per non-vertical section'] + self.assertIsNotNone(entry['value']) + self.assertEqual(entry['unit'], 'MUSD') + @unittest.skip( 'Not currently relevant - ' 'see TODO in geophires_x_client.geophires_input_parameters.GeophiresInputParameters.__hash__' @@ -511,3 +518,7 @@ def test_parse_chp_percent_cost_allocation(self): self.assertEqual( result.result['ECONOMIC PARAMETERS']['CHP: Percent cost allocation for electrical plant']['value'], 93.48 ) + + def test_parse_annualized_capital_costs(self): + result = GeophiresXResult(self._get_test_file_path('examples/example1_addons.out')) + self.assertIsNotNone(result.result['CAPITAL COSTS (M$)']['Annualized capital costs']['value'])