Tcsdish¶
Wrapper for SAM Simulation Core model: cmod_tcsdish.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.
Tcsdish model description
CSP dish-Stirling model with parameters for SES and WGA-ADDS systems for power generation
-
PySAM.Tcsdish.default(config) → Tcsdish¶ Use financial config-specific default attributes config options:
- “DishStirlingAllEquityPartnershipFlip”
- “DishStirlingCommercial”
- “DishStirlingCommercialPPA”
- “DishStirlingIndependentPowerProducer”
- “DishStirlingLCOECalculator”
- “DishStirlingLeveragedPartnershipFlip”
- “DishStirlingMerchantPlant”
- “DishStirlingNone”
- “DishStirlingSaleLeaseback”
- “DishStirlingSingleOwner”
-
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
-
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¶
Dish Group¶
-
class
PySAM.Tcsdish.Tcsdish.Dish¶ -
assign() → None¶ Assign attributes from dictionary
Dish_vals = { var: val, ...}
-
export() → dict¶ Export attributes into dictionary
-
system_capacity¶ Nameplate capacity [kW]
Required: True
- This variable may need to be updated if the values of the following have changed:
- n_ew
- n_ns
Type: float
-
Type295 Group¶
-
class
PySAM.Tcsdish.Tcsdish.Type295¶ -
assign() → None¶ Assign attributes from dictionary
Type295_vals = { var: val, ...}
-
export() → dict¶ Export attributes into dictionary
-
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
- Changes to this variable may require updating the values of the following:
- system_capacity
Type: float
-
n_ns¶ Number of collectors North-South [-]
Constraints: INTEGER
Required: True
- Changes to this variable may require updating the values of the following:
- system_capacity
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() → None¶ Assign attributes from dictionary
Type296_vals = { var: val, ...}
-
export() → dict¶ Export attributes into dictionary
-
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() → None¶ Assign attributes from dictionary
Type297_vals = { var: val, ...}
-
export() → dict¶ Export attributes into dictionary
-
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() → None¶ Assign attributes from dictionary
Type298_vals = { var: val, ...}
-
export() → dict¶ Export attributes into dictionary
-
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() → None¶ Assign attributes from dictionary
Outputs_vals = { var: val, ...}
-
export() → dict¶ Export attributes into dictionary
-
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
-
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
-