Technical Reference

Dynamic Energy Cost Modeling

While EPANET's internal solver is capable of tracking raw pump energy consumption (kW), it does not natively support the complex, multi-tiered financial tracking required to simulate modern commercial utility bills.

To bridge this gap, IAMDD extracts the raw energy consumption data at the end of the simulation and passes it through a custom Python financial engine.

1. Base Energy Cost (Time-of-Use Simulation)

Commercial agricultural and municipal pumps are rarely billed at a flat rate. Power companies typically enforce Time-of-Use (TOU) pricing, where electricity is significantly more expensive during peak daytime hours than at night.

The engine accounts for this by integrating the Energy Rates settings with the Patterns Library.

The engine loops over every single hour of the simulation. For each hour, it executes the following logic:

  • It extracts the raw energy consumed by all pumps (kW).
  • It looks up the user-defined base electrical rate (e.g., $0.10 per kWh).
  • It determines the current hour of the day and looks up the corresponding multiplier from the assigned Diurnal Pattern (e.g., a 1.5 multiplier during a 4:00 PM peak).

It then calculates the cost for that specific hour using the following formula: Hourly Cost = kW Consumed × Base Rate × Diurnal Pattern Multiplier

This allows users to accurately simulate the financial benefit of shifting irrigation schedules exclusively to off-peak night hours.

2. Peak Demand Charges

In addition to the raw volume of electricity consumed, large commercial utilities usually levy a "Demand Charge". This is a massive penalty fee (e.g., $15.00 to $25.00 per kW) applied to the absolute highest single hour of power draw across the entire month.

This means turning on all your pumps at exactly the same time for just one hour can cost thousands of dollars in penalties.

To calculate this, the engine tracks the calendar date for every hour of the simulation. It continuously monitors the system's power draw and logs the absolute maximum kW peak recorded for each specific calendar month.

At the end of the simulation, it calculates the penalty using the following formula: Total Demand Cost = Sum of (Monthly Peak kW × Demand Charge Rate)

This granular tracking is what allows the Cumulative Summary dashboard to display accurate, split-bar charts distinguishing between the "Base Cost" and the "Demand Charge"—empowering engineers to strategically stagger their delivery schedules to flatten peak load and save money.