Skip to content

Commit 59157c7

Browse files
improve explanation for omitting per-well stimulation cost calculations where doing so could affect legacy parameterizations
1 parent 90586c5 commit 59157c7

1 file changed

Lines changed: 8 additions & 4 deletions

File tree

src/geophires_x/Economics.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3083,8 +3083,12 @@ def calculate_stimulation_costs(self, model: Model) -> PlainQuantity:
30833083
if self.ccstimfixed.Valid:
30843084
stimulation_costs_cstim_u = self.ccstimfixed.quantity().to(self.Cstim.CurrentUnits).magnitude
30853085

3086-
# Ideally we'd infer per-well costs per the below logic, but the requisite assumptions don't necessarily
3087-
# cleanly map to legacy parameterizations...
3086+
# Ideally we'd infer per-well costs per the below logic, but this doesn't necessarily
3087+
# cleanly map to legacy parameterizations that may have implicitly assumed that stimulation costs include
3088+
# both production and injection wells, even though the default behavior is and always has been only
3089+
# injection wells are stimulated. Production wells are only assumed to be stimulated when
3090+
# Reservoir Stimulation Capital Cost per Production Well is provided, which was added in v3.9.32.
3091+
30883092
# num_stimulated_wells = model.wellbores.ninj.value
30893093
# if production_wells_stimulated:
30903094
# num_stimulated_wells += model.wellbores.nprod.value
@@ -3140,8 +3144,8 @@ def _total_cost_per_well(direct_cost_per_well) -> float:
31403144
else:
31413145
pass # Leave cstim_per_well value = None
31423146
else:
3143-
# Ideally we'd infer per-well costs per the above logic, but the requisite assumptions don't necessarily
3144-
# cleanly map to legacy parameterizations...
3147+
# Ideally we'd infer per-well costs per the above logic; see relevant comment above re: legacy
3148+
# parameterizations.
31453149
pass
31463150

31473151
return ret

0 commit comments

Comments
 (0)