h2integrate.converters.hydrogen.geologic.aspen_surface_processing#

Classes

AspenGeoH2SurfaceCostConfig(cost_from_fit, ...)

Configuration for cost parameters for a natural geologic hydrogen well surface processing system.

AspenGeoH2SurfaceCostModel(**kwargs)

OpenMDAO component for modeling the cost of a surface processing system for a

AspenGeoH2SurfacePerformanceConfig(...)

Configuration for performance parameters for a natural geologic hydrogen well surface processing system.

AspenGeoH2SurfacePerformanceModel(**kwargs)

ASPEN-based geologic hydrogen surface processing performance model for a surface processing system for a natural geologic hydrogen plant.

class h2integrate.converters.hydrogen.geologic.aspen_surface_processing.AspenGeoH2SurfacePerformanceConfig(size_from_wellhead_flow, max_flow_in, refit_coeffs, curve_input_fn, perf_coeff_fn)#

Configuration for performance parameters for a natural geologic hydrogen well surface processing system. This class defines performance parameters specific to natural geologic hydrogen systems (as opposed to stimulated systems).

Inherits from:

GeoH2SurfacePerformanceConfig

Variables:
  • refit_coeffs (bool) -- Whether to re-fit performance curves to ASPEN data. Set to False unless new Aspen data has been generated.

  • curve_input_fn (str) -- Filename of ASPEN model results file used to generate curve fits. Only used if refit_coeffs is True. Must be located in the ./inputs directory.

  • perf_coeff_fn (str) -- Filename of performance curve coefficients. Will be loaded if refit_coeffs is False and overwritten if refit_coeffs is True. Located in the ./inputs directory.

Parameters:
  • size_from_wellhead_flow (bool)

  • max_flow_in (float)

  • refit_coeffs (bool)

  • curve_input_fn (str)

  • perf_coeff_fn (str)

refit_coeffs: bool#
curve_input_fn: str#
perf_coeff_fn: str#
class h2integrate.converters.hydrogen.geologic.aspen_surface_processing.AspenGeoH2SurfacePerformanceModel(**kwargs)#

ASPEN-based geologic hydrogen surface processing performance model for a surface processing system for a natural geologic hydrogen plant.

This component estimates hydrogen production performance for naturally occurring geologic hydrogen systems.

The modeling approach is informed by the following studies:
Variables:

config (NaturalGeoH2PerformanceConfig) -- Configuration object containing model parameters specific to natural geologic hydrogen systems.

Inputs:

perf_coeffs (dict) -- Performance curve coefficients, structured like so: {"<output name>": [<list, of, curve, coefficients>]}

Outputs:
  • electricity_consumed (ndarray) -- Hourly electricity consumption profile (8760 hours), in kW.

  • water_consumed (ndarray) -- Hourly water consumption profile (8760 hours), in kg/h.

  • steam_out (ndarray) -- Hourly steam production profile (8760 hours), in kW thermal.

_time_step_bounds = (3600, 3600)#
setup()#

Declare inputs and outputs.

Available attributes:

name pathname comm options

compute(inputs, outputs, discrete_inputs, discrete_outputs)#

Compute performance outputs based on wellhead conditions.

class h2integrate.converters.hydrogen.geologic.aspen_surface_processing.AspenGeoH2SurfaceCostConfig(cost_from_fit, custom_capex, custom_opex, refit_coeffs, curve_input_fn, cost_coeff_fn, op_labor_rate, overhead_rate, electricity_price, water_price, *, cost_year)#

Configuration for cost parameters for a natural geologic hydrogen well surface processing system. This class defines cost parameters specific to natural geologic hydrogen systems (as opposed to stimulated systems).

Inherits from:

GeoH2SurfaceCostConfig

Variables:
  • refit_coeffs (bool) -- Whether to re-fit cost curves to ASPEN data. Set to False unless new Aspen data has been generated.

  • curve_input_fn (str) -- Filename of ASPEN model results file used to generate curve fits. Only used if refit_coeffs is True. Must be located in the ./inputs directory.

  • cost_coeff_fn (str) -- Filename of cost curve coefficients. Will be loaded if refit_coeffs is False and overwritten if refit_coeffs is True. Located in the ./inputs directory.

  • op_labor_rate (float) -- Cost of operational labor in $/hr

  • overhead_rate (float) -- Fraction of operational labor opex seen in overhead opex

  • electricity_price (float) -- Price of electricity in USD/kWh

  • water_price (float) -- Price of water in USD/kt

Parameters:
  • cost_from_fit (bool)

  • custom_capex (float)

  • custom_opex (float)

  • refit_coeffs (bool)

  • curve_input_fn (str)

  • cost_coeff_fn (str)

  • op_labor_rate (float)

  • overhead_rate (float)

  • electricity_price (float)

  • water_price (float)

  • cost_year (int)

refit_coeffs: bool#
curve_input_fn: str#
cost_coeff_fn: str#
op_labor_rate: float#
overhead_rate: float#
electricity_price: float#
water_price: float#
class h2integrate.converters.hydrogen.geologic.aspen_surface_processing.AspenGeoH2SurfaceCostModel(**kwargs)#
OpenMDAO component for modeling the cost of a surface processing system for a

natural geologic hydrogen plant based on curve fits from an ASPEN model.

This component estimates hydrogen production cost for naturally occurring geologic hydrogen systems.

The modeling approach is informed by the following studies:
Variables:

config (NaturalGeoH2CostConfig) -- Configuration object containing model parameters specific to natural geologic hydrogen systems.

Inputs:
  • cost_coeffs (dict) -- Performance curve coefficients, structured like so: {"<output name>": [<list, of, curve, coefficients>]}

  • op_labor_rate (float) -- Cost of operational labor in $/hr

  • overhead_rate (float) -- Fraction of operational labor opex seen in overhead opex

  • electricity_price (float) -- Price of electricity in USD/kWh

  • water_price (float) -- Price of water in USD/kt

  • electricity_consumed (ndarray) -- Hourly electricity consumption profile (8760 hours), in kW.

  • water_consumed (ndarray) -- Hourly water consumption profile (8760 hours), in kg/h.

Outputs:

All inherited from GeoH2SurfaceCostBaseClass

_time_step_bounds = (3600, 3600)#
setup()#

Declare inputs and outputs.

Available attributes:

name pathname comm options

compute(inputs, outputs, discrete_inputs, discrete_outputs)#

Compute cost outputs based on wellhead conditions and operating parameters.