reskit.geothermal.workflows.egs_workflow_manager#

Classes#

EGS_workflowmanager

Workflow manager for EGS calculations

Module Contents#

class reskit.geothermal.workflows.egs_workflow_manager.EGS_workflowmanager(placements)#

Workflow manager for EGS calculations

Parameters:

placements (pd.DataFrame) – placements, contains at least “lat”, “lon” columns in EPSG:4326

SECONDS_PER_YEAR = 31536000#
USD2EUR = 0.88#
rho_water = 1000#
cp_water = 4182#
placements#
sim_data#
loadPlantData(configuration, manual_values={})#
Parameters:

configuration (str)

loadData(vars, source, newVarNamesDict=None)#

Loads the variables from source. Must be a NC file. Cannot be depth depending-

Parameters:
  • vars (list) – List of varnames to load

  • source (str) – path to *.nc file

  • newVarNames (dict, optional) – list of new Variable names, by default None

  • newVarNamesDict (dict)

loadDataAllDepths(vars, source)#

Loads all variables as an array depending on its depth

Parameters:
  • vars (list) – list of variables, eg: [‘Global_EGS_HeatSust’,’ Global_EGS_HeatTech’, ‘Global_EGS_PowerSust’, ‘Global_EGS_PowerTech’]

  • sourceEGSpotentials (str) – path to the location of the input data

Returns:

adds the variables to the self.sim_data container as np.ndarray(dtype=np.float66)

Return type:

updates self.sim_data

_extractPointsFromRaster(points, data_var_depth)#
AssignReservoirVolumeSize()#
__calulateRockVolumeShare()#

Calculates the share of the placement reservoir to the discretized volume from the input data

Parameters:

reservoirSize (float, optional) – Volume of the plant specific reservoir in m^3, by default 1E9 m^3

__calculatePlacementHeat()#
___calculatePlantOutput()#
VolumeMethod()#

Calculate the enthalpy from the temperature

GringartenMethodFixedT()#

[summary]

GringartenMethodFixeVdot()#

Calculates the Gringarten solution for a given fracture configuration

SustainableHeat()#
calculatePumpLosses(method='default', techMethod=None)#

[summary]

Parameters:
  • method (str, optional) – [description], by default ‘default’

  • techMethod ([type], optional) – [description], by default None

calculateCosts(method='default', techMethod=None)#

Calculate the CAPEX cost for the plant

calculateLCOE(techMethod)#
getOptDepth(techMethod)#

Gets the optimal depth value based on the lowest LCOE

getValuesAtOptDepth(techMethod)#

[summary]

getRegenerationTime(techMethod)#
saveOutput(savepath=None, deepsave=False)#

Saved to nc4 or shape file or csv to savepath

Parameters:
  • savepath (str, optional) – String to a specific file path (folder + filename). Can be shape, nc4, or csv. If None, printing

  • deepsave (bool, optional) – If True, saves more variables. Defaults to False

_getTechMethods()#
_getTechMethodShort(techMethod)#
_EGS_NC4_to_raster(nc4_obj, varname)#

Extracts one depth layer from an variable and returns it as an raster file

Parameters:
  • nc4_obj (xr.dataset) – [description]

  • varname (str) – name of the variable

Returns:

Gdal tiff representation of the given variable

Return type:

gdal.Dataset

static volumeMethodSingular(reservoir_size_m3, dT_drawdown, recovery_factor, temperature, surface_temperature=10, lifetime_a=30, depth=3000, n_wells=2, T_inj=80)#

Calculate the enthalpy from the temperature