Configuration

Configuration#

The FGEM workflow requires the user to input a configuration file to describe the project components, i.e., metadata, finanical parameters, subsurface reservoir, wellbore, weather, power plant, energy storage (thermal and/or electrochemical), and power markets (wholesale, capacity, green credits, and/or PPA). For a given run, only the relevant components are required to be configured. FGEM validates the input configuration and sets default paramters where paramters are missing. FGEM then simulates the project lifetime, stores records, computes economics, and visualizes data. Herein, we describe the main configuration paramters.

metadata#

Unit

Values

Description

Default

time_init

str

project start date

“2025-01-01”

L

years

int

project lifetime

30

d

float

nominal discount rate

0.07

inflation

float

inflation rate

0.02

itc

float

investment tax credit, which is assumed to be recovered from the total project capital expenditure.

0.3

project_data_dir

str

If data were to be used, this variable indicates the directory where it can be found

./data/sample_project

subsurface#

Unit

Values

Description

Default

drilling_cost

USD/meter

bool

geothermal well drilling cost in USD/meter. If not specified, correlations are used to estimate drilling cost as a function of measured depth.

reservoir_type

str

type of reservoir model. Options are (1) “percentage_decline” for PercentageDecline, (2) “energy_decline” for EnergyDecline, (3) “diffusion_convection” for DiffusionConvection, and (4) “uloop” for ULoop. For simulating conventional geothermal or enhanced geothermal systems, we recommend “diffusion_convection” as it is an anlytical solution. Models “percentage_decline” and “energy_decline” are conceptual. Meanwhile, “uloop” is used to simulate U-Loop closed loop systems.

“diffusion_convection”

Tres_init

deg C

float

initial reservoir temperature

225

Pres_init

bar

float

initial reservoir pressure

40

V_res

\(m^3\)

float

bulk reservoir volume

5

phi_res

float

reservoir porosity

0.1

res_thickness

meters

float

reservoir thickness

300

krock

W/m-K

float

reservoir themral conductivity

30

drawdp

float

property of the PercentageDecline reservoir model indicating the fixed annual rate at which reservoir temperature declines

0.005

plateau_length

years

float

property of the PercentageDecline reservoir model indicating the fixed number of years for which the reservoir temperature does not drop initially.

3

rock_energy_recovery

float

property of the EnergyDecline reservoir model indicating the recovarable fraction of the total heat contained in the bulk rock volume in the subsurface.

1

surface_temp

deg C

float

near-surface temperauture (it could be identical to the ambient temperature)

20

well_depth

meters

float

true vertical depth of production and injection wells.

3000

prd_well_diam

meters

float

diameter of production wells.

0.3115

inj_well_diam

meters

float

diameter of injection wells.

0.3115

numberoflaterals

int

number of laterals for each producer-injector doublet.

1

num_prd

int

total number of producers in the project.

inj_prd_ratio

float

ratio of injector-to-producer wells in the project.

1

waterloss

float

fraction of water that is lost to the reservoir.

0.05

pumpeff

float

efficiency of production and injection pumps

0.75

DSR

float

drilling success rate

1

SSR

float

well stimulation success rate

1

PI

kg/s/bar

float

injectivity at production wells

20

II

kg/s/bar

float

injectivity at injection wells

20

lateral_diam

meters

float

property of the Uloop reservoir model indicating when the lateral diameter to allow for it to be different from the diameter of the vertical sections at the producer and injector.

0.3115

lateral_spacing

meters

float

property of the Uloop reservoir model indicating the spacing between each two laterals

100

closedloop_design

str

property of the Uloop reservoir model indicating the closedloop design to be used. If set to “default”, it constructs typical multilateral Uloop systems. If set to “eavor”, it constructs a design similar to what is proposed by Eavor Deep 2.0.

dx

meters

int

property of the Uloop reservoir model indicating the size of each mesh cell for the numerical solution.

ramey

bool

whether or not to use Ramey’s heat loss/gain across the wellbore.

FALSE

reservoir_simulator_settings

dict

advanced settings used to expedite the reservoir simulation runs by enhancing or decreasing the timeframe at which the reservoir module is updated.

reservoir_filename

str

CSV file with tabular reservoir data including three columns [“Date”, “Tres_deg_C”, “m_kg_per_sec”] to indicate timestamp, reservoir temperature, and total field flow rate. (one value per year throughout the project lifetime). For instance, refer to examples/data/market/reservoir.csv

powerplant#

Unit

Values

Description

Default

powerplant_interconnection_cost

USD/kW

float

capital cost for power plant grid interconnection

130

powerplant_type

str

type of power plant. Options: (1) “Flash” for single flash power plant , (2) “Binary” for subcritical ORC power plant

“Binary”

powerplant_capacity

MW

float

power plant nameplate capacity

10

cf

float

powerplant capacity factor related to regular maintenance. Note that this does not include decrease in capacity factors due to ambient temperautre variations, reservoir temperature decline, etc.

0.99

pipinglength

km

float

length of piping network required for the power plant

5

bypass

bool

whether or not bypassing the power plant or turbine is allowed in this simulation. If set to True, it automatically bypasses flow away from power plant during hours of negative pricing. It also allows the user to specify other occasios when to bypass the power plant as desired.

FALSE

market#

Unit

Values

Description

Default

ambient_temperature

deg C

float

ambient temperature

20

weather_filename

str

CSV file with hourly weather data for one full year (i.e., total of 8760 horus) . For instance, refer to examples/data/market/weather.csv

energy_price

USD/MWh

float

energy price

40

recs_price

USD/MWh

float

value of renewable energy credits (RECs) or green credits

10

capacity_price

USD/kW-year

float

capacity value

100

energy_market_filename

str

CSV file with energy market data, spanning the entire project lifetime. For instance, refer to examples/data/market/wholesale.csv

capacity_market_filename

str

CSV file with capacity value (one value per year throughout the project lifetime). For instance, refer to examples/data/market/capacity.csv

fat_factor

float

multiplier of mean diversion to make the arbitrage opportunity more pronounced in wholesale power markets. Value of 1.0 means that this parameter has no effect.

1

resample

str

timeframe to which project market data is resampled (Options: “1Y”, “1m”, “1w”, “1d”, “1h” for yearly, monthly, weekly, daily, or hourly timestepping)

None

battery#

Unit

Values

Description

Default

battery_interconnection_cost

USD/kW

float

capital cost for battery grid interconnection

battery_energy_cost

USD/MWh

float

battery energy capital cost

200

battery_power_cost

USD/kW

float

battery power capital cost

300

battery_fom

USD/kW

float

battery annual fixed operation expenditure

10

battery_energy_augmentation

USD/MWh

float

battery energy augmentation cost, such that the battery efficiency does not change throughout its lifetime thanks to spending this augmentation cost

3

battery_power_augmentation

USD/kW

float

battery power augmentation cost, such that the battery efficiency does not change throughout its lifetime thanks to spending this augmentation cost

0.5

battery_elcc

float

battery effective load carrying capacity

1

battery_lifetime

years

int

battery lifetime

15

battery_roundtrip_eff

float

battery roundtrip efficiency

0.85

battery_duration

[hrs, hrs]

list

battery duration for two units where the second battery unit is installed after the first is retired.

[0, 0]

battery_power_capacity

[MW, MW]

list

battery power capacity for two units where the second battery unit is installed after the first is retired.

[0, 0]

battery_costs_filename

str

CSV file with battery costs and effective load carrying capacity (i.e., one set of values for each year throughout the project lifetime). For instance, refer to examples/data/market/battery.csv

tank#

Unit

Values

Description

Default

tank_cost

\(USD/m^3\)

float

capital cost for thermal energy storage tank

0.00143453

tank_diameter

m

float

diameter of the thermal energy storage tank

0

tank_height

m

float

height of the thermal energy storage tank

0