EtesElectricResistance¶
Wrapper for SAM Simulation Core model: cmod_etes_electric_resistance.cpp
Input Consistency Warning¶
As described in Possible Problems, some input parameters are interdependent but the equations that enforce consistency are not available in this PySAM module. Therefore, the onus is on the PySAM user to check that interdependencies are correctly handled. The variables which may require additional logic include:
- 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
- dispatch_factor1
- dispatch_factor2
- dispatch_factor3
- dispatch_factor4
- dispatch_factor5
- dispatch_factor6
- dispatch_factor7
- dispatch_factor8
- dispatch_factor9
- dispatch_factors_ts
- dispatch_sched_weekday
- dispatch_sched_weekend
- ppa_multiplier_model
Provided for each of these inputs is a list of other inputs that are potentially interdependent.
Creating an Instance¶
Refer to the Initializing a Model page for details on the different ways to create an instance of a PySAM class.
EtesElectricResistance model description
EtesElectricResistance
-
PySAM.EtesElectricResistance.
default
(config) → EtesElectricResistance¶ Use default attributes config options:
- “ETESSingleOwner”
-
PySAM.EtesElectricResistance.
from_existing
(data, optional config) → EtesElectricResistance¶ Share underlying data with an existing PySAM class. If config provided, default attributes are loaded otherwise.
-
PySAM.EtesElectricResistance.
new
() → EtesElectricResistance¶
-
PySAM.EtesElectricResistance.
wrap
(ssc_data_t) → EtesElectricResistance¶ Use existing PySSC data
Warning
Do not call PySSC.data_free on the ssc_data_t provided to
wrap
Functions¶
-
class
PySAM.EtesElectricResistance.
EtesElectricResistance
¶ 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
-
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) → Union[None, float, dict, sequence, str]¶ Get or set by name a value in any of the variable groups.
-
SolarResource Group¶
-
class
PySAM.EtesElectricResistance.EtesElectricResistance.
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
Type: str
-
SystemControl Group¶
-
class
PySAM.EtesElectricResistance.EtesElectricResistance.
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: True if is_dispatch=1
Type: float
-
disp_down_time_min
¶ Minimum time requirement for cycle to not generate power [hr]
Required: True if is_dispatch=1
Type: float
-
disp_frequency
¶ Frequency for dispatch optimization calculations [hour]
Required: True if is_dispatch=1
Type: float
-
disp_horizon
¶ Time horizon for dispatch optimization [hour]
Required: True if is_dispatch=1
Type: float
-
disp_hsu_cost
¶ Heater startup cost [$/MWe-cycle/start]
Required: True if is_dispatch=1
Type: float
-
disp_max_iter
¶ Max number of dispatch optimization iterations
Required: True if is_dispatch=1
Type: float
-
disp_mip_gap
¶ Dispatch optimization solution tolerance
Required: True if is_dispatch=1
Type: float
-
disp_pen_delta_w
¶ Dispatch cycle production change penalty [$/MWe-change]
Required: True if is_dispatch=1
Type: float
-
disp_reporting
¶ Dispatch optimization reporting level
Required: If not provided, assumed to be -1
Type: float
-
disp_spec_bb
¶ Dispatch optimization B&B heuristic
Required: If not provided, assumed to be -1
Type: float
-
disp_spec_presolve
¶ Dispatch optimization presolve heuristic
Required: If not provided, assumed to be -1
Type: float
-
disp_spec_scaling
¶ Dispatch optimization scaling heuristic
Required: If not provided, assumed to be -1
Type: float
-
disp_steps_per_hour
¶ Time steps per hour for dispatch optimization calculations
Required: If not provided, assumed to be 1
Type: float
-
disp_time_weighting
¶ Dispatch optimization future time discounting factor
Required: True if is_dispatch=1
Type: float
-
disp_timeout
¶ Max dispatch optimization solve duration [s]
Required: True if is_dispatch=1
Type: float
-
disp_up_time_min
¶ Minimum time requirement for cycle to generate power [hr]
Required: True if is_dispatch=1
Type: float
-
is_dispatch
¶ Allow dispatch optimization?
Required: If not provided, assumed to be 0
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: If not provided, assumed to be 1
Type: float Type: 1 (default)
-
time_start
¶ Simulation start time [s]
Required: If not provided, assumed to be 0
Type: float
-
time_steps_per_hour
¶ Number of simulation time steps per hour
Required: If not provided, assumed to be -1
Type: float
-
time_stop
¶ Simulation stop time [s]
Required: If not provided, assumed to be 31536000
Type: float
-
vacuum_arrays
¶ Allocate arrays for only the required number of steps
Required: If not provided, assumed to be 0
Type: float
-
FinancialModel Group¶
-
class
PySAM.EtesElectricResistance.EtesElectricResistance.
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: If not provided, assumed to be 1
Type: float
-
SystemDesign Group¶
-
class
PySAM.EtesElectricResistance.EtesElectricResistance.
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, ...}
-
P_ref
¶ Reference output electric power at design condition [MW]
Required: True
Type: float
-
T_htf_cold_des
¶ Cold HTF inlet temperature at design conditions [C]
Required: True
Type: float
-
T_htf_hot_des
¶ Hot HTF outlet temperature at design conditions [C]
Required: True
Type: float
-
design_eff
¶ Power cycle efficiency at design [none]
Required: True
Type: float
-
gross_net_conversion_factor
¶ Estimated gross to net conversion factor
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
-
PowerCycle Group¶
-
class
PySAM.EtesElectricResistance.EtesElectricResistance.
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, ...}
-
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
-
pb_pump_coef
¶ Pumping power to move 1kg of HTF through PB loop [kW/kg]
Required: True
Type: float
-
pc_config
¶ PC configuration 0=Steam Rankine, 1=user defined
Constraints: INTEGER
Required: If not provided, assumed to be 0
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
-
RankineCycle Group¶
-
class
PySAM.EtesElectricResistance.EtesElectricResistance.
RankineCycle
¶ -
assign
(dict) → None¶ Assign attributes from dictionary, overwriting but not removing values
RankineCycle_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
replace
(dict) → None¶ Replace attributes from dictionary, unassigning values not present in input dict
RankineCycle_vals = { var: val, ...}
-
CT
¶ 1=evaporative, 2=air
Required: True if pc_config=0
Type: float Type: Condensor type
-
P_boil
¶ Boiler operating pressure [bar]
Required: True if pc_config=0
Type: float
-
P_cond_min
¶ Minimum condenser pressure [inHg]
Required: True if pc_config=0
Type: float
-
P_cond_ratio
¶ Condenser pressure ratio
Required: True if pc_config=0
Type: float
-
T_ITD_des
¶ ITD at design for dry system [C]
Required: True if pc_config=0
Type: float
-
T_amb_des
¶ Reference ambient temperature at design point [C]
Required: True if pc_config=0
Type: float
-
T_approach
¶ Cooling tower approach temperature [C]
Required: True if pc_config=0
Type: float
-
dT_cw_ref
¶ Reference condenser cooling water inlet/outlet temperature difference [C]
Required: True if pc_config=0
Type: float
-
n_pl_inc
¶ Number of part-load increments for the heat rejection system [none]
Constraints: INTEGER
Required: True if pc_config=0
Type: float
-
pb_bd_frac
¶ Power block blowdown steam fraction
Required: True if pc_config=0
Type: float
-
tech_type
¶ Turbine inlet pressure control 1=Fixed, 3=Sliding
Required: True if pc_config=0
Type: float
-
UserDefinedPowerCycle Group¶
-
class
PySAM.EtesElectricResistance.EtesElectricResistance.
UserDefinedPowerCycle
¶ -
assign
(dict) → None¶ Assign attributes from dictionary, overwriting but not removing values
UserDefinedPowerCycle_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
replace
(dict) → None¶ Replace attributes from dictionary, unassigning values not present in input dict
UserDefinedPowerCycle_vals = { var: val, ...}
-
ud_f_W_dot_cool_des
¶ Percent of user-defined power cycle design gross output consumed by cooling [%]
Required: True if pc_config=1
Type: float
-
ud_ind_od
¶ Off design user-defined power cycle performance as function of T_htf, m_dot_htf [ND], and T_amb
Required: True if pc_config=1
Type: sequence[sequence]
-
ud_m_dot_water_cool_des
¶ Mass flow rate of water required at user-defined power cycle design point [kg/s]
Required: True if pc_config=1
Type: float
-
ThermalStorage Group¶
-
class
PySAM.EtesElectricResistance.EtesElectricResistance.
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_tank_Thtr
¶ Minimum allowable cold tank HTF temperature [C]
Required: True
Type: float
-
cold_tank_max_heat
¶ Rated heater capacity for cold tank heating [MW]
Required: True
Type: float
-
h_tank
¶ Total height of tank (height of HTF when tank is full) [m]
Required: True
Type: float
-
h_tank_min
¶ Minimum allowable HTF height in storage tank [m]
Required: True
Type: float
-
hot_htf_code
¶ Receiver HTF, 17=Salt (60% NaNO3, 40% KNO3) 10=Salt (46.5% LiF 11.5% NaF 42% KF) 50=Lookup tables
Required: True
Type: float
-
hot_tank_Thtr
¶ Minimum allowable hot tank HTF temperature [C]
Required: True
Type: float
-
hot_tank_max_heat
¶ Rated heater capacity for hot tank heating [MW]
Required: True
Type: float
-
tank_pairs
¶ Number of equivalent tank pairs
Constraints: INTEGER
Required: True
Type: float
-
tes_init_hot_htf_percent
¶ Initial fraction of available volume that is hot [%]
Required: True
Type: float
-
u_tank
¶ Loss coefficient from the tank [W/m2-K]
Required: True
Type: float
-
ud_hot_htf_props
¶ User-defined TES fluid property data [-]
Required: True
Type: sequence[sequence]
-
Heater Group¶
-
class
PySAM.EtesElectricResistance.EtesElectricResistance.
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
-
TimeOfDeliveryFactors Group¶
-
class
PySAM.EtesElectricResistance.EtesElectricResistance.
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_factor1
¶ Dispatch payment factor 1
Required: True if ppa_multiplier_model=0&etes_financial_model<5&is_dispatch=1&sim_type=1
Type: float
-
dispatch_factor2
¶ Dispatch payment factor 2
Required: True if ppa_multiplier_model=0&etes_financial_model<5&is_dispatch=1&sim_type=1
Type: float
-
dispatch_factor3
¶ Dispatch payment factor 3
Required: True if ppa_multiplier_model=0&etes_financial_model<5&is_dispatch=1&sim_type=1
Type: float
-
dispatch_factor4
¶ Dispatch payment factor 4
Required: True if ppa_multiplier_model=0&etes_financial_model<5&is_dispatch=1&sim_type=1
Type: float
-
dispatch_factor5
¶ Dispatch payment factor 5
Required: True if ppa_multiplier_model=0&etes_financial_model<5&is_dispatch=1&sim_type=1
Type: float
-
dispatch_factor6
¶ Dispatch payment factor 6
Required: True if ppa_multiplier_model=0&etes_financial_model<5&is_dispatch=1&sim_type=1
Type: float
-
dispatch_factor7
¶ Dispatch payment factor 7
Required: True if ppa_multiplier_model=0&etes_financial_model<5&is_dispatch=1&sim_type=1
Type: float
-
dispatch_factor8
¶ Dispatch payment factor 8
Required: True if ppa_multiplier_model=0&etes_financial_model<5&is_dispatch=1&sim_type=1
Type: float
-
dispatch_factor9
¶ Dispatch payment factor 9
Required: True if ppa_multiplier_model=0&etes_financial_model<5&is_dispatch=1&sim_type=1
Type: float
-
dispatch_factors_ts
¶ Dispatch payment factor timeseries array
Required: True 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: True 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: True if ppa_multiplier_model=0&etes_financial_model<5&is_dispatch=1&sim_type=1
Type: sequence[sequence]
-
ppa_multiplier_model
¶ PPA multiplier model [0/1]
Options: 0=diurnal,1=timestep
Constraints: INTEGER,MIN=0
Required: If not provided, assumed to be 0
Type: float
-
Revenue Group¶
-
class
PySAM.EtesElectricResistance.EtesElectricResistance.
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, ...}
-
mp_energy_market_revenue
¶ Energy market revenue input
Info: Lifetime x 2[Cleared Capacity(MW),Price($/MWh)]
Required: True if etes_financial_model=6&is_dispatch=1&sim_type=1
Type: sequence[sequence]
-
ppa_price_input
¶ PPA prices - yearly [$/kWh]
Required: True if ppa_multiplier_model=0&etes_financial_model<5&is_dispatch=1&sim_type=1
Type: sequence
-
SystemCost Group¶
-
class
PySAM.EtesElectricResistance.EtesElectricResistance.
SystemCost
¶ -
assign
(dict) → None¶ Assign attributes from dictionary, overwriting but not removing values
SystemCost_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
replace
(dict) → None¶ Replace attributes from dictionary, unassigning values not present in input dict
SystemCost_vals = { var: val, ...}
-
cycle_spec_cost
¶ Power cycle specific cost [$/kWe]
Required: True
Type: float
-
SystemCosts Group¶
-
class
PySAM.EtesElectricResistance.EtesElectricResistance.
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, ...}
-
bop_spec_cost
¶ Balance of plant specific cost [$/kWe]
Required: True
Type: float
-
contingency_rate
¶ Contingency for cost overrun [%]
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
-
heater_spec_cost
¶ Heater 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
¶ Thermal energy storage specific cost [$/kWht]
Required: True
Type: float
-
FinancialParameters Group¶
-
class
PySAM.EtesElectricResistance.EtesElectricResistance.
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.EtesElectricResistance.EtesElectricResistance.
AdjustmentFactors
¶ -
assign
() → None¶ Assign attributes from dictionary
-
export
() → Dict¶ Export attributes into dictionary
-
constant
¶ float
Type: type
-
dc_constant
¶ DC Constant loss adjustment [%]
-
dc_hourly
¶ DC Hourly Adjustment Factors [%]
-
dc_periods
¶ DC Period-based Adjustment Factors [%]
-
hourly
¶ AC Hourly Adjustment Factors [%]
-
periods
¶ AC Period-based Adjustment Factors [%]
-
sf_constant
¶ DC Constant loss adjustment [%]
-
sf_hourly
¶ DC Hourly Adjustment Factors [%]
-
sf_periods
¶ DC Period-based Adjustment Factors [%]
-
Outputs Group¶
-
class
PySAM.EtesElectricResistance.EtesElectricResistance.
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, ...}
-
E_heater_su_des
¶ Heater startup energy [MWt-hr]
Type: float
-
Q_tes_des
¶ TES design capacity [MWt-hr]
Type: float
-
T_htf_cycle_in
¶ PC HTF inlet temperature [C]
Type: sequence
-
T_htf_cycle_out
¶ PC HTF outlet temperature [C]
Type: sequence
-
T_htf_heater_in
¶ Heater HTF inlet temperature [C]
Type: sequence
-
T_htf_heater_out
¶ Heater HTF outlet temperature [C]
Type: sequence
-
T_tes_cold
¶ TES cold temperature [C]
Type: sequence
-
T_tes_hot
¶ TES hot temperature [C]
Type: sequence
-
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_cycle_cooling
¶ PC cooling parasitics [MWe]
Type: sequence
-
W_dot_cycle_gross
¶ PC electrical power gross (no cooling parasitics) [MWe]
Type: sequence
-
W_dot_cycle_htf_pump
¶ PC HTF pumping power [MWe]
Type: sequence
-
W_dot_cycle_net
¶ PC electrical power net (with cooling parasitics) [MWe]
Type: sequence
-
W_dot_fixed_parasitics
¶ Parasitic power plant fixed load [MWe]
Type: sequence
-
W_dot_heater
¶ Heater electricity consumption [MWe]
Type: sequence
-
W_dot_out_net
¶ Total electric power to grid [MWe]
Type: sequence
-
annual_E_cycle_gross
¶ Annual cycle gross electric energy generation [MWhe]
Type: float
-
annual_E_heater
¶ Annual heater electric energy consumption [MWhe]
Type: float
-
annual_E_tes_heater
¶ Annual TES freeze heater electric energy consumption [MWhe]
Type: float
-
annual_Q_cycle_thermal_in
¶ Annual cycle thermal energy input [MWht]
Type: float
-
annual_Q_cycle_thermal_startup
¶ Annual cycle thermal energy consumed by startup [MWht]
Type: float
-
annual_Q_heater_startup
¶ Annual heater thermal energy consumed by startup [MWht]
Type: float
-
annual_Q_heater_to_htf
¶ Annual heater thermal power to HTF [MWhe]
Type: float
-
annual_Q_tes_losses
¶ Annual TES thermal energy lost to ambient [MWht]
Type: float
-
annual_energy
¶ Annual total electric power to grid [kWhe]
Type: float
-
annual_energy_full_availability
¶ Annual total electric power to grid w/ full availability [MWhe]
Type: float
-
bop_cost_calc
¶ BOP cost [$]
Type: float
-
construction_financing_cost
¶ Total construction financing cost [$]
Type: float
-
contingency_cost_calc
¶ Contingency cost [$]
Type: float
-
cp_htf_cycle_des
¶ Cycle htf cp at T ave at design [kJ/kg-K]
Type: float
-
cycle_cost_calc
¶ Cycle cost [$]
Type: float
-
d_tank_tes
¶ Diameter of TES tank [m]
Type: float
-
dens_store_htf_at_T_ave
¶ Density of TES HTF at avg temps [kg/m3]
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_qsf_expected
¶ Dispatch expected solar field available energy [MWt]
Type: sequence
-
disp_qsfprod_expected
¶ Dispatch expected solar field generation [MWt]
Type: sequence
-
disp_qsfsu_expected
¶ Dispatch expected solar field 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_cycle_gross
¶ PC efficiency gross (no cooling parasitics)
Type: sequence
-
eta_cycle_net
¶ PC efficiency net (with cooling parasitics)
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_htf_cycle
¶ PC HTF mass flow rate [kg/s]
Type: sequence
-
m_dot_htf_cycle_des
¶ Cycle htf mass flow rate at design [kg/s]
Type: float
-
m_dot_htf_heater
¶ Heater HTF mass flow rate [kg/s]
Type: sequence
-
m_dot_water_cycle
¶ PC water consumption, makeup + cooling [kg/s]
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 [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
-
ppa_soln_mode
¶ PPA solution mode [0/1]
Type: float
-
q_balance
¶ Relative energy balance error
Type: sequence
-
q_dot_ch_tes
¶ TES charge thermal power [MWt]
Type: sequence
-
q_dot_cycle
¶ PC thermal power [MWt]
Type: sequence
-
q_dot_cycle_startup
¶ PC startup thermal power [MWt]
Type: sequence
-
q_dot_dc_tes
¶ TES discharge thermal power [MWt]
Type: sequence
-
q_dot_heater_design
¶ Heater thermal output at design [MWt]
Type: float
-
q_dot_heater_startup
¶ Heater thermal power consumed during startup [MWt]
Type: sequence
-
q_dot_heater_to_htf
¶ Heater thermal power to HTF [MWt]
Type: sequence
-
q_dot_loss_tes_des
¶ TES thermal loss at design [MWt]
Type: float
-
q_dot_tes_heater
¶ TES freeze protection power [MWe]
Type: sequence
-
q_dot_tes_losses
¶ TES thermal losses [MWt]
Type: sequence
-
q_pb_design
¶ Cycle thermal input at designMWt
Type: float
-
sales_tax_cost_calc
¶ Sales tax cost [$]
Type: float
-
system_capacity
¶ System capacity [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
-