Utilityrateforecast
Utilityrateforecast
- PySAM.Utilityrateforecast.default(config) Utilityrateforecast
Load defaults for the configuration
config
. Available configurations are:None
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.Utilityrateforecast.from_existing(data, optional config) Utilityrateforecast
Share data with an existing PySAM class. If
optional config
is a valid configuration name, load the module’s defaults for that configuration.
- PySAM.Utilityrateforecast.new() Utilityrateforecast
- PySAM.Utilityrateforecast.wrap(ssc_data_t) Utilityrateforecast
Load data from a PySSC object.
Warning
Do not call PySSC.data_free on the ssc_data_t provided to
wrap()
Utilityrateforecast is a wrapper for the SSC compute module cmod_utilityrateforecast.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.Utilityrateforecast.Utilityrateforecast
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 = { 'Electricity Rates': { var: val, ...}, ...}
- execute(int verbosity) None
Execute simulation with verbosity level 0 (default) or 1
- export() dict
Export attributes into nested dictionary
- get_data_ptr() Pointer
Get ssc_data_t pointer
- 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 = { 'Electricity Rates': { var: val, ...}, ...}
- setup() None
Setup parameters in simulation
- unassign(name) None
Unassign a value in any of the variable groups.
- value(name, optional value) None | float | dict | sequence | str
Get or set by name a value in any of the variable groups.
ElectricityRates Group
- class PySAM.Utilityrateforecast.Utilityrateforecast.ElectricityRates
- assign(dict) None
Assign attributes from dictionary, overwriting but not removing values.
ElectricityRates_vals = { var: val, ...}
- export() dict
Export attributes into dictionary.
- replace(dict) None
Replace attributes from dictionary, unassigning values not present in input
dict
.ElectricityRates_vals = { var: val, ...}
- en_electricity_rates
Optionally enable/disable electricity_rate [years]
Constraints: INTEGER,MIN=0,MAX=1
- Type:
float
- gen
Lifetime generation forecast
- Type:
sequence
- grid_power
Electricity to/from grid
- Type:
sequence
- load
Lifetime load forecast
- Type:
sequence
- rate_escalation
Annual electricity rate escalation [%/year]
Required: False. Automatically set to 0 if not assigned explicitly or loaded from defaults.
- Type:
sequence
- ur_annual_min_charge
Annual minimum charge [$]
Required: False. Automatically set to 0.0 if not assigned explicitly or loaded from defaults.
- Type:
float
- ur_billing_demand_lookback_percentages
Billing demand lookback percentages by month and consider actual peak demand [%]
Info: 12x2
Required: Required if ur_enable_billing_demand=1
- Type:
sequence[sequence]
- ur_billing_demand_lookback_period
Billing demand lookback period [mn]
Constraints: INTEGER,MIN=0,MAX=12
Required: Required if ur_enable_billing_demand=1
- Type:
float
- ur_billing_demand_minimum
Minimum billing demand [kW]
Required: Required if ur_enable_billing_demand=1
- Type:
float
- ur_dc_billing_demand_periods
Billing demand applicability to a given demand charge time of use period
Required: Required if ur_enable_billing_demand=1
- Type:
sequence[sequence]
- ur_dc_enable
Enable demand charge [0/1]
Options: 0=disable,1=enable
Constraints: BOOLEAN
Required: False. Automatically set to 0 if not assigned explicitly or loaded from defaults.
- Type:
float
- ur_dc_flat_mat
Demand rates (flat) table [col 0=month, col 1=tier no, col 2=tier peak (kW), col 3=charge ($/kW)]
Info: nx4
Required: Required if ur_dc_enable=1
- Type:
sequence[sequence]
- ur_dc_peaks
Peak demand by month and period
INOUT: This variable is both an input and an output to the compute module.
- Type:
sequence[sequence]
- ur_dc_sched_weekday
Demand charge weekday schedule [Periods defined in ur_dc_tou_mat]
Info: 12x24
- Type:
sequence[sequence]
- ur_dc_sched_weekend
Demand charge weekend schedule [Periods defined in ur_dc_tou_mat]
Info: 12x24
- Type:
sequence[sequence]
- ur_dc_tou_mat
Demand rates (TOU) table [col 0=period no, col 1=tier no, col 2=tier peak (kW), col 3=charge ($/kW)]
Info: nx4
Required: Required if ur_dc_enable=1
- Type:
sequence[sequence]
- ur_ec_sched_weekday
Energy charge weekday schedule [Periods defined in ur_ec_tou_mat]
Info: 12x24
- Type:
sequence[sequence]
- ur_ec_sched_weekend
Energy charge weekend schedule [Periods defined in ur_ec_tou_mat]
Info: 12x24
- Type:
sequence[sequence]
- ur_ec_tou_mat
Energy rates table [col 0=period no, col 1=tier no, col 2=max usage, col 3=max usage units (0=kWh, 1=kWh/kW, 2=kWh daily, 3=kWh/kW daily), col 4=buy rate ($/kWh), col 5=sell rate ($/kWh)]
Info: nx6
- Type:
sequence[sequence]
- ur_en_ts_buy_rate
Enable time step buy rates [0/1]
Options: 0=disable,1=enable
Constraints: BOOLEAN
Required: False. Automatically set to 0 if not assigned explicitly or loaded from defaults.
- Type:
float
- ur_en_ts_sell_rate
Enable time step sell rates [0/1]
Options: 0=disable,1=enable
Constraints: BOOLEAN
Required: False. Automatically set to 0 if not assigned explicitly or loaded from defaults.
- Type:
float
- ur_enable_billing_demand
Enable billing demand ratchets [0/1]
Options: 0=disable,1=enable
Constraints: INTEGER,MIN=0,MAX=1
Required: False. Automatically set to 0 if not assigned explicitly or loaded from defaults.
- Type:
float
- ur_energy_use
Energy use or surplus by month and period
INOUT: This variable is both an input and an output to the compute module.
- Type:
sequence[sequence]
- ur_metering_option
Metering options [0=net energy metering,1=net energy metering with $ credits,2=net billing,3=net billing with carryover to next month,4=buy all - sell all]
Info: Net metering monthly excess
Constraints: INTEGER,MIN=0,MAX=4
Required: False. Automatically set to 0 if not assigned explicitly or loaded from defaults.
- Type:
float
- ur_monthly_fixed_charge
Monthly fixed charge [$]
Required: False. Automatically set to 0.0 if not assigned explicitly or loaded from defaults.
- Type:
float
- ur_monthly_min_charge
Monthly minimum charge [$]
Required: False. Automatically set to 0.0 if not assigned explicitly or loaded from defaults.
- Type:
float
- ur_nm_credit_month
Month of year end payout (true-up) [mn]
Constraints: INTEGER,MIN=0,MAX=11
Required: False. Automatically set to 11 if not assigned explicitly or loaded from defaults.
- Type:
float
- ur_nm_credit_rollover
Apply net metering true-up credits to future bills [0/1]
Options: 0=disable,1=enable
Constraints: INTEGER,MIN=0,MAX=1
Required: False. Automatically set to 0 if not assigned explicitly or loaded from defaults.
- Type:
float
- ur_nm_yearend_sell_rate
Net metering true-up credit sell rate [$/kWh]
Required: False. Automatically set to 0.0 if not assigned explicitly or loaded from defaults.
- Type:
float
- ur_sell_eq_buy
Set sell rate equal to buy rate [0/1]
Info: Optional override
Constraints: BOOLEAN
Required: False. Automatically set to 0 if not assigned explicitly or loaded from defaults.
- Type:
float
- ur_ts_buy_rate
Time step buy rates [$/kWh]
- Type:
sequence
- ur_ts_sell_rate
Time step sell rates [$/kWh]
- Type:
sequence
- ur_yearzero_usage_peaks
Peak usage by month for year zero [kW]
Info: 12
Required: Required if ur_enable_billing_demand=1
- Type:
sequence
Lifetime Group
- class PySAM.Utilityrateforecast.Utilityrateforecast.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
Number of years in escalation and forecast [years]
Constraints: INTEGER,POSITIVE
Required: True
- Type:
float
- inflation_rate
Inflation rate [%]
Constraints: MIN=-99
Required: True
- Type:
float
Controls Group
- class PySAM.Utilityrateforecast.Utilityrateforecast.Controls
- assign(dict) None
Assign attributes from dictionary, overwriting but not removing values.
Controls_vals = { var: val, ...}
- export() dict
Export attributes into dictionary.
- replace(dict) None
Replace attributes from dictionary, unassigning values not present in input
dict
.Controls_vals = { var: val, ...}
- idx
Starting index (lifetime)
INOUT: This variable is both an input and an output to the compute module.
- Type:
float
- steps_per_hour
Steps per hour [hr]
Required: True
- Type:
float
Outputs Group
- class PySAM.Utilityrateforecast.Utilityrateforecast.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, ...}
- ur_price_series
Estimated cost of each timestep [$]
- Type:
sequence
- ur_total_bill
Total cost for the calculated period [$]
- Type:
float