TcsMSLF

Wrapper for SAM Simulation Core model: cmod_tcsMSLF.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.

TcsMSLF model description

CSP linear Fresnel with molten salt heat transfer fluid for power generation

PySAM.TcsMSLF.default(config) → TcsMSLF

Use financial model-specific default attributes config options:

  • “MSLFAllEquityPartnershipFlip”
  • “MSLFCommercial”
  • “MSLFLCOECalculator”
  • “MSLFLeveragedPartnershipFlip”
  • “MSLFNone”
  • “MSLFSaleLeaseback”
  • “MSLFSingleOwner”
PySAM.TcsMSLF.new() → TcsMSLF
PySAM.TcsMSLF.wrap(ssc_data_t) → TcsMSLF

Use existing PySSC data

Warning

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

Functions

class PySAM.TcsMSLF.TcsMSLF

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 = { 'Weather': { var: val, ...}, ...}

execute(int verbosity) → None

Execute simulation with verbosity level 0 (default) or 1

export() → dict

Export attributes into nested dictionary

Weather Group

class PySAM.TcsMSLF.TcsMSLF.Weather
assign() → None

Assign attributes from dictionary

Weather_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

azimuth

float: Azimuth angle of surface/axis

Required: True

file_name

str: local weather file path

Constraints: LOCAL_FILE

Required: True

tilt

float: Tilt angle of surface/axis

Required: True

track_mode

float: Tracking mode

Required: True

Mslf Group

class PySAM.TcsMSLF.TcsMSLF.Mslf
assign() → None

Assign attributes from dictionary

Mslf_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

system_capacity

float: Nameplate capacity [kW]

Required: True

TouTranslator Group

class PySAM.TcsMSLF.TcsMSLF.TouTranslator
assign() → None

Assign attributes from dictionary

TouTranslator_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

weekday_schedule

sequence[sequence]: 12x24 Time of Use Values for week days

Required: True

weekend_schedule

sequence[sequence]: 12x24 Time of Use Values for week end days

Required: True

Controller Group

class PySAM.TcsMSLF.TcsMSLF.Controller
assign() → None

Assign attributes from dictionary

Controller_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

A_aperture

float: Reflective aperture area of the collector [m2]

Required: True

AbsorberMaterial

sequence: Absorber material type

Required: True

AnnulusGas

sequence: Annulus gas type (1=air; 26=Ar; 27=H2)

Required: True

ColAz

float: Collector azimuth angle [deg]

Required: True

DP_SGS

float: Pressure drop within the steam generator [bar]

Required: True

DP_coefs

sequence: Pressure drop mass flow based part-load curve

Required: True

DP_nominal

float: Pressure drop across a single collector assembly at design [bar]

Required: True

D_abs_in

sequence: The inner absorber tube diameter [m]

Required: True

D_abs_out

sequence: The outer absorber tube diameter [m]

Required: True

D_glass_in

sequence: The inner glass envelope diameter [m]

Required: True

D_glass_out

sequence: The outer glass envelope diameter [m]

Required: True

D_plug

sequence: The diameter of the absorber flow plug (optional) [m]

Required: True

Design_loss

sequence: Receiver heat loss at design [W/m]

Required: True

Dirt_mirror

float: User-defined dirt on mirror derate

Required: True

Error

float: User-defined general optical error derate

Required: True

FieldConfig

float: Number of subfield headers

Required: True

Flow_type

sequence: The flow type through the absorber

Required: True

Fluid

float: Field HTF fluid number

Constraints: INTEGER

Required: True

GeomEffects

float: Geometry effects derate

Required: True

GlazingIntactIn

sequence: The glazing intact flag

Required: True

HCE_FieldFrac

sequence: The fraction of the field occupied by this HCE type

Required: True

HDR_rough

float: Header pipe roughness [m]

Required: True

HL_T_coefs

sequence: HTF temperature-dependent heat loss coefficients [W/m-K]

Required: True

HL_w_coefs

sequence: Wind-speed-dependent heat loss coefficients [W/m-(m/s)]

Required: True

IAM_L_coefs

sequence: Incidence angle modifier coefficients - longitudinal plane

Required: True

IAM_T_coefs

sequence: Incidence angle modifier coefficients - transversal plane

Required: True

I_b

float: Direct normal incident solar irradiation [kJ/m2-hr]

Required: True

I_bn_des

float: Solar irradiation at design [W/m2]

Required: True

L_crossover

float: Length of crossover piping in a loop [m]

Required: True

L_mod

float: The length of the collector module [m]

Required: True

L_mod_spacing

float: Piping distance between sequential modules in a loop [m]

Required: True

OpticalTable

sequence[sequence]: Values of the optical efficiency table

Required: True

P_a

sequence: Annulus gas pressure [torr]

Required: True

P_amb

float: Ambient pressure [atm]

Required: True

Pipe_hl_coef

float: Loss coefficient from the header - runner pipe - and non-HCE piping [W/m2-K]

Required: True

Rough

sequence: Roughness of the internal surface [m]

Required: True

SCA_drives_elec

float: Tracking power in Watts per SCA drive [W/module]

Required: True

Shadowing

sequence: Receiver bellows shadowing loss factor

Required: True

T_amb_sf_des

float: Ambient design-point temperature for the solar field [C]

Required: True

T_cold_in

float: HTF return temperature [C]

Required: True

T_db

float: Dry bulb air temperature [C]

Required: True

T_dp

float: The dewpoint temperature [C]

Required: True

T_field_in_des

float: Label

Required: True

T_field_ini

float: Initial field temperature [C]

Required: True

T_field_out_des

float: Label

Required: True

T_fp

float: Freeze protection temperature (heat trace activation temperature) [C]

Required: True

T_loop_in_des

float: Design loop inlet temperature [C]

Required: True

T_loop_out

float: Target loop outlet temperature [C]

Required: True

T_set_aux

float: Label

Required: True

T_startup

float: Power block startup temperature [C]

Required: True

T_tank_cold_ini

float: Label

Required: True

T_tank_hot_ini

float: Label

Required: True

T_tank_hot_inlet_min

float: Minimum hot tank htf inlet temperature [C]

Required: True

Tau_envelope

sequence: Envelope transmittance

Required: True

TrackingError

float: Tracking error derate

Required: True

V_hdr_max

float: Maximum HTF velocity in the header at design [m/s]

Required: True

V_hdr_min

float: Minimum HTF velocity in the header at design [m/s]

Required: True

V_tank_hot_ini

float: Label

Required: True

V_tes_des

float: Design-point velocity to size the TES pipe diameters [m/s]

Required: True

V_wind

float: Ambient windspeed [m/s]

Required: True

V_wind_des

float: Design-point wind velocity [m/s]

Required: True

W_pb_design

float: Label

Required: True

alpha_abs

sequence: Absorber absorptance

Required: True

alpha_env

sequence: Envelope absorptance

Required: True

aux_array

sequence: Label

Required: True

bop_array

sequence: Label

Required: True

calc_design_pipe_vals

float: Calculate temps and pressures at design conditions for runners and headers [-]

Required: True

cold_tank_Thtr

float: Label

Required: True

custom_sgs_pipe_sizes

float: Use custom SGS pipe diams, wallthks, and lengths [-]

Required: True

custom_tes_p_loss

float: TES pipe losses are based on custom lengths and coeffs [-]

Required: True

cycle_cutoff_frac

float: Label

Required: True

cycle_max_frac

float: Label

Required: True

defocus

float: Defocus control

Required: True

dirt_env

sequence: Loss due to dirt on the receiver envelope

Required: True

dt_cold

float: Label

Required: True

dt_hot

float: Label

Required: True

epsilon_abs_1

sequence[sequence]: Absorber emittance - HCE variation 1

Required: True

epsilon_abs_2

sequence[sequence]: Absorber emittance - HCE variation 2

Required: True

epsilon_abs_3

sequence[sequence]: Absorber emittance - HCE variation 3

Required: True

epsilon_abs_4

sequence[sequence]: Absorber emittance - HCE variation 4

Required: True

epsilon_glass

sequence: Glass envelope emissivity

Required: True

eta_pump

float: HTF pump efficiency

Required: True

f_tc_cold

float: Label

Required: True

fc_on

float: Label

Required: True

ffrac

sequence: Label

Required: True

field_fl_props

sequence[sequence]: Fluid property data

Required: True

field_fluid

float: Label

Required: True

fossil_mode

float: Label

Constraints: INTEGER

Required: True

fthr_ok

float: Label

Constraints: INTEGER

Required: True

fthrctrl

float: Defocusing strategy

Constraints: INTEGER

Required: True

fthrok

float: Flag to allow partial defocusing of the collectors

Constraints: INTEGER

Required: True

h_tank

float: Label

Required: True

h_tank_min

float: Label

Required: True

has_hot_tank_bypass

float: Bypass valve connects field outlet to cold tank [-]

Required: True

hot_tank_Thtr

float: Label

Required: True

hx_config

float: Label

Required: True

is_hx

float: Label

Required: True

k_tes_loss_coeffs

sequence: Minor loss coeffs for the coll, gen, and bypass loops [-]

Required: True

m_dot_htfmax

float: Maximum loop HTF flow rate [kg/s]

Required: True

m_dot_htfmin

float: Minimum loop HTF flow rate [kg/s]

Required: True

mc_bal_cold

float: The heat capacity of the balance of plant on the cold side [kWht/K-MWt]

Required: True

mc_bal_hot

float: The heat capacity of the balance of plant on the hot side [kWht/K-MWt]

Required: True

mc_bal_sca

float: Non-HTF heat capacity associated with each SCA - per meter basis [Wht/K-m]

Required: True

nLoops

float: Number of loops in the field

Required: True

nMod

float: Number of collector modules in a loop

Constraints: INTEGER

Required: True

nRecVar

float: Number of receiver variantions

Constraints: INTEGER

Required: set to 4 if not provided.

nSCA

float: Label

Required: True

nodes

float: Label

Required: True

opt_model

float: The optical model

Constraints: INTEGER

Required: True

pb_fixed_par

float: Label

Required: True

pb_pump_coef

float: Label

Required: True

pb_rated_cap

float: Rated plant capacity [MWe]

Required: True

q_max_aux

float: Label

Required: True

q_pb_design

float: Label

Required: True

rec_htf_vol

float: Volume of HTF in a single collector unit per unit aperture area [L/m2-ap]

Required: True

rec_model

float: Receiver model type (1=Polynomial ; 2=Evac tube)

Constraints: INTEGER

Required: True

reflectivity

float: Solar-weighted mirror reflectivity value

Required: True

sgs_diams

sequence: Custom SGS diameters [m]

Required: True

sgs_lengths

sequence: Custom SGS lengths [m]

Required: True

sgs_wallthicks

sequence: Custom SGS wall thicknesses [m]

Required: True

solar_mult

float: Solar multiple

Required: True

solarm

float: Label

Required: True

store_fl_props

sequence[sequence]: Label

Required: True

store_fluid

float: Label

Required: True

t_ch_out_max

float: Label

Required: True

t_dis_out_min

float: Label

Required: True

t_standby_reset

float: Label

Required: True

tank_max_heat

float: Label

Required: True

tank_pairs

float: Label

Constraints: INTEGER

Required: True

tanks_in_parallel

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

Required: True

tc_fill

float: Label

Required: True

tc_void

float: Label

Required: True

tes_pump_coef

float: Label

Required: True

tes_temp

float: Label

Required: True

tes_type

float: Label

Required: True

theta_dep

float: deploy angle [deg]

Required: True

theta_stow

float: stow angle [deg]

Required: True

tshours

float: Label

Required: True

tslogic_a

sequence: Label

Required: True

tslogic_b

sequence: Label

Required: True

tslogic_c

sequence: Label

Required: True

u_tank

float: Label

Required: True

vol_tank

float: Label

Required: True

SolarField Group

class PySAM.TcsMSLF.TcsMSLF.SolarField
assign() → None

Assign attributes from dictionary

SolarField_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

washes_per_year

float: Mirror washing frequency [none]

Required: True

water_per_wash

float: Water usage per wash [L/m2_aper]

Required: True

Powerblock Group

class PySAM.TcsMSLF.TcsMSLF.Powerblock
assign() → None

Assign attributes from dictionary

Powerblock_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

CT

float: Flag for using dry cooling or wet cooling system [none]

Required: set to 0 if not provided.

F_wc

sequence: Fraction indicating wet cooling use for hybrid system [none]

Options: constant=[0,0,0,0,0,0,0,0,0]

Required: set to 0 if not provided.

P_boil

float: Boiler operating pressure [bar]

Required: set to 0 if not provided.

P_cond_min

float: Minimum condenser pressure [inHg]

Required: set to 0 if not provided.

P_cond_ratio

float: Condenser pressure ratio [none]

Required: set to 0 if not provided.

P_ref

float: Label [-]

Required: True

T_ITD_des

float: ITD at design for dry system [C]

Required: set to 0 if not provided.

T_amb_des

float: Reference ambient temperature at design point [C]

Required: set to 0 if not provided.

T_approach

float: Cooling tower approach temperature [C]

Required: set to 0 if not provided.

T_htf_cold_ref

float: Label [-]

Required: True

T_htf_hot_ref

float: Label [-]

Required: True

dT_cw_ref

float: Reference condenser cooling water inlet/outlet T diff [C]

Required: set to 0 if not provided.

eta_ref

float: Cycle thermal efficiency at design point [-]

Required: True

n_pl_inc

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

Required: set to 0 if not provided.

pb_bd_frac

float: Power block blowdown steam fraction [none]

Required: set to 0 if not provided.

pc_config

float: 0: Steam Rankine (224), 1: user defined [-]

Constraints: INTEGER

Required: set to 0 if not provided.

q_sby_frac

float: Fraction of thermal power required for standby mode [none]

Required: True

startup_frac

float: Fraction of design thermal power needed for startup [none]

Required: True

startup_time

float: Time needed for power block startup [hr]

Required: True

tech_type

float: Turbine inlet pressure control flag (sliding=user, fixed=trough) [1/2/3]

Info: tower/trough/user

Required: set to 0 if not provided.

UserDefinedPC Group

class PySAM.TcsMSLF.TcsMSLF.UserDefinedPC
assign() → None

Assign attributes from dictionary

UserDefinedPC_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

ud_T_amb_des

float: Ambient temperature at user-defined power cycle design point [C]

Required: set to 1 if not provided.

ud_T_amb_high

float: High level ambient temperature for HTF mass flow rate parametric [C]

Required: set to 1 if not provided.

ud_T_amb_ind_od

sequence[sequence]: Off design table of user-defined power cycle performance formed from parametric on T_amb [C]

Required: set to 1 if not provided.

ud_T_amb_low

float: Low level ambient temperature for HTF mass flow rate parametric [C]

Required: set to 1 if not provided.

ud_T_htf_high

float: High level HTF inlet temperature for T_amb parametric [C]

Required: set to 1 if not provided.

ud_T_htf_ind_od

sequence[sequence]: Off design table of user-defined power cycle performance formed from parametric on T_htf_hot [C]

Required: set to 1 if not provided.

ud_T_htf_low

float: Low level HTF inlet temperature for T_amb parametric [C]

Required: set to 1 if not provided.

ud_f_W_dot_cool_des

float: Percent of user-defined power cycle design gross output consumed by cooling [%]

Required: set to 1 if not provided.

ud_ind_od

sequence[sequence]: Off design user-defined power cycle performance as function of T_htf, m_dot_htf [ND], and T_amb

Required: set to 1 if not provided.

ud_m_dot_htf_high

float: High level normalized HTF mass flow rate for T_HTF parametric [-]

Required: set to 1 if not provided.

ud_m_dot_htf_ind_od

sequence[sequence]: Off design table of user-defined power cycle performance formed from parametric on m_dot_htf [ND]

Required: set to 1 if not provided.

ud_m_dot_htf_low

float: Low level normalized HTF mass flow rate for T_HTF parametric [-]

Required: set to 1 if not provided.

ud_m_dot_water_cool_des

float: Mass flow rate of water required at user-defined power cycle design point [kg/s]

Required: set to 1 if not provided.

Enet Group

class PySAM.TcsMSLF.TcsMSLF.Enet
assign() → None

Assign attributes from dictionary

Enet_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

eta_lhv

float: Label [-]

Required: True

eta_tes_htr

float: Label [-]

Required: True

fp_mode

float: Label [-]

Required: True

AdjustmentFactors Group

class PySAM.TcsMSLF.TcsMSLF.AdjustmentFactors
assign() → None

Assign attributes from dictionary

export() → Dict

Export attributes into dictionary

constant

type: float

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.TcsMSLF.TcsMSLF.Outputs
assign() → None

Assign attributes from dictionary

Outputs_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

DP_tot

sequence: Field HTF pressure drop total [bar]

E_bal_startup

sequence: Field HTF energy inertial (consumed) [MWht]

EqOptEff

sequence: Field collector and receiver optical efficiency

P_cycle

sequence: Cycle electrical power output (gross) [MWe]

Pipe_hl

sequence: Field thermal power header pipe losses [MWt]

Q_par_sf_fp

sequence: Parasitic thermal field freeze protection [MWt]

Q_par_tes_fp

sequence: Parasitic thermal TES freeze protection [MWt]

T_pb_in

sequence: Cycle HTF temperature in (hot) [C]

T_pb_out

sequence: Cycle HTF temperature out (cold) [C]

T_sys_c

sequence: Field HTF temperature cold header inlet [C]

T_sys_h

sequence: Field HTF temperature hot header outlet [C]

T_tank_cold_fin

sequence: TES HTF temperature in cold tank [C]

T_tank_cold_in

sequence: TES HTF temperature cold tank inlet [C]

T_tank_hot_fin

sequence: TES HTF temperature in hot tank [C]

T_tank_hot_in

sequence: TES HTF temperature hot tank inlet [C]

Ts_cold

sequence: TES HTF temperature HX field side cold [C]

Ts_hot

sequence: TES HTF temperature HX field side hot [C]

W_cool_par

sequence: Parasitic power condenser operation [MWe]

W_dot_pump

sequence: Parasitic power solar field HTF pump [MWe]

W_net

sequence: Cycle electrical power output (net) [MWe]

W_par_BOP

sequence: Parasitic power generation-dependent load [MWe]

W_par_aux_boiler

sequence: Parasitic power auxiliary heater operation [MWe]

annual_W_cycle_gross

float: Electrical source - Power cycle gross output [kWh]

annual_energy

float: Annual Energy [kWh]

annual_fuel_usage

float: Annual fuel usage [kWh]

annual_total_water_use

float: Total Annual Water Usage: cycle + mirror washing [m3]

beam

sequence: Resource Beam normal irradiance [W/m2]

capacity_factor

float: Capacity factor [%]

conversion_factor

float: Gross to Net Conversion Factor [%]

eta

sequence: Cycle efficiency (gross)

eta_optical

sequence: Field collector optical efficiency

eta_thermal

sequence: Field thermal efficiency

fixed_par

sequence: Parasitic power fixed load [MWe]

gen

sequence: System power generated [kW]

hour

sequence: Resource Hour of Day

htf_pump_power

sequence: Parasitic power TES and Cycle HTF pump [MWe]

kwh_per_kw

float: First year kWh/kW [kWh/kW]

m_dot_avail

sequence: Field HTF mass flow rate total [kg/hr]

m_dot_charge_field

sequence: TES HTF mass flow rate - field side of HX [kg/hr]

m_dot_discharge_tank

sequence: TES HTF mass flow rate - storage side of HX [kg/hr]

m_dot_htf2

sequence: Field HTF mass flow rate loop [kg/s]

m_dot_makeup

sequence: Cycle cooling water mass flow rate - makeup [kg/hr]

m_dot_pb

sequence: Cycle HTF mass flow rate [kg/hr]

mass_tank_cold

sequence: TES HTF mass in cold tank [kg]

mass_tank_hot

sequence: TES HTF mass in hot tank [kg]

month

sequence: Resource Month

monthly_energy

sequence: Monthly Energy [kWh]

phi_t

sequence: Field collector incidence angle - transversal [deg]

pipe_sgs_P_dsn

sequence: Pressure in SGS pipes at design conditions [bar]

pipe_sgs_T_dsn

sequence: Temperature in SGS pipes at design conditions [C]

pipe_sgs_diams

sequence: Pipe diameters in SGS [m]

pipe_sgs_mdot_dsn

sequence: Mass flow SGS pipes at design conditions [kg/s]

pipe_sgs_vel_dsn

sequence: Velocity in SGS pipes at design conditions [m/s]

pipe_sgs_wallthk

sequence: Pipe wall thickness in SGS [m]

pres

sequence: Resource Pressure [mbar]

q_abs_tot

sequence: Field thermal power absorbed [MWt]

q_aux_fuel

sequence: Fossil fuel usage (all subsystems) [MMBTU]

q_avail

sequence: Field thermal power produced [MWt]

q_dump

sequence: Field thermal power dumped [MWt]

q_inc_sf_tot

sequence: Field thermal power incident [MWt]

q_loss_spec_tot

sequence: Field thermal power avg. receiver loss [W/m]

q_loss_tot

sequence: Field thermal power receiver loss [MWt]

q_pb

sequence: Cycle thermal power input [MWt]

q_to_tes

sequence: TES thermal energy into storage [MWt]

sf_def

sequence: Field collector focus fraction

solazi

sequence: Resource Solar Azimuth [deg]

solzen

sequence: Resource Solar Zenith [deg]

system_heat_rate

float: System heat rate [MMBtu/MWh]

t_loop_outlet

sequence: Field HTF temperature loop outlet [C]

tank_losses

sequence: TES thermal losses from tank(s) [MWt]

tdry

sequence: Resource Dry bulb temperature [C]

theta_L

sequence: Field collector incidence angle - longitudinal [deg]

tou_value

sequence: Resource Time-of-use value

track_par_tot

sequence: Parasitic power field collector drives [MWe]

twet

sequence: Resource Wet bulb temperature [C]

vol_tank_cold_fin

sequence: TES HTF volume in cold tank [m3]

vol_tank_hot_fin

sequence: TES HTF volume in hot tank [m3]

vol_tank_total

sequence: TES HTF volume total [m3]

wspd

sequence: Resource Wind Speed [m/s]