Utilityrate5

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

Utilityrate5 model description

Retail electricity bill calculator

PySAM.Utilityrate5.default(config) → Utilityrate5

Use financial model-specific default attributes config options:

  • “BiopowerCommercial”
  • “DSLFCommercial”
  • “DishStirlingCommercial”
  • “EmpiricalTroughCommercial”
  • “FlatPlatePVCommercial”
  • “FlatPlatePVHostDeveloper”
  • “FlatPlatePVResidential”
  • “FlatPlatePVSingleOwner”
  • “FlatPlatePVThirdParty”
  • “FuelCellCommercial”
  • “FuelCellSingleOwner”
  • “GenericCSPSystemCommercial”
  • “GenericSystemCommercial”
  • “GenericSystemHostDeveloper”
  • “GenericSystemResidential”
  • “GenericSystemThirdParty”
  • “MSLFCommercial”
  • “PVWattsCommercial”
  • “PVWattsHostDeveloper”
  • “PVWattsResidential”
  • “PVWattsThirdParty”
  • “PhysicalTroughCommercial”
  • “SolarWaterHeatingCommercial”
  • “SolarWaterHeatingResidential”
  • “WindPowerCommercial”
  • “WindPowerResidential”
PySAM.Utilityrate5.new() → Utilityrate5
PySAM.Utilityrate5.wrap(ssc_data_t) → Utilityrate5

Use existing PySSC data

Warning

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

Functions

class PySAM.Utilityrate5.Utilityrate5

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 = { 'Common': { var: val, ...}, ...}

execute(int verbosity) → None

Execute simulation with verbosity level 0 (default) or 1

export() → dict

Export attributes into nested dictionary

Common Group

class PySAM.Utilityrate5.Utilityrate5.Common
assign() → None

Assign attributes from dictionary

Common_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

TOU_demand_single_peak

float: Use single monthly peak for TOU demand charge [0/1]

Options: 0=use TOU peak,1=use flat peak

Constraints: INTEGER,MIN=0,MAX=1

Required: set to 0 if not provided.

en_electricity_rates

float: Optionally enable/disable electricity_rate [years]

Constraints: INTEGER,MIN=0,MAX=1

ur_sell_eq_buy

float: Set sell rate equal to buy rate [0/1]

Info: Optional override

Constraints: BOOLEAN

Required: set to 0 if not provided.

Lifetime Group

class PySAM.Utilityrate5.Utilityrate5.Lifetime
assign() → None

Assign attributes from dictionary

Lifetime_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

analysis_period

float: Number of years in analysis [years]

Constraints: INTEGER,POSITIVE

Required: True

inflation_rate

float: Inflation rate [%]

Constraints: MIN=-99

Required: True

system_use_lifetime_output

float: Lifetime hourly system outputs [0/1]

Options: 0=hourly first year,1=hourly lifetime

Constraints: INTEGER,MIN=0,MAX=1

Required: True

SystemOutput Group

class PySAM.Utilityrate5.Utilityrate5.SystemOutput
assign() → None

Assign attributes from dictionary

SystemOutput_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

degradation

sequence: Annual energy degradation [%]

Required: True

gen

sequence: System power generated [kW]

Required: True

TimeSeries Group

class PySAM.Utilityrate5.Utilityrate5.TimeSeries
assign() → None

Assign attributes from dictionary

TimeSeries_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

load

sequence: Electricity load (year 1) [kW]

ElectricLoad Group

class PySAM.Utilityrate5.Utilityrate5.ElectricLoad
assign() → None

Assign attributes from dictionary

ElectricLoad_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

load_escalation

sequence: Annual load escalation [%/year]

Required: set to 0 if not provided.

UtilityRateFlat Group

class PySAM.Utilityrate5.Utilityrate5.UtilityRateFlat
assign() → None

Assign attributes from dictionary

UtilityRateFlat_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

rate_escalation

sequence: Annual electricity rate escalation [%/year]

Required: set to 0 if not provided.

ur_annual_min_charge

float: Annual minimum charge [$]

Required: set to 0.0 if not provided.

ur_en_ts_sell_rate

float: Enable time step sell rates [0/1]

Constraints: BOOLEAN

Required: set to 0 if not provided.

ur_metering_option

float: Metering options [0=Single meter with monthly rollover credits in kWh,1=Single meter with monthly rollover credits in $,2=Single meter with no monthly rollover credits (Net Billing),3=Single meter with monthly rollover credits in $ (Net Billing $),4=Two meters with all generation sold and all load purchased]

Info: Net metering monthly excess

Constraints: INTEGER,MIN=0,MAX=4

Required: set to 0 if not provided.

ur_monthly_fixed_charge

float: Monthly fixed charge [$]

Required: set to 0.0 if not provided.

ur_monthly_min_charge

float: Monthly minimum charge [$]

Required: set to 0.0 if not provided.

ur_nm_yearend_sell_rate

float: Year end sell rate [$/kWh]

Required: set to 0.0 if not provided.

ur_ts_sell_rate

sequence: Time step sell rates [0/1]

UtilityRateEnergyCharge Group

class PySAM.Utilityrate5.Utilityrate5.UtilityRateEnergyCharge
assign() → None

Assign attributes from dictionary

UtilityRateEnergyCharge_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

ur_ec_sched_weekday

sequence[sequence]: Energy charge weekday schedule

Info: 12x24

Required: True

ur_ec_sched_weekend

sequence[sequence]: Energy charge weekend schedule

Info: 12x24

Required: True

ur_ec_tou_mat

sequence[sequence]: Energy rates table

Required: True

UtilityRateDemandCharge Group

class PySAM.Utilityrate5.Utilityrate5.UtilityRateDemandCharge
assign() → None

Assign attributes from dictionary

UtilityRateDemandCharge_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

ur_dc_enable

float: Enable demand charge [0/1]

Constraints: BOOLEAN

Required: set to 0 if not provided.

ur_dc_flat_mat

sequence[sequence]: Demand rates (flat) table

Required: set to 1 if not provided.

ur_dc_sched_weekday

sequence[sequence]: Demand charge weekday schedule

Info: 12x24

ur_dc_sched_weekend

sequence[sequence]: Demand charge weekend schedule

Info: 12x24

ur_dc_tou_mat

sequence[sequence]: Demand rates (TOU) table

Required: set to 1 if not provided.

Outputs Group

class PySAM.Utilityrate5.Utilityrate5.Outputs
assign() → None

Assign attributes from dictionary

Outputs_vals = { var: val, ...}

export() → dict

Export attributes into dictionary

annual_electric_load

sequence: Electricity load total in each year [kWh]

annual_energy_value

sequence: Energy value in each year [$]

bill_load

sequence: Bill load (year 1) [kWh]

charge_w_sys_dc_fixed

sequence: Demand charge with system (flat) [$]

charge_w_sys_dc_fixed_ym

sequence[sequence]: Demand charge with system (flat) [$]

charge_w_sys_dc_tou

sequence: Demand charge with system (TOU) [$]

charge_w_sys_dc_tou_ym

sequence[sequence]: Demand charge with system (TOU) [$]

charge_w_sys_ec

sequence: Energy charge with system [$]

charge_w_sys_ec_apr_tp

sequence[sequence]: Energy charge with system Apr [$]

charge_w_sys_ec_aug_tp

sequence[sequence]: Energy charge with system Aug [$]

charge_w_sys_ec_dec_tp

sequence[sequence]: Energy charge with system Dec [$]

charge_w_sys_ec_feb_tp

sequence[sequence]: Energy charge with system Feb [$]

charge_w_sys_ec_gross_ym

sequence[sequence]: Energy charge with system before credits [$]

charge_w_sys_ec_jan_tp

sequence[sequence]: Energy charge with system Jan [$]

charge_w_sys_ec_jul_tp

sequence[sequence]: Energy charge with system Jul [$]

charge_w_sys_ec_jun_tp

sequence[sequence]: Energy charge with system Jun [$]

charge_w_sys_ec_mar_tp

sequence[sequence]: Energy charge with system Mar [$]

charge_w_sys_ec_may_tp

sequence[sequence]: Energy charge with system May [$]

charge_w_sys_ec_nov_tp

sequence[sequence]: Energy charge with system Nov [$]

charge_w_sys_ec_oct_tp

sequence[sequence]: Energy charge with system Oct [$]

charge_w_sys_ec_sep_tp

sequence[sequence]: Energy charge with system Sep [$]

charge_w_sys_ec_ym

sequence[sequence]: Energy charge with system [$]

charge_w_sys_fixed

sequence: Fixed monthly charge with system [$]

charge_w_sys_fixed_ym

sequence[sequence]: Fixed monthly charge with system [$]

charge_w_sys_minimum

sequence: Minimum charge with system [$]

charge_w_sys_minimum_ym

sequence[sequence]: Minimum charge with system [$]

charge_wo_sys_dc_fixed

sequence: Demand charge without system (flat) [$]

charge_wo_sys_dc_fixed_ym

sequence[sequence]: Demand charge without system (flat) [$]

charge_wo_sys_dc_tou

sequence: Demand charge without system (TOU) [$]

charge_wo_sys_dc_tou_ym

sequence[sequence]: Demand charge without system (TOU) [$]

charge_wo_sys_ec

sequence: Energy charge without system [$]

charge_wo_sys_ec_apr_tp

sequence[sequence]: Energy charge without system Apr [$]

charge_wo_sys_ec_aug_tp

sequence[sequence]: Energy charge without system Aug [$]

charge_wo_sys_ec_dec_tp

sequence[sequence]: Energy charge without system Dec [$]

charge_wo_sys_ec_feb_tp

sequence[sequence]: Energy charge without system Feb [$]

charge_wo_sys_ec_jan_tp

sequence[sequence]: Energy charge without system Jan [$]

charge_wo_sys_ec_jul_tp

sequence[sequence]: Energy charge without system Jul [$]

charge_wo_sys_ec_jun_tp

sequence[sequence]: Energy charge without system Jun [$]

charge_wo_sys_ec_mar_tp

sequence[sequence]: Energy charge without system Mar [$]

charge_wo_sys_ec_may_tp

sequence[sequence]: Energy charge without system May [$]

charge_wo_sys_ec_nov_tp

sequence[sequence]: Energy charge without system Nov [$]

charge_wo_sys_ec_oct_tp

sequence[sequence]: Energy charge without system Oct [$]

charge_wo_sys_ec_sep_tp

sequence[sequence]: Energy charge without system Sep [$]

charge_wo_sys_ec_ym

sequence[sequence]: Energy charge without system [$]

charge_wo_sys_fixed

sequence: Fixed monthly charge without system [$]

charge_wo_sys_fixed_ym

sequence[sequence]: Fixed monthly charge without system [$]

charge_wo_sys_minimum

sequence: Minimum charge without system [$]

charge_wo_sys_minimum_ym

sequence[sequence]: Minimum charge without system [$]

elec_cost_with_system

sequence: Electricity bill with system [$/yr]

elec_cost_with_system_year1

float: Electricity bill with system (year 1) [$/yr]

elec_cost_without_system

sequence: Electricity bill without system [$/yr]

elec_cost_without_system_year1

float: Electricity bill without system (year 1) [$/yr]

energy_w_sys_ec_apr_tp

sequence[sequence]: Electricity usage with system Apr [kWh]

energy_w_sys_ec_aug_tp

sequence[sequence]: Electricity usage with system Aug [kWh]

energy_w_sys_ec_dec_tp

sequence[sequence]: Electricity usage with system Dec [kWh]

energy_w_sys_ec_feb_tp

sequence[sequence]: Electricity usage with system Feb [kWh]

energy_w_sys_ec_jan_tp

sequence[sequence]: Electricity usage with system Jan [kWh]

energy_w_sys_ec_jul_tp

sequence[sequence]: Electricity usage with system Jul [kWh]

energy_w_sys_ec_jun_tp

sequence[sequence]: Electricity usage with system Jun [kWh]

energy_w_sys_ec_mar_tp

sequence[sequence]: Electricity usage with system Mar [kWh]

energy_w_sys_ec_may_tp

sequence[sequence]: Electricity usage with system May [kWh]

energy_w_sys_ec_nov_tp

sequence[sequence]: Electricity usage with system Nov [kWh]

energy_w_sys_ec_oct_tp

sequence[sequence]: Electricity usage with system Oct [kWh]

energy_w_sys_ec_sep_tp

sequence[sequence]: Electricity usage with system Sep [kWh]

energy_wo_sys_ec_apr_tp

sequence[sequence]: Electricity usage without system Apr [kWh]

energy_wo_sys_ec_aug_tp

sequence[sequence]: Electricity usage without system Aug [kWh]

energy_wo_sys_ec_dec_tp

sequence[sequence]: Electricity usage without system Dec [kWh]

energy_wo_sys_ec_feb_tp

sequence[sequence]: Electricity usage without system Feb [kWh]

energy_wo_sys_ec_jan_tp

sequence[sequence]: Electricity usage without system Jan [kWh]

energy_wo_sys_ec_jul_tp

sequence[sequence]: Electricity usage without system Jul [kWh]

energy_wo_sys_ec_jun_tp

sequence[sequence]: Electricity usage without system Jun [kWh]

energy_wo_sys_ec_mar_tp

sequence[sequence]: Electricity usage without system Mar [kWh]

energy_wo_sys_ec_may_tp

sequence[sequence]: Electricity usage without system May [kWh]

energy_wo_sys_ec_nov_tp

sequence[sequence]: Electricity usage without system Nov [kWh]

energy_wo_sys_ec_oct_tp

sequence[sequence]: Electricity usage without system Oct [kWh]

energy_wo_sys_ec_sep_tp

sequence[sequence]: Electricity usage without system Sep [kWh]

excess_dollars_applied_ym

sequence[sequence]: Excess generation $ credit applied [$]

excess_dollars_earned_ym

sequence[sequence]: Excess generation $ credit earned [$]

excess_kwhs_applied_ym

sequence[sequence]: Excess generation kWh credit applied [kWh]

excess_kwhs_earned_ym

sequence[sequence]: Excess generation kWh credit earned [kWh]

lifetime_load

sequence: Lifetime electricity load [kW]

monthly_tou_demand_charge_w_sys

sequence[sequence]: Demand peak charge with system [$]

monthly_tou_demand_charge_wo_sys

sequence[sequence]: Demand peak charge without system [$]

monthly_tou_demand_peak_w_sys

sequence[sequence]: Demand peak with system [kW]

monthly_tou_demand_peak_wo_sys

sequence[sequence]: Demand peak without system [kW]

savings_year1

float: Electricity bill savings with system (year 1) [$/yr]

surplus_w_sys_ec_apr_tp

sequence[sequence]: Electricity exports with system Apr [kWh]

surplus_w_sys_ec_aug_tp

sequence[sequence]: Electricity exports with system Aug [kWh]

surplus_w_sys_ec_dec_tp

sequence[sequence]: Electricity exports with system Dec [kWh]

surplus_w_sys_ec_feb_tp

sequence[sequence]: Electricity exports with system Feb [kWh]

surplus_w_sys_ec_jan_tp

sequence[sequence]: Electricity exports with system Jan [kWh]

surplus_w_sys_ec_jul_tp

sequence[sequence]: Electricity exports with system Jul [kWh]

surplus_w_sys_ec_jun_tp

sequence[sequence]: Electricity exports with system Jun [kWh]

surplus_w_sys_ec_mar_tp

sequence[sequence]: Electricity exports with system Mar [kWh]

surplus_w_sys_ec_may_tp

sequence[sequence]: Electricity exports with system May [kWh]

surplus_w_sys_ec_nov_tp

sequence[sequence]: Electricity exports with system Nov [kWh]

surplus_w_sys_ec_oct_tp

sequence[sequence]: Electricity exports with system Oct [kWh]

surplus_w_sys_ec_sep_tp

sequence[sequence]: Electricity exports with system Sep [kWh]

utility_bill_w_sys

sequence: Electricity bill with system [$]

utility_bill_w_sys_ym

sequence[sequence]: Electricity bill with system [$]

utility_bill_wo_sys

sequence: Electricity bill without system [$]

utility_bill_wo_sys_ym

sequence[sequence]: Electricity bill without system [$]

year1_electric_load

float: Electricity load total (year 1) [kWh/yr]

year1_excess_dollars_applied

sequence: Excess generation $ credit applied [$/mo]

year1_excess_dollars_earned

sequence: Excess generation $ credit earned [$/mo]

year1_excess_kwhs_applied

sequence: Excess generation kWh credit applied [kWh/mo]

year1_excess_kwhs_earned

sequence: Excess generation kWh credit earned [kWh/mo]

year1_hourly_dc_peak_per_period

sequence: Electricity peak from grid per TOU period (year 1 hourly) [kW]

year1_hourly_dc_tou_schedule

sequence: TOU period for demand charges (year 1 hourly)

year1_hourly_dc_with_system

sequence: Demand charge with system (year 1 hourly) [$]

year1_hourly_dc_without_system

sequence: Demand charge without system (year 1 hourly) [$]

year1_hourly_e_fromgrid

sequence: Electricity from grid (year 1 hourly) [kWh]

year1_hourly_e_tofromgrid

sequence: Electricity to/from grid (year 1 hourly) [kWh]

year1_hourly_e_togrid

sequence: Electricity to grid (year 1 hourly) [kWh]

year1_hourly_ec_tou_schedule

sequence: TOU period for energy charges (year 1 hourly)

year1_hourly_ec_with_system

sequence: Energy charge with system (year 1 hourly) [$]

year1_hourly_ec_without_system

sequence: Energy charge without system (year 1 hourly) [$]

year1_hourly_p_system_to_load

sequence: Electricity peak from system to load (year 1 hourly) [kW]

year1_hourly_p_tofromgrid

sequence: Electricity to/from grid peak (year 1 hourly) [kW]

year1_hourly_salespurchases_with_system

sequence: Electricity sales/purchases with system (year 1 hourly) [$]

year1_hourly_salespurchases_without_system

sequence: Electricity sales/purchases without system (year 1 hourly) [$]

year1_hourly_system_to_load

sequence: Electricity from system to load (year 1 hourly) [kWh]

year1_monthly_cumulative_excess_dollars

sequence: Excess generation cumulative $ credit earned [$/mo]

year1_monthly_cumulative_excess_generation

sequence: Excess generation cumulative kWh credit earned [kWh/mo]

year1_monthly_dc_fixed_with_system

sequence: Demand charge (flat) with system [$/mo]

year1_monthly_dc_fixed_without_system

sequence: Demand charge (flat) without system [$/mo]

year1_monthly_dc_tou_with_system

sequence: Demand charge (TOU) with system [$/mo]

year1_monthly_dc_tou_without_system

sequence: Demand charge (TOU) without system [$/mo]

year1_monthly_ec_charge_gross_with_system

sequence: Energy charge with system before credits [$/mo]

year1_monthly_ec_charge_with_system

sequence: Energy charge with system [$/mo]

year1_monthly_ec_charge_without_system

sequence: Energy charge without system [$/mo]

year1_monthly_electricity_to_grid

sequence: Electricity to/from grid [kWh/mo]

year1_monthly_fixed_with_system

sequence: Fixed monthly charge with system [$/mo]

year1_monthly_fixed_without_system

sequence: Fixed monthly charge without system [$/mo]

year1_monthly_load

sequence: Electricity load [kWh/mo]

year1_monthly_minimum_with_system

sequence: Minimum charge with system [$/mo]

year1_monthly_minimum_without_system

sequence: Minimum charge without system [$/mo]

year1_monthly_peak_w_system

sequence: Demand peak with system [kW/mo]

year1_monthly_peak_wo_system

sequence: Demand peak without system [kW/mo]

year1_monthly_use_w_system

sequence: Electricity use with system [kWh/mo]

year1_monthly_use_wo_system

sequence: Electricity use without system [kWh/mo]

year1_monthly_utility_bill_w_sys

sequence: Electricity bill with system [$/mo]

year1_monthly_utility_bill_wo_sys

sequence: Electricity bill without system [$/mo]