Skip to content

Commit f9e854e

Browse files
include singh et al. params in doc
1 parent 7e3c639 commit f9e854e

File tree

3 files changed

+45
-10
lines changed

3 files changed

+45
-10
lines changed

docs/Fervo_Project_Cape-4.md.jinja

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,12 @@ in source code for the complete results.
139139

140140
#### Production Temperature Comparison with Singh et al., 2025
141141

142-
Figure 18 of Singh et al. (2025) illustrates reservoir modeling that informed the Cape Station field implementation. The following table compares the average production temperature profile from the "700 ft bench spacing" scenario in Singh et al. (2025) with an analogous GEOPHIRES simulation using the case study’s reservoir engineering parameters.
142+
Figure 18 of Singh et al. (2025) illustrates reservoir modeling that informed the Cape Station field implementation.
143+
An equivalent GEOPHIRES simulation was run using the case study's reservoir engineering parameters, with the following modifications to match the Singh et al. (2025) scenario:
144+
145+
{{ reservoir_engineering_reference_simulation_params_table_md }}
146+
147+
The following table compares the average production temperature profile from the "700 ft bench spacing" scenario in Singh et al. (2025) with the GEOPHIRES simulation.
143148
144149
{# @formatter:off #}
145150
| Reservoir Engineering Reference Base Case Simulation | Case Study Equivalent Simulation |

src/geophires_docs/generate_fervo_project_cape_4_docs.py

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
from __future__ import annotations
22

3+
from typing import Any
4+
35
from geophires_docs import _PROJECT_ROOT
46
from geophires_docs import generate_fervo_project_cape_4_md
57
from geophires_docs.generate_fervo_project_cape_4_graphs import generate_fervo_project_cape_4_graphs
@@ -8,17 +10,18 @@
810
from geophires_x_client import GeophiresXResult
911
from geophires_x_client import ImmutableGeophiresInputParameters
1012

13+
_SINGH_ET_AL_BASE_SIMULATION_PARAMETERS: dict[str, Any] = {
14+
'Number of Production Wells': 4,
15+
'Maximum Drawdown': 1,
16+
'Plant Lifetime': 15,
17+
}
1118

1219
# fmt:off
1320
def get_singh_et_al_base_simulation_result(base_input_params: GeophiresInputParameters) \
1421
-> tuple[GeophiresInputParameters,GeophiresXResult]:
1522
singh_et_al_base_simulation_input_params = ImmutableGeophiresInputParameters(
1623
from_file_path=base_input_params.as_file_path(),
17-
params={
18-
'Number of Production Wells': 4,
19-
'Maximum Drawdown': 1,
20-
'Plant Lifetime': 15,
21-
},
24+
params=_SINGH_ET_AL_BASE_SIMULATION_PARAMETERS,
2225
)
2326
# fmt:on
2427

@@ -43,7 +46,11 @@ def generate_fervo_project_cape_4_docs():
4346
_PROJECT_ROOT / 'docs/_images'
4447
)
4548

46-
generate_fervo_project_cape_4_md.generate_fervo_project_cape_4_md(input_params,result)
49+
generate_fervo_project_cape_4_md.generate_fervo_project_cape_4_md(
50+
input_params,
51+
result,
52+
_SINGH_ET_AL_BASE_SIMULATION_PARAMETERS
53+
)
4754

4855

4956
if __name__ == '__main__':

src/geophires_docs/generate_fervo_project_cape_4_md.py

Lines changed: 26 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,7 @@ def generate_fpc4_economics_parameters_table_md(input_params: GeophiresInputPara
145145

146146

147147
def get_fpc4_category_parameters_table_md(
148-
input_params: GeophiresInputParameters, category_name: str, parameters_to_exclude: list[str] | None
148+
input_params: GeophiresInputParameters, category_name: str | None, parameters_to_exclude: list[str] | None = None
149149
) -> str:
150150
if parameters_to_exclude is None:
151151
parameters_to_exclude = []
@@ -169,7 +169,7 @@ def get_fpc4_category_parameters_table_md(
169169
continue
170170

171171
category = _get_parameter_category(param_name)
172-
if category == category_name:
172+
if category_name is None or category == category_name:
173173
param_val_comment_split = param_val_comment.split(
174174
# ',',
175175
',' if _get_parameter_schema_type(param_name) != 'array' else ', ',
@@ -372,7 +372,26 @@ def _total_fracture_surface_area_per_well_m2(result: GeophiresXResult) -> float:
372372
)
373373

374374

375-
def generate_fervo_project_cape_4_md(input_params: GeophiresInputParameters, result: GeophiresXResult) -> None:
375+
def generate_res_eng_reference_sim_params_table_md(
376+
base_case_input_params: GeophiresInputParameters, res_eng_reference_sim_params: dict[str, Any]
377+
) -> str:
378+
return get_fpc4_category_parameters_table_md(
379+
ImmutableGeophiresInputParameters(
380+
# from_file_path=base_case_input_params.as_file_path(),
381+
params=res_eng_reference_sim_params
382+
),
383+
None,
384+
)
385+
386+
387+
def generate_fervo_project_cape_4_md(
388+
input_params: GeophiresInputParameters,
389+
result: GeophiresXResult,
390+
res_eng_reference_sim_params: dict[str, Any] | None = None,
391+
) -> None:
392+
if res_eng_reference_sim_params is None:
393+
res_eng_reference_sim_params = {}
394+
376395
# noinspection PyDictCreation
377396
template_values = {**get_fpc4_input_parameter_values(input_params, result), **get_result_values(result)}
378397

@@ -381,6 +400,10 @@ def generate_fervo_project_cape_4_md(input_params: GeophiresInputParameters, res
381400
template_values['well_bores_parameters_table_md'] = generate_fpc4_well_bores_parameters_table_md(input_params)
382401
template_values['economics_parameters_table_md'] = generate_fpc4_economics_parameters_table_md(input_params)
383402

403+
template_values['reservoir_engineering_reference_simulation_params_table_md'] = (
404+
generate_res_eng_reference_sim_params_table_md(input_params, res_eng_reference_sim_params)
405+
)
406+
384407
docs_dir = _PROJECT_ROOT / 'docs'
385408

386409
# Set up Jinja environment

0 commit comments

Comments
 (0)