EtesPtes
Pumped thermal energy storage
- PySAM.EtesPtes.default(config) EtesPtes
Load defaults for the configuration
config
. Available configurations are:“PTESSingleOwner”
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.EtesPtes.from_existing(data, optional config) EtesPtes
Share data with an existing PySAM class. If
optional config
is a valid configuration name, load the module’s defaults for that configuration.
- PySAM.EtesPtes.wrap(ssc_data_t) EtesPtes
Load data from a PySSC object.
Warning
Do not call PySSC.data_free on the ssc_data_t provided to
wrap()
EtesPtes is a wrapper for the SSC compute module cmod_etes_ptes.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.
const_per_interest_rate1
const_per_interest_rate2
const_per_interest_rate3
const_per_interest_rate4
const_per_interest_rate5
const_per_months1
const_per_months2
const_per_months3
const_per_months4
const_per_months5
const_per_percent1
const_per_percent2
const_per_percent3
const_per_percent4
const_per_percent5
const_per_upfront_rate1
const_per_upfront_rate2
const_per_upfront_rate3
const_per_upfront_rate4
const_per_upfront_rate5
Functions
- class PySAM.EtesPtes.EtesPtes
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 = { 'Solar Resource': { 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
- 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 = { 'Solar Resource': { 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.
SolarResource Group
- class PySAM.EtesPtes.EtesPtes.SolarResource
- assign(dict) None
Assign attributes from dictionary, overwriting but not removing values.
SolarResource_vals = { var: val, ...}
- export() dict
Export attributes into dictionary.
- replace(dict) None
Replace attributes from dictionary, unassigning values not present in input
dict
.SolarResource_vals = { var: val, ...}
- solar_resource_file
Local weather file path
Constraints: LOCAL_FILE
Required: False for configuration with default inputs. May be required if a variable dependent on its value changes. Example: For the Detailed PV - Single Owner configuration, only Subarray 1 is enabled in the configuration defaults, so Subarray 2 inputs would not be required; if Subarray 2 is enabled, then Subarray 2 inputs is required.
- Type:
str
SystemControl Group
- class PySAM.EtesPtes.EtesPtes.SystemControl
- assign(dict) None
Assign attributes from dictionary, overwriting but not removing values.
SystemControl_vals = { var: val, ...}
- export() dict
Export attributes into dictionary.
- replace(dict) None
Replace attributes from dictionary, unassigning values not present in input
dict
.SystemControl_vals = { var: val, ...}
- bop_par
Balance of plant parasitic power fraction [MWe/MWcap]
Required: True
- Type:
float
- bop_par_0
Balance of plant parasitic power fraction - const coeff
Required: True
- Type:
float
- bop_par_1
Balance of plant parasitic power fraction - linear coeff
Required: True
- Type:
float
- bop_par_2
Balance of plant parasitic power fraction - quadratic coeff
Required: True
- Type:
float
- bop_par_f
Balance of plant parasitic power fraction - mult frac
Required: True
- Type:
float
- disp_csu_cost
Cycle startup cost [$/MWe-cycle/start]
Required: Required if is_dispatch=1
- Type:
float
- disp_down_time_min
Minimum time requirement for cycle to not generate power [hr]
Required: Required if is_dispatch=1
- Type:
float
- disp_frequency
Frequency for dispatch optimization calculations [hour]
Required: Required if is_dispatch=1
- Type:
float
- disp_horizon
Time horizon for dispatch optimization [hour]
Required: Required if is_dispatch=1
- Type:
float
- disp_hsu_cost
Heater startup cost [$/MWe-cycle/start]
Required: Required if is_dispatch=1
- Type:
float
- disp_max_iter
Max number of dispatch optimization iterations
Required: Required if is_dispatch=1
- Type:
float
- disp_mip_gap
Dispatch optimization solution tolerance
Required: Required if is_dispatch=1
- Type:
float
- disp_pen_delta_w
Dispatch cycle production change penalty [$/MWe-change]
Required: Required if is_dispatch=1
- Type:
float
- disp_reporting
Dispatch optimization reporting level
Required: False. Automatically set to -1 if not assigned explicitly or loaded from defaults.
- Type:
float
- disp_spec_bb
Dispatch optimization B&B heuristic
Required: False. Automatically set to -1 if not assigned explicitly or loaded from defaults.
- Type:
float
- disp_spec_presolve
Dispatch optimization presolve heuristic
Required: False. Automatically set to -1 if not assigned explicitly or loaded from defaults.
- Type:
float
- disp_spec_scaling
Dispatch optimization scaling heuristic
Required: False. Automatically set to -1 if not assigned explicitly or loaded from defaults.
- Type:
float
- disp_steps_per_hour
Time steps per hour for dispatch optimization calculations
Required: False. Automatically set to 1 if not assigned explicitly or loaded from defaults.
- Type:
float
- disp_time_weighting
Dispatch optimization future time discounting factor
Required: Required if is_dispatch=1
- Type:
float
- disp_timeout
Max dispatch optimization solve duration [s]
Required: Required if is_dispatch=1
- Type:
float
- disp_up_time_min
Minimum time requirement for cycle to generate power [hr]
Required: Required if is_dispatch=1
- Type:
float
- is_dispatch
Allow dispatch optimization?
Required: False. Automatically set to 0 if not assigned explicitly or loaded from defaults.
- Type:
float
- pb_fixed_par
Fixed parasitic load that don’t generate heat - runs at all times [MWe/MWcap]
Required: True
- Type:
float
- sim_type
timeseries, 2: design only
Required: False. Automatically set to 1 if not assigned explicitly or loaded from defaults.
- Type:
float
- Type:
1 (default)
- time_start
Simulation start time [s]
Required: False. Automatically set to 0 if not assigned explicitly or loaded from defaults.
- Type:
float
- time_steps_per_hour
Number of simulation time steps per hour
Required: False. Automatically set to -1 if not assigned explicitly or loaded from defaults.
- Type:
float
- time_stop
Simulation stop time [s]
Required: False. Automatically set to 31536000 if not assigned explicitly or loaded from defaults.
- Type:
float
- vacuum_arrays
Allocate arrays for only the required number of steps
Required: False. Automatically set to 0 if not assigned explicitly or loaded from defaults.
- Type:
float
FinancialModel Group
- class PySAM.EtesPtes.EtesPtes.FinancialModel
- assign(dict) None
Assign attributes from dictionary, overwriting but not removing values.
FinancialModel_vals = { var: val, ...}
- export() dict
Export attributes into dictionary.
- replace(dict) None
Replace attributes from dictionary, unassigning values not present in input
dict
.FinancialModel_vals = { var: val, ...}
- etes_financial_model
[1-8]
Constraints: INTEGER,MIN=0
Required: False. Automatically set to 1 if not assigned explicitly or loaded from defaults.
- Type:
float
SystemDesign Group
- class PySAM.EtesPtes.EtesPtes.SystemDesign
- assign(dict) None
Assign attributes from dictionary, overwriting but not removing values.
SystemDesign_vals = { var: val, ...}
- export() dict
Export attributes into dictionary.
- replace(dict) None
Replace attributes from dictionary, unassigning values not present in input
dict
.SystemDesign_vals = { var: val, ...}
- T_CT_cold_htf_des
CT TES cold temperature [C]
Required: True
- Type:
float
- T_CT_hot_htf_des
CT TES hot temperature [C]
Required: True
- Type:
float
- T_HT_cold_htf_des
HT TES cold temperature [C]
Required: True
- Type:
float
- T_HT_hot_htf_des
HT TES hot temperature [C]
Required: True
- Type:
float
- W_dot_pc_thermo_des
PC design thermodynamic power [MWe]
Required: True
- Type:
float
- cop_hp_thermo_des
Heat pump design thermodynamic heat COP [-]
Required: True
- Type:
float
- eta_pc_thermo_des
PC design thermodynamic efficiency [-]
Required: True
- Type:
float
- f_hp_parasitic_des
Heat pump parasitics as fraction of design thermo power in [-]
Required: True
- Type:
float
- f_pc_parasitic_des
PC parasitics as fraction of design thermo power out [-]
Required: True
- Type:
float
- heater_mult
Heater multiple relative to design cycle thermal power [-]
Required: True
- Type:
float
- tshours
Equivalent full-load thermal storage hours [hr]
Required: True
- Type:
float
ThermalStorage Group
- class PySAM.EtesPtes.EtesPtes.ThermalStorage
- assign(dict) None
Assign attributes from dictionary, overwriting but not removing values.
ThermalStorage_vals = { var: val, ...}
- export() dict
Export attributes into dictionary.
- replace(dict) None
Replace attributes from dictionary, unassigning values not present in input
dict
.ThermalStorage_vals = { var: val, ...}
- cold_htf_code
Cold HTF code - see htf_props.h for list
Required: True
- Type:
float
- hot_htf_code
Hot HTF code - see htf_props.h for list
Required: True
- Type:
float
- ud_cold_htf_props
User-defined Cold HTF fluid property data [-]
Required: Required if cold_htf_code=50
- Type:
sequence[sequence]
- ud_hot_htf_props
User-defined Hot HTF fluid property data [-]
Required: Required if hot_htf_code=50
- Type:
sequence[sequence]
Heater Group
- class PySAM.EtesPtes.EtesPtes.Heater
- assign(dict) None
Assign attributes from dictionary, overwriting but not removing values.
Heater_vals = { var: val, ...}
- export() dict
Export attributes into dictionary.
- replace(dict) None
Replace attributes from dictionary, unassigning values not present in input
dict
.Heater_vals = { var: val, ...}
- f_q_dot_des_allowable_su
Fraction of design power allowed during startup [-]
Required: True
- Type:
float
- f_q_dot_heater_min
Minimum allowable heater output as fraction of design
Required: True
- Type:
float
- hrs_startup_at_max_rate
Duration of startup at max startup power [hr]
Required: True
- Type:
float
PowerCycle Group
- class PySAM.EtesPtes.EtesPtes.PowerCycle
- assign(dict) None
Assign attributes from dictionary, overwriting but not removing values.
PowerCycle_vals = { var: val, ...}
- export() dict
Export attributes into dictionary.
- replace(dict) None
Replace attributes from dictionary, unassigning values not present in input
dict
.PowerCycle_vals = { var: val, ...}
- CT_pb_pump_coef
COLD TES pumping power to move 1kg of HTF through PB loop [kW/kg/s]
Required: True
- Type:
float
- cycle_cutoff_frac
Minimum turbine operation fraction before shutdown
Required: True
- Type:
float
- cycle_max_frac
Maximum turbine over design operation fraction
Required: True
- Type:
float
- heat_pump_CT_HTF_pump_coef
Cold temp HX pumping power to move 1 kg/s [kW/kg/s]
Required: True
- Type:
float
- heat_pump_HT_HTF_pump_coef
High temp HX pumping power to move 1 kg/s [kW/kg/s]
Required: True
- Type:
float
- pb_pump_coef
COLD TES pumping power to move 1kg of HTF through PB loop [kW/kg/s]
Required: True
- Type:
float
- q_sby_frac
Fraction of thermal power required for standby
Required: True
- Type:
float
- startup_frac
Fraction of design thermal power needed for startup [none]
Required: True
- Type:
float
- startup_time
Time needed for power block startup [hr]
Required: True
- Type:
float
HotThermalStorage Group
- class PySAM.EtesPtes.EtesPtes.HotThermalStorage
- assign(dict) None
Assign attributes from dictionary, overwriting but not removing values.
HotThermalStorage_vals = { var: val, ...}
- export() dict
Export attributes into dictionary.
- replace(dict) None
Replace attributes from dictionary, unassigning values not present in input
dict
.HotThermalStorage_vals = { var: val, ...}
- cold_tank_Thtr
HOT TES Minimum allowable cold tank HTF temperature [C]
Required: True
- Type:
float
- cold_tank_max_heat
HOT TES Rated heater capacity for cold tank heating [MW]
Required: True
- Type:
float
- h_tank
HOT TES Total height of tank (height of HTF when tank is full) [m]
Required: True
- Type:
float
- h_tank_min
HOT TES Minimum allowable HTF height in storage tank [m]
Required: True
- Type:
float
- hot_tank_Thtr
HOT TES Minimum allowable hot tank HTF temperature [C]
Required: True
- Type:
float
- hot_tank_max_heat
HOT TES Rated heater capacity for hot tank heating [MW]
Required: True
- Type:
float
- tank_pairs
HOT TES Number of equivalent tank pairs
Constraints: INTEGER
Required: True
- Type:
float
- tes_init_hot_htf_percent
HOT TES Initial fraction of available volume that is hot [%]
Required: True
- Type:
float
- u_tank
HOT TES Loss coefficient from the tank [W/m2-K]
Required: True
- Type:
float
ColdThermalStorage Group
- class PySAM.EtesPtes.EtesPtes.ColdThermalStorage
- assign(dict) None
Assign attributes from dictionary, overwriting but not removing values.
ColdThermalStorage_vals = { var: val, ...}
- export() dict
Export attributes into dictionary.
- replace(dict) None
Replace attributes from dictionary, unassigning values not present in input
dict
.ColdThermalStorage_vals = { var: val, ...}
- CT_h_tank
COLD TES Total height of tank (height of HTF when tank is full) [m]
Required: True
- Type:
float
- CT_h_tank_min
COLD TES Minimum allowable HTF height in storage tank [m]
Required: True
- Type:
float
- CT_tank_pairs
COLD TES Number of equivalent tank pairs
Constraints: INTEGER
Required: True
- Type:
float
- CT_u_tank
COLD TES Loss coefficient from the tank [W/m2-K]
Required: True
- Type:
float
TimeOfDeliveryFactors Group
- class PySAM.EtesPtes.EtesPtes.TimeOfDeliveryFactors
- assign(dict) None
Assign attributes from dictionary, overwriting but not removing values.
TimeOfDeliveryFactors_vals = { var: val, ...}
- export() dict
Export attributes into dictionary.
- replace(dict) None
Replace attributes from dictionary, unassigning values not present in input
dict
.TimeOfDeliveryFactors_vals = { var: val, ...}
- dispatch_factors_ts
Dispatch payment factor timeseries array
Required: Required if ppa_multiplier_model=1&etes_financial_model<5&is_dispatch=1&sim_type=1
- Type:
sequence
- dispatch_sched_weekday
PPA pricing weekday schedule, 12x24
Required: Required if ppa_multiplier_model=0&etes_financial_model<5&is_dispatch=1&sim_type=1
- Type:
sequence[sequence]
- dispatch_sched_weekend
PPA pricing weekend schedule, 12x24
Required: Required if ppa_multiplier_model=0&etes_financial_model<5&is_dispatch=1&sim_type=1
- Type:
sequence[sequence]
- dispatch_tod_factors
TOD factors for periods 1 through 9
Info: We added this array input after SAM 2022.12.21 to replace the functionality of former single value inputs dispatch_factor1 through dispatch_factor9
Required: Required if ppa_multiplier_model=0&etes_financial_model<5&is_dispatch=1&sim_type=1
- Type:
sequence
- ppa_multiplier_model
PPA multiplier model [0/1]
Options: 0=diurnal,1=timestep
Constraints: INTEGER,MIN=0
Required: False. Automatically set to 0 if not assigned explicitly or loaded from defaults.
- Type:
float
Revenue Group
- class PySAM.EtesPtes.EtesPtes.Revenue
- assign(dict) None
Assign attributes from dictionary, overwriting but not removing values.
Revenue_vals = { var: val, ...}
- export() dict
Export attributes into dictionary.
- replace(dict) None
Replace attributes from dictionary, unassigning values not present in input
dict
.Revenue_vals = { var: val, ...}
- ppa_price_input
PPA prices - yearly [$/kWh]
Required: Required if ppa_multiplier_model=0&etes_financial_model<5&is_dispatch=1&sim_type=1
- Type:
sequence
SystemCosts Group
- class PySAM.EtesPtes.EtesPtes.SystemCosts
- assign(dict) None
Assign attributes from dictionary, overwriting but not removing values.
SystemCosts_vals = { var: val, ...}
- export() dict
Export attributes into dictionary.
- replace(dict) None
Replace attributes from dictionary, unassigning values not present in input
dict
.SystemCosts_vals = { var: val, ...}
- CT_tes_spec_cost
Cold Temp thermal energy storage specific cost [$/kWht]
Required: True
- Type:
float
- bop_spec_cost
Balance of plant specific cost [$/kWe]
Required: True
- Type:
float
- contingency_rate
Contingency for cost overrun [%]
Required: True
- Type:
float
- cycle_spec_cost
Power cycle specific cost [$/kWe]
Required: True
- Type:
float
- epc_cost_fixed
EPC fixed [$]
Required: True
- Type:
float
- epc_cost_per_watt
EPC cost per watt [$/W]
Required: True
- Type:
float
- epc_cost_perc_of_direct
EPC cost percent of direct [%]
Required: True
- Type:
float
- heat_pump_spec_cost
Heater pump specific cost [$/kWht]
Required: True
- Type:
float
- land_cost_fixed
Land fixed [$]
Required: True
- Type:
float
- land_cost_per_watt
Land cost per watt [$/W]
Required: True
- Type:
float
- land_cost_perc_of_direct
Land cost percent of direct [%]
Required: True
- Type:
float
- sales_tax_frac
Percent of cost to which sales tax applies [%]
Required: True
- Type:
float
- tes_spec_cost
Hot Temp thermal energy storage specific cost [$/kWht]
Required: True
- Type:
float
FinancialParameters Group
- class PySAM.EtesPtes.EtesPtes.FinancialParameters
- assign(dict) None
Assign attributes from dictionary, overwriting but not removing values.
FinancialParameters_vals = { var: val, ...}
- export() dict
Export attributes into dictionary.
- replace(dict) None
Replace attributes from dictionary, unassigning values not present in input
dict
.FinancialParameters_vals = { var: val, ...}
- const_per_interest_rate1
Interest rate, loan 1 [%]
Required: True
- Type:
float
- const_per_interest_rate2
Interest rate, loan 2 [%]
Required: True
- Type:
float
- const_per_interest_rate3
Interest rate, loan 3 [%]
Required: True
- Type:
float
- const_per_interest_rate4
Interest rate, loan 4 [%]
Required: True
- Type:
float
- const_per_interest_rate5
Interest rate, loan 5 [%]
Required: True
- Type:
float
- const_per_months1
Months prior to operation, loan 1
Required: True
- Type:
float
- const_per_months2
Months prior to operation, loan 2
Required: True
- Type:
float
- const_per_months3
Months prior to operation, loan 3
Required: True
- Type:
float
- const_per_months4
Months prior to operation, loan 4
Required: True
- Type:
float
- const_per_months5
Months prior to operation, loan 5
Required: True
- Type:
float
- const_per_percent1
Percent of total installed cost, loan 1 [%]
Required: True
- Type:
float
- const_per_percent2
Percent of total installed cost, loan 2 [%]
Required: True
- Type:
float
- const_per_percent3
Percent of total installed cost, loan 3 [%]
Required: True
- Type:
float
- const_per_percent4
Percent of total installed cost, loan 4 [%]
Required: True
- Type:
float
- const_per_percent5
Percent of total installed cost, loan 5 [%]
Required: True
- Type:
float
- const_per_upfront_rate1
Upfront fee on principal, loan 1 [%]
Required: True
- Type:
float
- const_per_upfront_rate2
Upfront fee on principal, loan 2 [%]
Required: True
- Type:
float
- const_per_upfront_rate3
Upfront fee on principal, loan 3 [%]
Required: True
- Type:
float
- const_per_upfront_rate4
Upfront fee on principal, loan 4 [%]
Required: True
- Type:
float
- const_per_upfront_rate5
Upfront fee on principal, loan 5 [%]
Required: True
- Type:
float
- sales_tax_rate
Sales tax rate [%]
Required: True
- Type:
float
AdjustmentFactors Group
- class PySAM.AdjustmentFactors.AdjustmentFactors
- assign() None
Assign attributes from dictionary
- export() Dict
Export attributes into dictionary
- constant
AC Constant loss adjustment [%]
- dc_constant
DC Constant loss adjustment [%]
- dc_en_hourly
Enable DC hourly-based adjustment factors [0/1]
- dc_en_periods
Enable DC period-based adjustment factors [0/1]
- dc_en_timeindex
Enable DC lfetime adjustment factors [0/1]
- dc_hourly
DC Hourly Adjustment Factors [%]
- dc_periods
DC Period-based Adjustment Factors [%]
- dc_timeindex
DC Lifetime Adjustment Factors [%]
- en_hourly
Enable AC hourly-based adjustment factors [0/1]
- en_periods
Enable AC period-based adjustment factors [0/1]
- en_timeindex
Enable AC lfetime adjustment factors [0/1]
- hourly
AC Hourly Adjustment Factors [%]
- periods
AC Period-based Adjustment Factors [%]
- sf_constant
DC Constant loss adjustment [%]
- sf_en_hourly
Enable SF hourly-based adjustment factors [0/1]
- sf_en_periods
Enable SF period-based adjustment factors [0/1]
- sf_en_timeindex
Enable SF lfetime adjustment factors [0/1]
- sf_hourly
SF Hourly Adjustment Factors [%]
- sf_periods
SF Period-based Adjustment Factors [%]
- sf_timeindex
SF Lifetime Adjustment Factors [%]
- timeindex
AC Lifetime Adjustment Factors [%]
Outputs Group
- class PySAM.EtesPtes.EtesPtes.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, ...}
- COP_net_des
Heat pump net COP [MWe]
- Type:
float
- CT_tes_cost_calc
Cold TES cost [$]
- Type:
float
- E_hp_su_des
Heat pump startup energy [MWt-hr]
- Type:
float
- Q_CT_tes_des
Cold TES design capacity [MWt-hr]
- Type:
float
- Q_tes_des
TES design capacity [MWt-hr]
- Type:
float
- T_CT_tes_cold
TES cold temperature [C]
- Type:
sequence
- T_CT_tes_hot
TES hot temperature [C]
- Type:
sequence
- T_hp_CT_htf_cold_out
Heat pump cold tes HTF outlet temperature [C]
- Type:
sequence
- T_hp_CT_htf_hot_in
Heat pump cold tes HTF inlet temperature [C]
- Type:
sequence
- T_hp_HT_htf_cold_in
Heat pump hot tes HTF inlet temperature [C]
- Type:
sequence
- T_hp_HT_htf_hot_out
Heat pump hot tes HTF outlet temperature [C]
- Type:
sequence
- T_pc_CT_htf_cold_in
PC cold tes HTF inlet temperature [C]
- Type:
sequence
- T_pc_CT_htf_hot_out
PC cold tes HTF outlet temperature [C]
- Type:
sequence
- T_pc_HT_htf_cold_out
PC hot tes HTF outlet temperature [C]
- Type:
sequence
- T_pc_HT_htf_hot_in
PC hot tes HTF inlet temperature [C]
- Type:
sequence
- T_tes_cold
TES cold temperature [C]
- Type:
sequence
- T_tes_hot
TES hot temperature [C]
- Type:
sequence
- V_CT_tes_htf_avail
Volume of cold TES HTF available for heat transfer [m3]
- Type:
float
- V_CT_tes_htf_total
Total cold TES HTF volume [m3]
- Type:
float
- V_tes_htf_avail
Volume of TES HTF available for heat transfer [m3]
- Type:
float
- V_tes_htf_total
Total TES HTF volume [m3]
- Type:
float
- W_dot_bop_design
BOP parasitics at design [MWe]
- Type:
float
- W_dot_bop_parasitics
Parasitic power plant generation-dependent laod [MWe]
- Type:
sequence
- W_dot_fixed
Fixed parasitic at design [MWe]
- Type:
float
- W_dot_fixed_parasitics
Parasitic power plant fixed load [MWe]
- Type:
sequence
- W_dot_hp_CT_htf_pump
Heat pump cold tes HTF pump power [MWe]
- Type:
sequence
- W_dot_hp_CT_htf_pump_des
Heat pump CT HTF pump power [MWe]
- Type:
float
- W_dot_hp_HT_htf_pump
Heat pump hot tes HTF pump power [MWe]
- Type:
sequence
- W_dot_hp_HT_htf_pump_des
Heat pump HT HTF pump power [MWe]
- Type:
float
- W_dot_hp_elec_parasitic_des
Heat pump parasitic power [MWe]
- Type:
float
- W_dot_hp_in_net_des
Heat pump total power consumption [MWe]
- Type:
float
- W_dot_hp_in_thermo_des
Heat pump power into working fluid [MWe]
- Type:
float
- W_dot_hp_net
Heat pump total power in [MWe]
- Type:
sequence
- W_dot_hp_parasitics
Heat pump thermodynamic parasitics [MWe]
- Type:
sequence
- W_dot_hp_thermo
Heat pump thermodynamic power in [MWe]
- Type:
sequence
- W_dot_out_net
Total electric power to grid [MWe]
- Type:
sequence
- W_dot_pc_CT_htf_pump
PC cold tes HTF pump power [MWe]
- Type:
sequence
- W_dot_pc_CT_htf_pump_des
Cycle CT HTF pump power [MWe]
- Type:
float
- W_dot_pc_HT_htf_pump
PC hot tes HTF pump power [MWe]
- Type:
sequence
- W_dot_pc_HT_htf_pump_des
Cycle HT HTF pump power [MWe]
- Type:
float
- W_dot_pc_elec_parasitic_des
Cycle parasitic power [MWe]
- Type:
float
- W_dot_pc_net_des
Cycle net power generation [MWe]
- Type:
float
- W_dot_pc_parasitics
PC parasitics including cooling power [MWe]
- Type:
sequence
- W_dot_pc_thermo_out
PC thermodynamic power out [MWe]
- Type:
sequence
- annual_energy
Annual total electric power to grid [kWhe]
- Type:
float
- annual_energy_distribution_time
Annual energy production as function of time [kW]
- Type:
sequence[sequence]
- avg_suboptimal_rel_mip_gap
Average suboptimal relative MIP gap [%]
- Type:
float
- bop_cost_calc
BOP cost [$]
- Type:
float
- charge_capacity
Total electricity consumption at design-point charge [MWe]
- Type:
float
- construction_financing_cost
Total construction financing cost [$]
- Type:
float
- contingency_cost_calc
Contingency cost [$]
- Type:
float
- cop_hot_hp_thermo
Heat pump thermodynamic hot COP
- Type:
sequence
- cp_battery_nameplate
Battery nameplate [MWe]
- Type:
float
- cp_system_nameplate
System capacity for capacity payments [MWe]
- Type:
float
- cycle_cost_calc
Cycle cost [$]
- Type:
float
- d_CT_tank_tes
Diameter of cold TES tank [m]
- Type:
float
- d_tank_tes
Diameter of TES tank [m]
- Type:
float
- direct_subtotal_cost_calc
Direct subtotal cost [$]
- Type:
float
- disp_iter_ann
Annual sum of dispatch solver iterations
- Type:
float
- disp_obj_relax
Dispatch objective function - relaxed max
- Type:
sequence
- disp_objective
Dispatch objective function value
- Type:
sequence
- disp_objective_ann
Annual sum of dispatch objective function value [$]
- Type:
float
- disp_pceff_expected
Dispatch expected power cycle efficiency adj.
- Type:
sequence
- disp_presolve_nconstr
Dispatch number of constraints in problem
- Type:
sequence
- disp_presolve_nconstr_ann
Annual sum of dispatch problem constraint count
- Type:
float
- disp_presolve_nvar
Dispatch number of variables in problem
- Type:
sequence
- disp_presolve_nvar_ann
Annual sum of dispatch problem variable count
- Type:
float
- disp_qpbsu_expected
Dispatch expected power cycle startup energy [MWht]
- Type:
sequence
- disp_qsfprod_expected
Dispatch expected heat pump heat generation [MWt]
- Type:
sequence
- disp_qsfsu_expected
Dispatch expected heat pump startup enegy [MWt]
- Type:
sequence
- disp_rel_mip_gap
Dispatch relative MIP gap
- Type:
sequence
- disp_rev_expected
Dispatch expected revenue factor
- Type:
sequence
- disp_solve_iter
Dispatch iterations count
- Type:
sequence
- disp_solve_state
Dispatch solver state
- Type:
sequence
- disp_solve_state_ann
Annual sum of dispatch solve state
- Type:
float
- disp_solve_time
Dispatch solver time [sec]
- Type:
sequence
- disp_solve_time_ann
Annual sum of dispatch solver time [sec]
- Type:
float
- disp_subopt_flag
Dispatch suboptimal solution flag
- Type:
sequence
- disp_tes_expected
Dispatch expected TES charge level [MWht]
- Type:
sequence
- disp_wpb_expected
Dispatch expected power generation [MWe]
- Type:
sequence
- e_ch_tes
TES charge state [MWht]
- Type:
sequence
- elec_purchase_price_mult
Electricity purchase price multiplier
- Type:
sequence
- epc_cost_calc
EPC cost [$]
- Type:
float
- eta_pc_net_des
Cycle net efficiency [-]
- Type:
float
- eta_pc_thermo
PC thermodynamic efficiency
- Type:
sequence
- flip_target_percent
After-tax IRR target [%]
- Type:
float
- gen
Total electric power to grid with available derate [kWe]
- Type:
sequence
- heater_cost_calc
Heater cost [$]
- Type:
float
- installed_per_cap_cost_calc
Installed cost per capacity [$/kWe]
- Type:
float
- land_cost_calc
Land cost [$]
- Type:
float
- m_dot_balance
Relative mass flow balance error
- Type:
sequence
- m_dot_hp_CT_htf
Heat pump cold tes HTF mass flow rate [kg/s]
- Type:
sequence
- m_dot_hp_CT_htf_des
Heat pump CT HTF mass flow rate [kg/s]
- Type:
float
- m_dot_hp_HT_htf
Heat pump hot tes HTF mass flow rate [kg/s]
- Type:
sequence
- m_dot_hp_HT_htf_des
Heat pump HT HTF mass flow rate [kg/s]
- Type:
float
- m_dot_pc_CT_htf
PC cold tes HTF mass flow rate [kg/s]
- Type:
sequence
- m_dot_pc_CT_htf_des
Cycle CT HTF mass flow rate [kg/s]
- Type:
float
- m_dot_pc_HT_htf
PC hot tes HTF mass flow rate [kg/s]
- Type:
sequence
- m_dot_pc_HT_htf_des
Cycle HT HTF mass flow rate [kg/s]
- Type:
float
- mass_CT_tes_cold
TES cold tank mass (end) [kg]
- Type:
sequence
- mass_CT_tes_hot
TES hot tank mass (end) [kg]
- Type:
sequence
- mass_tes_cold
TES cold tank mass (end) [kg]
- Type:
sequence
- mass_tes_hot
TES hot tank mass (end) [kg]
- Type:
sequence
- n_op_modes
Operating modes in reporting timestep
- Type:
sequence
- nameplate
Nameplate capacity (discharge) [MWe]
- Type:
float
- op_mode_1
1st operating mode
- Type:
sequence
- op_mode_2
2nd operating mode, if applicable
- Type:
sequence
- op_mode_3
3rd operating mode, if applicable
- Type:
sequence
- operating_modes_a
First 3 operating modes tried
- Type:
sequence
- operating_modes_b
Next 3 operating modes tried
- Type:
sequence
- operating_modes_c
Final 3 operating modes tried
- Type:
sequence
- ppa_soln_mode
PPA solution mode [0/1]
- Type:
float
- q_balance
Relative energy balance error
- Type:
sequence
- q_dot_CT_tes_heater
TES freeze protection power [MWe]
- Type:
sequence
- q_dot_CT_tes_losses
TES thermal losses [MWt]
- Type:
sequence
- q_dot_ch_tes
TES charge thermal power [MWt]
- Type:
sequence
- q_dot_dc_tes
TES discharge thermal power [MWt]
- Type:
sequence
- q_dot_hp_cold_in_des
Heat pump heat input [MWt]
- Type:
float
- q_dot_hp_from_CT_htf
Heat pump thermal power from cold tes HTF [MWt]
- Type:
sequence
- q_dot_hp_hot_out_des
Heat pump heat output [MWt]
- Type:
float
- q_dot_hp_startup
Heat pump startup power [MWt]
- Type:
sequence
- q_dot_hp_to_HT_htf
Heat pump thermal power to hot tes HTF [MWt]
- Type:
sequence
- q_dot_loss_CT_tes_des
Cold TES thermal loss at design [MWt]
- Type:
float
- q_dot_loss_tes_des
TES thermal loss at design [MWt]
- Type:
float
- q_dot_pc_cold_out_thermo_des
Cycle total heat rejection [MWt]
- Type:
float
- q_dot_pc_cold_to_CTES_des
Cycle heat to cold TES [MWt]
- Type:
float
- q_dot_pc_cold_to_surroundings_des
Cycle heat to surroundings [MWt]
- Type:
float
- q_dot_pc_from_HT_htf
PC thermal power from hot tes HTF [MWt]
- Type:
sequence
- q_dot_pc_hot_in_des
Cycle heat input [MWt]
- Type:
float
- q_dot_pc_rejected
PC thermal power rejected to surroundings [MWt]
- Type:
sequence
- q_dot_pc_startup
PC startup power [MWt]
- Type:
sequence
- q_dot_pc_thermo_out
PC total heat leaving cycle [MWt]
- Type:
sequence
- q_dot_pc_to_CT_htf
PC thermal power to cold tes HTF [MWt]
- Type:
sequence
- q_dot_tes_heater
TES freeze protection power [MWe]
- Type:
sequence
- q_dot_tes_losses
TES thermal losses [MWt]
- Type:
sequence
- q_pc_target
Controller target pc heat input [MWt]
- Type:
sequence
- rte_net
Net round-trip efficiency considering all parasitics [MWe]
- Type:
float
- rte_thermo
Round-trip efficiency of working fluid cycles [MWe]
- Type:
float
- sales_tax_cost_calc
Sales tax cost [$]
- Type:
float
- system_capacity
System capacity (discharge) [kWe]
- Type:
float
- tdry
Resource dry Bulb temperature [C]
- Type:
sequence
- tes_cost_calc
TES cost [$]
- Type:
float
- time_hr
Time at end of timestep [hr]
- Type:
sequence
- total_direct_cost_calc
Total direct cost [$]
- Type:
float
- total_indirect_cost_calc
Total indirect cost [$]
- Type:
float
- total_installed_cost
Total installed cost [$]
- Type:
float
- tou_period
Time of use period
- Type:
sequence
- tshours_heater
Hours of TES relative to heater output [hr]
- Type:
float
- twet
Resource wet Bulb temperature [C]
- Type:
sequence