Hcpv

Concentrating photovoltaic system with a high concentration photovoltaic module model and separate inverter model

PySAM.Hcpv.default(config) → Hcpv

Load defaults for the configuration config. Available configurations are:

  • “HighXConcentratingPVAllEquityPartnershipFlip”
  • “HighXConcentratingPVLCOECalculator”
  • “HighXConcentratingPVLeveragedPartnershipFlip”
  • “HighXConcentratingPVMerchantPlant”
  • “HighXConcentratingPVNone”
  • “HighXConcentratingPVSaleLeaseback”
  • “HighXConcentratingPVSingleOwner”

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

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

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

Load data from a PySSC object.

Warning

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

Hcpv is a wrapper for the SSC compute module cmod_hcpv.cpp

Interdependent Variables

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

  • array_modules_per_tracker
  • array_num_inverters
  • array_num_trackers
  • inv_snl_pdco
  • module_a0
  • module_a1
  • module_a2
  • module_a3
  • module_a4
  • module_alignment_error
  • module_cell_area
  • module_concentration
  • module_flutter_loss_coeff
  • module_ncells
  • module_optical_error
  • module_reference
  • system_capacity

Functions

class PySAM.Hcpv.Hcpv

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

SolarResourceData Group

class PySAM.Hcpv.Hcpv.SolarResourceData
assign(dict) → None

Assign attributes from dictionary, overwriting but not removing values.

SolarResourceData_vals = { var: val, ...}

export() → dict

Export attributes into dictionary.

replace(dict) → None

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

SolarResourceData_vals = { var: val, ...}

file_name

Weather file in TMY2, TMY3, EPW, or SMW.

Constraints: LOCAL_FILE

Required: True

Type:str

PVWatts Group

class PySAM.Hcpv.Hcpv.PVWatts
assign(dict) → None

Assign attributes from dictionary, overwriting but not removing values.

PVWatts_vals = { var: val, ...}

export() → dict

Export attributes into dictionary.

replace(dict) → None

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

PVWatts_vals = { var: val, ...}

system_capacity

Nameplate capacity [kW]

Required: True

The value of system_capacity depends on the following variables:

  • array_modules_per_tracker
  • array_num_trackers
  • module_a0
  • module_a1
  • module_a2
  • module_a3
  • module_a4
  • module_alignment_error
  • module_cell_area
  • module_concentration
  • module_flutter_loss_coeff
  • module_ncells
  • module_optical_error
  • module_reference
Type:float

HCPVModule Group

class PySAM.Hcpv.Hcpv.HCPVModule
assign(dict) → None

Assign attributes from dictionary, overwriting but not removing values.

HCPVModule_vals = { var: val, ...}

export() → dict

Export attributes into dictionary.

replace(dict) → None

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

HCPVModule_vals = { var: val, ...}

module_a

Equation variable (a), at high irradiance & low wind speed [none]

Required: True

Type:float
module_a0

Air mass modifier coefficient 0 [none]

Required: True

The value of the following variables depends on module_a0:

  • array_num_inverters
  • system_capacity
Type:float
module_a1

Air mass modifier coefficient 1 [none]

Required: True

The value of the following variables depends on module_a1:

  • array_num_inverters
  • system_capacity
Type:float
module_a2

Air mass modifier coefficient 2 [none]

Required: True

The value of the following variables depends on module_a2:

  • array_num_inverters
  • system_capacity
Type:float
module_a3

Air mass modifier coefficient 3 [none]

Required: True

The value of the following variables depends on module_a3:

  • array_num_inverters
  • system_capacity
Type:float
module_a4

Air mass modifier coefficient 4 [none]

Required: True

The value of the following variables depends on module_a4:

  • array_num_inverters
  • system_capacity
Type:float
module_alignment_error

Alignment loss factor [0..1]

Required: True

The value of the following variables depends on module_alignment_error:

  • array_num_inverters
  • system_capacity
Type:float
module_b

Equation variable (b), rate at which module temp drops [none]

Required: True

Type:float
module_cell_area

Single cell area [cm^2]

Required: True

The value of the following variables depends on module_cell_area:

  • array_num_inverters
  • system_capacity
Type:float
module_concentration

Concentration ratio [none]

Required: True

The value of the following variables depends on module_concentration:

  • array_num_inverters
  • system_capacity
Type:float
module_dT

Equation variable (dT), temp diff between heat sink & cell [C]

Required: True

Type:float
module_flutter_loss_coeff

Wind flutter loss factor [0..1 per m/s]

Required: True

The value of the following variables depends on module_flutter_loss_coeff:

  • array_num_inverters
  • system_capacity
Type:float
module_mjeff

Module junction efficiency array [percent]

Required: True

Type:sequence
module_ncells

Number of cells [none]

Constraints: INTEGER

Required: True

The value of the following variables depends on module_ncells:

  • array_num_inverters
  • system_capacity
Type:float
module_optical_error

Optical error factor [0..1]

Required: True

The value of the following variables depends on module_optical_error:

  • array_num_inverters
  • system_capacity
Type:float
module_rad

POA irradiance array [W/m^2]

Required: True

Type:sequence
module_reference

Index in arrays of the reference condition [none]

Constraints: INTEGER

Required: True

The value of the following variables depends on module_reference:

  • array_num_inverters
  • system_capacity
Type:float
module_temp_coeff

Temperature coefficient [%/C]

Required: True

Type:float

InverterCECDatabase Group

class PySAM.Hcpv.Hcpv.InverterCECDatabase
assign(dict) → None

Assign attributes from dictionary, overwriting but not removing values.

InverterCECDatabase_vals = { var: val, ...}

export() → dict

Export attributes into dictionary.

replace(dict) → None

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

InverterCECDatabase_vals = { var: val, ...}

inv_snl_c0

Parameter defining the curvature (parabolic) of the relationship between ac-power and dc-power at the reference operating condition, default value of zero gives a linear relationship, (1/W) [xxx]

Required: True

Type:float
inv_snl_c1

Empirical coefficient allowing Pdco to vary linearly with dc-voltage input, default value is zero, (1/V) [xxx]

Required: True

Type:float
inv_snl_c2

Empirical coefficient allowing Pso to vary linearly with dc-voltage input, default value is zero, (1/V) [xxx]

Required: True

Type:float
inv_snl_c3

Empirical coefficient allowing Co to vary linearly with dc-voltage input, default value is zero, (1/V) [xxx]

Required: True

Type:float
inv_snl_paco

W maximum ac-power rating for inverter at reference or nominal operating condition, assumed to be an upper limit value, (W) [xxx]

Required: True

Type:float
inv_snl_pdco

W dc-power level at which the ac-power rating is achieved at the reference operating condition, (W) [xxx]

Required: True

The value of the following variables depends on inv_snl_pdco:

  • array_num_inverters
Type:float
inv_snl_pnt

W ac-power consumed by inverter at night (night tare) to maintain circuitry required to sense PV array voltage, (W) [xxx]

Required: True

Type:float
inv_snl_pso

W dc-power required to start the inversion process, or self-consumption by inverter, strongly influences inverter efficiency at low power levels, (W) [xxx]

Required: True

Type:float
inv_snl_vdcmax

V (Vdcmax) dc-voltage maximum operating voltage, (V) [xxx]

Required: True

Type:float
inv_snl_vdco

V (Vnom) dc-voltage level at which the ac-power rating is achieved at the reference operating condition, (V) [xxx]

Required: True

Type:float

HCPVArray Group

class PySAM.Hcpv.Hcpv.HCPVArray
assign(dict) → None

Assign attributes from dictionary, overwriting but not removing values.

HCPVArray_vals = { var: val, ...}

export() → dict

Export attributes into dictionary.

replace(dict) → None

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

HCPVArray_vals = { var: val, ...}

array_ac_wiring_loss

AC wiring loss factor [0..1]

Required: True

Type:float
array_dc_mismatch_loss

DC module mismatch loss factor [0..1]

Required: True

Type:float
array_dc_wiring_loss

DC Wiring loss factor [0..1]

Required: True

Type:float
array_diode_conn_loss

Diodes and connections loss factor [0..1]

Required: True

Type:float
array_enable_azalt_sf

Boolean for irradiance derate [0-1]

Constraints: INTEGER

Required: True

Type:float
array_modules_per_tracker

Modules on each tracker [none]

Constraints: INTEGER

Required: True

The value of the following variables depends on array_modules_per_tracker:

  • array_num_inverters
  • system_capacity
Type:float
array_monthly_soiling

Monthly soiling factors array [0..1]

Required: True

Type:sequence
array_num_inverters

Number of inverters [none]

Required: True

The value of array_num_inverters depends on the following variables:

  • array_modules_per_tracker
  • array_num_trackers
  • inv_snl_pdco
  • module_a0
  • module_a1
  • module_a2
  • module_a3
  • module_a4
  • module_alignment_error
  • module_cell_area
  • module_concentration
  • module_flutter_loss_coeff
  • module_ncells
  • module_optical_error
  • module_reference
Type:float
array_num_trackers

Number of trackers [none]

Constraints: INTEGER

Required: True

The value of the following variables depends on array_num_trackers:

  • array_num_inverters
  • system_capacity
Type:float
array_rlim_az_max

Tracker maximum azimuth angle [deg]

Required: True

Type:float
array_rlim_az_min

Tracker minimum azimuth angle [deg]

Required: True

Type:float
array_rlim_el_max

Tracker maximum elevation angle [deg]

Required: True

Type:float
array_rlim_el_min

Tracker minimum elevation angle [deg]

Required: True

Type:float
array_tracker_power_fraction

Single tracker power fraction [0..1]

Required: True

Type:float
array_tracking_error

General racking error [0..1]

Required: True

Type:float
array_wind_stow_speed

Allowed wind speed before stowing [m/s]

Required: True

Type:float
azaltsf

Azimuth-Altitude Shading Table

Required: True

Type:sequence[sequence]

AdjustmentFactors Group

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

ac_loss_tracker_kwh

Annual tracker power loss [kWh]

Type:float
annual_ac

AC gross [kWh]

Type:float
annual_beam

Beam irradiance [kW/m2]

Type:float
annual_dc

DC gross [kWh]

Type:float
annual_dc_net

DC net [kWh]

Type:float
annual_energy

Annual Energy [kWh]

Type:float
annual_energy_distribution_time

Annual energy production as function of time [kW]

Type:sequence[sequence]
annual_input_radiation

Input radiation [kWh]

Type:float
capacity_factor

Capacity factor [%]

Type:float
dc_loss_stowing_kwh

Annual stowing power loss [kWh]

Type:float
dc_nominal

Annual DC nominal [kWh]

Type:float
gen

System power generated [kW]

Type:sequence
hourly_ac

AC gross [kWh]

Type:sequence
hourly_airmass

Relative air mass [none]

Type:sequence
hourly_beam

Beam irradiance [kW/m2]

Type:sequence
hourly_celleff

Cell efficiency [%]

Type:sequence
hourly_dc

DC gross [kWh]

Type:sequence
hourly_dc_net

DC net [kWh]

Type:sequence
hourly_input_radiation

Input radiation [kWh]

Type:sequence
hourly_modeff

Module efficiency [%]

Type:sequence
hourly_poa

POA on cell [W/m2]

Type:sequence
hourly_sazi

Tracker azimuth [deg]

Type:sequence
hourly_shading_derate

Shading derate [none]

Type:sequence
hourly_solazi

Hourly solar azimuth [deg]

Type:sequence
hourly_solzen

Hourly solar zenith [deg]

Type:sequence
hourly_stilt

Tracker tilt [deg]

Type:sequence
hourly_sunup

Sun up? (0/1) [0 or 1]

Type:sequence
hourly_tcell

Cell temperature [C]

Type:sequence
hourly_tdry

Ambient dry bulb temperature [C]

Type:sequence
hourly_tmod

Module backplate temp [C]

Type:sequence
hourly_windspd

Wind speed [m/s]

Type:sequence
kwh_per_kw

Energy yield [kWh/kW]

Type:float
modeff_ref

Module efficiency [-]

Type:float
monthly_beam

Beam irradiance [kW/m2]

Type:sequence
monthly_dc_net

DC net [kWh]

Type:sequence
monthly_energy

Monthly Energy [kWh]

Type:sequence
monthly_input_radiation

Input radiation [kWh]

Type:sequence
tracker_nameplate_watts

Tracker nameplate [watts]

Type:float