Question-and-Answer Resource for the Building Energy Modeling Community
Get started with the Help page
Ask Your Question
1

UtilityCost:Computation does not work?

asked 2021-12-19 00:03:55 -0500

mattkoch's avatar

updated 2021-12-27 10:26:12 -0500

I am trying to implement the CPS Energy General Service PL rate structure in San Antonio, TX as an injection to the EnergyPlus 9.2.0 IDF file generated by OpenStudio 2.9.1. It has an effective demand that is the actual demand in excess of 5 kW, and a resulting threshold energy that is the sum of 1600 kWh and the product of the effective demand and 200 kWh/kW. Due to this seeming complexity, I was not able to implement this using UtilityCost:Charge:Simple or UtilityCost:Charge:Block, so am now trying with UtilityCost:Computation and several UtilityCost:Variable. A first problem is that the UtilityCost:Variable BaseDemand has to be "Dimensionless", because neither "Demand" nor "Power" are recognized as the Variable Type, though this may be minor. Much more importantly, after the run completes, the EnergyPlus Tariff Report correctly shows the various UtilityCost:Variable, but most of the variables defined in UtilityCost:Computation are zero. Below is my complete attempt (apologies for the length). Does anyone know how to get this to work?

UtilityCost:Tariff,
  CPS_General_Service_PL,        !- Name
  Electricity:Facility,          !- Charge Variable name
  kWh,                           !- Conversion Factor Choice
  ,                              !- Energy Conversion Factor
  ,                              !- Demand Conversion Factor
  ,                              !- Time of Use Period Schedule Name
  SeasonSchedule,                !- Season Schedule Name
  MonthSchedule,                 !- Month Schedule Name
  QuarterHour,                   !- Demand Window Length
  8.75,                          !- Monthly Charge or Variable Name
  ,                              !- Minimum Monthly Charge or Variable Name
  ,                              !- Real Time Pricing Charge Schedule Name
  ,                              !- Customer Baseline Load Schedule Name
  ,                              !- Group Name
  BuyFromUtility;                !- Buy Or Sell

UtilityCost:Variable,
  BaseDemand,             !- Name
  CPS_General_Service_PL, !- Tariff Name
  Dimensionless,          !- Variable Type
  5.0,                    !- January Value
  5.0,                    !- February Value
  5.0,                    !- March Value
  5.0,                    !- April Value
  5.0,                    !- May Value
  5.0,                    !- June Value
  5.0,                    !- July Value
  5.0,                    !- August Value
  5.0,                    !- September Value
  5.0,                    !- October Value
  5.0,                    !- November Value
  5.0;                    !- December Value

UtilityCost:Variable,
  BaseHours,              !- Name
  CPS_General_Service_PL, !- Tariff Name
  Dimensionless,          !- Variable Type
  200.0,                  !- January Value
  200.0,                  !- February Value
  200.0,                  !- March Value
  200.0,                  !- April Value
  200.0,                  !- May Value
  200.0,                  !- June Value
  200.0,                  !- July Value
  200.0,                  !- August Value
  200.0,                  !- September Value
  200.0,                  !- October Value
  200.0,                  !- November Value
  200.0;                  !- December Value

UtilityCost:Variable,
  BaseUsage,              !- Name
  CPS_General_Service_PL, !- Tariff Name
  Dimensionless,          !- Variable Type
  1600.0,                 !- January Value
  1600.0,                 !- February Value
  1600.0,                 !- March Value
  1600.0,                 !- April Value
  1600.0,                 !- May Value
  1600.0,                 !- June Value
  1600.0,                 !- July Value
  1600.0,                 !- August Value
  1600.0,                 !- September Value
  1600.0,                 !- October Value
  1600.0,                 !- November Value
  1600.0;                 !- December Value

UtilityCost:Variable,
  CapacityUsage,          !- Name
  CPS_General_Service_PL, !- Tariff Name
  Dimensionless,          !- Variable Type
  600.0,                  !- January Value
  600.0,                  !- February Value
  600.0,                  !- March Value
  600.0,                  !- April Value
  600.0,                  !- May Value
  600.0,                  !- June Value
  600.0,                  !- July Value
  600.0,                  !- August Value
  600.0,                  !- September Value
  600.0,                  !- October Value
  600.0,                  !- November Value
  600.0;                  !- December Value

UtilityCost:Variable,
  AvailabilityCharge,     !- Name
  CPS_General_Service_PL, !- Tariff Name
  Currency,               !- Variable Type
  8.75,                   !- January Value
  8.75,                   !- February Value
  8.75,                   !- March Value
  8 ...
(more)
edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
1

answered 2021-12-19 00:45:51 -0500

mattkoch's avatar

OK, so aside from needing to use LowerUsageRate and UpperUsageRate instead of LowerRate and UpperRate, it seems that the BigLadder Entry for EnergyPlus 9.2.0 is misleading in its definition of EXCEEDS. What I thought should be "Demand EXCEEDS totalDemand BaseDemand" based on that entry, actually has to be "Demand EXCEEDS BaseDemand totalDemand", i.e. the two arguments appear to be reversed. After fixing this, the EnergyPlus output nicely matches my spreadsheet reference.

edit flag offensive delete link more

Comments

@mattkoch here is the current description of the EXCEEDS operator:

"Returns the difference between the first and second variable if the first variable is greater than the second. If the second variable is greater or equal to the first variable returns a zero."

Are you saying that this description should change to be "if the SECOND variable is greater than the FIRST"? If so, that should be logged as an issue on the EnergyPlus Github site.

Aaron Boranian's avatar Aaron Boranian  ( 2021-12-19 15:35:21 -0500 )edit

Yes Sir, I believe that is what I am saying. For example, I expected "x EXCEEDS 45.0 5.0" to give me x=40.0, but it gave me x=0.0. So I tried "x EXCEEDS 5.0 45.0" and it correctly gave me x=40.0.

mattkoch's avatar mattkoch  ( 2021-12-19 16:06:10 -0500 )edit

I just posted this to the ongoing Github issue related to documenation.

JasonGlazer's avatar JasonGlazer  ( 2021-12-20 08:06:59 -0500 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Training Workshops

Careers

Question Tools

2 followers

Stats

Asked: 2021-12-19 00:03:55 -0500

Seen: 127 times

Last updated: Dec 20 '21