Calculates volume change since the last interval using a Flow Rate or Tank Level sensor.
Calculation using a Flow Rate sensor
Volume = Average() * [delta T]
For a flow rate sensor, Volume() is equal to the average flow rate over the past interval multiplied by the length of the time interval.
The resulting units correlate to the input units. For example:
Flow rate input | Output |
---|---|
GPM | Gallons |
CFS | ft3 |
L/s | Liters |
Calculation using a Tank Level sensor
Volume = (Close() - Previous(Close(),1)) * [Tank Area(Close())]
Tank volume changes are based on a backwards difference calculation.
The resulting units correlate to the input units. For example:
Tank level input | Output |
---|---|
ft | ft3 |
m | m3 |
Syntax
volume(TimeSeries)
Parameter | Description |
---|---|
TimeSeries | This must be an input node with a Flow Rate or Tank Level sensor. |
Example expressions
sum(volume(@input_node),24): For hourly flow rate data, this outputs the cumulative flow volume over a 24-hour window.
sum(volume(@input_node),24): For hourly tank level data, this outputs the net volume that has entered or left the tank over the previous 24 hours.
volume(@input_node): Calculates the volume for the time series data specified in the input node.
Example chart
The following chart shows the flow rate from a pump station with several functions applied to view the volumes that are delivered.
- The volume() function shows the volume delivered each time step, which is each hour in this case.
Note that the results will differ according to the interval selected. That is, daily and 15-minute intervals will report very different volumes.
- totalvolume() cumulates the volume that has passed through the pump over time.
- sum(volume(),24) yields the volume that was delivered over just the previous 24 hours.
