TcsmoltenSalt

CSP molten salt power tower for power generation

PySAM.TcsmoltenSalt.default(config) → TcsmoltenSalt

Load defaults for the configuration config. Available configurations are:

  • “MSPTAllEquityPartnershipFlip”
  • “MSPTLeveragedPartnershipFlip”
  • “MSPTMerchantPlant”
  • “MSPTSaleLeaseback”
  • “MSPTSingleOwner”

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.TcsmoltenSalt.from_existing(data, optional config) → TcsmoltenSalt

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

PySAM.TcsmoltenSalt.new() → TcsmoltenSalt
PySAM.TcsmoltenSalt.wrap(ssc_data_t) → TcsmoltenSalt

Load data from a PySSC object.

Warning

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

TcsmoltenSalt is a wrapper for the SSC compute module cmod_tcsmolten_salt.cpp

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

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.TcsmoltenSalt.TcsmoltenSalt.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_data

Weather resource data in memory

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:dict
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.TcsmoltenSalt.TcsmoltenSalt.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, ...}

F_wc

TOU array of fractions indicating wet cooling share for hybrid cooling

Required: Required if pc_config=0

Type:sequence
ampl_data_dir

AMPL data file directory

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

Type:str
ampl_exec_call

System command to run AMPL code

Required: False. Automatically set to ‘ampl sdk_solution.run’ if not assigned explicitly or loaded from defaults.

Type:str
aux_par

Aux heater, boiler parasitic [MWe/MWcap]

Required: True

Type:float
aux_par_0

Aux heater, boiler parasitic - constant coefficient

Required: True

Type:float
aux_par_1

Aux heater, boiler parasitic - linear coefficient

Required: True

Type:float
aux_par_2

Aux heater, boiler parasitic - quadratic coefficient

Required: True

Type:float
aux_par_f

Aux heater, boiler parasitic - multiplying fraction

Required: True

Type:float
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
can_cycle_use_standby

Can the cycle use standby operation?

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

Type:float
disp_csu_cost_rel

Cycle startup cost [$/MWe-cycle/start]

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_rel

Heater startup cost [$/MWt/start]

Required: Required if is_dispatch=1&is_parallel_htr=1

Type:float
disp_inventory_incentive

Dispatch storage terminal inventory incentive multiplier

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

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_ramping

Dispatch cycle production change penalty [$/MWe-change]

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_rsu_cost_rel

Receiver startup cost [$/MWt/start]

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: False. Automatically set to 0.99 if not assigned explicitly or loaded from defaults.

Type:float
disp_timeout

Max dispatch optimization solve duration [s]

Required: Required if is_dispatch=1

Type:float
disp_wlim_maxspec

Fixed design-point max net power to the grid (dispatch opt only)

Required: Required if is_wlim_design=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: False. Automatically set to 0 if not assigned explicitly or loaded from defaults.

Type:float
is_dispatch

Allow dispatch optimization?

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

Type:float
is_dispatch_series

Use time-series dispatch factors

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

Type:float
is_parallel_htr

Does plant include a HTF heater parallel to solar field?

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

Type:float
is_tod_pc_target_also_pc_max

Is the TOD target cycle heat input also the max cycle heat input?

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

Type:float
is_wlim_design

Use fixed design-point net electricity generation limits (dispatch opt only)

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

Type:float
is_wlim_series

Use time-series net electricity generation limits (dispatch opt only)

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

Type:float
is_write_ampl_dat

Write AMPL data files for dispatch run

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

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: False. Automatically set to 0.0 if not assigned explicitly or loaded from defaults.

Type:float
q_rec_standby

Receiver standby energy consumption [kWt]

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

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
timestep_load_fractions

Turbine load fraction for each timestep, alternative to block dispatch

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:sequence
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
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 (dispatch opt only) [kWe]

Required: Required if is_wlim_series=1

Type:sequence

FinancialModel Group

class PySAM.TcsmoltenSalt.TcsmoltenSalt.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, ...}

csp_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.TcsmoltenSalt.TcsmoltenSalt.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
dni_des

Design-point DNI [W/m2]

Required: True

Type:float
sf_excess

Heliostat field multiple

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

Type:float
solarm

Solar multiple [-]

Required: True

Type:float
tshours

Equivalent full-load thermal storage hours [hr]

Required: True

Type:float

HeliostatField Group

class PySAM.TcsmoltenSalt.TcsmoltenSalt.HeliostatField
assign(dict) → None

Assign attributes from dictionary, overwriting but not removing values.

HeliostatField_vals = { var: val, ...}

export() → dict

Export attributes into dictionary.

replace(dict) → None

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

HeliostatField_vals = { var: val, ...}

A_sf_in

Solar field area [m^2]

Required: field_model_type>3

Type:float
N_hel

Number of heliostats - in

Required: field_model_type>3

Type:float
c_atm_0

Attenuation coefficient 0

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

Type:float
c_atm_1

Attenuation coefficient 1

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

Type:float
c_atm_2

Attenuation coefficient 2

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

Type:float
c_atm_3

Attenuation coefficient 3

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

Type:float
cant_type

Heliostat canting method

Required: True

Type:float
check_max_flux

Check max flux at design point

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

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: field_model_type<4

Type:float
eta_map

Field efficiency array

Required: field_model_type>2

Type:sequence[sequence]
eta_map_aod_format

Use 3D AOD format field efficiency array

Info: heliostat

Required: field_model_type>2

Type:float
field_model_type

0=design field and tower/receiver geometry, 1=design field, 2=user specified field, 3=user flux and eta map, pass heliostat_positions to SolarPILOT for layout, 4=user flux and eta maps, no SolarPILOT, input A_sf_in, total_land_area_before_rad_cooling_in, and N_hel

Required: True

Type:float
flux_maps

Flux map intensities

Required: field_model_type>2

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 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:sequence[sequence]
helio_height

Heliostat height [m]

Required: field_model_type<4

Type:float
helio_optical_error_mrad

Heliostat optical error [mrad]

Required: True

Type:float
helio_positions

Heliostat position table - in

Required: Required if field_model_type=2|field_model_type=3

Type:sequence[sequence]
helio_reflectance

Heliostat reflectance

Required: True

Type:float
helio_width

Heliostat width [m]

Required: field_model_type<4

Type:float
interp_beta

Interpolation beta coef. [-]

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

Type:float
interp_nug

Interpolation nugget [-]

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

Type:float
land_bound_list

Land boundary table listing

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:sequence
land_bound_table

Land boundary table [m]

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:sequence[sequence]
land_max

Land max boundary [-ORm]

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

Type:float
land_min

Land min boundary [-ORm]

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

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: False. Automatically set to 1 if not assigned explicitly or loaded from defaults.

Type:float
opt_conv_tol

Optimization convergence tolerance

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

Type:float
opt_flux_penalty

Optimization flux overage penalty

Required: True

Type:float
opt_init_step

Optimization initial step size

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

Type:float
opt_max_iter

Max number iteration steps

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

Type:float
p_start

Heliostat startup energy [kWe-hr]

Required: True

Type:float
p_track

Heliostat tracking energy [kWe]

Required: True

Type:float
receiver_type

external (default), 1; cavity

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

Type:float
Type:0
total_land_area_before_rad_cooling_in

Total land area not including radiative cooling - in [acre]

Required: field_model_type>3

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

TowerAndReceiver Group

class PySAM.TcsmoltenSalt.TcsmoltenSalt.TowerAndReceiver
assign(dict) → None

Assign attributes from dictionary, overwriting but not removing values.

TowerAndReceiver_vals = { var: val, ...}

export() → dict

Export attributes into dictionary.

replace(dict) → None

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

TowerAndReceiver_vals = { var: val, ...}

D_rec

The overall outer diameter of the receiver - in [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
cav_rec_height

Cavity receiver height - in [m]

Required: Required if receiver_type=1

Type:float
cav_rec_passive_abs

Cavity receiver passive surface solar absorptance

Required: Required if receiver_type=1

Type:float
cav_rec_passive_eps

Cavity receiver passive surface thermal emissivity

Required: Required if receiver_type=1

Type:float
cav_rec_span

Cavity receiver span angle [deg]

Required: Required if receiver_type=1

Type:float
cav_rec_width

Cavity receiver aperture width - in [m]

Required: Required if receiver_type=1

Type:float
crossover_shift

Number of panels shift in receiver crossover position

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

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: False. Automatically set to 1 if not assigned explicitly or loaded from defaults.

Type:float
downc_tm_mult

Downcomer thermal mass multiplier

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

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: False. Automatically set to 1000 if not assigned explicitly or loaded from defaults.

Type:float
h_tower

Tower height - in [m]

Required: True

Type:float
heat_trace_power

Riser/downcomer heat trace power during startup [kW/m]

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

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: False. Automatically set to 1 if not assigned explicitly or loaded from defaults.

Type:float
is_rec_model_trans

Formulate receiver model as transient?

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

Type:float
is_rec_startup_from_T_soln

Begin receiver startup from solved temperature profiles?

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

Type:float
is_rec_startup_trans

Formulate receiver startup model as transient?

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

Type:float
mat_tube

Receiver tube material, 2=Stainless AISI316

Required: True

Type:float
min_fill_time

Startup time delay for filling the receiver/piping [hr]

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

Type:float
min_preheat_time

Minimum time required in preheat startup stage [hr]

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

Type:float
n_cav_rec_panels

Cavity receiver number of panels

Required: Required if receiver_type=1

Type:float
n_flux_days

Number of days in flux map lookup

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

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_coefficient

Thermal loss per meter of piping [Wt/m2-K]

Type:float
preheat_flux

Tube absorbed solar flux during preheat [kW/m2]

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

Type:float
rec_absorptance

Receiver absorptance

Required: True

Type:float
rec_clearsky_dni

User-defined clear-sky DNI [W/m2]

Required: Required if rec_clearsky_model=0

Type:sequence
rec_clearsky_fraction

Weighting fraction on clear-sky DNI for receiver flow control

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

Type:float
rec_clearsky_model

None = -1, User-defined data = 0, Meinel = 1; Hottel = 2; Allen = 3; Moon = 4

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

Type:float
Type:Clearsky model
rec_height

Receiver height - in [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: False. Automatically set to 1.0 if not assigned explicitly or loaded from defaults.

Type:float
riser_tm_mult

Riser thermal mass multiplier

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

Type:float
startup_ramp_time

Time required to reach full flux during receiver startup [hr]

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

Type:float
startup_target_Tdiff

Target HTF T at end of startup - steady state hot HTF temperature [C]

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

Type:float
th_riser

Riser or downcomer tube wall thickness [mm]

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

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: False. Automatically set to 4.0 if not assigned explicitly or loaded from defaults.

Type:float

ParallelHeater Group

class PySAM.TcsmoltenSalt.TcsmoltenSalt.ParallelHeater
assign(dict) → None

Assign attributes from dictionary, overwriting but not removing values.

ParallelHeater_vals = { var: val, ...}

export() → dict

Export attributes into dictionary.

replace(dict) → None

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

ParallelHeater_vals = { var: val, ...}

f_q_dot_des_allowable_su

Fraction of design power allowed during startup [-]

Required: Required if is_parallel_htr=1

Type:float
f_q_dot_heater_min

Minimum allowable heater output as fraction of design

Required: Required if is_parallel_htr=1

Type:float
heater_efficiency

Heater electric to thermal efficiency [%]

Required: Required if is_parallel_htr=1

Type:float
heater_mult

Heater multiple relative to design cycle thermal power [-]

Required: Required if is_parallel_htr=1

Type:float
hrs_startup_at_max_rate

Duration of startup at max startup power [hr]

Required: Required if is_parallel_htr=1

Type:float

SystemCosts Group

class PySAM.TcsmoltenSalt.TcsmoltenSalt.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, ...}

allow_heater_no_dispatch_opt

Allow heater with no dispatch optimization? SAM UI relies on cmod default

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

Type:float
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
heater_spec_cost

Heater specific cost [$/kWht]

Required: Required if is_parallel_htr=1

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

ThermalStorage Group

class PySAM.TcsmoltenSalt.TcsmoltenSalt.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_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
tanks_in_parallel

Tanks are in parallel, not in series, with solar field [-]

Required: True

Type:float
tes_init_hot_htf_percent

Initial fraction of available volume that is hot [%]

Type:float
u_tank

Loss coefficient from the tank [W/m2-K]

Required: True

Type:float

RADCOOL Group

class PySAM.TcsmoltenSalt.TcsmoltenSalt.RADCOOL
assign(dict) → None

Assign attributes from dictionary, overwriting but not removing values.

RADCOOL_vals = { var: val, ...}

export() → dict

Export attributes into dictionary.

replace(dict) → None

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

RADCOOL_vals = { var: val, ...}

D_rad_tubes

Inner diameter of tubes in radiator panel [m]

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

Type:float
L_rad

Length of radiator panel row [m]

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

Type:float
L_rad_sections

Length of individual radiator panel [m]

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

Type:float
T_ctes_cold_design

Design value of cooled water to power block [C]

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

Type:float
T_ctes_cold_ini

Initial value of cold tank [C]

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

Type:float
T_ctes_warm_design

Design value of warm water returning from power block [C]

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

Type:float
T_ctes_warm_ini

Initial value of warm tank [C]

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

Type:float
W_rad_tubes

Center-to-center distance between tubes in radiator panel [m]

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

Type:float
ctes_cost

Cost of cold storage construction [$/L]

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

Type:float
ctes_field_fl

Fluid in radiator field. 3=liquid water. Other = Glycol. [-]

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

Type:float
ctes_tankpairs

Number of equivalent tank pairs [-]

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

Type:float
ctes_tshours

Equivalent full load storage hours [hr]

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

Type:float
ctes_type

Type of cold storage (2=two tank, 3= three node) [-]

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

Type:float
epsilon_radHX

Effectiveness of HX between radiative field and cold storage [-]

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

Type:float
epsilon_radbot

Emmissivity of top of radiator panel bottom (facing ground) [-]

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

Type:float
epsilon_radgrnd

Emmissivity of ground underneath radiator panel [-]

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

Type:float
epsilon_radtop

Emmissivity of top of radiator panel [-]

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

Type:float
f_ctes_warm_ini

Initial fraction of avail. volume that is warm [-]

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

Type:float
h_ctes_tank

Total height of cold storage tank when full [m]

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

Type:float
h_ctes_tank_min

Minimum allowable water height in storage tank [m]

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

Type:float
k_panel

Thermal conductivity of radiator panel material [W/m-K]

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

Type:float
m_dot_radpanel

Mass flow rate through single radiator panel [kg/sec]

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

Type:float
n_rad_tubes

Number of parallel tubes in single radiator panel [-]

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

Type:float
rad_multiplier

Ratio of radiator field area to solar aperature area [-]

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

Type:float
rad_pressuredrop

Average pressure drop through a radiative panel & distribution [kPa]

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

Type:float
radfluid_vol_ratio

Ratio of fluid in distribution to fluid in panels [-]

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

Type:float
radiator_fluidcost

Cost of circulating fluid in radiative panels [$/L]

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

Type:float
radiator_installcost

Installation cost of radiative panels [$/m^2]

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

Type:float
radiator_unitcost

Cost of radiative panels [$/m^2]

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

Type:float
th_rad_panel

Thickness of radiator panel [m]

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

Type:float
u_ctes_tank

Loss coefficient from cold storage tank [W/m2-K]

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

Type:float

PowerCycle Group

class PySAM.TcsmoltenSalt.TcsmoltenSalt.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 (224), 1=user defined

Constraints: INTEGER

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

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(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, 3=hybrid

Required: Required if pc_config=0

Type:float
Type:Condensor type
P_cond_min

Minimum condenser pressure [inHg]

Required: Required if pc_config=0

Type:float
P_cond_ratio

Condenser pressure ratio

Required: Required if pc_config=0

Type:float
T_ITD_des

ITD at design for dry system [C]

Required: Required if pc_config=0

Type:float
T_amb_des

Reference ambient temperature at design point [C]

Required: Required if pc_config=0

Type:float
T_approach

Cooling tower approach temperature [C]

Required: Required if pc_config=0

Type:float
dT_cw_ref

Reference condenser cooling water inlet/outlet temperature difference [C]

Required: Required if pc_config=0

Type:float
n_pl_inc

Number of part-load increments for the heat rejection system [none]

Constraints: INTEGER

Required: Required if pc_config=0

Type:float
pb_bd_frac

Power block blowdown steam fraction

Required: Required if pc_config=0

Type:float
tech_type

Turbine inlet pressure control 1=Fixed, 3=Sliding

Required: Required if pc_config=0

Type:float

UserDefinedPowerCycle Group

class PySAM.TcsmoltenSalt.TcsmoltenSalt.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: Required 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: Required 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: Required if pc_config=1

Type:float

TimeOfDeliveryFactors Group

class PySAM.TcsmoltenSalt.TcsmoltenSalt.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: Required if ppa_multiplier_model=0&csp_financial_model<5&is_dispatch=1&sim_type=1

Type:float
dispatch_factor2

Dispatch payment factor 2

Required: Required if ppa_multiplier_model=0&csp_financial_model<5&is_dispatch=1&sim_type=1

Type:float
dispatch_factor3

Dispatch payment factor 3

Required: Required if ppa_multiplier_model=0&csp_financial_model<5&is_dispatch=1&sim_type=1

Type:float
dispatch_factor4

Dispatch payment factor 4

Required: Required if ppa_multiplier_model=0&csp_financial_model<5&is_dispatch=1&sim_type=1

Type:float
dispatch_factor5

Dispatch payment factor 5

Required: Required if ppa_multiplier_model=0&csp_financial_model<5&is_dispatch=1&sim_type=1

Type:float
dispatch_factor6

Dispatch payment factor 6

Required: Required if ppa_multiplier_model=0&csp_financial_model<5&is_dispatch=1&sim_type=1

Type:float
dispatch_factor7

Dispatch payment factor 7

Required: Required if ppa_multiplier_model=0&csp_financial_model<5&is_dispatch=1&sim_type=1

Type:float
dispatch_factor8

Dispatch payment factor 8

Required: Required if ppa_multiplier_model=0&csp_financial_model<5&is_dispatch=1&sim_type=1

Type:float
dispatch_factor9

Dispatch payment factor 9

Required: Required if ppa_multiplier_model=0&csp_financial_model<5&is_dispatch=1&sim_type=1

Type:float
dispatch_factors_ts

Dispatch payment factor array

Required: Required if ppa_multiplier_model=1&csp_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&csp_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&csp_financial_model<5&is_dispatch=1&sim_type=1

Type:sequence[sequence]
ppa_multiplier_model

dispatch factors dispatch_factorX, 1: hourly multipliers dispatch_factors_ts [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
Type:PPA multiplier model 0

FinancialSolutionMode Group

class PySAM.TcsmoltenSalt.TcsmoltenSalt.FinancialSolutionMode
assign(dict) → None

Assign attributes from dictionary, overwriting but not removing values.

FinancialSolutionMode_vals = { var: val, ...}

export() → dict

Export attributes into dictionary.

replace(dict) → None

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

FinancialSolutionMode_vals = { var: val, ...}

ppa_soln_mode

PPA solution mode (0=Specify IRR target, 1=Specify PPA price)

Required: Required if sim_type=1&ppa_multiplier_model=0&csp_financial_model<5&is_dispatch=1&sim_type=1

Type:float

ElectricityRates Group

class PySAM.TcsmoltenSalt.TcsmoltenSalt.ElectricityRates
assign(dict) → None

Assign attributes from dictionary, overwriting but not removing values.

ElectricityRates_vals = { var: val, ...}

export() → dict

Export attributes into dictionary.

replace(dict) → None

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

ElectricityRates_vals = { var: val, ...}

en_electricity_rates

Enable electricity rates for grid purchase [0/1]

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

Type:float

Revenue Group

class PySAM.TcsmoltenSalt.TcsmoltenSalt.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: Required if csp_financial_model=6&is_dispatch=1&sim_type=1

Type:sequence[sequence]
ppa_price_input

PPA prices - yearly [$/kWh]

Required: Required if ppa_multiplier_model=0&csp_financial_model<5&is_dispatch=1&sim_type=1

Type:sequence

FinancialParameters Group

class PySAM.TcsmoltenSalt.TcsmoltenSalt.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

Deprecated Group

class PySAM.TcsmoltenSalt.TcsmoltenSalt.Deprecated
assign(dict) → None

Assign attributes from dictionary, overwriting but not removing values.

Deprecated_vals = { var: val, ...}

export() → dict

Export attributes into dictionary.

replace(dict) → None

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

Deprecated_vals = { var: val, ...}

P_boil

Boiler operating pressure [bar]

Type:float
csp_pt_tes_init_hot_htf_percent

Initial fraction of available volume that is hot [%]

Type:float
disp_csu_cost

Cycle startup cost [$]

Type:float
disp_pen_delta_w

Dispatch cycle production change penalty [$/kWe-change]

Type:float
disp_rsu_cost

Receiver startup cost [$]

Type:float
piping_loss

Thermal loss per meter of piping [Wt/m]

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(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, ...}

A_radfield

Radiator field surface area [m^2]

Type:float
A_rec

Receiver area - planar [m2]

Type:float
A_sf

Solar field area [m^2]

Type:float
D_rec_calc

The overall outer diameter of the receiver - out [m]

Type:float
E_heater_su_des

Heater startup energy [MWt-hr]

Type:float
L_tower_piping_calc

Tower piping length [m]

Type:float
N_hel_calc

Number of heliostats - out

Type:float
P_cond

PC condensing presssure [Pa]

Type:sequence
P_cond_iter_err

PC condenser presure iteration error

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

Receiver and tower HTF pumping power [MWe]

Type:sequence
Q_dot_HTF_ND_des_calc

UDPC calculated normalized heat input at design

Type:float
Q_tes_des

TES design capacity [MWt-hr]

Type:float
Q_thermal

Receiver thermal power to HTF less piping loss [MWt]

Type:sequence
Q_thermal_ss

Receiver thermal power to HTF less piping loss (steady state) [MWt]

Type:sequence
Q_thermal_ss_csky

Receiver thermal power to HTF less piping loss under clear-sky conditions (steady state) [MWt]

Type:sequence
T_amb_high_calc

UDPC high level ambient temperature [C]

Type:float
T_amb_low_calc

UDPC low level ambient temperature [C]

Type:float
T_amb_ref_calc

UDPC reference ambient temperature [C]

Type:float
T_cold

Cold storage cold temperature [C]

Type:sequence
T_cond_out

PC condenser water outlet temperature [C]

Type:sequence
T_htf_heater_in

Parallel heater HTF inlet temperature [C]

Type:sequence
T_htf_heater_out

Parallel heater HTF outlet temperature [C]

Type:sequence
T_htf_high_calc

UDPC high level HTF temperature [C]

Type:float
T_htf_low_calc

UDPC low level HTF temperature [C]

Type:float
T_htf_ref_calc

UDPC reference HTF temperature [C]

Type:float
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
V_tes_htf_avail_des

TES volume of HTF available for heat transfer [m3]

Type:float
V_tes_htf_total_des

TES total HTF volume [m3]

Type:float
W_dot_bop_design

BOP parasitics at design [MWe]

Type:float
W_dot_col_tracking_des

Collector tracking power at design [MWe]

Type:float
W_dot_cooling_ND_des_calc

UPPC calculated normalized cooling power at design

Type:float
W_dot_cycle_cooling_des

PC cooling power at design [MWe]

Type:float
W_dot_cycle_pump_des

PC HTF pump power at design [MWe]

Type:float
W_dot_fixed

Fixed parasitic at design [MWe]

Type:float
W_dot_gross_ND_des_calc

UDPC calculated normalized gross power at design

Type:float
W_dot_heater

Parallel heater electricity consumption [MWe]

Type:sequence
W_dot_heater_des

Heater electricity consumption at design [MWe]

Type:float
W_dot_rec_pump_des

Receiver estimated pump power at design [MWe]

Type:float
W_dot_rec_pump_rec_share_des

Receiver estimated pump power due to rec tubes at design [MWe]

Type:float
W_dot_rec_pump_tower_share_des

Receiver estimated pump power due to tower height at design [MWe]

Type:float
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
average_attenuation

Average solar field attenuation [%]

Type:float
avg_suboptimal_rel_mip_gap

Average suboptimal relative MIP gap [%]

Type:float
beam

Resource beam normal irradiance [W/m2]

Type:sequence
capacity_factor

Capacity factor [%]

Type:float
capacity_factor_highest_1000_ppas

Capacity factor at 1000 highest ppa timesteps [-]

Type:float
capacity_factor_highest_2000_ppas

Capacity factor at 2000 highest ppa timesteps [-]

Type:float
cav_panel_width

Cavity panel width [m]

Type:float
cav_radius

Cavity radius [m]

Type:float
cav_rec_area

Cavity receiver area [m2]

Type:float
cav_rec_height_calc

Cavity receiver height - out [m]

Type:float
cav_rec_width_calc

Cavity receiver aperture width - out [m]

Type:float
clearsky

Predicted clear-sky beam normal irradiance [W/m2]

Type:sequence
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
cp_battery_capacity

Battery nameplate [MWe]

Type:float
cp_system_capacity

System capacity for capacity payments [MWe]

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_tower

Tower cost [$]

Type:float
cycle_htf_pump_power

Cycle HTF pump power [MWe]

Type:sequence
d_tank_tes

TES tank diameter [m]

Type:float
defocus

Field optical focus fraction

Type:sequence
dens_store_htf_at_T_ave

TES density of HTF at avg temps [kg/m3]

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

Type:float
disp_subopt_flag

Dispatch suboptimal solution flag

Type:sequence
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_rec_thermal_des

Receiver estimated thermal efficiency at design

Type:float
eta_therm

Receiver thermal efficiency

Type:sequence
ext_rec_area

External receiver area - out [m2]

Type:float
ext_rec_aspect

External receiver aspect ratio - out

Type:float
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
h_rec_input_to_cost_model

Receiver height for cost model selected from receiver type [m]

Type:float
h_tower_calc

Tower height - out [m]

Type:float
heater_cost

Heater cost [$]

Type:float
helio_positions_calc

Heliostat position table - out

Type:sequence[sequence]
heliostat_area

Active area of heliostat [m^2]

Type:float
is_PAR_HTR_allowed

Is parallel electric heater operation allowed

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
land_area_base_calc

Land area occupied by heliostats [acre]

Type:float
land_max_abs

Max distance from tower to heliostat [m]

Type:float
land_min_abs

Min distance from tower to heliostat [m]

Type:float
m_cold

Cold storage cold tank mass [kg]

Type:sequence
m_dot_balance

Relative mass flow balance error

Type:sequence
m_dot_cr_to_tes_hot

field to hot TES [kg/s]

Type:sequence
Type:Mass flow
m_dot_cycle_to_field

cycle to field [kg/s]

Type:sequence
Type:Mass flow
m_dot_field_to_cycle

field to cycle [kg/s]

Type:sequence
Type:Mass flow
m_dot_htf_ND_high_calc

UDPC high level normalized mass flow rate

Type:float
m_dot_htf_ND_low_calc

UDPC low level normalized mass flow rate

Type:float
m_dot_htf_ND_ref_calc

UDPC reference normalized mass flow rate

Type:float
m_dot_htf_cycle_des

PC HTF mass flow rate at design [kg/s]

Type:float
m_dot_htf_heater

Parallel heater HTF mass flow rate [kg/s]

Type:sequence
m_dot_htf_rec_des

Receiver HTF mass flow rate at design [kg/s]

Type:float
m_dot_htf_rec_max

Receiver max HTF mass flow rate [kg/s]

Type:float
m_dot_pc

PC HTF mass flow rate [kg/s]

Type:sequence
m_dot_pc_to_tes_cold

cycle to cold TES [kg/s]

Type:sequence
Type:Mass flow
m_dot_rec

Receiver mass flow rate [kg/s]

Type:sequence
m_dot_tes_cold_out

TES cold out [kg/s]

Type:sequence
Type:Mass flow
m_dot_tes_hot_out

TES hot out [kg/s]

Type:sequence
Type:Mass flow
m_dot_water_ND_des_calc

UDPC calculated water use at design

Type:float
m_dot_water_pc

PC water consumption, makeup + cooling [kg/s]

Type:sequence
m_warm

Cold storage warm tank mass [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_T_amb_pars_calc

UDPC number of ambient temp parametric values

Type:float
n_T_htf_pars_calc

UDPC number of HTF parametric values

Type:float
n_m_dot_pars_calc

UDPC number of mass flow parametric values

Type:float
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
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

Field tracking power [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_cycle_des

PC thermal input at design [MWt]

Type:float
q_dot_elec_to_PAR_HTR

Electric heater thermal power target [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_heater_des

Heater design thermal power [MWt]

Type:float
q_dot_heater_startup

Parallel heater thermal power consumed during startup [MWt]

Type:sequence
q_dot_heater_to_htf

Parallel heater thermal power to HTF [MWt]

Type:sequence
q_dot_loss_tes_des

TES thermal loss at design [MWt]

Type:float
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_piping_loss_des

Receiver estimated piping loss at design [MWt]

Type:float
q_dot_rec_des

Receiver thermal output at design [MWt]

Type:float
q_dot_rec_inc

Receiver incident thermal power [MWt]

Type:sequence
q_dot_reflection_loss

Receiver reflection losses [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
rec_defocus

Receiver component defocus

Type:sequence
rec_height_calc

Receiver height - out [m]

Type:float
refl_image_error

Reflected image error [mrad]

Type:float
rh

Resource relative humidity [%]

Type:sequence
sales_energy_capacity_factor

Capacity factor considering only positive net generation periods [%]

Type:float
sf_adjust_out

Field availability adjustment factor

Type:sequence
sim_cpu_run_time

Simulation duration clock time [s]

Type:float
solaz

Resource solar azimuth [deg]

Type:sequence
solzen

Resource solar zenith [deg]

Type:sequence
system_capacity

System capacity [kWe]

Type:float
tank_losses

TES thermal losses [MWt]

Type:sequence
tdry

Resource dry Bulb temperature [C]

Type:sequence
tes_htf_pump_power

TES HTF pump power [MWe]

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
total_land_area

Total land area [acre]

Type:float
total_land_area_before_rad_cooling_calc

Total land area not including radiative cooling - out [acre]

Type:float
tou_value

CSP operating time-of-use value

Type:sequence
tshours_heater

TES duration at heater design output [hr]

Type:float
tshours_rec

TES duration at receiver design output [hr]

Type:float
twet

Resource wet Bulb temperature [C]

Type:sequence
ui_direct_subtotal

Direct capital precontingency cost [$]

Type:float
vel_rec_htf_des

Receiver estimated tube HTF velocity at design [m/s]

Type:float
wspd

Resource wind velocity [m/s]

Type:sequence