Tcsdish¶
Wrapper for SAM Simulation Core model: cmod_tcsdish.cpp
Input Consistency Warning¶
As described in Possible Problems, some input parameters are interdependent but the equations that enforce consistency are not available in this PySAM module. Therefore, the onus is on the PySAM user to check that interdependencies are correctly handled. The variables which may require additional logic include:
Provided for each of these inputs is a list of other inputs that are potentially interdependent.
Creating an Instance¶
Refer to the Initializing a Model page for details on the different ways to create an instance of a PySAM class.
Tcsdish model description
CSP dish-Stirling model with parameters for SES and WGA-ADDS systems for power generation
-
PySAM.Tcsdish.
default
(config) → Tcsdish¶ Use default attributes None
-
PySAM.Tcsdish.
from_existing
(data, optional config) → Tcsdish¶ Share underlying data with an existing PySAM class. If config provided, default attributes are loaded otherwise.
-
PySAM.Tcsdish.
new
() → Tcsdish¶
-
PySAM.Tcsdish.
wrap
(ssc_data_t) → Tcsdish¶ Use existing PySSC data
Warning
Do not call PySSC.data_free on the ssc_data_t provided to
wrap
Functions¶
-
class
PySAM.Tcsdish.
Tcsdish
¶ 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
-
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 = { 'Weather': { 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.
-
Weather Group¶
-
class
PySAM.Tcsdish.Tcsdish.
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, ...}
-
file_name
¶ local weather file path
Constraints: LOCAL_FILE
Required: True
Type: str
-
Dish Group¶
-
class
PySAM.Tcsdish.Tcsdish.
Dish
¶ -
assign
(dict) → None¶ Assign attributes from dictionary, overwriting but not removing values
Dish_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
replace
(dict) → None¶ Replace attributes from dictionary, unassigning values not present in input dict
Dish_vals = { var: val, ...}
-
system_capacity
¶ Nameplate capacity [kW]
Required: True
Type: float
-
Type295 Group¶
-
class
PySAM.Tcsdish.Tcsdish.
Type295
¶ -
assign
(dict) → None¶ Assign attributes from dictionary, overwriting but not removing values
Type295_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
replace
(dict) → None¶ Replace attributes from dictionary, unassigning values not present in input dict
Type295_vals = { var: val, ...}
-
A_proj
¶ Projected mirror area [m^2]
Required: True
Type: float
-
A_total
¶ Total Area [m^2]
Required: True
Type: float
-
I_cut_in
¶ Insolation cut in value [W/m^2]
Required: True
Type: float
-
d_ap
¶ Dish aperture diameter [m]
Required: True
Type: float
-
d_ap_test
¶ Receiver aperture diameter during test [m]
Required: True
Type: float
-
ew_dish_sep
¶ Collector separation East-West [m]
Required: True
Type: float
-
h_slot_gap
¶ Slot gap height [m]
Required: True
Type: float
-
n_ew
¶ Number of collectors East-West [-]
Constraints: INTEGER
Required: True
Type: float
-
n_ns
¶ Number of collectors North-South [-]
Constraints: INTEGER
Required: True
Type: float
-
ns_dish_sep
¶ Collector separation North-South [m]
Required: True
Type: float
-
rho
¶ Mirror surface reflectivity [-]
Required: True
Type: float
-
slope_ew
¶ East-West ground slope [%]
Required: True
Type: float
-
slope_ns
¶ North-South ground slope [%]
Required: True
Type: float
-
test_L_focal
¶ Focal length of mirror system [m]
Required: True
Type: float
-
test_if
¶ Test intercept factor [-]
Required: True
Type: float
-
w_slot_gap
¶ Slot gap width [m]
Required: True
Type: float
-
wind_stow_speed
¶ Wind stow speed [m/s]
Required: True
Type: float
-
Type296 Group¶
-
class
PySAM.Tcsdish.Tcsdish.
Type296
¶ -
assign
(dict) → None¶ Assign attributes from dictionary, overwriting but not removing values
Type296_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
replace
(dict) → None¶ Replace attributes from dictionary, unassigning values not present in input dict
Type296_vals = { var: val, ...}
-
A_absorber
¶ Absorber surface area [m^2]
Required: True
Type: float
-
A_wall
¶ Cavity surface area [m^2]
Required: True
Type: float
-
DELTA_T_DIR
¶ Delta temperature for DIR receiver [K]
Required: True
Type: float
-
DELTA_T_REFLUX
¶ Delta temp for REFLUX receiver (always = 40) [K]
Required: True
Type: float
-
L_cav
¶ Internal depth of cavity perp to aperture [m]
Required: True
Type: float
-
L_insulation
¶ Insulation thickness [m]
Required: True
Type: float
-
P_cav
¶ Internal cavity pressure with aperture covered [kPa]
Required: True
Type: float
-
T_heater_head_high
¶ Heater Head Set Temperature [K]
Required: True
Type: float
-
T_heater_head_low
¶ Header Head Lowest Temperature [K]
Required: True
Type: float
-
alpha_absorber
¶ Absorber absorptance [-]
Required: True
Type: float
-
alpha_wall
¶ Cavity absorptance [-]
Required: True
Type: float
-
d_cav
¶ Internal diameter of cavity perp to aperture [m]
Required: True
Type: float
-
k_insulation
¶ Insulation thermal conductivity [W/m-K]
Required: True
Type: float
-
rec_type
¶ Receiver type (always = 1) [-]
Required: True
Type: float
-
transmittance_cover
¶ Transmittance cover (always = 1) [-]
Required: True
Type: float
-
Type297 Group¶
-
class
PySAM.Tcsdish.Tcsdish.
Type297
¶ -
assign
(dict) → None¶ Assign attributes from dictionary, overwriting but not removing values
Type297_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
replace
(dict) → None¶ Replace attributes from dictionary, unassigning values not present in input dict
Type297_vals = { var: val, ...}
-
Beale_const_coef
¶ Beale Constant Coefficient [-]
Required: True
Type: float
-
Beale_first_coef
¶ Beale first-order coefficient [1/W]
Required: True
Type: float
-
Beale_fourth_coef
¶ Beale fourth-order coefficient [1/W^4]
Required: True
Type: float
-
Beale_square_coef
¶ Beale second-order coefficient [1/W^2]
Required: True
Type: float
-
Beale_third_coef
¶ Beale third-order coefficient [1/W^3]
Required: True
Type: float
-
Pressure_coef
¶ Pressure constant coefficient [MPa]
Required: True
Type: float
-
Pressure_first
¶ Pressure first-order coefficient [MPa/W]
Required: True
Type: float
-
T_compression_in
¶ Receiver efficiency [C]
Required: True
Type: float
-
V_displaced
¶ Displaced engine volume [m3]
Required: True
Type: float
-
engine_speed
¶ Engine operating speed [rpm]
Required: True
Type: float
-
Type298 Group¶
-
class
PySAM.Tcsdish.Tcsdish.
Type298
¶ -
assign
(dict) → None¶ Assign attributes from dictionary, overwriting but not removing values
Type298_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
replace
(dict) → None¶ Replace attributes from dictionary, unassigning values not present in input dict
Type298_vals = { var: val, ...}
-
P_controls
¶ Control System Parasitic Power, Avg. [W]
Required: True
Type: float
-
P_tower_fan
¶ Tower fan power (set to 0) [kJ/hr]
Required: True
Type: float
-
T_cool_speed2
¶ Cooling Fluid Temp. For Fan Speed 2 Cut-In [C]
Required: True
Type: float
-
T_cool_speed3
¶ Cooling Fluid Temp. For Fan Speed 3 Cut-In [C]
Required: True
Type: float
-
Tower_water_outlet_temp
¶ Tower water outlet temperature (set to 20) [C]
Required: True
Type: float
-
b_cooler
¶ b_cooler parameter [-]
Required: True
Type: float
-
b_radiator
¶ b_radiator parameter [-]
Required: True
Type: float
-
cooling_fluid
¶ 1=Water,2=V50%EG,3=V25%EG,4=V40%PG,5=V25%PG [-]
Constraints: INTEGER
Required: True
Type: float Type: Reference Condition Cooling Fluid
-
cooling_tower_on
¶ Option to use a cooling tower (set to 0=off) [-]
Required: True
Type: float
-
d_pipe_tower
¶ Runner pipe diameter to the cooling tower (set to 0.4m) [m]
Required: True
Type: float
-
epsilon_cooler_test
¶ Cooler effectiveness [-]
Required: True
Type: float
-
epsilon_power_test
¶ Test value for cooling tower effectiveness (set to 0.7) [-]
Required: True
Type: float
-
epsilon_radiator_test
¶ Radiator effectiveness [-]
Required: True
Type: float
-
eta_tower_pump
¶ Tower pump efficiency (set to 0.6) [-]
Required: True
Type: float
-
ew_dish_separation
¶ East-West dish separation used in the simulation [m]
Required: True
Type: float
-
fan_control_signal
¶ Fan control signal (set to 1, not used in this model) [-]
Required: True
Type: float
-
fan_speed1
¶ Cooling system fan speed 1 [rpm]
Required: True
Type: float
-
fan_speed2
¶ Cooling system fan speed 2 [rpm]
Required: True
Type: float
-
fan_speed3
¶ Cooling system fan speed 3 [rpm]
Required: True
Type: float
-
ns_dish_separation
¶ North-South dish separation used in the simulation [m]
Required: True
Type: float
-
pump_speed
¶ Reference Condition Pump Speed [rpm]
Required: True
Type: float
-
system_availability
¶ System availability (set to 1.0) [-]
Required: True
Type: float
-
test_P_fan
¶ Reference Condition Cooling System Fan Power [W]
Required: True
Type: float
-
test_P_pump
¶ Reference Condition Pump Parasitic Power [W]
Required: True
Type: float
-
test_T_fluid
¶ Reference Condition Cooling Fluid Temperature [K]
Required: True
Type: float
-
test_V_dot_fluid
¶ Reference Condition Cooling Fluid Volumetric Flow Rate [gpm]
Required: True
Type: float
-
test_cooling_fluid
¶ Reference Condition Cooling Fluid [-]
Constraints: INTEGER
Required: True
Type: float
-
test_fan_cfm
¶ Reference condition van volumentric flow rate [cfm]
Required: True
Type: float
-
test_fan_rho_air
¶ Reference condition fan air density [kg/m^3]
Required: True
Type: float
-
test_fan_speed
¶ Reference Condition Cooling System Fan Speed [rpm]
Required: True
Type: float
-
test_pump_speed
¶ Reference Condition Pump Speed [rpm]
Required: True
Type: float
-
tower_m_dot_water
¶ Tower cooling water flow rate (set to 134,000 kg/hr) [kg/s]
Required: True
Type: float
-
tower_m_dot_water_test
¶ Test value for the cooling water flow rate (set to 134,000 kg/hr) [kg/s]
Required: True
Type: float
-
tower_mode
¶ Cooling tower type (natural or forced draft) [-]
Required: True
Type: float
-
tower_pipe_material
¶ Tower pipe material (1=plastic, 2=new cast iron, 3=riveted steel) [-]
Required: True
Type: float
-
AdjustmentFactors Group¶
-
class
PySAM.Tcsdish.Tcsdish.
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.Tcsdish.Tcsdish.
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, ...}
-
Collector_Losses
¶ Collector loss total [kWt]
Type: sequence
-
P_SE_losses
¶ Engine power loss [kWt]
Type: sequence
-
P_out_SE
¶ Engine power output (gross) [kWe]
Type: sequence
-
P_out_rec
¶ Receiver thermal power output [kWt]
Type: sequence
-
P_parasitic
¶ Parasitic power [We]
Type: sequence
-
Phi_shade
¶ Collector shading efficiency
Type: sequence
-
Power_in_collector
¶ Collector thermal power incident [kWt]
Type: sequence
-
Power_in_rec
¶ Receiver thermal power input [kWt]
Type: sequence
-
Power_out_col
¶ Collector thermal power produced [kWt]
Type: sequence
-
Q_rec_losses
¶ Receiver thermal power loss [kWt]
Type: sequence
-
T_compression
¶ Engine compression temperature [K]
Type: sequence
-
T_heater_head_operate
¶ Receiver temperature - head operating [K]
Type: sequence
-
T_tower_in
¶ Cooling fluid temperature - cooler out/tower in [C]
Type: sequence
-
T_tower_out
¶ Cooling fluid temperature - cooler in/tower out [C]
Type: sequence
-
annual_Collector_Losses
¶ Total collector losses (Incident - P_out) [MWh]
Type: float
-
annual_P_out_SE
¶ Stirling engine gross output [MWh]
Type: float
-
annual_P_out_rec
¶ Receiver output power [MWh]
Type: float
-
annual_P_parasitic
¶ Total parasitic power load [MWh]
Type: float
-
annual_Power_in_collector
¶ Power incident on the collector [MWh]
Type: float
-
annual_Power_in_rec
¶ Power entering the receiver from the collector [MWh]
Type: float
-
annual_Power_out_col
¶ Total power from the collector dish [MWh]
Type: float
-
annual_Q_rec_losses
¶ Receiver thermal losses [MWh]
Type: float
-
annual_energy
¶ Annual Energy [kWh]
Type: float
-
annual_energy_distribution_time
¶ Annual energy production as function of time [kW]
Type: sequence[sequence]
-
beam
¶ Resource Beam normal irradiance [W/m2]
Type: sequence
-
capacity_factor
¶ Capacity factor [%]
Type: float
-
conversion_factor
¶ Gross to Net Conversion Factor [%]
Type: float
-
engine_pressure
¶ Engine pressure [Pa]
Type: sequence
-
eta_SE
¶ Engine efficiency
Type: sequence
-
eta_collector
¶ Collector efficiency
Type: sequence
-
eta_net
¶ Net efficiency
Type: sequence Type: System total
-
eta_rec
¶ Receiver efficiency
Type: sequence
-
gen
¶ System power generated [kW]
Type: sequence
-
hour
¶ Resource Hour of Day
Type: sequence
-
hourly_Collector_Losses
¶ Collector loss total [MWt]
Type: sequence Type: System total
-
hourly_P_out_SE
¶ Engine power output (gross) [MWe]
Type: sequence Type: System total
-
hourly_P_out_rec
¶ Receiver thermal power output [MWt]
Type: sequence Type: System total
-
hourly_P_parasitic
¶ Parasitic power [MWe]
Type: sequence Type: System total
-
hourly_Power_in_collector
¶ Collector thermal power incident [MWt]
Type: sequence Type: System total
-
hourly_Power_in_rec
¶ Receiver thermal power input [MWt]
Type: sequence Type: System total
-
hourly_Power_out_col
¶ Collector thermal power produced [MWt]
Type: sequence Type: System total
-
hourly_Q_rec_losses
¶ Receiver thermal loss [MWt]
Type: sequence Type: System total
-
kwh_per_kw
¶ First year kWh/kW [kWh/kW]
Type: float
-
month
¶ Resource Month
Type: sequence
-
monthly_Collector_Losses
¶ Total collector losses (Incident - P_out) [MWh]
Type: sequence
-
monthly_P_out_SE
¶ Stirling engine gross output [MWh]
Type: sequence
-
monthly_P_out_rec
¶ Receiver output power [MWh]
Type: sequence
-
monthly_P_parasitic
¶ Total parasitic power load [MWh]
Type: sequence
-
monthly_Power_in_collector
¶ Power incident on the collector [MWh]
Type: sequence
-
monthly_Power_in_rec
¶ Power entering the receiver from the collector [MWh]
Type: sequence
-
monthly_Power_out_col
¶ Total power from the collector dish [MWh]
Type: sequence
-
monthly_Q_rec_losses
¶ Receiver thermal losses [MWh]
Type: sequence
-
monthly_energy
¶ Monthly Energy [kWh]
Type: sequence
-
net_power
¶ Engine power output (net) [kWe]
Type: sequence
-
pres
¶ Resource Pressure [mbar]
Type: sequence
-
solazi
¶ Resource Solar Azimuth [deg]
Type: sequence
-
solzen
¶ Resource Solar Zenith [deg]
Type: sequence
-
tdry
¶ Resource Dry bulb temperature [C]
Type: sequence
-
twet
¶ Resource Wet bulb temperature [C]
Type: sequence
-
wspd
¶ Resource Wind Speed [m/s]
Type: sequence
-