Pvwattsv7¶
Wrapper for SAM Simulation Core model: cmod_pvwattsv7.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.
Pvwattsv7 model description
Pvwattsv7
-
PySAM.Pvwattsv7.
default
(config) → Pvwattsv7¶ Use financial config-specific default attributes config options:
- “FuelCellCommercial”
- “FuelCellSingleOwner”
- “PVWattsAllEquityPartnershipFlip”
- “PVWattsCommercial”
- “PVWattsCommercialPPA”
- “PVWattsHostDeveloper”
- “PVWattsIndependentPowerProducer”
- “PVWattsLCOECalculator”
- “PVWattsLeveragedPartnershipFlip”
- “PVWattsMerchantPlant”
- “PVWattsNone”
- “PVWattsResidential”
- “PVWattsSaleLeaseback”
- “PVWattsSingleOwner”
- “PVWattsThirdParty”
-
PySAM.Pvwattsv7.
from_existing
(data, optional config) → Pvwattsv7¶ Share underlying data with an existing PySAM class. If config provided, default attributes are loaded otherwise.
-
PySAM.Pvwattsv7.
new
() → Pvwattsv7¶
-
PySAM.Pvwattsv7.
wrap
(ssc_data_t) → Pvwattsv7¶ Use existing PySSC data
Warning
Do not call PySSC.data_free on the ssc_data_t provided to
wrap
Functions¶
-
class
PySAM.Pvwattsv7.
Pvwattsv7
¶ 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.
-
Reopt_size_battery_post
()¶ Given a PV system with Utilityrate5 parameters, get the optimal battery size. Wind and additional PV are disabled. Maps SAM compute module inputs to those of the ReOpt Lite API: Pvwattsv5 module linked with Battwatts, Utilityrate5, with Cashloan optional.
For more information on which PySAM variables are used, see: https://github.com/NREL/ssc/blob/develop/ssc/cmod_pvsamv1_eqns.h
For an example, see the ‘Examples’ readthedocs page.
-
assign
(dict) → None¶ Assign attributes from nested dictionary, except for Outputs
nested_dict = { 'Solar Resource': { 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.
-
SolarResource Group¶
-
class
PySAM.Pvwattsv7.Pvwattsv7.
SolarResource
¶ -
assign
() → None¶ Assign attributes from dictionary
SolarResource_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
albedo
¶ Albedo [frac]
Info: if provided, will overwrite weather file albedo
Type: sequence
-
solar_resource_data
¶ Weather data
Info: dn,df,tdry,wspd,lat,lon,tz
Required: False
Type: dict
-
solar_resource_file
¶ Weather file path
Required: False
Type: str
-
Lifetime Group¶
-
class
PySAM.Pvwattsv7.Pvwattsv7.
Lifetime
¶ -
assign
() → None¶ Assign attributes from dictionary
Lifetime_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
analysis_period
¶ Analysis period [years]
Required: True if system_use_lifetime_output=1
Type: float
-
dc_degradation
¶ Annual DC degradation for lifetime simulations [%/year]
Required: True if system_use_lifetime_output=1
Type: sequence
-
system_use_lifetime_output
¶ Run lifetime simulation [0/1]
Required: If not provided, assumed to be 0
Type: float
-
SystemDesign Group¶
-
class
PySAM.Pvwattsv7.Pvwattsv7.
SystemDesign
¶ -
assign
() → None¶ Assign attributes from dictionary
SystemDesign_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
ac_plant_max_f
¶ Plant controller max output (as f(ac_size)) [ratio]
Required: If not provided, assumed to be 1.0
Type: float
-
array_type
¶ Array type [0/1/2/3/4]
Info: Fixed Rack,Fixed Roof,1Axis,Backtracked,2Axis
Constraints: MIN=0,MAX=4,INTEGER
Required: True
Type: float
-
azimuth
¶ Azimuth angle [deg]
Options: E=90,S=180,W=270
Constraints: MIN=0,MAX=360
Required: array_type<4
Type: float
-
batt_simple_enable
¶ Enable Battery [0/1]
Constraints: BOOLEAN
Required: If not provided, assumed to be 0
Type: float
-
bifaciality
¶ Module bifaciality factor [0 or ~0.65]
Required: If not provided, assumed to be 0
Type: float
-
dc_ac_ratio
¶ DC to AC ratio [ratio]
Constraints: POSITIVE
Required: If not provided, assumed to be 1.1
Type: float
-
en_snowloss
¶ Enable snow loss model [0/1]
Constraints: BOOLEAN
Required: If not provided, assumed to be 0
Type: float
-
enable_wind_stow
¶ Enable tracker stow at high wind speeds [0/1]
Required: If not provided, assumed to be 0
Type: float
-
gcr
¶ Ground coverage ratio [0..1]
Constraints: MIN=0,MAX=1
Required: If not provided, assumed to be 0.4
Type: float
-
gust_factor
¶ Wind gust estimation factor
Required: False
Type: float
-
inv_eff
¶ Inverter efficiency at rated power [%]
Constraints: MIN=90,MAX=99.5
Required: If not provided, assumed to be 96
Type: float
-
losses
¶ Other DC losses [%]
Info: Total system losses
Constraints: MIN=-5,MAX=99
Required: True
Type: float
-
module_type
¶ Module type [0/1/2]
Info: Standard,Premium,Thin film
Constraints: MIN=0,MAX=2,INTEGER
Required: If not provided, assumed to be 0
Type: float
-
rotlim
¶ Tracker rotation angle limit [deg]
Required: If not provided, assumed to be 45.0
Type: float
-
shading_azal
¶ Azimuth x altitude beam shading loss [%]
Required: False
Type: sequence[sequence]
-
shading_diff
¶ Diffuse shading loss [%]
Required: False
Type: float
-
shading_mxh
¶ Month x Hour beam shading loss [%]
Required: False
Type: sequence[sequence]
-
shading_timestep
¶ Time step beam shading loss [%]
Required: False
Type: sequence[sequence]
-
soiling
¶ Soiling loss [%]
Required: False
Type: sequence
-
stow_wspd
¶ Tracker stow wind speed threshold [m/s]
Required: If not provided, assumed to be 10
Type: float
-
system_capacity
¶ System size (DC nameplate) [kW]
Required: True
Type: float
-
tilt
¶ Tilt angle [deg]
Options: H=0,V=90
Constraints: MIN=0,MAX=90
Required: array_type<4
Type: float
-
wind_stow_angle
¶ Tracker angle for wind stow [deg]
Required: If not provided, assumed to be 30.0
Type: float
-
xfmr_ll
¶ GSU transformer load loss (resistive) [%(ac)]
Required: If not provided, assumed to be 0.0
Type: float
-
xfmr_nll
¶ GSU transformer no load loss (iron core) [%(ac)]
Required: If not provided, assumed to be 0.0
Type: float
-
AdjustmentFactors Group¶
-
class
PySAM.Pvwattsv7.Pvwattsv7.
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.Pvwattsv7.Pvwattsv7.
Outputs
¶ -
assign
() → None¶ Assign attributes from dictionary
Outputs_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary
-
ac
¶ AC inverter power [W]
Type: sequence
-
ac_annual
¶ Annual AC system output [kWh]
Type: float
-
ac_monthly
¶ AC system output [kWh]
Type: sequence
-
annual_energy
¶ Annual energy [kWh]
Type: float
-
aoi
¶ Angle of incidence [deg]
Type: sequence
-
capacity_factor
¶ Capacity factor [%]
Type: float
-
city
¶ City
Type: str
-
dc
¶ DC array power [W]
Type: sequence
-
dc_monthly
¶ DC array output [kWh]
Type: sequence
-
dcsnowderate
¶ Array DC power loss due to snow [%]
Type: sequence
-
df
¶ Weather file diffuse irradiance [W/m2]
Type: sequence
-
dn
¶ Weather file beam irradiance [W/m2]
Type: sequence
-
elev
¶ Site elevation [m]
Type: float
-
estimated_rows
¶ Estimated number of rows in the system
Type: float
-
gh
¶ Weather file global horizontal irradiance [W/m2]
Type: sequence
-
inverter_efficiency
¶ Inverter efficiency at rated power [%]
Type: float
-
kwh_per_kw
¶ Energy yield [kWh/kW]
Type: float
-
lat
¶ Latitude [deg]
Type: float
-
location
¶ Location ID
Type: str
-
lon
¶ Longitude [deg]
Type: float
-
monthly_energy
¶ Monthly energy [kWh]
Type: sequence
-
percent_complete
¶ Estimated percent of total completed simulation [%]
Type: float
-
poa
¶ Plane of array irradiance [W/m2]
Type: sequence
-
poa_monthly
¶ Plane of array irradiance [kWh/m2]
Type: sequence
-
shad_beam_factor
¶ Shading factor for beam radiation
Type: sequence
-
snow
¶ Weather file snow depth [cm]
Type: sequence
-
solrad_annual
¶ Daily average solar irradiance [kWh/m2/day]
Type: float
-
solrad_monthly
¶ Daily average solar irradiance [kWh/m2/day]
Type: sequence
-
state
¶ State
Type: str
-
sunup
¶ Sun up over horizon [0/1]
Type: sequence
-
tamb
¶ Weather file ambient temperature [C]
Type: sequence
-
tcell
¶ Module temperature [C]
Type: sequence
-
tpoa
¶ Transmitted plane of array irradiance [W/m2]
Type: sequence
-
ts_shift_hours
¶ Time offset for interpreting time series outputs [hours]
Type: float
-
tz
¶ Time zone [hr]
Type: float
-
wspd
¶ Weather file wind speed [m/s]
Type: sequence
-