TroughPhysicalProcessHeat¶
Parabolic trough for industrial process heat applications
-
PySAM.TroughPhysicalProcessHeat.
default
(config) → TroughPhysicalProcessHeat¶ Load defaults for the configuration
config
. Available configurations are:- “PhysicalTroughIPHLCOHCalculator”
- “PhysicalTroughIPHNone”
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.TroughPhysicalProcessHeat.
from_existing
(data, optional config) → TroughPhysicalProcessHeat¶ Share data with an existing PySAM class. If
optional config
is a valid configuration name, load the module’s defaults for that configuration.
-
PySAM.TroughPhysicalProcessHeat.
new
() → TroughPhysicalProcessHeat¶
-
PySAM.TroughPhysicalProcessHeat.
wrap
(ssc_data_t) → TroughPhysicalProcessHeat¶ Load data from a PySSC object.
Warning
Do not call PySSC.data_free on the ssc_data_t provided to
wrap()
TroughPhysicalProcessHeat is a wrapper for the SSC compute module cmod_trough_physical_process_heat.cpp
Functions¶
-
class
PySAM.TroughPhysicalProcessHeat.
TroughPhysicalProcessHeat
¶ 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.TroughPhysicalProcessHeat.TroughPhysicalProcessHeat.
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, ...}
-
azimuth
¶ Azimuth angle of surface/axis [none]
Required: True
Type: float
-
file_name
¶ Local weather file with path [none]
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
-
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
-
tilt
¶ Tilt angle of surface/axis [none]
Required: True
Type: float
-
track_mode
¶ Tracking mode [none]
Required: True
Type: float
-
SolarField Group¶
-
class
PySAM.TroughPhysicalProcessHeat.TroughPhysicalProcessHeat.
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, ...}
-
A_aperture
¶ Reflective aperture area of the collector [m2]
Required: True
Type: sequence
-
AbsorberMaterial
¶ Absorber material type [none]
Required: True
Type: sequence[sequence]
-
AnnulusGas
¶ Annulus gas type (1=air, 26=Ar, 27=H2) [none]
Required: True
Type: sequence[sequence]
-
Ave_Focal_Length
¶ Average focal length of the collector [m]
Required: True
Type: sequence
-
ColperSCA
¶ Number of individual collector sections in an SCA [none]
Required: True
Type: sequence
-
D_2
¶ Inner absorber tube diameter [m]
Required: True
Type: sequence[sequence]
-
D_3
¶ Outer absorber tube diameter [m]
Required: True
Type: sequence[sequence]
-
D_4
¶ Inner glass envelope diameter [m]
Required: True
Type: sequence[sequence]
-
D_5
¶ Outer glass envelope diameter [m]
Required: True
Type: sequence[sequence]
-
D_cpnt
¶ Interconnect component diameters, row=intc, col=cpnt [none]
Required: True
Type: sequence[sequence]
-
D_p
¶ Diameter of the absorber flow plug (optional) [m]
Required: True
Type: sequence[sequence]
-
Design_loss
¶ Receiver heat loss at design [W/m]
Required: True
Type: sequence[sequence]
-
Dirt_HCE
¶ Loss due to dirt on the receiver envelope [none]
Required: True
Type: sequence[sequence]
-
Dirt_mirror
¶ User-defined dirt on mirror derate [none]
Required: True
Type: sequence
-
Distance_SCA
¶ Piping distance between SCA’s in the field [m]
Required: True
Type: sequence
-
EPSILON_4
¶ Inner glass envelope emissivities (Pyrex) [none]
Required: True
Type: sequence[sequence]
-
EPSILON_5
¶ Outer glass envelope emissivities (Pyrex) [none]
Required: True
Type: sequence[sequence]
-
Error
¶ User-defined general optical error derate [none]
Required: True
Type: sequence
-
FieldConfig
¶ Number of subfield headers [none]
Required: True
Type: float
-
Flow_type
¶ Flow type through the absorber [none]
Required: True
Type: sequence[sequence]
-
Fluid
¶ Field HTF fluid ID number [none]
Required: True
Type: float
-
GeomEffects
¶ User-defined geometry effects derate [none]
Required: True
Type: sequence
-
GlazingIntactIn
¶ Glazing intact (broken glass) flag {1=true, else=false} [none]
Required: True
Type: sequence[sequence]
-
HCE_FieldFrac
¶ Fraction of the field occupied by this HCE type [none]
Required: True
Type: sequence[sequence]
-
HDR_rough
¶ Header pipe roughness [m]
Required: True
Type: float
-
IAM_matrix
¶ IAM coefficients, matrix for 4 collectors [none]
Required: True
Type: sequence[sequence]
-
I_bn_des
¶ Solar irradiation at design [C]
Required: True
Type: float
-
K_cpnt
¶ Interconnect component minor loss coefficients, row=intc, col=cpnt [none]
Required: True
Type: sequence[sequence]
-
L_SCA
¶ Length of the SCA [m]
Required: True
Type: sequence
-
L_aperture
¶ Length of a single mirror/HCE unit [m]
Required: True
Type: sequence
-
L_cpnt
¶ Interconnect component lengths, row=intc, col=cpnt [none]
Required: True
Type: sequence[sequence]
-
L_heat_sink_piping
¶ Length of piping (full mass flow) through heat sink (if applicable) [none]
Required: True
Type: float
-
L_rnr_per_xpan
¶ Threshold length of straight runner pipe without an expansion loop [m]
Required: True
Type: float
-
L_xpan_hdr
¶ Compined perpendicular lengths of each header expansion loop [m]
Required: True
Type: float
-
L_xpan_rnr
¶ Compined perpendicular lengths of each runner expansion loop [m]
Required: True
Type: float
-
Min_rnr_xpans
¶ Minimum number of expansion loops per single-diameter runner section [none]
Required: True
Type: float
-
N_hdr_per_xpan
¶ Number of collector loops per expansion loop [none]
Required: True
Type: float
-
N_max_hdr_diams
¶ Maximum number of diameters in each of the hot and cold headers [none]
Required: True
Type: float
-
P_a
¶ Annulus gas pressure [torr]
Required: True
Type: sequence[sequence]
-
Pipe_hl_coef
¶ Loss coefficient from the header, runner pipe, and non-HCE piping [m/s]
Required: True
Type: float
-
Rho_mirror_clean
¶ User-defined clean mirror reflectivity [none]
Required: True
Type: sequence
-
Rough
¶ Roughness of the internal surface [m]
Required: True
Type: sequence[sequence]
-
Row_Distance
¶ Spacing between rows (centerline to centerline) [m]
Required: True
Type: float
-
SCA_drives_elec
¶ Tracking power, in Watts per SCA drive [W/m2-K]
Required: True
Type: float
-
Shadowing
¶ Receiver bellows shadowing loss factor [none]
Required: True
Type: sequence[sequence]
-
T_fp
¶ Freeze protection temperature (heat trace activation temperature) [none]
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
-
Tau_envelope
¶ Envelope transmittance [none]
Required: True
Type: sequence[sequence]
-
TrackingError
¶ User-defined tracking error derate [none]
Required: True
Type: sequence
-
Type_cpnt
¶ Interconnect component type, row=intc, col=cpnt [none]
Required: True
Type: sequence[sequence]
-
V_hdr_cold_max
¶ Maximum HTF velocity in the cold headers at design [m/s]
Required: True
Type: float
-
V_hdr_cold_min
¶ Minimum HTF velocity in the cold headers at design [m/s]
Required: True
Type: float
-
V_hdr_hot_max
¶ Maximum HTF velocity in the hot headers at design [m/s]
Required: True
Type: float
-
V_hdr_hot_min
¶ Minimum HTF velocity in the hot headers at design [m/s]
Required: True
Type: float
-
W_aperture
¶ The collector aperture width (Total structural area used for shadowing) [m]
Required: True
Type: sequence
-
accept_init
¶ In acceptance testing mode - require steady-state startup [none]
Required: True
Type: float
-
accept_loc
¶ In acceptance testing mode - temperature sensor location [1/2]
Info: hx/loop
Required: True
Type: float
-
accept_mode
¶ Acceptance testing mode? [0/1]
Info: no/yes
Required: True
Type: float
-
alpha_abs
¶ Absorber absorptance [none]
Required: True
Type: sequence[sequence]
-
alpha_env
¶ Envelope absorptance [none]
Required: True
Type: sequence[sequence]
-
calc_design_pipe_vals
¶ Calculate temps and pressures at design conditions for runners and headers [none]
Required: True
Type: float
-
custom_sf_pipe_sizes
¶ Use custom solar field pipe diams, wallthks, and lengths [none]
Required: True
Type: float
-
epsilon_3_11
¶ Absorber emittance for receiver type 1 variation 1 [none]
Required: True
Type: sequence[sequence]
-
epsilon_3_12
¶ Absorber emittance for receiver type 1 variation 2 [none]
Required: True
Type: sequence[sequence]
-
epsilon_3_13
¶ Absorber emittance for receiver type 1 variation 3 [none]
Required: True
Type: sequence[sequence]
-
epsilon_3_14
¶ Absorber emittance for receiver type 1 variation 4 [none]
Required: True
Type: sequence[sequence]
-
epsilon_3_21
¶ Absorber emittance for receiver type 2 variation 1 [none]
Required: True
Type: sequence[sequence]
-
epsilon_3_22
¶ Absorber emittance for receiver type 2 variation 2 [none]
Required: True
Type: sequence[sequence]
-
epsilon_3_23
¶ Absorber emittance for receiver type 2 variation 3 [none]
Required: True
Type: sequence[sequence]
-
epsilon_3_24
¶ Absorber emittance for receiver type 2 variation 4 [none]
Required: True
Type: sequence[sequence]
-
epsilon_3_31
¶ Absorber emittance for receiver type 3 variation 1 [none]
Required: True
Type: sequence[sequence]
-
epsilon_3_32
¶ Absorber emittance for receiver type 3 variation 2 [none]
Required: True
Type: sequence[sequence]
-
epsilon_3_33
¶ Absorber emittance for receiver type 3 variation 3 [none]
Required: True
Type: sequence[sequence]
-
epsilon_3_34
¶ Absorber emittance for receiver type 3 variation 4 [none]
Required: True
Type: sequence[sequence]
-
epsilon_3_41
¶ Absorber emittance for receiver type 4 variation 1 [none]
Required: True
Type: sequence[sequence]
-
epsilon_3_42
¶ Absorber emittance for receiver type 4 variation 2 [none]
Required: True
Type: sequence[sequence]
-
epsilon_3_43
¶ Absorber emittance for receiver type 4 variation 3 [none]
Required: True
Type: sequence[sequence]
-
epsilon_3_44
¶ Absorber emittance for receiver type 4 variation 4 [none]
Required: True
Type: sequence[sequence]
-
eta_pump
¶ HTF pump efficiency [none]
Required: True
Type: float
-
is_model_heat_sink_piping
¶ Should model consider piping through heat sink? [none]
Required: True
Type: float
-
m_dot_htfmax
¶ Maximum loop HTF flow rate [kg/s]
Required: True
Type: float
-
m_dot_htfmin
¶ Minimum loop HTF flow rate [kg/s]
Required: True
Type: float
-
mc_bal_cold
¶ Heat capacity of the balance of plant on the cold side [kWht/K-MWt]
Required: True
Type: float
-
mc_bal_hot
¶ Heat capacity of the balance of plant on the hot side [kWht/K-MWt]
Info: none
Required: True
Type: float
-
mc_bal_sca
¶ Non-HTF heat capacity associated with each SCA - per meter basis [Wht/K-m]
Required: True
Type: float
-
nColt
¶ Number of collector types [none]
Options: constant=4
Required: True
Type: float
-
nHCEVar
¶ Number of HCE variants per type [none]
Required: True
Type: float
-
nHCEt
¶ Number of HCE types [none]
Required: True
Type: float
-
nLoops
¶ Number of loops in the field [none]
Required: True
Type: float
-
nSCA
¶ Number of SCAs in a loop [none]
Required: True
Type: float
-
northsouth_field_sep
¶ North/south separation between subfields. 0 = SCAs are touching [m]
Required: True
Type: float
-
offset_xpan_hdr
¶ Location of first header expansion loop. 1 = after first collector loop [none]
Required: True
Type: float
-
sf_hdr_diams
¶ Custom header diameters [m]
Required: True
Type: sequence[sequence]
-
sf_hdr_lengths
¶ Custom header lengths [m]
Required: True
Type: sequence[sequence]
-
sf_hdr_wallthicks
¶ Custom header wall thicknesses [m]
Required: True
Type: sequence[sequence]
-
sf_rnr_diams
¶ Custom runner diameters [m]
Required: True
Type: sequence[sequence]
-
sf_rnr_lengths
¶ Custom runner lengths [m]
Required: True
Type: sequence[sequence]
-
sf_rnr_wallthicks
¶ Custom runner wall thicknesses [m]
Required: True
Type: sequence[sequence]
-
theta_dep
¶ Deploy angle [deg]
Required: True
Type: float
-
theta_stow
¶ Stow angle [deg]
Required: True
Type: float
-
washing_frequency
¶ Mirror washing frequency [-/year]
Required: True
Type: float
-
water_usage_per_wash
¶ Water usage per wash [L/m2_aper]
Required: True
Type: float
-
wind_stow_speed
¶ Trough wind stow speed [m/s]
Required: False. Automatically set to 50 if not assigned explicitly or loaded from defaults.
Type: float
-
Controller Group¶
-
class
PySAM.TroughPhysicalProcessHeat.TroughPhysicalProcessHeat.
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, ...}
-
disp_wlim_maxspec
¶ disp_wlim_maxspec [-]
Required: True
Type: float
-
field_fl_props
¶ User defined field fluid property data [-]
Required: True
Type: sequence[sequence]
-
non_solar_field_land_area_multiplier
¶ non_solar_field_land_area_multiplier [-]
Required: True
Type: float
-
pb_pump_coef
¶ Pumping power to move 1kg of HTF through PB loop [kW/kg]
Required: True
Type: float
-
q_pb_design
¶ Design heat input to power block [MWt]
Required: True
Type: float
-
specified_solar_multiple
¶ specified_solar_multiple [-]
Required: True
Type: float
-
tanks_in_parallel
¶ Tanks are in parallel, not in series, with solar field [-]
Required: True
Type: float
-
trough_loop_control
¶ trough_loop_control [-]
Required: True
Type: sequence
-
SystemDesign Group¶
-
class
PySAM.TroughPhysicalProcessHeat.TroughPhysicalProcessHeat.
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, ...}
-
tshours
¶ Equivalent full-load thermal storage hours [hr]
Required: True
Type: float
-
TES Group¶
-
class
PySAM.TroughPhysicalProcessHeat.TroughPhysicalProcessHeat.
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, ...}
-
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 [MW]
Required: True
Type: float
-
h_tank
¶ Total height of tank (height of HTF when tank is full [m]
Required: True
Type: float
-
init_hot_htf_percent
¶ Initial fraction of avail. vol that is hot [%]
Required: True
Type: float
-
tank_pairs
¶ Number of equivalent tank pairs [-]
Constraints: INTEGER
Required: True
Type: float
-
u_tank
¶ Loss coefficient from the tank [W/m2-K]
Required: True
Type: float
-
TES2tank Group¶
-
class
PySAM.TroughPhysicalProcessHeat.TroughPhysicalProcessHeat.
TES2tank
¶ -
assign
(dict) → None¶ Assign attributes from dictionary, overwriting but not removing values.
TES2tank_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary.
-
replace
(dict) → None¶ Replace attributes from dictionary, unassigning values not present in input
dict
.TES2tank_vals = { var: val, ...}
-
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_max_heat
¶ Rated heater capacity for hot tank heating [MW]
Required: True
Type: float
-
Tou Group¶
-
class
PySAM.TroughPhysicalProcessHeat.TroughPhysicalProcessHeat.
Tou
¶ -
assign
(dict) → None¶ Assign attributes from dictionary, overwriting but not removing values.
Tou_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary.
-
replace
(dict) → None¶ Replace attributes from dictionary, unassigning values not present in input
dict
.Tou_vals = { var: val, ...}
-
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
-
disp_csu_cost_rel
¶ Heat sink startup cost [$/MWe-cycle/start]
Required: Required if is_dispatch=1
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_max_iter
¶ Max. no. 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 heat production change penalty [$/MWt-change]
Required: Required if is_dispatch=1
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]
Required: Required if is_dispatch=1
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
-
dispatch_factor1
¶ Dispatch payment factor 1
Required: False. Automatically set to 1 if not assigned explicitly or loaded from defaults.
Type: float
-
dispatch_factor2
¶ Dispatch payment factor 2
Required: False. Automatically set to 1 if not assigned explicitly or loaded from defaults.
Type: float
-
dispatch_factor3
¶ Dispatch payment factor 3
Required: False. Automatically set to 1 if not assigned explicitly or loaded from defaults.
Type: float
-
dispatch_factor4
¶ Dispatch payment factor 4
Required: False. Automatically set to 1 if not assigned explicitly or loaded from defaults.
Type: float
-
dispatch_factor5
¶ Dispatch payment factor 5
Required: False. Automatically set to 1 if not assigned explicitly or loaded from defaults.
Type: float
-
dispatch_factor6
¶ Dispatch payment factor 6
Required: False. Automatically set to 1 if not assigned explicitly or loaded from defaults.
Type: float
-
dispatch_factor7
¶ Dispatch payment factor 7
Required: False. Automatically set to 1 if not assigned explicitly or loaded from defaults.
Type: float
-
dispatch_factor8
¶ Dispatch payment factor 8
Required: False. Automatically set to 1 if not assigned explicitly or loaded from defaults.
Type: float
-
dispatch_factor9
¶ Dispatch payment factor 9
Required: False. Automatically set to 1 if not assigned explicitly or loaded from defaults.
Type: float
-
dispatch_factors_ts
¶ Dispatch payment factor array
Required: Required if ppa_multiplier_model=1
Type: sequence
-
dispatch_sched_weekday
¶ 12x24 PPA pricing Weekday schedule
Required: False. Automatically set to 1 if not assigned explicitly or loaded from defaults.
Type: sequence[sequence]
-
dispatch_sched_weekend
¶ 12x24 PPA pricing Weekend schedule
Required: False. Automatically set to 1 if not assigned explicitly or loaded from defaults.
Type: sequence[sequence]
-
dispatch_series
¶ Time series dispatch factors
Type: sequence
-
f_turb_tou_periods
¶ Dispatch logic for heat sink 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 1 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_series
¶ Use time-series net heat generation limits
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
-
ppa_multiplier_model
¶ PPA multiplier model [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
-
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
-
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
-
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 heat generation limits [kWt]
Required: Required if is_wlim_series=1
Type: sequence
-
SystemControl Group¶
-
class
PySAM.TroughPhysicalProcessHeat.TroughPhysicalProcessHeat.
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, ...}
-
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
-
TimeOfDeliveryFactors Group¶
System Group¶
-
class
PySAM.TroughPhysicalProcessHeat.TroughPhysicalProcessHeat.
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, ...}
-
aux_array
¶ Auxiliary heater, mult frac and const, linear and quad coeff
Required: True
Type: sequence
-
bop_array
¶ Balance of plant parasitic power fraction, mult frac and const, linear and quad coeff
Required: True
Type: sequence
-
pb_fixed_par
¶ Fraction of rated gross power constantly consumed [MWe/MWcap]
Required: True
Type: float
-
Powerblock Group¶
-
class
PySAM.TroughPhysicalProcessHeat.TroughPhysicalProcessHeat.
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, ...}
-
L_rnr_pb
¶ Length of runner pipe in power block [m]
Required: True
Type: float
-
AdjustmentFactors Group¶
-
class
PySAM.TroughPhysicalProcessHeat.TroughPhysicalProcessHeat.
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.TroughPhysicalProcessHeat.TroughPhysicalProcessHeat.
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, ...}
-
CosTh_ave
¶ Field collector cosine efficiency
Type: sequence
-
EndLoss_ave
¶ Field collector optical end loss
Type: sequence
-
EqOpteff
¶ Field optical efficiency before defocus
Type: sequence
-
IAM_ave
¶ Field collector incidence angle modifier
Type: sequence
-
RowShadow_ave
¶ Field collector row shadowing loss
Type: sequence
-
SCAs_def
¶ Field fraction of focused SCAs
Type: sequence
-
T_field_cold_in
¶ Field timestep-averaged inlet temperature [C]
Type: sequence
-
T_field_hot_out
¶ Field timestep-averaged outlet temperature [C]
Type: sequence
-
T_heat_sink_in
¶ Heat sink HTF inlet temp [C]
Type: sequence
-
T_heat_sink_out
¶ Heat sink HTF outlet temp [C]
Type: sequence
-
T_rec_cold_in
¶ Loop timestep-averaged inlet temperature [C]
Type: sequence
-
T_rec_hot_out
¶ Loop timestep-averaged outlet temperature [C]
Type: sequence
-
T_tes_cold
¶ TES cold temperature [C]
Type: sequence
-
T_tes_hot
¶ TES hot temperature [C]
Type: sequence
-
Theta_ave
¶ Field collector solar incidence angle [deg]
Type: sequence
-
W_dot_field_pump
¶ Field htf pumping power [MWe]
Type: sequence
-
W_dot_parasitic_tot
¶ System total electrical parasitic [MWe]
Type: sequence
-
W_dot_pc_pump
¶ Heat sink pumping power [MWe]
Type: sequence
-
W_dot_sca_track
¶ Field collector tracking power [MWe]
Type: sequence
-
annual_electricity_consumption
¶ Annual electricity consumption w/ avail derate [kWe-hr]
Type: float
-
annual_energy
¶ Annual Net Thermal Energy Production w/ avail derate [kWt-hr]
Type: float
-
annual_energy_distribution_time
¶ Annual energy production as function of time [kW]
Type: sequence[sequence]
-
annual_field_freeze_protection
¶ Annual thermal power for field freeze protection [kWt-hr]
Type: float
-
annual_gross_energy
¶ Annual Gross Thermal Energy Production w/ avail derate [kWt-hr]
Type: float
-
annual_tes_freeze_protection
¶ Annual thermal power for TES freeze protection [kWt-hr]
Type: float
-
annual_thermal_consumption
¶ Annual thermal freeze protection required [kWt-hr]
Type: float
-
annual_total_water_use
¶ Total Annual Water Usage [m^3]
Type: float
-
beam
¶ Resource Beam normal irradiance [W/m2]
Type: sequence
-
capacity_factor
¶ Capacity factor [%]
Type: float
-
deltaP_field
¶ Field pressure drop [bar]
Type: sequence
-
dni_costh
¶ Field collector DNI-cosine product [W/m2]
Type: sequence
-
e_ch_tes
¶ TES charge state [MWht]
Type: sequence
-
e_dot_field_int_energy
¶ Field change in material/htf internal energy [MWt]
Type: sequence
-
gen
¶ System power generated [kW]
Type: sequence
-
hour_day
¶ Resource Hour of Day
Type: sequence
-
kwh_per_kw
¶ First year kWh/kW [kWht/kWt]
Type: float
-
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_delivered
¶ Field total mass flow delivered [kg/s]
Type: sequence
-
m_dot_field_recirc
¶ Field total mass flow recirculated [kg/s]
Type: sequence
-
m_dot_field_to_cycle
¶ field to cycle [kg/s]
Type: sequence Type: Mass flow
-
m_dot_htf_heat_sink
¶ Heat sink HTF mass flow [kg/s]
Type: sequence
-
m_dot_loop
¶ Receiver 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_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
-
mass_tes_cold
¶ TES cold tank mass (end) [kg]
Type: sequence
-
mass_tes_hot
¶ TES hot tank mass (end) [kg]
Type: sequence
-
month
¶ Resource Month
Type: sequence
-
op_mode_1
¶ 1st operating mode
Type: sequence
-
op_mode_2
¶ 2nd op. mode, if applicable
Type: sequence
-
op_mode_3
¶ 3rd op. mode, if applicable
Type: sequence
-
pres
¶ Resource Pressure [mbar]
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_freeze_prot
¶ Field freeze protection required [MWt]
Type: sequence
-
q_dot_htf_sf_out
¶ Field thermal power leaving in HTF [MWt]
Type: sequence
-
q_dot_piping_loss
¶ Field piping thermal losses [MWt]
Type: sequence
-
q_dot_rec_abs
¶ Receiver thermal power absorbed [MWt]
Type: sequence
-
q_dot_rec_inc
¶ Receiver thermal power incident [MWt]
Type: sequence
-
q_dot_rec_thermal_loss
¶ Receiver thermal losses [MWt]
Type: sequence
-
q_dot_to_heat_sink
¶ Heat sink thermal power [MWt]
Type: sequence
-
q_inc_sf_tot
¶ Field thermal power incident [MWt]
Type: sequence
-
q_tes_heater
¶ TES freeze protection power [MWe]
Type: sequence
-
qinc_costh
¶ Field thermal power incident after cosine [MWt]
Type: sequence
-
solar_multiple_actual
¶ Actual solar multiple of system [-]
Type: float
-
solazi
¶ Resource Solar Azimuth [deg]
Type: sequence
-
solzen
¶ Resource Solar Zenith [deg]
Type: sequence
-
tank_losses
¶ TES thermal losses [MWt]
Type: sequence
-
tdry
¶ Resource Dry bulb temperature [C]
Type: sequence
-
time_hr
¶ Time at end of timestep [hr]
Type: sequence
-
twet
¶ Resource Wet bulb temperature [C]
Type: sequence
-
wspd
¶ Resource Wind Speed [m/s]
Type: sequence
-