TcsmoltenSalt¶
Wrapper for SAM Simulation Core model: cmod_tcsmolten_salt.cpp
Creating an Instance¶
There are three methods to create a new instance of a PySAM module. Using default
populates the newclass’ attributes with default values specific to a config
. Each technology-financialconfiguration corresponds to a SAM GUI configuration. Using new
creates an instance with empty attributes. The wrap
function allows compatibility with PySSC, for details, refer to PySSC.
TcsmoltenSalt model description
CSP molten salt power tower for power generation
-
PySAM.TcsmoltenSalt.
default
(config) → TcsmoltenSalt¶ Use financial config-specific default attributes config options:
- “MSPTAllEquityPartnershipFlip”
- “MSPTLeveragedPartnershipFlip”
- “MSPTMerchantPlant”
- “MSPTSaleLeaseback”
- “MSPTSingleOwner”
-
PySAM.TcsmoltenSalt.
from_existing
(data, optional config) → TcsmoltenSalt¶ Share underlying data with an existing PySAM class. If config provided, default attributes are loaded otherwise.
-
PySAM.TcsmoltenSalt.
new
() → TcsmoltenSalt¶
-
PySAM.TcsmoltenSalt.
wrap
(ssc_data_t) → TcsmoltenSalt¶ Use existing PySSC data
Warning
Do not call PySSC.data_free on the ssc_data_t provided to
wrap
Functions¶
-
class
PySAM.TcsmoltenSalt.
TcsmoltenSalt
¶ 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
-
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.TcsmoltenSalt.TcsmoltenSalt.
SolarResource
¶ -
assign
() → None¶ Assign attributes from dictionary
SolarResource_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
solar_resource_data
¶ Weather resource data in memory
Required: False
Type: dict
-
solar_resource_file
¶ Local weather file path
Constraints: LOCAL_FILE
Required: False
Type: str
-
TimeOfDeliveryFactors Group¶
-
class
PySAM.TcsmoltenSalt.TcsmoltenSalt.
TimeOfDeliveryFactors
¶ -
assign
() → None¶ Assign attributes from dictionary
TimeOfDeliveryFactors_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
dispatch_factor1
¶ Dispatch payment factor 1
Required: If not provided, assumed to be 1
Type: float
-
dispatch_factor2
¶ Dispatch payment factor 2
Required: If not provided, assumed to be 1
Type: float
-
dispatch_factor3
¶ Dispatch payment factor 3
Required: If not provided, assumed to be 1
Type: float
-
dispatch_factor4
¶ Dispatch payment factor 4
Required: If not provided, assumed to be 1
Type: float
-
dispatch_factor5
¶ Dispatch payment factor 5
Required: If not provided, assumed to be 1
Type: float
-
dispatch_factor6
¶ Dispatch payment factor 6
Required: If not provided, assumed to be 1
Type: float
-
dispatch_factor7
¶ Dispatch payment factor 7
Required: If not provided, assumed to be 1
Type: float
-
dispatch_factor8
¶ Dispatch payment factor 8
Required: If not provided, assumed to be 1
Type: float
-
dispatch_factor9
¶ Dispatch payment factor 9
Required: If not provided, assumed to be 1
Type: float
-
dispatch_factors_ts
¶ Dispatch payment factor array
Required: True if ppa_multiplier_model=1
Type: sequence
-
dispatch_sched_weekday
¶ PPA pricing weekday schedule, 12x24
Required: If not provided, assumed to be [[1]]
Type: sequence[sequence]
-
dispatch_sched_weekend
¶ PPA pricing weekend schedule, 12x24
Required: If not provided, assumed to be [[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
-
HeliostatField Group¶
-
class
PySAM.TcsmoltenSalt.TcsmoltenSalt.
HeliostatField
¶ -
assign
() → None¶ Assign attributes from dictionary
HeliostatField_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
A_sf_in
¶ Solar field area [m^2]
Type: float
-
N_hel
¶ Number of heliostats
Type: float
-
c_atm_0
¶ Attenuation coefficient 0
Required: If not provided, assumed to be 0.006789
- Changes to this variable may require updating the values of the following:
- field_model_type
- helio_area_tot
- opt_algorithm
- opt_flux_penalty
Type: float
-
c_atm_1
¶ Attenuation coefficient 1
Required: If not provided, assumed to be 0.1046
- Changes to this variable may require updating the values of the following:
- field_model_type
- helio_area_tot
- opt_algorithm
- opt_flux_penalty
Type: float
-
c_atm_2
¶ Attenuation coefficient 2
Required: If not provided, assumed to be -0.0107
- Changes to this variable may require updating the values of the following:
- field_model_type
- helio_area_tot
- opt_algorithm
- opt_flux_penalty
Type: float
-
c_atm_3
¶ Attenuation coefficient 3
Required: If not provided, assumed to be 0.002845
- Changes to this variable may require updating the values of the following:
- field_model_type
- helio_area_tot
- opt_algorithm
- opt_flux_penalty
Type: float
-
calc_fluxmaps
¶ Include fluxmap calculations
Required: If not provided, assumed to be 0
Type: float
-
cant_type
¶ Heliostat canting method
Required: True
Type: float
-
check_max_flux
¶ Check max flux at design point
Required: If not provided, assumed to be 0
Type: float
-
csp_pt_sf_fixed_land_area
¶ Fixed land area [acre]
Required: True
Type: float
-
csp_pt_sf_land_overhead_factor
¶ Land overhead factor
Required: True
Type: float
-
dens_mirror
¶ Ratio of heliostat reflective area to profile
Required: True
- Changes to this variable may require updating the values of the following:
- field_model_type
- helio_area_tot
- opt_algorithm
- opt_flux_penalty
Type: float
-
eta_map
¶ Field efficiency array
Required: False
Type: sequence[sequence]
-
eta_map_aod_format
¶ Use 3D AOD format field efficiency array
Info: heliostat
Type: float
-
field_model_type
¶ 0=design field and tower/receiver geometry, 1=design field, 2=user specified field, 3=user performance maps vs solar position
Required: True
- This variable may need to be updated if the values of the following have changed:
- P_ref
- c_atm_0
- c_atm_1
- c_atm_2
- c_atm_3
- dens_mirror
- design_eff
- dni_des
- gross_net_conversion_factor
- h_tower
- helio_height
- helio_optical_error_mrad
- helio_positions
- helio_width
- land_area_base
- land_max
- land_min
- solarm
- tshours
Type: float
-
flux_maps
¶ Flux map intensities
Required: False
Type: sequence[sequence]
-
focus_type
¶ Heliostat focus method
Required: True
Type: float
-
hel_stow_deploy
¶ Stow/deploy elevation angle [deg]
Required: True
Type: float
-
helio_active_fraction
¶ Heliostat active fraction
Required: True
Type: float
-
helio_aim_points
¶ Heliostat aim point table [m]
Required: False
Type: sequence[sequence]
-
helio_height
¶ Heliostat height [m]
Required: True
- Changes to this variable may require updating the values of the following:
- field_model_type
- helio_area_tot
- opt_algorithm
- opt_flux_penalty
Type: float
-
helio_optical_error_mrad
¶ Heliostat optical error [mrad]
Required: True
- Changes to this variable may require updating the values of the following:
- field_model_type
- helio_area_tot
- opt_algorithm
- opt_flux_penalty
Type: float
-
helio_positions
¶ Heliostat position table
Required: True
- Changes to this variable may require updating the values of the following:
- field_model_type
- helio_area_tot
- opt_algorithm
- opt_flux_penalty
Type: sequence[sequence]
-
helio_reflectance
¶ Heliostat reflectance
Required: True
Type: float
-
helio_width
¶ Heliostat width [m]
Required: True
- Changes to this variable may require updating the values of the following:
- field_model_type
- helio_area_tot
- opt_algorithm
- opt_flux_penalty
Type: float
-
interp_beta
¶ Interpolation beta coef. [-]
Required: If not provided, assumed to be 1.99
Type: float
-
interp_nug
¶ Interpolation nugget [-]
Required: If not provided, assumed to be 0
Type: float
-
land_area_base
¶ Base land area occupied by heliostats [acre]
Required: True
- Changes to this variable may require updating the values of the following:
- field_model_type
- helio_area_tot
- opt_algorithm
- opt_flux_penalty
Type: float
-
land_bound_list
¶ Land boundary table listing
Required: False
Type: sequence
-
land_bound_table
¶ Land boundary table [m]
Required: False
Type: sequence[sequence]
-
land_max
¶ Land max boundary [-ORm]
Required: If not provided, assumed to be 7.5
- Changes to this variable may require updating the values of the following:
- field_model_type
- helio_area_tot
- opt_algorithm
- opt_flux_penalty
Type: float
-
land_min
¶ Land min boundary [-ORm]
Required: If not provided, assumed to be 0.75
- Changes to this variable may require updating the values of the following:
- field_model_type
- helio_area_tot
- opt_algorithm
- opt_flux_penalty
Type: float
-
n_facet_x
¶ Number of heliostat facets - X
Required: True
Type: float
-
n_facet_y
¶ Number of heliostat facets - Y
Required: True
Type: float
-
opt_algorithm
¶ Optimization algorithm
Required: If not provided, assumed to be 0
- This variable may need to be updated if the values of the following have changed:
- P_ref
- c_atm_0
- c_atm_1
- c_atm_2
- c_atm_3
- dens_mirror
- design_eff
- dni_des
- gross_net_conversion_factor
- h_tower
- helio_height
- helio_optical_error_mrad
- helio_positions
- helio_width
- land_area_base
- land_max
- land_min
- solarm
- tshours
Type: float
-
opt_conv_tol
¶ Optimization convergence tolerance
Required: If not provided, assumed to be 0.001
Type: float
-
opt_flux_penalty
¶ Optimization flux overage penalty
Required: True
- This variable may need to be updated if the values of the following have changed:
- P_ref
- c_atm_0
- c_atm_1
- c_atm_2
- c_atm_3
- dens_mirror
- design_eff
- dni_des
- gross_net_conversion_factor
- h_tower
- helio_height
- helio_optical_error_mrad
- helio_positions
- helio_width
- land_area_base
- land_max
- land_min
- solarm
- tshours
Type: float
-
opt_init_step
¶ Optimization initial step size
Required: If not provided, assumed to be 0.05
Type: float
-
opt_max_iter
¶ Max number iteration steps
Required: If not provided, assumed to be 200
Type: float
-
p_start
¶ Heliostat startup energy [kWe-hr]
Required: True
Type: float
-
p_track
¶ Heliostat tracking energy [kWe]
Required: True
Type: float
-
v_wind_max
¶ Heliostat max wind velocity [m/s]
Required: True
Type: float
-
washing_frequency
¶ Mirror washing frequency [none]
Required: True
Type: float
-
water_usage_per_wash
¶ Water usage per wash [L/m2_aper]
Required: True
Type: float
-
SystemDesign Group¶
-
class
PySAM.TcsmoltenSalt.TcsmoltenSalt.
SystemDesign
¶ -
assign
() → None¶ Assign attributes from dictionary
SystemDesign_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
P_ref
¶ Reference output electric power at design condition [MW]
Required: True
- Changes to this variable may require updating the values of the following:
- field_model_type
- helio_area_tot
- opt_algorithm
- opt_flux_penalty
- wlim_series
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
- Changes to this variable may require updating the values of the following:
- field_model_type
- helio_area_tot
- opt_algorithm
- opt_flux_penalty
Type: float
-
dni_des
¶ Design-point DNI [W/m2]
Required: True
- Changes to this variable may require updating the values of the following:
- field_model_type
- helio_area_tot
- opt_algorithm
- opt_flux_penalty
Type: float
-
gross_net_conversion_factor
¶ Estimated gross to net conversion factor
Required: True
- Changes to this variable may require updating the values of the following:
- field_model_type
- helio_area_tot
- opt_algorithm
- opt_flux_penalty
Type: float
-
sf_excess
¶ Heliostat field multiple
Required: If not provided, assumed to be 1.0
Type: float
-
solarm
¶ Solar multiple [-]
Required: True
- Changes to this variable may require updating the values of the following:
- field_model_type
- helio_area_tot
- opt_algorithm
- opt_flux_penalty
Type: float
-
tshours
¶ Equivalent full-load thermal storage hours [hr]
Required: True
- Changes to this variable may require updating the values of the following:
- field_model_type
- helio_area_tot
- opt_algorithm
- opt_flux_penalty
Type: float
-
TowerAndReceiver Group¶
-
class
PySAM.TcsmoltenSalt.TcsmoltenSalt.
TowerAndReceiver
¶ -
assign
() → None¶ Assign attributes from dictionary
TowerAndReceiver_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
D_rec
¶ The overall outer diameter of the receiver [m]
Required: True
Type: float
-
Flow_type
¶ see figure on SAM Receiver page
Required: True
Type: float Type: Receiver flow pattern
-
N_panels
¶ Number of individual panels on the receiver
Constraints: INTEGER
Required: True
Type: float
-
crossover_shift
¶ Number of panels shift in receiver crossover position
Required: If not provided, assumed to be 0
Type: float
-
csp_pt_rec_max_oper_frac
¶ Maximum receiver mass flow rate fraction
Required: True
Type: float
-
d_tube_out
¶ The outer diameter of an individual receiver tube [mm]
Required: True
Type: float
-
delta_flux_hrs
¶ Hourly frequency in flux map lookup
Required: If not provided, assumed to be 1
Type: float
-
downc_tm_mult
¶ Downcomer thermal mass multiplier
Required: If not provided, assumed to be 1.0
Type: float
-
epsilon
¶ The emissivity of the receiver surface coating
Required: True
Type: float
-
eta_pump
¶ Receiver HTF pump efficiency
Required: True
Type: float
-
f_rec_min
¶ Minimum receiver mass flow rate turn down fraction
Required: True
Type: float
-
field_fl_props
¶ User defined field fluid property data [-]
Required: True
Type: sequence[sequence]
-
flux_max
¶ Maximum allowable flux
Required: If not provided, assumed to be 1000
Type: float
-
h_tower
¶ Tower height [m]
Required: True
- Changes to this variable may require updating the values of the following:
- field_model_type
- helio_area_tot
- opt_algorithm
- opt_flux_penalty
Type: float
-
heat_trace_power
¶ Riser/downcomer heat trace power during startup [kW/m]
Required: If not provided, assumed to be 500.0
Type: float
-
hl_ffact
¶ The heat loss factor (thermal loss fudge factor)
Required: True
Type: float
-
is_rec_enforce_min_startup
¶ Always enforce minimum startup time
Required: If not provided, assumed to be 0
Type: float
-
is_rec_model_trans
¶ Formulate receiver model as transient?
Required: If not provided, assumed to be 0
Type: float
-
is_rec_startup_from_T_soln
¶ Begin receiver startup from solved temperature profiles?
Required: If not provided, assumed to be 0
Type: float
-
is_rec_startup_trans
¶ Formulate receiver startup model as transient?
Required: If not provided, assumed to be 0
Type: float
-
mat_tube
¶ Receiver tube material, 2=Stainless AISI316
Required: True
Type: float
-
n_flux_days
¶ Number of days in flux map lookup
Required: If not provided, assumed to be 8
Type: float
-
piping_length_const
¶ Piping constant length [m]
Required: True
Type: float
-
piping_length_mult
¶ Piping length multiplier
Required: True
Type: float
-
piping_loss
¶ Thermal loss per meter of piping [Wt/m]
Required: True
Type: float
-
piping_loss_coeff
¶ Wetted loss coefficient for riser or downcomer [W/m2/K]
Required: If not provided, assumed to be 5.0
Type: float
-
preheat_flux
¶ Tube absorbed solar flux during preheat [kW/m2]
Required: If not provided, assumed to be 50.0
Type: float
-
preheat_target_Tdiff
¶ Target tube T at end of preheat - design pt cold HTF temperature [C]
Required: If not provided, assumed to be 25.0
Type: float
-
rec_absorptance
¶ Receiver absorptance
Required: True
Type: float
-
rec_height
¶ Receiver height [m]
Required: True
Type: float
-
rec_hl_perm2
¶ Receiver design heatloss [kW/m2]
Required: True
Type: float
-
rec_htf
¶ 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
-
rec_qf_delay
¶ Energy-based receiver startup delay (fraction of rated thermal power)
Required: True
Type: float
-
rec_su_delay
¶ Fixed startup delay time for the receiver [hr]
Required: True
Type: float
-
rec_tm_mult
¶ Receiver thermal mass multiplier
Required: If not provided, assumed to be 1.0
Type: float
-
riser_tm_mult
¶ Riser thermal mass multiplier
Required: If not provided, assumed to be 1.0
Type: float
-
startup_ramp_time
¶ Time required to reach full flux during receiver startup [hr]
Required: If not provided, assumed to be 0.0
Type: float
-
startup_target_Tdiff
¶ Target HTF T at end of startup - design pt hot HTF temperature [C]
Required: If not provided, assumed to be -5.0
Type: float
-
th_riser
¶ Riser or downcomer tube wall thickness [mm]
Required: If not provided, assumed to be 15.0
Type: float
-
th_tube
¶ The wall thickness of a single receiver tube [mm]
Required: True
Type: float
-
u_riser
¶ Design point HTF velocity in riser [m/s]
Required: If not provided, assumed to be 4.0
Type: float
-
SystemCosts Group¶
-
class
PySAM.TcsmoltenSalt.TcsmoltenSalt.
SystemCosts
¶ -
assign
() → None¶ Assign attributes from dictionary
SystemCosts_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
bop_spec_cost
¶ BOS specific cost [$/kWe]
Required: True
Type: float
-
contingency_rate
¶ Contingency for cost overrun [%]
Required: True
Type: float
-
cost_sf_fixed
¶ Solar field fixed cost [$]
Required: True
Type: float
-
csp_pt_cost_epc_fixed
¶ EPC fixed [$]
Required: True
Type: float
-
csp_pt_cost_epc_per_acre
¶ EPC cost per acre [$/acre]
Required: True
Type: float
-
csp_pt_cost_epc_per_watt
¶ EPC cost per watt [$/W]
Required: True
Type: float
-
csp_pt_cost_epc_percent
¶ EPC cost percent of direct [%]
Required: True
Type: float
-
csp_pt_cost_plm_fixed
¶ PLM fixed [$]
Required: True
Type: float
-
csp_pt_cost_plm_per_watt
¶ PLM cost per watt [$/W]
Required: True
Type: float
-
csp_pt_cost_plm_percent
¶ PLM cost percent of direct [%]
Required: True
Type: float
-
fossil_spec_cost
¶ Fossil system specific cost [$/kWe]
Required: True
Type: float
-
heliostat_spec_cost
¶ Heliostat field cost [$/m2]
Required: True
Type: float
-
land_spec_cost
¶ Total land area cost [$/acre]
Required: True
Type: float
-
plant_spec_cost
¶ Power cycle specific cost [$/kWe]
Required: True
Type: float
-
rec_cost_exp
¶ Receiver cost scaling exponent
Required: True
Type: float
-
rec_ref_area
¶ Receiver reference area for cost scale
Required: True
Type: float
-
rec_ref_cost
¶ Receiver reference cost [$]
Required: True
Type: float
-
sales_tax_frac
¶ Percent of cost to which sales tax applies [%]
Required: True
Type: float
-
site_spec_cost
¶ Site improvement cost [$/m2]
Required: True
Type: float
-
tes_spec_cost
¶ Thermal energy storage cost [$/kWht]
Required: True
Type: float
-
tower_exp
¶ Tower cost scaling exponent
Required: True
Type: float
-
tower_fixed_cost
¶ Tower fixed cost [$]
Required: True
Type: float
-
FinancialParameters Group¶
-
class
PySAM.TcsmoltenSalt.TcsmoltenSalt.
FinancialParameters
¶ -
assign
() → None¶ Assign attributes from dictionary
FinancialParameters_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
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
-
ThermalStorage Group¶
-
class
PySAM.TcsmoltenSalt.TcsmoltenSalt.
ThermalStorage
¶ -
assign
() → None¶ Assign attributes from dictionary
ThermalStorage_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
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
-
csp_pt_tes_init_hot_htf_percent
¶ Initial fraction of available volume that is hot [%]
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_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
-
u_tank
¶ Loss coefficient from the tank [W/m2-K]
Required: True
Type: float
-
RADCOOL Group¶
-
class
PySAM.TcsmoltenSalt.TcsmoltenSalt.
RADCOOL
¶ -
assign
() → None¶ Assign attributes from dictionary
RADCOOL_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
D_rad_tubes
¶ Inner diameter of tubes in radiator panel [m]
Required: If not provided, assumed to be 0
Type: float
-
L_rad
¶ Length of radiator panel row [m]
Required: If not provided, assumed to be 0
Type: float
-
L_rad_sections
¶ Length of individual radiator panel [m]
Required: If not provided, assumed to be 0
Type: float
-
T_ctes_cold_design
¶ Design value of cooled water to power block [C]
Required: If not provided, assumed to be 0
Type: float
-
T_ctes_cold_ini
¶ Initial value of cold tank [C]
Required: If not provided, assumed to be 0
Type: float
-
T_ctes_warm_design
¶ Design value of warm water returning from power block [C]
Required: If not provided, assumed to be 0
Type: float
-
T_ctes_warm_ini
¶ Initial value of warm tank [C]
Required: If not provided, assumed to be 0
Type: float
-
W_rad_tubes
¶ Center-to-center distance between tubes in radiator panel [m]
Required: If not provided, assumed to be 0
Type: float
-
ctes_cost
¶ Cost of cold storage construction [$/L]
Required: If not provided, assumed to be 0
Type: float
-
ctes_field_fl
¶ Fluid in radiator field. 3=liquid water. Other = Glycol. [-]
Required: If not provided, assumed to be 3
Type: float
-
ctes_tankpairs
¶ Number of equivalent tank pairs [-]
Required: If not provided, assumed to be 0
Type: float
-
ctes_tshours
¶ Equivalent full load storage hours [hr]
Required: If not provided, assumed to be 0
Type: float
-
ctes_type
¶ Type of cold storage (2=two tank, 3= three node) [-]
Required: If not provided, assumed to be 0
Type: float
-
epsilon_radHX
¶ Effectiveness of HX between radiative field and cold storage [-]
Required: If not provided, assumed to be .8
Type: float
-
epsilon_radbot
¶ Emmissivity of top of radiator panel bottom (facing ground) [-]
Required: If not provided, assumed to be .07
Type: float
-
epsilon_radgrnd
¶ Emmissivity of ground underneath radiator panel [-]
Required: If not provided, assumed to be .90
Type: float
-
epsilon_radtop
¶ Emmissivity of top of radiator panel [-]
Required: If not provided, assumed to be .95
Type: float
-
f_ctes_warm_ini
¶ Initial fraction of avail. volume that is warm [-]
Required: If not provided, assumed to be 0
Type: float
-
h_ctes_tank
¶ Total height of cold storage tank when full [m]
Required: If not provided, assumed to be 0
Type: float
-
h_ctes_tank_min
¶ Minimum allowable water height in storage tank [m]
Required: If not provided, assumed to be 0
Type: float
-
helio_area_tot
¶ Heliostat total reflective area [-]
Required: If not provided, assumed to be 0
- This variable may need to be updated if the values of the following have changed:
- P_ref
- c_atm_0
- c_atm_1
- c_atm_2
- c_atm_3
- dens_mirror
- design_eff
- dni_des
- gross_net_conversion_factor
- h_tower
- helio_height
- helio_optical_error_mrad
- helio_positions
- helio_width
- land_area_base
- land_max
- land_min
- solarm
- tshours
Type: float
-
k_panel
¶ Thermal conductivity of radiator panel material [W/m-K]
Required: If not provided, assumed to be 235
Type: float
-
m_dot_radpanel
¶ Mass flow rate through single radiator panel [kg/sec]
Required: If not provided, assumed to be 0
Type: float
-
n_rad_tubes
¶ Number of parallel tubes in single radiator panel [-]
Required: If not provided, assumed to be 0
Type: float
-
rad_multiplier
¶ Ratio of radiator field area to solar aperature area [-]
Required: If not provided, assumed to be 0
Type: float
-
rad_pressuredrop
¶ Average pressure drop through a radiative panel & distribution [kPa]
Required: If not provided, assumed to be 0
Type: float
-
radfluid_vol_ratio
¶ Ratio of fluid in distribution to fluid in panels [-]
Required: If not provided, assumed to be 0
Type: float
-
radiator_fluidcost
¶ Cost of circulating fluid in radiative panels [$/L]
Required: If not provided, assumed to be 0
Type: float
-
radiator_installcost
¶ Installation cost of radiative panels [$/m^2]
Required: If not provided, assumed to be 0
Type: float
-
radiator_unitcost
¶ Cost of radiative panels [$/m^2]
Required: If not provided, assumed to be 0
Type: float
-
th_rad_panel
¶ Thickness of radiator panel [m]
Required: If not provided, assumed to be 0
Type: float
-
u_ctes_tank
¶ Loss coefficient from cold storage tank [W/m2-K]
Required: If not provided, assumed to be 0
Type: float
-
PowerCycle Group¶
-
class
PySAM.TcsmoltenSalt.TcsmoltenSalt.
PowerCycle
¶ -
assign
() → None¶ Assign attributes from dictionary
PowerCycle_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
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 (224), 1=user defined, 2=sCO2 Recompression (424)
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.TcsmoltenSalt.TcsmoltenSalt.
RankineCycle
¶ -
assign
() → None¶ Assign attributes from dictionary
RankineCycle_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
CT
¶ 1=evaporative, 2=air, 3=hybrid
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
-
SystemControl Group¶
-
class
PySAM.TcsmoltenSalt.TcsmoltenSalt.
SystemControl
¶ -
assign
() → None¶ Assign attributes from dictionary
SystemControl_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
F_wc
¶ TOU array of fractions indicating wet cooling share for hybrid cooling
Required: True if pc_config=0
Type: sequence
-
ampl_data_dir
¶ AMPL data file directory
Required: If not provided, assumed to be ‘’
Type: str
-
ampl_exec_call
¶ System command to run AMPL code
Required: If not provided, assumed to be ‘ampl sdk_solution.run’
Type: str
-
aux_par
¶ Aux heater, boiler parasitic [MWe/MWcap]
Required: True
- Changes to this variable may require updating the values of the following:
- wlim_series
Type: float
-
aux_par_0
¶ Aux heater, boiler parasitic - constant coefficient
Required: True
- Changes to this variable may require updating the values of the following:
- wlim_series
Type: float
-
aux_par_1
¶ Aux heater, boiler parasitic - linear coefficient
Required: True
- Changes to this variable may require updating the values of the following:
- wlim_series
Type: float
-
aux_par_2
¶ Aux heater, boiler parasitic - quadratic coefficient
Required: True
- Changes to this variable may require updating the values of the following:
- wlim_series
Type: float
-
aux_par_f
¶ Aux heater, boiler parasitic - multiplying fraction
Required: True
- Changes to this variable may require updating the values of the following:
- wlim_series
Type: float
-
bop_par
¶ Balance of plant parasitic power fraction [MWe/MWcap]
Required: True
- Changes to this variable may require updating the values of the following:
- wlim_series
Type: float
-
bop_par_0
¶ Balance of plant parasitic power fraction - const coeff
Required: True
- Changes to this variable may require updating the values of the following:
- wlim_series
Type: float
-
bop_par_1
¶ Balance of plant parasitic power fraction - linear coeff
Required: True
- Changes to this variable may require updating the values of the following:
- wlim_series
Type: float
-
bop_par_2
¶ Balance of plant parasitic power fraction - quadratic coeff
Required: True
- Changes to this variable may require updating the values of the following:
- wlim_series
Type: float
-
bop_par_f
¶ Balance of plant parasitic power fraction - mult frac
Required: True
- Changes to this variable may require updating the values of the following:
- wlim_series
Type: float
-
disp_csu_cost
¶ Cycle startup cost [$]
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_inventory_incentive
¶ Dispatch storage terminal inventory incentive multiplier
Required: If not provided, assumed to be 0.0
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 [$/kWe-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_rsu_cost
¶ Receiver startup cost [$]
Required: True if is_dispatch=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: If not provided, assumed to be 0.99
Type: float
-
disp_timeout
¶ Max dispatch optimization solve duration [s]
Required: True if is_dispatch=1
Type: float
-
dispatch_series
¶ Time series dispatch factors
Type: sequence
-
f_turb_tou_periods
¶ Dispatch logic for turbine load fraction
Required: True
Type: sequence
-
is_ampl_engine
¶ Run dispatch optimization with external AMPL engine
Required: If not provided, assumed to be 0
Type: float
-
is_dispatch
¶ Allow dispatch optimization?
Required: If not provided, assumed to be 0
- Changes to this variable may require updating the values of the following:
- is_wlim_series
Type: float
-
is_dispatch_series
¶ Use time-series dispatch factors
Required: If not provided, assumed to be 0
Type: float
-
is_tod_pc_target_also_pc_max
¶ Is the TOD target cycle heat input also the max cycle heat input?
Required: If not provided, assumed to be 0
Type: float
-
is_wlim_series
¶ Use time-series net electricity generation limits
Required: If not provided, assumed to be 0
- This variable may need to be updated if the values of the following have changed:
- is_dispatch
Type: float
-
is_write_ampl_dat
¶ Write AMPL data files for dispatch run
Required: If not provided, assumed to be 0
Type: float
-
pb_fixed_par
¶ Fixed parasitic load - runs at all times [MWe/MWcap]
Required: True
Type: float
-
q_rec_heattrace
¶ Receiver heat trace energy consumption during startup [kWe-hr]
Required: If not provided, assumed to be 0.0
Type: float
-
q_rec_standby
¶ Receiver standby energy consumption [kWt]
Required: If not provided, assumed to be 9e99
Type: float
-
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
-
weekday_schedule
¶ 12x24 CSP operation Time-of-Use Weekday schedule
Required: True
Type: sequence[sequence]
-
weekend_schedule
¶ 12x24 CSP operation Time-of-Use Weekend schedule
Required: True
Type: sequence[sequence]
-
wlim_series
¶ Time series net electicity generation limits [kWe]
Required: True if is_wlim_series=1
- This variable may need to be updated if the values of the following have changed:
- P_ref
- aux_par
- aux_par_0
- aux_par_1
- aux_par_2
- aux_par_f
- bop_par
- bop_par_0
- bop_par_1
- bop_par_2
- bop_par_f
Type: sequence
-
UserDefinedPowerCycle Group¶
-
class
PySAM.TcsmoltenSalt.TcsmoltenSalt.
UserDefinedPowerCycle
¶ -
assign
() → None¶ Assign attributes from dictionary
UserDefinedPowerCycle_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
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
-
SCO2Cycle Group¶
-
class
PySAM.TcsmoltenSalt.TcsmoltenSalt.
SCO2Cycle
¶ -
assign
() → None¶ Assign attributes from dictionary
SCO2Cycle_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
P_high_limit
¶ Upper pressure limit in cycle [MPa]
Required: True if pc_config=2
Type: float
-
deltaT_PHX
¶ Design temperature difference in PHX [C]
Required: True if pc_config=2
Type: float
-
eta_c
¶ Isentropic efficiency of compressor(s)
Required: True if pc_config=2
Type: float
-
eta_t
¶ Isentropic efficiency of turbine
Required: True if pc_config=2
Type: float
-
fan_power_perc_net
¶ Percent of net cycle output used for fan power at design [%]
Required: True if pc_config=2
Type: float
-
is_sco2_preprocess
¶ Is sco2 off-design performance preprocessed? 1=yes
Required: If not provided, assumed to be 0
Type: float
-
recup_eff_max
¶ Maximum recuperator effectiveness
Required: True if pc_config=2
Type: float
-
sco2_T_amb_des
¶ Ambient temperature at design point [C]
Required: True if pc_config=2
Type: float
-
sco2_T_approach
¶ Temperature difference between main compressor CO2 inlet and ambient air [C]
Required: True if pc_config=2
Type: float
-
sco2_cycle_config
¶ SCO2 cycle configuration, 1=recompression, 2=partial cooling
Required: True if pc_config=2
Type: float
-
sco2ud_T_amb_high
¶ High level ambient temperature for HTF mass flow rate parametric [C]
Required: True if is_sco2_preprocess=1
Type: float
-
sco2ud_T_amb_ind_od
¶ Off design table of user-defined power cycle performance formed from parametric on T_amb [C]
Required: True if is_sco2_preprocess=1
Type: sequence[sequence]
-
sco2ud_T_amb_low
¶ Low level ambient temperature for HTF mass flow rate parametric [C]
Required: True if is_sco2_preprocess=1
Type: float
-
sco2ud_T_htf_cold_calc
¶ HTF cold temperature from sCO2 cycle des, may be different than T_htf_cold_des [C]
Required: True if is_sco2_preprocess=1
Type: float
-
sco2ud_T_htf_high
¶ High level HTF inlet temperature for T_amb parametric [C]
Required: True if is_sco2_preprocess=1
Type: float
-
sco2ud_T_htf_ind_od
¶ Off design table of user-defined power cycle performance formed from parametric on T_htf_hot [C]
Required: True if is_sco2_preprocess=1
Type: sequence[sequence]
-
sco2ud_T_htf_low
¶ Low level HTF inlet temperature for T_amb parametric [C]
Required: True if is_sco2_preprocess=1
Type: float
-
sco2ud_m_dot_htf_high
¶ High level normalized HTF mass flow rate for T_HTF parametric
Required: True if is_sco2_preprocess=1
Type: float
-
sco2ud_m_dot_htf_ind_od
¶ Off design table of user-defined power cycle performance formed from parametric on m_dot_htf [ND]
Required: True if is_sco2_preprocess=1
Type: sequence[sequence]
-
sco2ud_m_dot_htf_low
¶ Low level normalized HTF mass flow rate for T_HTF parametric
Required: True if is_sco2_preprocess=1
Type: float
-
AdjustmentFactors Group¶
-
class
PySAM.TcsmoltenSalt.TcsmoltenSalt.
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.TcsmoltenSalt.TcsmoltenSalt.
Outputs
¶ -
assign
() → None¶ Assign attributes from dictionary
Outputs_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
A_radfield
¶ Radiator field surface area [m^2]
Type: float
-
A_sf
¶ Solar field area [m^2]
Type: float
-
P_cond
¶ PC condensing presssure [Pa]
Type: sequence
-
P_cooling_tower_tot
¶ Parasitic power condenser operation [MWe]
Type: sequence
-
P_cycle
¶ PC electrical power output, gross [MWe]
Type: sequence
-
P_fixed
¶ Parasitic power fixed load [MWe]
Type: sequence
-
P_out_net
¶ Total electric power to grid [MWe]
Type: sequence
-
P_plant_balance_tot
¶ Parasitic power generation-dependent load [MWe]
Type: sequence
-
P_rec_heattrace
¶ Receiver heat trace parasitic load [MWe]
Type: sequence
-
P_tower_pump
¶ Parasitic power receiver/tower HTF pump [MWe]
Type: sequence
-
Q_thermal
¶ Receiver thermal power to HTF less piping loss [MWt]
Type: sequence
-
T_cold
¶ Cold storage cold temperature [C]
Type: sequence
-
T_cond_out
¶ PC condenser water outlet temperature [C]
Type: sequence
-
T_panel_out_max
¶ Receiver panel maximum HTF outlet temperature during timestep [C]
Type: sequence
-
T_pc_in
¶ PC HTF inlet temperature [C]
Type: sequence
-
T_pc_out
¶ PC HTF outlet temperature [C]
Type: sequence
-
T_rad_out
¶ Radiator outlet temperature [C]
Type: sequence
-
T_rec_in
¶ Receiver HTF inlet temperature [C]
Type: sequence
-
T_rec_out
¶ Receiver HTF outlet temperature [C]
Type: sequence
-
T_rec_out_end
¶ Receiver HTF outlet temperature at end of timestep [C]
Type: sequence
-
T_rec_out_max
¶ Receiver maximum HTF outlet temperature during timestep [C]
Type: sequence
-
T_tes_cold
¶ TES cold temperature [C]
Type: sequence
-
T_tes_hot
¶ TES hot temperature [C]
Type: sequence
-
T_wall_downcomer
¶ Receiver downcomer wall temperature at end of timestep [C]
Type: sequence
-
T_wall_rec_inlet
¶ Receiver inlet panel wall temperature at end of timestep [C]
Type: sequence
-
T_wall_rec_outlet
¶ Receiver outlet panel wall temperature at end of timestep [C]
Type: sequence
-
T_wall_riser
¶ Receiver riser wall temperature at end of timestep [C]
Type: sequence
-
T_warm
¶ Cold storage warm tank temperature [C]
Type: sequence
-
annual_W_cooling_tower
¶ Total of condenser operation parasitics [kWhe]
Type: float
-
annual_W_cycle_gross
¶ Electrical source - power cycle gross output [kWhe]
Type: float
-
annual_energy
¶ Annual total electric power to grid [kWhe]
Type: float
-
annual_eta_rec_th
¶ Annual receiver thermal efficiency ignoring rec reflective loss
Type: float
-
annual_eta_rec_th_incl_refl
¶ Annual receiver thermal efficiency including reflective loss
Type: float
-
annual_q_rec_inc
¶ Annual receiver incident thermal power after reflective losses [MWt-hr]
Type: float
-
annual_q_rec_loss
¶ Annual receiver convective and radiative losses [MWt-hr]
Type: float
-
annual_total_water_use
¶ Total annual water usage, cycle + mirror washing [m3]
Type: float
-
beam
¶ Resource beam normal irradiance [W/m2]
Type: sequence
-
capacity_factor
¶ Capacity factor [%]
Type: float
-
const_per_interest1
¶ Interest cost, loan 1 [$]
Type: float
-
const_per_interest2
¶ Interest cost, loan 2 [$]
Type: float
-
const_per_interest3
¶ Interest cost, loan 3 [$]
Type: float
-
const_per_interest4
¶ Interest cost, loan 4 [$]
Type: float
-
const_per_interest5
¶ Interest cost, loan 5 [$]
Type: float
-
const_per_interest_total
¶ Total interest costs, all loans [$]
Type: float
-
const_per_percent_total
¶ Total percent of installed costs, all loans [%]
Type: float
-
const_per_principal1
¶ Principal, loan 1 [$]
Type: float
-
const_per_principal2
¶ Principal, loan 2 [$]
Type: float
-
const_per_principal3
¶ Principal, loan 3 [$]
Type: float
-
const_per_principal4
¶ Principal, loan 4 [$]
Type: float
-
const_per_principal5
¶ Principal, loan 5 [$]
Type: float
-
const_per_principal_total
¶ Total principal, all loans [$]
Type: float
-
const_per_total1
¶ Total financing cost, loan 1 [$]
Type: float
-
const_per_total2
¶ Total financing cost, loan 2 [$]
Type: float
-
const_per_total3
¶ Total financing cost, loan 3 [$]
Type: float
-
const_per_total4
¶ Total financing cost, loan 4 [$]
Type: float
-
const_per_total5
¶ Total financing cost, loan 5 [$]
Type: float
-
construction_financing_cost
¶ Total construction financing cost [$]
Type: float
-
conversion_factor
¶ Gross to net conversion factor [%]
Type: float
-
csp_pt_cost_bop
¶ BOP cost [$]
Type: float
-
csp_pt_cost_contingency
¶ Contingency cost [$]
Type: float
-
csp_pt_cost_epc_total
¶ EPC and owner cost [$]
Type: float
-
csp_pt_cost_fossil
¶ Fossil backup cost [$]
Type: float
-
csp_pt_cost_heliostats
¶ Heliostat cost [$]
Type: float
-
csp_pt_cost_installed_per_capacity
¶ Estimated installed cost per cap [$]
Type: float
-
csp_pt_cost_plm_total
¶ Total land cost [$]
Type: float
-
csp_pt_cost_power_block
¶ Power cycle cost [$]
Type: float
-
csp_pt_cost_rad_field
¶ Radiative field cost$
Type: float
-
csp_pt_cost_rad_fluid
¶ Radiative fluid cost$
Type: float
-
csp_pt_cost_rad_storage
¶ Cold storage cost$
Type: float
-
csp_pt_cost_receiver
¶ Receiver cost [$]
Type: float
-
csp_pt_cost_sales_tax_total
¶ Sales tax cost [$]
Type: float
-
csp_pt_cost_site_improvements
¶ Site improvement cost [$]
Type: float
-
csp_pt_cost_storage
¶ TES cost [$]
Type: float
-
csp_pt_cost_total_land_area
¶ Total land area [acre]
Type: float
-
csp_pt_cost_tower
¶ Tower cost [$]
Type: float
-
defocus
¶ Field optical focus fraction
Type: sequence
-
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_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_time
¶ Dispatch solver time [sec]
Type: sequence
-
disp_solve_time_ann
¶ Annual sum of dispatch solver time
Type: float
-
disp_tes_expected
¶ Dispatch expected TES charge level [MWht]
Type: sequence
-
disp_thermeff_expected
¶ Dispatch expected SF thermal efficiency adj.
Type: sequence
-
disp_wpb_expected
¶ Dispatch expected power generation [MWe]
Type: sequence
-
e_ch_tes
¶ TES charge state [MWht]
Type: sequence
-
eta
¶ PC efficiency, gross
Type: sequence
-
eta_field
¶ Field optical efficiency
Type: sequence
-
eta_map_out
¶ Solar field optical efficiencies
Type: sequence[sequence]
-
eta_therm
¶ Receiver thermal efficiency
Type: sequence
-
flux_maps_for_import
¶ Flux map for import
Type: sequence[sequence]
-
flux_maps_out
¶ Flux map intensities
Type: sequence[sequence]
-
gen
¶ Total electric power to grid with available derate [kWe]
Type: sequence
-
htf_pump_power
¶ Parasitic power TES and cycle HTF pump [MWe]
Type: sequence
-
is_pc_sb_allowed
¶ Is power cycle standby allowed
Type: sequence
-
is_pc_su_allowed
¶ Is power cycle startup allowed
Type: sequence
-
is_rec_su_allowed
¶ Is receiver startup allowed
Type: sequence
-
kwh_per_kw
¶ First year kWh/kW [kWh/kW]
Type: float
-
m_cold
¶ Cold storage cold tank mass [kg]
Type: sequence
-
m_dot_balance
¶ Relative mass flow balance error
Type: sequence
-
m_dot_pc
¶ PC HTF mass flow rate [kg/s]
Type: sequence
-
m_dot_rec
¶ Receiver mass flow rate [kg/s]
Type: sequence
-
m_dot_tes_ch
¶ TES charge mass flow rate [kg/s]
Type: sequence
-
m_dot_tes_dc
¶ TES discharge mass flow rate [kg/s]
Type: sequence
-
m_dot_water_pc
¶ PC water consumption, makeup + cooling [kg/s]
Type: sequence
-
m_warm
¶ Cold storage warm tank mass [kg]
Type: sequence
-
n_op_modes
¶ Operating modes in reporting timestep
Type: sequence
-
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
-
pparasi
¶ Parasitic power heliostat drives [MWe]
Type: sequence
-
pricing_mult
¶ PPA price multiplier
Type: sequence
-
q_balance
¶ Relative energy balance error
Type: sequence
-
q_ch_tes
¶ TES charge thermal power [MWt]
Type: sequence
-
q_dc_tes
¶ TES discharge thermal power [MWt]
Type: sequence
-
q_dot_est_cr_on
¶ Estimated receiver thermal power TO HTF [MWt]
Type: sequence
-
q_dot_est_cr_su
¶ Estimated receiver startup thermal power [MWt]
Type: sequence
-
q_dot_est_tes_ch
¶ Estimated max TES charge thermal power [MWt]
Type: sequence
-
q_dot_est_tes_dc
¶ Estimated max TES discharge thermal power [MWt]
Type: sequence
-
q_dot_pc_max
¶ Max thermal power to PC [MWt]
Type: sequence
-
q_dot_pc_min
¶ Thermal power for PC min operation [MWt]
Type: sequence
-
q_dot_pc_sb
¶ Thermal power for PC standby [MWt]
Type: sequence
-
q_dot_pc_startup
¶ PC startup thermal power [MWt]
Type: sequence
-
q_dot_pc_target
¶ Target thermal power to PC [MWt]
Type: sequence
-
q_dot_rec_inc
¶ Receiver incident thermal power [MWt]
Type: sequence
-
q_heater
¶ TES freeze protection power [MWe]
Type: sequence
-
q_pb
¶ PC input energy [MWt]
Type: sequence
-
q_pc_startup
¶ PC startup thermal energy [MWht]
Type: sequence
-
q_piping_losses
¶ Receiver header/tower piping losses [MWt]
Type: sequence
-
q_sf_inc
¶ Field incident thermal power [MWt]
Type: sequence
-
q_startup
¶ Receiver startup thermal energy consumed [MWt]
Type: sequence
-
q_thermal_loss
¶ Receiver convection and emission losses [MWt]
Type: sequence
-
radcool_control
¶ Radiative cooling status code [-]
Type: sequence
-
rh
¶ Resource relative humidity [%]
Type: sequence
-
sco2_preprocess_table_out
¶ sCO2 cycle preprocessed data in UDPC format
Type: sequence[sequence]
-
sf_adjust_out
¶ Field availability adjustment factor
Type: sequence
-
solaz
¶ Resource solar azimuth [deg]
Type: sequence
-
solzen
¶ Resource solar zenith [deg]
Type: sequence
-
tank_losses
¶ TES thermal losses [MWt]
Type: sequence
-
tdry
¶ Resource dry Bulb temperature [C]
Type: sequence
-
time_hr
¶ Time at end of timestep [hr]
Type: sequence
-
total_direct_cost
¶ Total direct cost [$]
Type: float
-
total_indirect_cost
¶ Total indirect cost [$]
Type: float
-
total_installed_cost
¶ Total installed cost [$]
Type: float
-
tou_value
¶ CSP operating time-of-use value
Type: sequence
-
twet
¶ Resource wet Bulb temperature [C]
Type: sequence
-
ui_direct_subtotal
¶ Direct capital precontingency cost [$]
Type: float
-
wspd
¶ Resource wind velocity [m/s]
Type: sequence
-