CspSubcomponent

CspSubcomponent

PySAM.CspSubcomponent.default(config) → CspSubcomponent

Load defaults for the configuration config. Available configurations are:

  • None

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

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

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

Load data from a PySSC object.

Warning

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

CspSubcomponent is a wrapper for the SSC compute module cmod_csp_subcomponent.cpp

Interdependent Variables

The variables listed below are interdependent with other variables. If you change the value of one of these variables, you may need to change values of other variables. The SAM user interface manages these interdependent variables, but in PySAM, it is up to you change the value of all interdependent variables so they are consistent. See Interdependent Variables for examples and details.

  • None

Functions

class PySAM.CspSubcomponent.CspSubcomponent

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 = { 'system': { 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 = { 'system': { 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.

System Group

class PySAM.CspSubcomponent.CspSubcomponent.System
assign(dict) → None

Assign attributes from dictionary, overwriting but not removing values.

System_vals = { var: val, ...}

export() → dict

Export attributes into dictionary.

replace(dict) → None

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

System_vals = { var: val, ...}

solar_mult

Actual solar multiple of system [-]

Required: True

Type:float
t_step

Timestep duration [s]

Required: True

Type:float

Weather Group

class PySAM.CspSubcomponent.CspSubcomponent.Weather
assign(dict) → None

Assign attributes from dictionary, overwriting but not removing values.

Weather_vals = { var: val, ...}

export() → dict

Export attributes into dictionary.

replace(dict) → None

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

Weather_vals = { var: val, ...}

T_amb

Ambient temperature [C]

Required: True

Type:sequence

TES Group

class PySAM.CspSubcomponent.CspSubcomponent.TES
assign(dict) → None

Assign attributes from dictionary, overwriting but not removing values.

TES_vals = { var: val, ...}

export() → dict

Export attributes into dictionary.

replace(dict) → None

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

TES_vals = { var: val, ...}

T_sink_out

Temperature from heat sink or power block [C]

Required: True

Type:sequence
T_src_out

Temperature from heat source [C]

Required: True

Type:sequence
cold_tank_Thtr

Minimum allowable cold tank HTF temp [C]

Required: True

Type:float
cold_tank_max_heat

Rated heater capacity for cold tank heating [MWe]

Required: True

Type:float
dt_hot

Hot side HX approach temp [C]

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 temp [C]

Required: True

Type:float
hot_tank_bypassed

Is mass flow from source going straight to cold tank? [-]

Required: True

Type:sequence
hot_tank_max_heat

Rated heater capacity for hot tank heating [MWe]

Required: True

Type:float
init_hot_htf_percent

Initial fraction of avail. vol that is hot [%]

Required: True

Type:float
mdot_sink

Mass flow to heat sink or power block [kg/s]

Required: True

Type:sequence
mdot_src

Mass flow from heat source [kg/s]

Required: True

Type:sequence
store_fl_props

User defined storage fluid property data [-]

Required: True

Type:sequence[sequence]
store_fluid

Material number for storage fluid [-]

Required: True

Type:float
tank_pairs

Number of equivalent tank pairs [-]

Constraints: INTEGER

Required: True

Type:float
tshours

Equivalent full-load thermal storage hours [hr]

Required: True

Type:float
u_tank

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

Required: True

Type:float

SolarField Group

class PySAM.CspSubcomponent.CspSubcomponent.SolarField
assign(dict) → None

Assign attributes from dictionary, overwriting but not removing values.

SolarField_vals = { var: val, ...}

export() → dict

Export attributes into dictionary.

replace(dict) → None

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

SolarField_vals = { var: val, ...}

Fluid

Field HTF fluid ID number [-]

Required: True

Type:float
HDR_rough

Header pipe roughness [m]

Required: True

Type:float
T_loop_in_des

Design loop inlet temperature [C]

Required: True

Type:float
T_loop_out

Target loop outlet temperature [C]

Required: True

Type:float
calc_design_pipe_vals

Calculate temps and pressures at design conditions for runners and headers [none]

Required: True

Type:float
eta_pump

HTF pump efficiency [none]

Required: True

Type:float
field_fl_props

User defined field fluid property data [-]

Required: True

Type:sequence[sequence]

Powerblock Group

class PySAM.CspSubcomponent.CspSubcomponent.Powerblock
assign(dict) → None

Assign attributes from dictionary, overwriting but not removing values.

Powerblock_vals = { var: val, ...}

export() → dict

Export attributes into dictionary.

replace(dict) → None

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

Powerblock_vals = { var: val, ...}

P_ref

Rated plant capacity [MWe]

Required: True

Type:float
eta_ref

Power cycle efficiency at design [none]

Required: True

Type:float
pb_pump_coef

Pumping power to move 1kg of HTF through PB loop [kW/kg]

Required: True

Type:float

Controller Group

class PySAM.CspSubcomponent.CspSubcomponent.Controller
assign(dict) → None

Assign attributes from dictionary, overwriting but not removing values.

Controller_vals = { var: val, ...}

export() → dict

Export attributes into dictionary.

replace(dict) → None

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

Controller_vals = { var: val, ...}

DP_SGS

Pressure drop within the steam generator [bar]

Required: True

Type:float
T_tank_hot_inlet_min

Minimum hot tank htf inlet temperature [C]

Required: True

Type:float
V_tes_des

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

Required: True

Type:float
custom_tes_p_loss

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

Required: True

Type:float
custom_tes_pipe_sizes

Use custom TES pipe diams, wallthks, and lengths [-]

Required: True

Type:float
has_hot_tank_bypass

Bypass valve connects field outlet to cold tank [-]

Required: True

Type:float
k_tes_loss_coeffs

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

Required: True

Type:sequence[sequence]
tanks_in_parallel

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

Required: True

Type:float
tes_diams

Custom TES diameters [m]

Required: True

Type:sequence[sequence]
tes_lengths

Custom TES lengths [m]

Type:sequence[sequence]
tes_pump_coef

Pumping power to move 1kg of HTF through tes loop [kW/(kg/s)]

Required: True

Type:float
tes_wallthicks

Custom TES wall thicknesses [m]

Required: True

Type:sequence[sequence]

Outputs Group

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

T_sink_in

Temperature to heat sink or power block [C]

Type:sequence
T_src_in

Temperature to heat source [C]

Type:sequence
T_tank_cold

Temperature of cold tank (average) [C]

Type:sequence
T_tank_hot

Temperature of hot tank (average) [C]

Type:sequence