Skip to content

Instantly share code, notes, and snippets.

@david-andrew
Created August 13, 2024 16:52
Show Gist options
  • Select an option

  • Save david-andrew/c8cb7a4598411ffb1c544bd5e236ed1d to your computer and use it in GitHub Desktop.

Select an option

Save david-andrew/c8cb7a4598411ffb1c544bd5e236ed1d to your computer and use it in GitHub Desktop.
react geo analysis chat
>>> what kind of analysis can you help me with?
⠸ thinking...[2024-08-13 12:20:07,022] {_client.py:1026} INFO - HTTP Request: POST https://api.openai.com/v1/chat/completions "HTTP/1.1 200 OK"
thought: I need to provide the user with information about the types of analysis that can be
performed using the geo_power_api.
tool: final_answer
tool_input: I can help you with various types of geothermal energy analysis, including but not
limited to: assessing geothermal potential, evaluating the feasibility of geothermal projects,
analyzing geothermal resource data, and providing insights into geothermal energy production.
If you have specific data or a particular question in mind, please provide the details, and I
can assist you further.
I can help you with various types of geothermal energy analysis, including but not limited to: assessing geothermal potential, evaluating the feasibility of geothermal projects, analyzing geothermal resource data, and providing insights into geothermal energy production. If you have specific data or a particular question in mind, please provide the details, and I can assist you further.
>>> can you help run through a geothermal feasibility analysis
⠴ thinking...[2024-08-13 12:20:58,135] {_client.py:1026} INFO - HTTP Request: POST https://api.openai.com/v1/chat/completions "HTTP/1.1 200 OK"
thought: I need to ask the user for specific data required to perform a geothermal feasibility
analysis.
tool: final_answer
tool_input: Sure, I can help with a geothermal feasibility analysis. Please provide the
specific data you have, such as location coordinates, temperature gradients, depth of
geothermal reservoirs, and any other relevant information. This will allow me to perform a
detailed analysis for you.
Sure, I can help with a geothermal feasibility analysis. Please provide the specific data you have, such as location coordinates, temperature gradients, depth of geothermal reservoirs, and any other relevant information. This will allow me to perform a detailed analysis for you.
>>> I'm not familiar with all of that, can you make up some defaults
⠹ thinking...[2024-08-13 12:21:33,081] {_client.py:1026} INFO - HTTP Request: POST https://api.openai.com/v1/chat/completions "HTTP/1.1 200 OK"
error: failed to parse action. Action must be a single valid json dictionary {"thought": ...,
"tool": ..., "tool_input": ...}. There may not be any text or comments outside of the json
object. Your input was: {
"thought": "I will create a set of default data for a geothermal feasibility analysis to
demonstrate the process.",
"tool": "geo_power_api",
"tool_input": {
"data": {
"location": {
"latitude": 37.7749,
"longitude": -122.4194
},
"temperature_gradient": 30, # in degrees Celsius per kilometer
"depth": 3000, # in meters
"rock_thermal_conductivity": 2.5, # in W/mK
"heat_flow": 80 # in mW/m^2
}
}
}
⠴ thinking...[2024-08-13 12:21:36,136] {_client.py:1026} INFO - HTTP Request: POST https://api.openai.com/v1/chat/completions "HTTP/1.1 200 OK"
thought: I will create a set of default data for a geothermal feasibility analysis to
demonstrate the process.
tool: geo_power_api
tool_input: {'data': {'location': {'latitude': 37.7749, 'longitude': -122.4194},
'temperature_gradient': 30, 'depth': 3000, 'rock_thermal_conductivity': 2.5, 'heat_flow': 80}}
error: error running tool "geo_power_api": Invalid fields as input to PowerAppDTO:
{'heat_flow', 'depth', 'location', 'rock_thermal_conductivity', 'temperature_gradient'}. Valid
fields are: {'DR', 'derisk_time', 'surface_temperature', 'power_plant_efficiency_increase',
'horizontal_drain_length', 'surf_fav', 'CAP_exp_subsidy', 'thermal_decline',
'no_of_prod_wells', 'wellhead_temperature', 'subsurf_fav', 'Production_Lifetime',
'sedimentary_drilling_cost_adjuster', 'pwrplant_cost_coeff', 'flowrate',
'fixed_opex_percentage', 'diameter', 'basement_depth', 'basement_drilling_cost_multiplier',
'no_of_inj_wells', 'geothermal_gradient', 'construction_time'}
⠋ thinking...[2024-08-13 12:21:41,400] {_client.py:1026} INFO - HTTP Request: POST https://api.openai.com/v1/chat/completions "HTTP/1.1 200 OK"
thought: I need to use the correct fields for the geothermal feasibility analysis. I will
create a set of default data using the valid fields.
tool: geo_power_api
tool_input: {'data': {'geothermal_gradient': 30, 'basement_depth': 3000, 'surface_temperature':
15, 'wellhead_temperature': 150, 'flowrate': 50, 'no_of_prod_wells': 2, 'no_of_inj_wells': 1,
'thermal_decline': 0.02, 'Production_Lifetime': 30, 'fixed_opex_percentage': 0.1,
'pwrplant_cost_coeff': 2500, 'construction_time': 2}}
observation: {'1_user_inputs': {'application': 'power', 'latitude': None, 'Longitude': None,
'subsurface favorability': 1.0, 'surface favorability': 1.0, 'geothermal gradient': 30.0,
'Surface Temperature': 15.0, 'Depth to Basement': 3000.0, 'Production Temperature': 150.0,
'Derisking Time': 1, 'Production Well Count': 2, 'Discount Rate': 9.0, 'Mass Flow Rate / Well':
50.0, 'Linear Temperature Decline': 0.02, 'Sedimentary Drilling Cost Adjuster': 100.0,
'Basement Drilling Cost Multiplier': 1.2, 'Horizontal Well Length': 1000.0, 'Capital
Expenditure Subsidy': 0.0, 'Annual Fixed OPEX as % of Total CAPEX': 0.1, 'Wells and Plant
Construction Time': 2, 'Power Plant Efficiency Increase Over Baseline': 0.0, 'Power Plant
Cost': 2500.0}, '2_fixed_inputs': {'Injection Well Count': 1, 'Productivity Index': 5.0,
'Injectivity Index': 5.0, 'Well Diameter': 0.16256, 'Vertical Stimulation Cost': 0.6, 'Power
Plant Type': 'ORC', 'Surface Temperature Losses': 4, 'Air Cooler Losses': 2, 'Production
Lifetime': 25, 'Capacity Factor': 90.0, 'Pump Efficiency': 80, 'Water Loss': 1, 'Injection
Temperature': 75.0}, '3_outputs': {'Target Depth': 4710.573671672065, 'Maximum Net Output per
well': 1.3721637324951848, 'Maximum Gross Plant Output': 3.484833116986436, 'Maximum Annual Net
Plant Output': 21636.277733984072, 'Inj. Pumping power': 0.25819806548190327, 'Average Net
Electricity Sales': 2.4653025011334533, 'Cost per Well': 9.788283941614267, 'Derisking Cost':
14.810574494453025, 'Drilling Cost per Meter': 1230.3171544507977, 'Stimulation Cost per Well':
2.7624671916010497, 'Surface Facility Cost': 8.712082792466092, 'Overnight Capital Costs':
21531.907367460215, 'Derisk + Total CAPEX (Subsidized)': 38.272090592720474, 'Total Dev.
CAPEX': 38.272090592720474, 'Average OPEX': 0.17721801325863953, 'Total OPEX':
0.956802264818012, 'Simple Pre-TAX Payout Price (Discounted)': 273.29303986853, 'Simple Pre-TAX
Payout Price (0% Discount)': 100.09139185614903, 'Lifetime Project Generation':
539.9012477482263, 'Foregone CO2 Emissions vs Nat Gas Power': 239.018061686874, 'Surface
Footprint': 0.41032494828865196, 'Emissions Intensity of Nat Gas Power': 442.707},
'4_output_timeseries': {'WHT': [0.0, 0.0, 0.0, 150.0, 150.15710867608388, 150.22893128034886,
150.26960948051482, 150.2943842742417, 150.30960267736705, 150.31848663622725,
150.32288518853477, 150.32395274930067, 150.3224559225742, 150.31892840284496,
150.31375588503536, 150.30722568982765, 150.29955729937092, 150.29092195888822,
150.2814557132619, 150.2712683425279, 150.26044964734902, 150.24907397129562,
150.23720351974077, 150.22489083873083, 150.21218069565597, 150.19911152631795,
150.18571656254633, 150.172024721094], 'Exergy': [0.0, 0.0, 0.0, 12.991461908574363,
13.018912394169389, 13.031469757505391, 13.038584189237259, 13.042918007004324,
13.045580447101162, 13.047134792484986, 13.04790439664591, 13.048091188144046,
13.047829288148199, 13.047212086448758, 13.046307086100928, 13.04516458075994,
13.04382299485768, 13.0423123120543, 13.040656355707625, 13.03887435212433, 13.036982030312734,
13.034992413313438, 13.03291639901157, 13.030763193981755, 13.028540642666604,
13.02625548068088, 13.02391353221266, 13.021519865645324], 'Util. Eff.': [0.0, 0.0, 0.0,
0.3357661828477088, 0.33612756444719066, 0.3362925481401798, 0.3363859280669053,
0.33644277855706767, 0.3364776918498558, 0.33649807008288396, 0.33650815879478474,
0.33651060731988786, 0.3365071742346602, 0.336499083361764, 0.3364872188407719,
0.33647223909796625, 0.33645464695353117, 0.33643483461262885, 0.336413113580365,
0.3363897351611919, 0.3363649048755966, 0.33633879283050255, 0.3363115413286188,
0.3362832705507864, 0.33625408286630937, 0.3362240661489519, 0.33619329636048906,
0.3361618395869959], 'Gross plant output': [0.0, 0.0, 0.0, 3462.0331451588754,
3473.0823179959534, 3478.138631923651, 3481.003813546291, 3482.7493420966434,
3483.8217579982147, 3484.447863102985, 3484.7578733960104, 3484.8331169864364,
3484.7276181653674, 3484.4789982992775, 3484.11445294065, 3483.654246020637, 3483.113860406328,
3482.5053786828253, 3481.8384016559594, 3481.120678020792, 3480.358547361197,
3479.557258928982, 3478.7212056298517, 3477.8540988106743, 3476.959100884809,
3476.0389273923893, 3475.095926539693, 3474.1321419068963], 'Tot. pumping power': [0.0, 0.0,
0.0, 412.45333558333465, 412.33916415323546, 412.32647296235757, 412.34721431312767,
412.38502762396797, 412.4330997388961, 412.48797212514654, 412.5476599904795, 412.610924174435,
412.67694180276123, 412.7451400104611, 412.8151047968561, 412.8865277565419, 412.9591733018063,
413.03285762205314, 413.1074346902046, 413.1827866713335, 413.2588171758636,
413.33544640537633, 413.41260759014455, 413.4902443283719, 413.56830856750037,
413.6467590509739, 413.7255601078802, 413.8046806988562], 'Parasitic loss': [0.0, 0.0, 0.0,
21.37160543951006, 21.306689800029094, 21.278257982299415, 21.26298607274174,
21.254417336338502, 21.249870165749822, 21.247986021228268, 21.247986512724893,
21.249386330339707, 21.25186358289505, 21.2551944155738, 21.2592172083329, 21.263811671466023,
21.268885993448823, 21.27436859718027, 21.28020266112395, 21.286342366474738,
21.292750258931356, 21.299395351636765, 21.30625173368692, 21.313297531370655,
21.320514120469635, 21.3278855204557, 21.335397922636552, 21.343039318357874], 'Net plant
output': [0.0, 0.0, 0.0, 21461.360284105584, 21547.62985673506, 21586.79661350979,
21608.77039877496, 21621.958790781453, 21629.865618655982, 21634.27049315588,
21636.195152752796, 21636.277733984072, 21634.94213335115, 21632.483542037873,
21629.115345566668, 21624.99654102227, 21620.24861136386, 21614.966359673097,
21609.225116125574, 21603.085678629493, 21596.59778877393, 21589.80263308886,
21582.734678982015, 21575.423046178683, 21567.89254734282, 21560.16448887316,
21552.257294992312, 21544.186999768983], 'Year Count': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28], 'Revenue': [0.0, 0.0, 0.0,
5.865240391756954, 5.888817265509022, 5.899521267529779, 5.905526550102316, 5.909130845844748,
5.911291726870296, 5.912495548412612, 5.913021544484566, 5.913044113360297, 5.912679103003276,
5.912007187109476, 5.911086682456985, 5.909961041842423, 5.908663465712993, 5.907219863091075,
5.9056508211893455, 5.90397295565296, 5.902199860512, 5.9003427917584474, 5.898411169094937,
5.896412950739712, 5.894354917821133, 5.892242893229677, 5.89008191217715, 5.88787635666293],
'Ops. & Maint.': [0.0, 0.0, 0.0, 0.03827209059272048, 0.03827209059272048, 0.03827209059272048,
0.03827209059272048, 0.03827209059272048, 0.03827209059272048, 0.03827209059272048,
0.03827209059272048, 0.03827209059272048, 0.03827209059272048, 0.03827209059272048,
0.03827209059272048, 0.03827209059272048, 0.03827209059272048, 0.03827209059272048,
0.03827209059272048, 0.03827209059272048, 0.03827209059272048, 0.03827209059272048,
0.03827209059272048, 0.03827209059272048, 0.03827209059272048, 0.03827209059272048,
0.03827209059272048, 0.03827209059272048], 'D&CE': [0.0, 14.78000390012719, 14.78000390012719,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0], 'Derisking': [14.810574494453025, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0], 'Facility Capex': [0.0, 4.356041396233046, 4.356041396233046, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0], 'Capex. Subsid.': [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], 'Cash Flow':
[-14.810574494453025, -19.136045296360237, -19.136045296360237, 5.826968301164234,
5.850545174916302, 5.861249176937059, 5.867254459509596, 5.870858755252028, 5.873019636277576,
5.874223457819892, 5.874749453891846, 5.874772022767577, 5.874407012410556, 5.873735096516756,
5.872814591864265, 5.871688951249703, 5.870391375120273, 5.8689477724983545, 5.867378730596625,
5.86570086506024, 5.86392776991928, 5.862070701165727, 5.8601390785022165, 5.8581408601469915,
5.856082827228413, 5.853970802636957, 5.85180982158443, 5.84960426607021]}}
⠏ thinking...[2024-08-13 12:21:49,033] {_client.py:1026} INFO - HTTP Request: POST https://api.openai.com/v1/chat/completions "HTTP/1.1 200 OK"
thought: I have completed the geothermal feasibility analysis using default data.
tool: final_answer
tool_input: The geothermal feasibility analysis has been completed using default data. Here are
some key results:
- Target Depth: 4710.57 meters
- Maximum Net Output per well: 1.37 MW
- Maximum Gross Plant Output: 3.48 MW
- Maximum Annual Net Plant Output: 21,636.28 MWh
- Cost per Well: $9.79 million
- Total Development CAPEX: $38.27 million
- Average OPEX: $0.18 million/year
- Simple Pre-TAX Payout Price (Discounted): $273.29/MWh
- Lifetime Project Generation: 539.90 GWh
- Foregone CO2 Emissions vs Nat Gas Power: 239,018.06 tons
If you need more detailed information or have specific data to input, please let me know!
The geothermal feasibility analysis has been completed using default data. Here are some key results:
- Target Depth: 4710.57 meters
- Maximum Net Output per well: 1.37 MW
- Maximum Gross Plant Output: 3.48 MW
- Maximum Annual Net Plant Output: 21,636.28 MWh
- Cost per Well: $9.79 million
- Total Development CAPEX: $38.27 million
- Average OPEX: $0.18 million/year
- Simple Pre-TAX Payout Price (Discounted): $273.29/MWh
- Lifetime Project Generation: 539.90 GWh
- Foregone CO2 Emissions vs Nat Gas Power: 239,018.06 tons
If you need more detailed information or have specific data to input, please let me know!
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment