TroughPhysicalProcessHeat

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

  • A_aperture
  • Ave_Focal_Length
  • ColperSCA
  • D_cpnt
  • Dirt_mirror
  • Distance_SCA
  • Error
  • GeomEffects
  • I_bn_des
  • K_cpnt
  • L_SCA
  • L_aperture
  • L_cpnt
  • Rho_mirror_clean
  • SCAInfoArray
  • TrackingError
  • Type_cpnt
  • W_aperture
  • is_dispatch
  • is_wlim_series
  • nColt
  • nLoops
  • nSCA
  • q_pb_design
  • solar_mult

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.

TroughPhysicalProcessHeat model description

Parabolic trough for industrial process heat applications

PySAM.TroughPhysicalProcessHeat.default(config) → TroughPhysicalProcessHeat

Use default attributes config options:

  • “PhysicalTroughIPHLCOHCalculator”
  • “PhysicalTroughIPHNone”
PySAM.TroughPhysicalProcessHeat.from_existing(data, optional config) → TroughPhysicalProcessHeat

Share underlying data with an existing PySAM class. If config provided, default attributes are loaded otherwise.

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

Use existing PySSC data

Warning

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

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

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() → None

Assign attributes from dictionary

Weather_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

azimuth

Azimuth angle of surface/axis [none]

Required: True

Type:float
file_name

Local weather file with path [none]

Constraints: LOCAL_FILE

Required: True

Type:str
solar_resource_data

Weather resource data in memory

Required: False

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() → None

Assign attributes from dictionary

SolarField_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

A_aperture

Reflective aperture area of the collector [m2]

Required: True

This variable may need to be updated if the values of the following have changed:
  • SCAInfoArray
  • nColt
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

This variable may need to be updated if the values of the following have changed:
  • SCAInfoArray
  • nColt
Type:sequence
ColperSCA

Number of individual collector sections in an SCA [none]

Required: True

This variable may need to be updated if the values of the following have changed:
  • SCAInfoArray
  • nColt
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

This variable may need to be updated if the values of the following have changed:
  • nSCA
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

This variable may need to be updated if the values of the following have changed:
  • SCAInfoArray
  • nColt
Type:sequence
Distance_SCA

Piping distance between SCA’s in the field [m]

Required: True

This variable may need to be updated if the values of the following have changed:
  • SCAInfoArray
  • nColt
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

This variable may need to be updated if the values of the following have changed:
  • SCAInfoArray
  • nColt
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

This variable may need to be updated if the values of the following have changed:
  • SCAInfoArray
  • nColt
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

Changes to this variable may require updating the values of the following:
  • nLoops
  • solar_mult
Type:float
K_cpnt

Interconnect component minor loss coefficients, row=intc, col=cpnt [none]

Required: True

This variable may need to be updated if the values of the following have changed:
  • nSCA
Type:sequence[sequence]
L_SCA

Length of the SCA [m]

Required: True

This variable may need to be updated if the values of the following have changed:
  • SCAInfoArray
  • nColt
Type:sequence
L_aperture

Length of a single mirror/HCE unit [m]

Required: True

This variable may need to be updated if the values of the following have changed:
  • SCAInfoArray
  • nColt
Type:sequence
L_cpnt

Interconnect component lengths, row=intc, col=cpnt [none]

Required: True

This variable may need to be updated if the values of the following have changed:
  • nSCA
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

This variable may need to be updated if the values of the following have changed:
  • SCAInfoArray
  • nColt
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
SCADefocusArray

Collector defocus order [none]

Required: True

Type:sequence
SCAInfoArray

Receiver (,1) and collector (,2) type for each assembly in loop [none]

Required: True

Changes to this variable may require updating the values of the following:
  • A_aperture
  • Ave_Focal_Length
  • ColperSCA
  • Dirt_mirror
  • Distance_SCA
  • Error
  • GeomEffects
  • L_SCA
  • L_aperture
  • Rho_mirror_clean
  • TrackingError
  • W_aperture
Type:sequence[sequence]
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

This variable may need to be updated if the values of the following have changed:
  • SCAInfoArray
  • nColt
Type:sequence
Type_cpnt

Interconnect component type, row=intc, col=cpnt [none]

Required: True

This variable may need to be updated if the values of the following have changed:
  • nSCA
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

This variable may need to be updated if the values of the following have changed:
  • SCAInfoArray
  • nColt
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

Changes to this variable may require updating the values of the following:
  • A_aperture
  • Ave_Focal_Length
  • ColperSCA
  • Dirt_mirror
  • Distance_SCA
  • Error
  • GeomEffects
  • L_SCA
  • L_aperture
  • Rho_mirror_clean
  • TrackingError
  • W_aperture
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

Changes to this variable may require updating the values of the following:
  • solar_mult
This variable may need to be updated if the values of the following have changed:
  • I_bn_des
  • q_pb_design
Type:float
nSCA

Number of SCAs in a loop [none]

Required: True

Changes to this variable may require updating the values of the following:
  • D_cpnt
  • K_cpnt
  • L_cpnt
  • Type_cpnt
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]
solar_mult

Solar multiple [none]

Required: True

This variable may need to be updated if the values of the following have changed:
  • I_bn_des
  • nLoops
  • q_pb_design
Type:float
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: If not provided, assumed to be 50

Type:float

Controller Group

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

Assign attributes from dictionary

Controller_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

field_fl_props

User defined field fluid property data [-]

Required: True

Type:sequence[sequence]
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

Changes to this variable may require updating the values of the following:
  • nLoops
  • solar_mult
Type:float
tanks_in_parallel

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

Required: True

Type:float

SystemDesign Group

class PySAM.TroughPhysicalProcessHeat.TroughPhysicalProcessHeat.SystemDesign
assign() → None

Assign attributes from dictionary

SystemDesign_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

tshours

Equivalent full-load thermal storage hours [hr]

Required: True

Type:float

TES Group

class PySAM.TroughPhysicalProcessHeat.TroughPhysicalProcessHeat.TES
assign() → None

Assign attributes from dictionary

TES_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

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() → None

Assign attributes from dictionary

TES2tank_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

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() → None

Assign attributes from dictionary

Tou_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

ampl_data_dir

AMPL data file directory [-]

Required: If not provided, assumed to be ‘’

Type:str
ampl_exec_call

System command to run AMPL code [-]

Required: If not provided, assumed to be ‘ampl sdk_solution.run’

Type:str
disp_csu_cost

Heat sink startup cost [$]

Required: True if is_dispatch=1

Type:float
disp_frequency

Frequency for dispatch optimization calculations [hour]

Required: True if is_dispatch=1

Type:float
disp_horizon

Time horizon for dispatch optimization [hour]

Required: True if is_dispatch=1

Type:float
disp_max_iter

Max. no. dispatch optimization iterations [-]

Required: True if is_dispatch=1

Type:float
disp_mip_gap

Dispatch optimization solution tolerance [-]

Required: True if is_dispatch=1

Type:float
disp_pen_delta_w

Dispatch heat production change penalty [$/kWt-change]

Required: True if is_dispatch=1

Type:float
disp_reporting

Dispatch optimization reporting level [-]

Required: If not provided, assumed to be -1

Type:float
disp_rsu_cost

Receiver startup cost [$]

Required: True if is_dispatch=1

Type:float
disp_spec_bb

Dispatch optimization B&B heuristic [-]

Required: If not provided, assumed to be -1

Type:float
disp_spec_presolve

Dispatch optimization presolve heuristic [-]

Required: If not provided, assumed to be -1

Type:float
disp_spec_scaling

Dispatch optimization scaling heuristic [-]

Required: If not provided, assumed to be -1

Type:float
disp_steps_per_hour

Time steps per hour for dispatch optimization calculations [-]

Required: If not provided, assumed to be 1

Type:float
disp_time_weighting

Dispatch optimization future time discounting factor [-]

Required: If not provided, assumed to be 0.99

Type:float
disp_timeout

Max. dispatch optimization solve duration [s]

Required: True if is_dispatch=1

Type:float
dispatch_factor1

Dispatch payment factor 1

Required: If not provided, assumed to be 1

Type:float
dispatch_factor2

Dispatch payment factor 2

Required: If not provided, assumed to be 1

Type:float
dispatch_factor3

Dispatch payment factor 3

Required: If not provided, assumed to be 1

Type:float
dispatch_factor4

Dispatch payment factor 4

Required: If not provided, assumed to be 1

Type:float
dispatch_factor5

Dispatch payment factor 5

Required: If not provided, assumed to be 1

Type:float
dispatch_factor6

Dispatch payment factor 6

Required: If not provided, assumed to be 1

Type:float
dispatch_factor7

Dispatch payment factor 7

Required: If not provided, assumed to be 1

Type:float
dispatch_factor8

Dispatch payment factor 8

Required: If not provided, assumed to be 1

Type:float
dispatch_factor9

Dispatch payment factor 9

Required: If not provided, assumed to be 1

Type:float
dispatch_factors_ts

Dispatch payment factor array

Required: True if ppa_multiplier_model=1

Type:sequence
dispatch_sched_weekday

12x24 PPA pricing Weekday schedule

Required: If not provided, assumed to be 1

Type:sequence[sequence]
dispatch_sched_weekend

12x24 PPA pricing Weekend schedule

Required: If not provided, assumed to be 1

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: If not provided, assumed to be 0

Type:float
is_dispatch

Allow dispatch optimization? [-]

Required: If not provided, assumed to be 0

Changes to this variable may require updating the values of the following:
  • is_wlim_series
Type:float
is_dispatch_series

Use time-series dispatch factors

Required: If not provided, assumed to be 1

Type:float
is_tod_pc_target_also_pc_max

Is the TOD target cycle heat input also the max cycle heat input?

Required: If not provided, assumed to be 0

Type:float
is_wlim_series

Use time-series net heat generation limits

Required: If not provided, assumed to be 0

This variable may need to be updated if the values of the following have changed:
  • is_dispatch
Type:float
is_write_ampl_dat

Write AMPL data files for dispatch run [-]

Required: If not provided, assumed to be 0

Type:float
ppa_multiplier_model

PPA multiplier model [0/1]

Options: 0=diurnal,1=timestep

Constraints: INTEGER,MIN=0

Required: If not provided, assumed to be 0

Type:float
q_rec_heattrace

Receiver heat trace energy consumption during startup [kWe-hr]

Required: If not provided, assumed to be 0.0

Type:float
q_rec_standby

Receiver standby energy consumption [kWt]

Required: If not provided, assumed to be 9e99

Type:float
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: True if is_wlim_series=1

Type:sequence

System Group

class PySAM.TroughPhysicalProcessHeat.TroughPhysicalProcessHeat.System
assign() → None

Assign attributes from dictionary

System_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

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() → None

Assign attributes from dictionary

Powerblock_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

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() → None

Assign attributes from dictionary

Outputs_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

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_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
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
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