Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 19 additions & 1 deletion src/geophires_x/Economics.py
Original file line number Diff line number Diff line change
Expand Up @@ -2516,6 +2516,20 @@ def __init__(self, model: Model):
PreferredUnits=CurrencyUnit.MDOLLARS,
CurrentUnits=CurrencyUnit.MDOLLARS
)
self.cost_per_vertical_production_well = self.OutputParameterDict[self.cost_per_vertical_production_well.Name] = OutputParameter(
Name="Drilling and completion costs per vertical production well",
UnitType=Units.CURRENCY,
PreferredUnits=CurrencyUnit.MDOLLARS,
CurrentUnits=CurrencyUnit.MDOLLARS,
# TODO tooltip - includes indirect costs
)
self.cost_per_vertical_injection_well = self.OutputParameterDict[self.cost_per_vertical_injection_well.Name] = OutputParameter(
Name="Drilling and completion costs per vertical injection well",
UnitType=Units.CURRENCY,
PreferredUnits=CurrencyUnit.MDOLLARS,
CurrentUnits=CurrencyUnit.MDOLLARS,
# TODO tooltip - includes indirect costs
)
self.cost_to_junction_section = self.OutputParameterDict[self.cost_to_junction_section.Name] = OutputParameter(
Name="Cost of the entire section of a well from bottom of vertical to junction with laterals",
UnitType=Units.CURRENCY,
Expand Down Expand Up @@ -4090,7 +4104,11 @@ def _calculate_derived_outputs(self, model: Model) -> None:
self.cost_per_lateral_section.value = (
self.cost_lateral_section.quantity().to(self.cost_per_lateral_section.CurrentUnits).magnitude
/ model.wellbores.numnonverticalsections.value
)
) * self._wellfield_indirect_cost_factor
self.cost_per_vertical_production_well.value = self.cost_one_production_well.quantity().to(
self.cost_per_vertical_production_well.CurrentUnits).magnitude * self._wellfield_indirect_cost_factor
self.cost_per_vertical_injection_well.value = self.cost_one_injection_well.quantity().to(
self.cost_per_vertical_injection_well.CurrentUnits).magnitude * self._wellfield_indirect_cost_factor

if hasattr(self, 'discountrate'):
self.real_discount_rate.value = self.discountrate.quantity().to(convertible_unit(
Expand Down
12 changes: 9 additions & 3 deletions src/geophires_x/Outputs.py
Original file line number Diff line number Diff line change
Expand Up @@ -486,9 +486,15 @@ def PrintOutputs(self, model: Model):
f.write(f' {model.economics.Cwell.display_name}: {model.economics.Cwell.value:10.2f} {model.economics.Cwell.CurrentUnits.value}\n')

if 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}\n')
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}\n')
f.write(f' {econ.cost_per_lateral_section.Name}: {econ.cost_per_lateral_section.value:10.2f} {econ.cost_lateral_section.CurrentUnits.value}\n')
f.write(f' {econ.cost_per_vertical_production_well.display_name}: '
f'{econ.cost_per_vertical_production_well.value:10.2f} '
f'{econ.cost_per_vertical_production_well.CurrentUnits.value}\n')
f.write(f' {econ.cost_per_vertical_injection_well.display_name}: '
f'{econ.cost_per_vertical_injection_well.value:10.2f} '
f'{econ.cost_per_vertical_injection_well.CurrentUnits.value}\n')
f.write(f' {econ.cost_per_lateral_section.display_name}: '
f'{econ.cost_per_lateral_section.value:10.2f} '
f'{econ.cost_lateral_section.CurrentUnits.value}\n')
elif round(econ.cost_one_production_well.value, 4) != round(econ.cost_one_injection_well.value, 4) \
and model.economics.cost_one_injection_well.value != -1:
f.write(f' {econ.cost_one_production_well.display_name}: {econ.cost_one_production_well.value:10.2f} {econ.cost_one_production_well.CurrentUnits.value}\n')
Expand Down
17 changes: 8 additions & 9 deletions tests/examples/Fervo_Norbeck_Latimer_2023.out
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@

Simulation Metadata
----------------------
GEOPHIRES Version: 3.9.47
Simulation Date: 2025-07-31
Simulation Time: 08:57
Calculation Time: 0.475 sec
GEOPHIRES Version: 3.16.2
Simulation Date: 2026-09-10
Simulation Time: 08:32
Calculation Time: 0.527 sec

***SUMMARY OF RESULTS***

Expand Down Expand Up @@ -95,15 +95,15 @@ Simulation Metadata

***CAPITAL COSTS (M$)***

Exploration costs: 3.62 MUSD
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 section: 1.80 MUSD
Drilling and completion costs per vertical production well: 3.17 MUSD
Drilling and completion costs per vertical injection well: 3.17 MUSD
Drilling and completion costs per non-vertical section: 1.89 MUSD
Stimulation costs: 1.51 MUSD
Surface power plant costs: 11.34 MUSD
Field gathering system costs: 1.52 MUSD
Total surface equipment costs: 12.85 MUSD
Exploration costs: 3.62 MUSD
Total capital costs: 28.12 MUSD


Expand All @@ -116,7 +116,6 @@ Simulation Metadata


***SURFACE EQUIPMENT SIMULATION RESULTS***

Initial geofluid availability: 0.15 MW/(kg/s)
Maximum Total Electricity Generation: 2.97 MW
Average Total Electricity Generation: 2.90 MW
Expand Down
14 changes: 7 additions & 7 deletions tests/examples/Fervo_Project_Red-2026.out
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@

Simulation Metadata
----------------------
GEOPHIRES Version: 3.13.3
Simulation Date: 2026-04-23
Simulation Time: 09:27
Calculation Time: 1.039 sec
GEOPHIRES Version: 3.16.2
Simulation Date: 2026-09-10
Simulation Time: 08:32
Calculation Time: 1.030 sec

***SUMMARY OF RESULTS***

Expand Down Expand Up @@ -102,9 +102,9 @@ Simulation Metadata

Exploration costs: 3.62 MUSD
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 section: 1.80 MUSD
Drilling and completion costs per vertical production well: 3.17 MUSD
Drilling and completion costs per vertical injection well: 3.17 MUSD
Drilling and completion costs per non-vertical section: 1.89 MUSD
Stimulation costs: 1.51 MUSD
Surface power plant costs: 10.49 MUSD
Field gathering system costs: 1.61 MUSD
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@

Simulation Metadata
----------------------
GEOPHIRES Version: 3.9.7
Simulation Date: 2025-05-15
Simulation Time: 09:22
Calculation Time: 1.580 sec
GEOPHIRES Version: 3.16.2
Simulation Date: 2026-09-10
Simulation Time: 08:32
Calculation Time: 1.798 sec

***SUMMARY OF RESULTS***

Expand All @@ -24,7 +24,7 @@ Simulation Metadata
***ECONOMIC PARAMETERS***

Economic Model = BICYCLE
Accrued financing during construction: 0.00 %
Accrued financing during construction: 0.00 %
Project lifetime: 40 yr
Capacity factor: 90.0 %
Project NPV: -74.72 MUSD
Expand Down Expand Up @@ -74,15 +74,15 @@ The AGS models contain an intrinsic reservoir model that doesn't expose values t

***CAPITAL COSTS (M$)***

Exploration costs: 7.74 MUSD
Drilling and completion costs: 53.82 MUSD
Drilling and completion costs per vertical production well: 8.35 MUSD
Drilling and completion costs per vertical injection well: 8.35 MUSD
Drilling and completion costs per non-vertical section: 11.52 MUSD
Drilling and completion costs per vertical production well: 8.76 MUSD
Drilling and completion costs per vertical injection well: 8.76 MUSD
Drilling and completion costs per non-vertical section: 12.10 MUSD
Stimulation costs: 0.00 MUSD
Surface power plant costs: 6.74 MUSD
Field gathering system costs: 0.99 MUSD
Total surface equipment costs: 7.72 MUSD
Exploration costs: 7.74 MUSD
Total capital costs: 69.27 MUSD


Expand All @@ -95,7 +95,6 @@ The AGS models contain an intrinsic reservoir model that doesn't expose values t


***SURFACE EQUIPMENT SIMULATION RESULTS***

Initial geofluid availability: 0.06 MW/(kg/s)
Maximum Total Electricity Generation: 1.67 MW
Average Total Electricity Generation: 1.11 MW
Expand Down
14 changes: 7 additions & 7 deletions tests/examples/example_SAM-single-owner-PPA-3.out
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@

Simulation Metadata
----------------------
GEOPHIRES Version: 3.12.1
Simulation Date: 2026-04-05
Simulation Time: 07:35
Calculation Time: 1.219 sec
GEOPHIRES Version: 3.16.2
Simulation Date: 2026-09-10
Simulation Time: 08:32
Calculation Time: 1.225 sec

***SUMMARY OF RESULTS***

Expand Down Expand Up @@ -100,9 +100,9 @@ Simulation Metadata

Exploration costs: 3.89 MUSD
Drilling and completion costs: 49.18 MUSD
Drilling and completion costs per vertical production well: 3.37 MUSD
Drilling and completion costs per vertical injection well: 3.37 MUSD
Drilling and completion costs per non-vertical section: 2.14 MUSD
Drilling and completion costs per vertical production well: 3.54 MUSD
Drilling and completion costs per vertical injection well: 3.54 MUSD
Drilling and completion costs per non-vertical section: 2.24 MUSD
Stimulation costs: 9.06 MUSD
Surface power plant costs: 144.44 MUSD
Field gathering system costs: 5.80 MUSD
Expand Down
14 changes: 7 additions & 7 deletions tests/examples/example_SAM-single-owner-PPA-4.out
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@

Simulation Metadata
----------------------
GEOPHIRES Version: 3.12.1
Simulation Date: 2026-04-01
Simulation Time: 09:30
Calculation Time: 1.226 sec
GEOPHIRES Version: 3.16.2
Simulation Date: 2026-09-10
Simulation Time: 08:32
Calculation Time: 1.244 sec

***SUMMARY OF RESULTS***

Expand Down Expand Up @@ -101,9 +101,9 @@ Simulation Metadata

Exploration costs: 3.89 MUSD
Drilling and completion costs: 49.18 MUSD
Drilling and completion costs per vertical production well: 3.37 MUSD
Drilling and completion costs per vertical injection well: 3.37 MUSD
Drilling and completion costs per non-vertical section: 2.14 MUSD
Drilling and completion costs per vertical production well: 3.54 MUSD
Drilling and completion costs per vertical injection well: 3.54 MUSD
Drilling and completion costs per non-vertical section: 2.24 MUSD
Stimulation costs: 9.06 MUSD
Surface power plant costs: 144.44 MUSD
Field gathering system costs: 8.50 MUSD
Expand Down
14 changes: 7 additions & 7 deletions tests/examples/example_SAM-single-owner-PPA-4b.out
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@

Simulation Metadata
----------------------
GEOPHIRES Version: 3.12.1
Simulation Date: 2026-04-01
Simulation Time: 09:30
Calculation Time: 1.299 sec
GEOPHIRES Version: 3.16.2
Simulation Date: 2026-09-10
Simulation Time: 08:32
Calculation Time: 1.221 sec

***SUMMARY OF RESULTS***

Expand Down Expand Up @@ -101,9 +101,9 @@ Simulation Metadata

Exploration costs: 3.89 MUSD
Drilling and completion costs: 49.18 MUSD
Drilling and completion costs per vertical production well: 3.37 MUSD
Drilling and completion costs per vertical injection well: 3.37 MUSD
Drilling and completion costs per non-vertical section: 2.14 MUSD
Drilling and completion costs per vertical production well: 3.54 MUSD
Drilling and completion costs per vertical injection well: 3.54 MUSD
Drilling and completion costs per non-vertical section: 2.24 MUSD
Stimulation costs: 9.06 MUSD
Surface power plant costs: 144.44 MUSD
Field gathering system costs: 8.50 MUSD
Expand Down
14 changes: 7 additions & 7 deletions tests/examples/example_SAM-single-owner-PPA.out
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@

Simulation Metadata
----------------------
GEOPHIRES Version: 3.16.1
Simulation Date: 2026-09-07
Simulation Time: 07:06
Calculation Time: 1.235 sec
GEOPHIRES Version: 3.16.2
Simulation Date: 2026-09-10
Simulation Time: 08:32
Calculation Time: 1.208 sec

***SUMMARY OF RESULTS***

Expand Down Expand Up @@ -101,9 +101,9 @@ Simulation Metadata

Exploration costs: 3.89 MUSD
Drilling and completion costs: 69.36 MUSD
Drilling and completion costs per vertical production well: 3.37 MUSD
Drilling and completion costs per vertical injection well: 3.37 MUSD
Drilling and completion costs per non-vertical section: 2.14 MUSD
Drilling and completion costs per vertical production well: 3.54 MUSD
Drilling and completion costs per vertical injection well: 3.54 MUSD
Drilling and completion costs per non-vertical section: 2.24 MUSD
Stimulation costs: 9.06 MUSD
Surface power plant costs: 144.44 MUSD
Field gathering system costs: 8.50 MUSD
Expand Down
17 changes: 8 additions & 9 deletions tests/examples/example_SBT_Hi_T.out
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@

Simulation Metadata
----------------------
GEOPHIRES Version: 3.11.13
Simulation Date: 2026-02-22
Simulation Time: 08:35
Calculation Time: 5.304 sec
GEOPHIRES Version: 3.16.2
Simulation Date: 2026-09-10
Simulation Time: 08:32
Calculation Time: 7.044 sec

***SUMMARY OF RESULTS***

Expand Down Expand Up @@ -74,15 +74,15 @@ The AGS models contain an intrinsic reservoir model that doesn't expose values t

***CAPITAL COSTS (M$)***

Exploration costs: 0.00 MUSD
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 section: 7.71 MUSD
Drilling and completion costs per vertical production well: 6.50 MUSD
Drilling and completion costs per vertical injection well: 6.50 MUSD
Drilling and completion costs per non-vertical section: 8.09 MUSD
Stimulation costs: 0.00 MUSD
Surface power plant costs: 52.73 MUSD
Field gathering system costs: 0.97 MUSD
Total surface equipment costs: 53.69 MUSD
Exploration costs: 0.00 MUSD
Total capital costs: 158.56 MUSD


Expand All @@ -95,7 +95,6 @@ The AGS models contain an intrinsic reservoir model that doesn't expose values t


***SURFACE EQUIPMENT SIMULATION RESULTS***

Initial geofluid availability: 0.46 MW/(kg/s)
Maximum Total Electricity Generation: 17.58 MW
Average Total Electricity Generation: 9.73 MW
Expand Down
17 changes: 8 additions & 9 deletions tests/examples/example_SBT_Lo_T.out
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@

Simulation Metadata
----------------------
GEOPHIRES Version: 3.11.13
Simulation Date: 2026-02-22
Simulation Time: 08:35
Calculation Time: 1.298 sec
GEOPHIRES Version: 3.16.2
Simulation Date: 2026-09-10
Simulation Time: 08:32
Calculation Time: 1.334 sec

***SUMMARY OF RESULTS***

Expand Down Expand Up @@ -74,15 +74,15 @@ The AGS models contain an intrinsic reservoir model that doesn't expose values t

***CAPITAL COSTS (M$)***

Exploration costs: 0.00 MUSD
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 section: 15.51 MUSD
Drilling and completion costs per vertical production well: 3.44 MUSD
Drilling and completion costs per vertical injection well: 3.44 MUSD
Drilling and completion costs per non-vertical section: 16.29 MUSD
Stimulation costs: 0.00 MUSD
Surface power plant costs: 0.03 MUSD
Field gathering system costs: 0.97 MUSD
Total surface equipment costs: 1.00 MUSD
Exploration costs: 0.00 MUSD
Total capital costs: 38.57 MUSD


Expand All @@ -95,7 +95,6 @@ The AGS models contain an intrinsic reservoir model that doesn't expose values t


***SURFACE EQUIPMENT SIMULATION RESULTS***

Initial geofluid availability: 0.02 MW/(kg/s)
Maximum Total Electricity Generation: 0.00 MW
Average Total Electricity Generation: 0.00 MW
Expand Down
Loading
Loading