Grid¶
Electric grid model
-
PySAM.Grid.
default
(config) → Grid¶ Load defaults for the configuration
config
. Available configurations are:- “BiopowerAllEquityPartnershipFlip”
- “BiopowerLCOECalculator”
- “BiopowerLeveragedPartnershipFlip”
- “BiopowerMerchantPlant”
- “BiopowerNone”
- “BiopowerSaleLeaseback”
- “BiopowerSingleOwner”
- “DSLFAllEquityPartnershipFlip”
- “DSLFCommercial”
- “DSLFLCOECalculator”
- “DSLFLeveragedPartnershipFlip”
- “DSLFMerchantPlant”
- “DSLFNone”
- “DSLFSaleLeaseback”
- “DSLFSingleOwner”
- “FlatPlatePVAllEquityPartnershipFlip”
- “FlatPlatePVCommercial”
- “FlatPlatePVHostDeveloper”
- “FlatPlatePVLCOECalculator”
- “FlatPlatePVLeveragedPartnershipFlip”
- “FlatPlatePVMerchantPlant”
- “FlatPlatePVNone”
- “FlatPlatePVResidential”
- “FlatPlatePVSaleLeaseback”
- “FlatPlatePVSingleOwner”
- “FlatPlatePVThirdParty”
- “FuelCellCommercial”
- “FuelCellSingleOwner”
- “GenericBatteryAllEquityPartnershipFlip”
- “GenericBatteryCommercial”
- “GenericBatteryHostDeveloper”
- “GenericBatteryLeveragedPartnershipFlip”
- “GenericBatteryMerchantPlant”
- “GenericBatteryResidential”
- “GenericBatterySaleLeaseback”
- “GenericBatterySingleOwner”
- “GenericBatteryThirdParty”
- “GenericCSPSystemAllEquityPartnershipFlip”
- “GenericCSPSystemCommercial”
- “GenericCSPSystemLCOECalculator”
- “GenericCSPSystemLeveragedPartnershipFlip”
- “GenericCSPSystemMerchantPlant”
- “GenericCSPSystemNone”
- “GenericCSPSystemSaleLeaseback”
- “GenericCSPSystemSingleOwner”
- “GenericSystemAllEquityPartnershipFlip”
- “GenericSystemCommercial”
- “GenericSystemHostDeveloper”
- “GenericSystemLCOECalculator”
- “GenericSystemLeveragedPartnershipFlip”
- “GenericSystemMerchantPlant”
- “GenericSystemNone”
- “GenericSystemResidential”
- “GenericSystemSaleLeaseback”
- “GenericSystemSingleOwner”
- “GenericSystemThirdParty”
- “GeothermalPowerAllEquityPartnershipFlip”
- “GeothermalPowerLCOECalculator”
- “GeothermalPowerLeveragedPartnershipFlip”
- “GeothermalPowerMerchantPlant”
- “GeothermalPowerNone”
- “GeothermalPowerSaleLeaseback”
- “GeothermalPowerSingleOwner”
- “HighXConcentratingPVAllEquityPartnershipFlip”
- “HighXConcentratingPVLCOECalculator”
- “HighXConcentratingPVLeveragedPartnershipFlip”
- “HighXConcentratingPVMerchantPlant”
- “HighXConcentratingPVNone”
- “HighXConcentratingPVSaleLeaseback”
- “HighXConcentratingPVSingleOwner”
- “MEwaveBatterySingleOwner”
- “MEwaveSingleOwner”
- “MSLFAllEquityPartnershipFlip”
- “MSLFCommercial”
- “MSLFLCOECalculator”
- “MSLFLeveragedPartnershipFlip”
- “MSLFMerchantPlant”
- “MSLFNone”
- “MSLFSaleLeaseback”
- “MSLFSingleOwner”
- “MSPTAllEquityPartnershipFlip”
- “MSPTLeveragedPartnershipFlip”
- “MSPTMerchantPlant”
- “MSPTSaleLeaseback”
- “MSPTSingleOwner”
- “PVBatteryAllEquityPartnershipFlip”
- “PVBatteryCommercial”
- “PVBatteryHostDeveloper”
- “PVBatteryLeveragedPartnershipFlip”
- “PVBatteryMerchantPlant”
- “PVBatteryResidential”
- “PVBatterySaleLeaseback”
- “PVBatterySingleOwner”
- “PVBatteryThirdParty”
- “PVWattsBatteryCommercial”
- “PVWattsBatteryHostDeveloper”
- “PVWattsBatteryResidential”
- “PVWattsBatteryThirdParty”
- “PVWattsAllEquityPartnershipFlip”
- “PVWattsCommercial”
- “PVWattsCommunitySolar”
- “PVWattsHostDeveloper”
- “PVWattsLCOECalculator”
- “PVWattsLeveragedPartnershipFlip”
- “PVWattsMerchantPlant”
- “PVWattsNone”
- “PVWattsResidential”
- “PVWattsSaleLeaseback”
- “PVWattsSingleOwner”
- “PVWattsThirdParty”
- “PhysicalTroughAllEquityPartnershipFlip”
- “PhysicalTroughLCOECalculator”
- “PhysicalTroughLeveragedPartnershipFlip”
- “PhysicalTroughMerchantPlant”
- “PhysicalTroughNone”
- “PhysicalTroughSaleLeaseback”
- “PhysicalTroughSingleOwner”
- “StandaloneBatteryAllEquityPartnershipFlip”
- “StandaloneBatteryCommercial”
- “StandaloneBatteryHostDeveloper”
- “StandaloneBatteryLeveragedPartnershipFlip”
- “StandaloneBatteryMerchantPlant”
- “StandaloneBatteryResidential”
- “StandaloneBatterySaleLeaseback”
- “StandaloneBatterySingleOwner”
- “StandaloneBatteryThirdParty”
- “WindPowerAllEquityPartnershipFlip”
- “WindPowerCommercial”
- “WindPowerLCOECalculator”
- “WindPowerLeveragedPartnershipFlip”
- “WindPowerMerchantPlant”
- “WindPowerNone”
- “WindPowerResidential”
- “WindPowerSaleLeaseback”
- “WindPowerSingleOwner”
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.Grid.
from_existing
(data, optional config) → Grid¶ Share data with an existing PySAM class. If
optional config
is a valid configuration name, load the module’s defaults for that configuration.
-
PySAM.Grid.
new
() → Grid¶
-
PySAM.Grid.
wrap
(ssc_data_t) → Grid¶ Load data from a PySSC object.
Warning
Do not call PySSC.data_free on the ssc_data_t provided to
wrap()
Grid is a wrapper for the SSC compute module cmod_grid.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.
- None
Functions¶
-
class
PySAM.Grid.
Grid
¶ 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 = { 'Lifetime': { 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 = { 'Lifetime': { 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.
-
Lifetime Group¶
-
class
PySAM.Grid.Grid.
Lifetime
¶ -
assign
(dict) → None¶ Assign attributes from dictionary, overwriting but not removing values.
Lifetime_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary.
-
replace
(dict) → None¶ Replace attributes from dictionary, unassigning values not present in input
dict
.Lifetime_vals = { var: val, ...}
-
analysis_period
¶ Lifetime analysis period [years]
Info: The number of years in the simulation
Required: Required if system_use_lifetime_output=1
Type: float
-
system_use_lifetime_output
¶ Lifetime simulation [0/1]
Options: 0=SingleYearRepeated,1=RunEveryYear
Constraints: BOOLEAN
Required: False. Automatically set to 0 if not assigned explicitly or loaded from defaults.
Type: float
-
SystemOutput Group¶
-
class
PySAM.Grid.Grid.
SystemOutput
¶ -
assign
(dict) → None¶ Assign attributes from dictionary, overwriting but not removing values.
SystemOutput_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary.
-
replace
(dict) → None¶ Replace attributes from dictionary, unassigning values not present in input
dict
.SystemOutput_vals = { var: val, ...}
-
annual_energy
¶ Annual Energy AC (year 1) [kWh]
Type: float
-
energy_hourly_kW
¶ Power output of array [kW]
Info: Lifetime system generation
Type: sequence
-
gen
¶ System power generated [kW]
Info: Lifetime system generation
Type: sequence
-
Load Group¶
-
class
PySAM.Grid.Grid.
Load
¶ -
assign
(dict) → None¶ Assign attributes from dictionary, overwriting but not removing values.
Load_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary.
-
replace
(dict) → None¶ Replace attributes from dictionary, unassigning values not present in input
dict
.Load_vals = { var: val, ...}
-
crit_load
¶ Critical electricity load (year 1) [kW]
Type: sequence
-
grid_outage
¶ Grid outage in this time step [0/1]
Options: 0=GridAvailable,1=GridUnavailable,Length=load
Type: sequence
-
load
¶ Electricity load (year 1) [kW]
Type: sequence
-
load_escalation
¶ Annual load escalation [%/year]
Required: False. Automatically set to 0 if not assigned explicitly or loaded from defaults.
Type: sequence
-
GridLimits Group¶
-
class
PySAM.Grid.Grid.
GridLimits
¶ -
assign
(dict) → None¶ Assign attributes from dictionary, overwriting but not removing values.
GridLimits_vals = { var: val, ...}
-
export
() → dict¶ Export attributes into dictionary.
-
replace
(dict) → None¶ Replace attributes from dictionary, unassigning values not present in input
dict
.GridLimits_vals = { var: val, ...}
-
enable_interconnection_limit
¶ Enable grid interconnection limit [0/1]
Info: Enable a grid interconnection limit
Type: float
-
grid_curtailment
¶ Grid curtailment as energy delivery limit (first year) [MW]
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
-
grid_interconnection_limit_kwac
¶ Grid interconnection limit [kWac]
Type: float
-
Outputs Group¶
-
class
PySAM.Grid.Grid.
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, ...}
-
annual_ac_curtailment_loss_kwh
¶ Annual Energy loss from curtailment (year 1) [kWh]
Type: float
-
annual_ac_curtailment_loss_percent
¶ Annual Energy loss from curtailment (year 1) [%]
Type: float
-
annual_ac_interconnect_loss_kwh
¶ Annual Energy loss from interconnection limit (year 1) [kWh]
Type: float
-
annual_ac_interconnect_loss_percent
¶ Annual Energy loss from interconnection limit (year 1) [%]
Type: float
-
annual_energy_distribution_time
¶ Annual energy production as function of time [kW]
Type: sequence[sequence]
-
annual_energy_pre_curtailment_ac
¶ Annual Energy AC pre-curtailment (year 1) [kWh]
Type: float
-
annual_energy_pre_interconnect_ac
¶ Annual Energy AC pre-interconnection (year 1) [kWh]
Type: float
-
capacity_factor_curtailment_ac
¶ Capacity factor based on AC electricity after curtailment and AC interconnection limit [%]
Type: float
-
capacity_factor_interconnect_ac
¶ Capacity factor based on AC interconnection limit [%]
Type: float
-
full_load
¶ Electricity load prior to grid outage (year 1) [kW]
Type: sequence
-
gen
¶ System power generated [kW]
Type: sequence
-
system_pre_curtailment_kwac
¶ System power before grid curtailment [kW]
Type: sequence
-
system_pre_interconnect_kwac
¶ System power before grid interconnect [kW]
Type: sequence
-