GeothermalCosts

GeothermalCosts

PySAM.GeothermalCosts.default(config) GeothermalCosts

Load defaults for the configuration config. Available configurations are:

  • None

Note

Some inputs do not have default values and may be assigned a value from the variable’s Required attribute. See variable attribute descriptions below.

PySAM.GeothermalCosts.from_existing(data, optional config) GeothermalCosts

Share data with an existing PySAM class. If optional config is a valid configuration name, load the module’s defaults for that configuration.

PySAM.GeothermalCosts.new() GeothermalCosts
PySAM.GeothermalCosts.wrap(ssc_data_t) GeothermalCosts

Load data from a PySSC object.

Warning

Do not call PySSC.data_free on the ssc_data_t provided to wrap()

GeothermalCosts is a wrapper for the SSC compute module cmod_geothermal_costs.cpp

Interdependent Variables

The variables listed below are interdependent with other variables. If you change the value of one of these variables, you may need to change values of other variables. The SAM user interface manages these interdependent variables, but in PySAM, it is up to you change the value of all interdependent variables so they are consistent. See Interdependent Variables for examples and details.

  • None

Functions

class PySAM.GeothermalCosts.GeothermalCosts

This class contains all the variable information for running a simulation. Variables are grouped together in the subclasses as properties. If property assignments are the wrong type, an error is thrown.

assign(dict) None

Assign attributes from nested dictionary, except for Outputs

nested_dict = { 'GeoHourly': { var: val, ...}, ...}

execute(int verbosity) None

Execute simulation with verbosity level 0 (default) or 1

export() dict

Export attributes into nested dictionary

get_data_ptr() Pointer

Get ssc_data_t pointer

getem_om_cost_calc()

Add documentation here nnInput: var_table with key-value pairsn ‘baseline_cost’: double [$] n ‘drilling_cost’: double [$] n ‘field_gathering_system_cost’: double [units] n ‘num_wells’: double [units] n ‘water_loss’: double [units] n ‘total_installed_cost’: double [$] n ‘pump_cost_install’: double [units] n ‘pump_only_cost’: double [units] n ‘pump_type’: double [units] n ‘pump_depth’: double nOutput: key-value pairs added to var_tablen ‘total_getem_om_cost’: double [$]

replace(dict) None

Replace attributes from nested dictionary, except for Outputs. Unassigns all values in each Group then assigns from the input dict.

nested_dict = { 'GeoHourly': { var: val, ...}, ...}

unassign(name) None

Unassign a value in any of the variable groups.

value(name, optional value) None | float | dict | sequence | str

Get or set by name a value in any of the variable groups.

GeoHourly Group

class PySAM.GeothermalCosts.GeothermalCosts.GeoHourly
assign(dict) None

Assign attributes from dictionary, overwriting but not removing values.

GeoHourly_vals = { var: val, ...}

export() dict

Export attributes into dictionary.

replace(dict) None

Replace attributes from dictionary, unassigning values not present in input dict.

GeoHourly_vals = { var: val, ...}

GF_flowrate

GF Flow Rate [lb/h]

Required: Required if conversion_type=1

Type:

float

calc_drill_costs

Calculate drill costs [0/1]

Options: 0=LargerDiameter,1=SmallerDiameter

Required: False. Automatically set to 0 if not assigned explicitly or loaded from defaults.

Type:

float

condensate_pump_power

hp

Required: Required if conversion_type=1

Type:

float

conversion_type

Conversion Type

Constraints: INTEGER

Required: True

Type:

float

cw_pump_head

Cooling Water Pump Head [lb/h]

Required: Required if conversion_type=1

Type:

float

cw_pump_work

CW Pump Work [kW]

Required: Required if conversion_type=1

Type:

float

cwflow

Cooling Water Flow [lb/h]

Required: Required if conversion_type=1

Type:

float

design_temp

Power block design temperature [C]

Required: True

Type:

float

dt_prod_well

Temperature loss in production well [C]

Required: True

Type:

float

eff_secondlaw

Second Law Efficiency [%]

Required: True

Type:

float

flash_count

Flash Count [(1 -2)]

Required: Required if conversion_type=1

Type:

float

geotherm_cost_conf_multiplier

Confirmation cost multiplier

Required: Required if calc_drill_costs=1

Type:

float

geotherm_cost_conf_non_drill

Confirmation non drilling costs [$]

Required: Required if calc_drill_costs=1

Type:

float

geotherm_cost_conf_num_wells

Number of confirmation wells

Required: Required if calc_drill_costs=1

Type:

float

geotherm_cost_expl_multiplier

Exploration cost multiplier

Required: Required if calc_drill_costs=1

Type:

float

geotherm_cost_expl_non_drill

Exploration non drilling costs [$]

Required: Required if calc_drill_costs=1

Type:

float

geotherm_cost_expl_num_wells

Number of exploration wells

Required: Required if calc_drill_costs=1

Type:

float

geotherm_cost_inj_cost_curve

Injection well diameter type [0/1]

Options: 0=LargerDiameter,1=SmallerDiameter

Required: Required if calc_drill_costs=1

Type:

float

geotherm_cost_inj_cost_curve_welldiam

Injection well diameter type [0/1]

Options: 0=LargerDiameter,1=SmallerDiameter

Required: Required if calc_drill_costs=1

Type:

float

geotherm_cost_inj_cost_curve_welltype

Injection well type [0/1]

Required: Required if calc_drill_costs=1

Type:

float

geotherm_cost_prod_cost_curve

Production well diameter type [0/1]

Options: 0=LargerDiameter,1=SmallerDiameter

Required: Required if calc_drill_costs=1

Type:

float

geotherm_cost_prod_cost_curve_welldiam

Production well diameter type [0/1]

Options: 0=LargerDiameter,1=SmallerDiameter

Required: Required if calc_drill_costs=1

Type:

float

geotherm_cost_prod_cost_curve_welltype

Production well type [0/1]

Required: Required if calc_drill_costs=1

Type:

float

geotherm_cost_pump_casing_cost

Pump casing cost per foot [$/ft]

Type:

float

geotherm_cost_pump_fixed

Fixed pump workover and casing cost [$]

Type:

float

geotherm_cost_pump_per_foot

Pump cost per foot [$/ft]

Type:

float

geotherm_cost_stim_non_drill

Stimulation non drilling costs [$]

Required: Required if calc_drill_costs=1

Type:

float

gross_cost_output

Gross output from GETEM for cost calculations [kW]

Required: True

Type:

float

gross_output

Gross output from GETEM [MW]

Required: True

Type:

float

hp_flash_pressure

HP Flash Pressure [psia]

Required: Required if conversion_type=1

Type:

float

inj_pump_hp

Injection pump power [hp]

Type:

float

lp_flash_pressure

LP Flash Pressure [psia]

Required: Required if conversion_type=1

Type:

float

ncg_condensate_pump

Condensate Pump Work [kW]

Required: Required if conversion_type=1

Type:

float

num_wells_getem

Number of production wells required

Type:

float

num_wells_getem_inj_drilled

Number of drilled injection wells [0/1]

Options: 0=LargerDiameter,1=SmallerDiameter

Type:

float

num_wells_getem_prod_drilled

Number of drilled production wells [0/1]

Options: 0=LargerDiameter,1=SmallerDiameter

Type:

float

num_wells_getem_prod_failed

Number of failed production wells [0/1]

Options: 0=LargerDiameter,1=SmallerDiameter

Type:

float

ppi_base_year

PPI Base Year

Required: False. Automatically set to 19 if not assigned explicitly or loaded from defaults.

Type:

float

pressure_ratio_1

Suction Steam Ratio 1

Required: Required if conversion_type=1

Type:

float

pressure_ratio_2

Suction Steam Ratio 2

Required: Required if conversion_type=1

Type:

float

pressure_ratio_3

Suction Steam Ratio 3

Required: Required if conversion_type=1

Type:

float

pump_depth_ft

Pump depth [ft]

Type:

float

pump_size_hp

Production pump power [hp]

Type:

float

qCondenser

Condenser Heat Rejected [btu/h]

Required: Required if conversion_type=1

Type:

float

qRejectByStage_1

Heat Rejected by NCG Condenser Stage 1 [BTU/hr]

Required: Required if conversion_type=1

Type:

float

qRejectByStage_2

Heat Rejected by NCG Condenser Stage 2 [BTU/hr]

Required: Required if conversion_type=1

Type:

float

qRejectByStage_3

Heat Rejected by NCG Condenser Stage 3 [BTU/hr]

Required: Required if conversion_type=1

Type:

float

qRejectTotal

Total Rejected Heat [btu/h]

Required: Required if conversion_type=1

Type:

float

resource_depth

Resource Depth [m]

Required: Required if calc_drill_costs=1

Type:

float

spec_vol

Specific Volume [cft/lb]

Required: Required if conversion_type=1

Type:

float

spec_vol_lp

LP Specific Volume [cft/lb]

Required: Required if conversion_type=1

Type:

float

stimulation_type

Which wells are stimulated [0/1/2/3]

Type:

float

v_stage_1

Vacumm Pump Stage 1 [kW]

Required: Required if conversion_type=1

Type:

float

v_stage_2

Vacumm Pump Stage 2 [kW]

Required: Required if conversion_type=1

Type:

float

v_stage_3

Vacumm Pump Stage 3 [kW]

Required: Required if conversion_type=1

Type:

float

x_hp

HP Mass Fraction [%]

Required: Required if conversion_type=1

Type:

float

x_lp

LP Mass Fraction [%]

Required: Required if conversion_type=1

Type:

float

Outputs Group

class PySAM.GeothermalCosts.GeothermalCosts.Outputs
assign(dict) None

Assign attributes from dictionary, overwriting but not removing values.

Outputs_vals = { var: val, ...}

export() dict

Export attributes into dictionary.

replace(dict) None

Replace attributes from dictionary, unassigning values not present in input dict.

Outputs_vals = { var: val, ...}

baseline_cost

Baseline cost [$/kW]

Type:

float

conf_drilling_cost

Confirmation drilling costs [$]

Type:

float

conf_total_cost

Confirmation total costs [$]

Type:

float

expl_drilling_cost

Exploration drilling costs [$]

Type:

float

expl_total_cost

Exploration total costs [$]

Type:

float

field_gathering_num_wells

Field gathering system number of wells [wells]

Type:

float

indirect_pump_cost

Number of injection pumps

Type:

float

indirect_pump_gathering_cost

Indirect pump and field gathering cost [$]

Type:

float

inj_num_pumps

Number of injection pumps

Type:

float

inj_pump_cost

Injection pump system cost [$]

Type:

float

inj_pump_cost_per_pump

Injection pump cost per pump [$/pump]

Type:

float

inj_total_cost

Total injection well system cost [$]

Type:

float

inj_well_cost

Injection cost per well [$/well]

Type:

float

piping_cost_per_well

Surface piping cost per well [$/well]

Type:

float

prod_pump_cost

Production pump system cost [$]

Type:

float

prod_pump_cost_per_well

Production pump cost per well [$/well]

Type:

float

prod_total_cost

Total production well system cost [$]

Type:

float

prod_well_cost

Production cost per well [$/well]

Type:

float

pump_cost_install

Production pump installation cost [$/well]

Type:

float

pump_only_cost

Production pump cost per well [$/well]

Type:

float

stim_cost_non_drill

Non-drilling stimulation costs [$]

Type:

float

stim_cost_per_well

Stimulation cost per well [$/well]

Type:

float

total_drilling_cost

Total drilling cost [$]

Type:

float

total_gathering_cost

Total gathering well cost [$]

Type:

float

total_pump_cost

Total pumping cost [$]

Type:

float

total_pump_gathering_cost

Total pump and field gathering system cost [$]

Type:

float

total_surface_equipment_cost

Total surface equipment cost [$]

Type:

float