MEASUR-Tools-Suite v1.0.11
The MEASUR Tools Suite is a collection of industrial efficiency calculations written in C++ and with bindings for compilation to WebAssembly.
Loading...
Searching...
No Matches
Modules | Files | Namespaces | Classes | Functions
Water Reduction Calculator

Detailed Description

This calculator estimates annual water use and associated cost for a set of water reduction measures identified during an energy treasure hunt or water efficiency assessment. It supports four measurement methods — metered flow, volume meter, bucket, and other (direct consumption) — and accumulates the results across all measures in a single pass.

The calculation follows these steps for each measure:

  1. Metered Flow — Compute annual water use from a continuous flow meter reading and operating hours
  2. Volume Meter — Derive a flow rate from initial and final meter readings over a timed interval, then scale to annual use
  3. Bucket — Derive a flow rate from the time required to fill a bucket of known volume, then scale to annual use
  4. Other — Accept a direct consumption value (no flow-rate conversion required)
  5. Water Cost — For every method, multiply the annual water use by the water cost rate to obtain annual water cost
  6. Totals — Sum water use and water cost across all measures to produce the aggregate output

Relevant formulas and symbol definitions are documented below.

Metered Flow Water Use


Annual water use derived from a continuous flow meter reading and operating hours.

The metered flow method uses the instantaneous flow rate reported by a water meter together with the annual operating hours to obtain total annual water consumption. The factor of 60 converts the meter reading from gallons per minute to gallons per hour before multiplying by the annual operating hours.

\begin{equation}\label{eq:water-reduction-metered-flow} W_{use} = \dot{V}_{meter} \cdot 60 \cdot t_{op}\end{equation}

Symbols
\(W_{use}\)Annual water use \([\unit{ \gallon\per\year}]\)
\(\dot{V}_{meter}\)Meter reading (instantaneous flow rate) \([\unit{ \gallon\per\minute}]\)
\(60\)Conversion factor from minutes to hours \([\unit{ \minute\per\hour}]\)
\(t_{op}\)Annual operating hours \([\unit{ \hour\per\year}]\)

Volume Meter Water Use


Annual water use derived from the change in a volume meter over a timed interval.

The volume meter method records the initial and final readings of a totalizing water meter over a measured elapsed time. The difference in readings gives the volume consumed during the test interval. Dividing by the elapsed time (converted to hours) yields the average flow rate, which is then multiplied by the annual operating hours to obtain total annual water consumption.

\begin{equation}\label{eq:water-reduction-volume-meter} W_{use} = \frac{(V_{final} - V_{initial}) \cdot 60}{t_{elapsed}} \cdot t_{op}\end{equation}

Symbols
\(W_{use}\)Annual water use \([\unit{ \gallon\per\year}]\)
\(V_{final}\)Final meter reading \([\unit{ \gallon}]\)
\(V_{initial}\)Initial meter reading \([\unit{ \gallon}]\)
\(t_{elapsed}\)Elapsed time of measurement interval \([\unit{ \minute}]\)
\(60\)Conversion factor from minutes to hours \([\unit{ \minute\per\hour}]\)
\(t_{op}\)Annual operating hours \([\unit{ \hour\per\year}]\)

Bucket Method Water Use


Annual water use derived from the time required to fill a bucket of known volume.

The bucket method measures flow rate by recording the time needed to fill a container of known volume. Dividing the bucket volume by the fill time (converted to hours) yields the flow rate in gallons per hour, which is then multiplied by the annual operating hours to obtain total annual water consumption.

\begin{equation}\label{eq:water-reduction-bucket} W_{use} = \frac{V_{bucket} \cdot 3600}{t_{fill}} \cdot t_{op}\end{equation}

Symbols
\(W_{use}\)Annual water use \([\unit{ \gallon\per\year}]\)
\(V_{bucket}\)Volume of the bucket used for measurement \([\unit{ \gallon}]\)
\(t_{fill}\)Time to fill the bucket \([\unit{ \second}]\)
\(3600\)Conversion factor from seconds to hours \([\unit{ \second\per\hour}]\)
\(t_{op}\)Annual operating hours \([\unit{ \hour\per\year}]\)

Other Method Water Use


Annual water use supplied as a direct consumption value.

The other method accepts a pre-calculated or independently determined annual water consumption value. No flow-rate conversion is applied; the consumption figure is used directly as the annual water use.

\begin{equation}\label{eq:water-reduction-other} W_{use} = C_{other}\end{equation}

Symbols
\(W_{use}\)Annual water use \([\unit{ \gallon\per\year}]\)
\(C_{other}\)Direct annual water consumption \([\unit{ \gallon\per\year}]\)

Water Cost


Annual water cost calculated from annual water use and the water cost rate.

Regardless of the measurement method used to determine annual water use, the annual water cost is obtained by multiplying the water use by the cost per unit volume of water. This formula applies uniformly to the metered flow, volume meter, bucket, and other methods.

\begin{equation}\label{eq:water-reduction-water-cost} C_{water} = r_{water} \cdot W_{use}\end{equation}

Symbols
\(C_{water}\)Annual water cost \([\unit{ \dollar\per\year}]\)
\(r_{water}\)Water cost rate \([\unit{ \dollar\per\gallon}]\)
\(W_{use}\)Annual water use \([\unit{ \gallon\per\year}]\)

Modules

 Metered Flow Water Use Formula
 Annual water use derived from a continuous flow meter reading and operating hours.
 
 Volume Meter Water Use Formula
 Annual water use derived from the change in a volume meter over a timed interval.
 
 Bucket Method Water Use Formula
 Annual water use derived from the time required to fill a bucket of known volume.
 
 Other Method Water Use Formula
 Annual water use supplied as a direct consumption value.
 
 Water Cost Formula
 Annual water cost calculated from annual water use and the water cost rate.
 

Files

file  water_reduction.h
 Declares structs, enums, and functions for the Water Reduction Calculator.Calculates annual water use and cost for water reduction measures using multiple measurement methods.
 

Namespaces

namespace  water_reduction
 Water reduction calculations for treasure hunt measures.
 

Classes

struct  water_reduction::MeteredFlowMethodData
 Input data for the metered flow measurement method. More...
 
struct  water_reduction::VolumeMeterMethodData
 Input data for the volume meter measurement method. More...
 
struct  water_reduction::BucketMethodData
 Input data for the bucket measurement method. More...
 
struct  water_reduction::WaterOtherMethodData
 Input data for the other (direct consumption) measurement method. More...
 
struct  water_reduction::WaterReductionInput
 Input data for a single water reduction measure. More...
 
struct  water_reduction::WaterReductionOutput
 Output data for a water reduction calculation. More...
 

Functions

WaterReductionOutput water_reduction::waterReduction (const std::vector< WaterReductionInput > &input_vec)
 Calculates total annual water use and cost for a collection of water reduction measures.
 
WaterReductionOutput water_reduction::meteredFlowReduction (const MeteredFlowMethodData &data, int operating_hours, double water_cost)
 Calculates annual water use and cost using the metered flow method.
 
WaterReductionOutput water_reduction::volumeMeterReduction (const VolumeMeterMethodData &data, int operating_hours, double water_cost)
 Calculates annual water use and cost using the volume meter method.
 
WaterReductionOutput water_reduction::bucketReduction (const BucketMethodData &data, int operating_hours, double water_cost)
 Calculates annual water use and cost using the bucket measurement method.
 
WaterReductionOutput water_reduction::otherReduction (const WaterOtherMethodData &data, double water_cost)
 Calculates annual water use and cost using a directly supplied consumption value.
 

Function Documentation

◆ bucketReduction()

WaterReductionOutput water_reduction::bucketReduction ( const BucketMethodData data,
int  operating_hours,
double  water_cost 
)

Computes the flow rate by dividing the bucket volume by the fill time (converted to hours), then scales to annual use by multiplying by the operating hours. Water cost is then derived using Water Cost Formula.

See also
Bucket Method Water Use Formula
Parameters
[in]dataBucketMethodData with bucket volume \([\unit{\gallon}]\) and fill time \([\unit{\second}]\).
[in]operating_hoursAnnual operating hours \([\unit{\hour\per\year}]\).
[in]water_costWater cost rate \([\unit{\dollar\per\gallon}]\).
Returns
WaterReductionOutput with annual water use \([\unit{\gallon\per\year}]\) and annual water cost \([\unit{\dollar\per\year}]\).

◆ meteredFlowReduction()

WaterReductionOutput water_reduction::meteredFlowReduction ( const MeteredFlowMethodData data,
int  operating_hours,
double  water_cost 
)

Multiplies the meter reading by 60 (to convert gal/min to gal/hr) and by the annual operating hours to obtain annual water use. Water cost is then derived using Water Cost Formula.

See also
Metered Flow Water Use Formula
Parameters
[in]dataMeteredFlowMethodData with the meter reading \([\unit{\gallon\per\minute}]\).
[in]operating_hoursAnnual operating hours \([\unit{\hour\per\year}]\).
[in]water_costWater cost rate \([\unit{\dollar\per\gallon}]\).
Returns
WaterReductionOutput with annual water use \([\unit{\gallon\per\year}]\) and annual water cost \([\unit{\dollar\per\year}]\).

◆ otherReduction()

WaterReductionOutput water_reduction::otherReduction ( const WaterOtherMethodData data,
double  water_cost 
)

Uses the consumption field directly as the annual water use without any flow-rate conversion. Water cost is then derived using Water Cost Formula.

See also
Other Method Water Use Formula
Parameters
[in]dataWaterOtherMethodData with the annual water consumption \([\unit{\gallon\per\year}]\).
[in]water_costWater cost rate \([\unit{\dollar\per\gallon}]\).
Returns
WaterReductionOutput with annual water use \([\unit{\gallon\per\year}]\) and annual water cost \([\unit{\dollar\per\year}]\).

◆ volumeMeterReduction()

WaterReductionOutput water_reduction::volumeMeterReduction ( const VolumeMeterMethodData data,
int  operating_hours,
double  water_cost 
)

Computes the average flow rate from the change in meter reading over the elapsed time, then scales to annual use by multiplying by the operating hours. Water cost is then derived using Water Cost Formula.

See also
Volume Meter Water Use Formula
Parameters
[in]dataVolumeMeterMethodData with initial/final meter readings \([\unit{\gallon}]\) and elapsed time \([\unit{\minute}]\).
[in]operating_hoursAnnual operating hours \([\unit{\hour\per\year}]\).
[in]water_costWater cost rate \([\unit{\dollar\per\gallon}]\).
Returns
WaterReductionOutput with annual water use \([\unit{\gallon\per\year}]\) and annual water cost \([\unit{\dollar\per\year}]\).

◆ waterReduction()

WaterReductionOutput water_reduction::waterReduction ( const std::vector< WaterReductionInput > &  input_vec)

Iterates over input_vec, dispatches each measure to the appropriate single-method helper (metered flow, volume meter, bucket, or other), and accumulates the results.

See also
Water Reduction Calculator
Water Cost Formula
Parameters
[in]input_vecVector of WaterReductionInput structs, one per measure.
Returns
WaterReductionOutput with the summed annual water use \([\unit{\gallon\per\year}]\) and annual water cost \([\unit{\dollar\per\year}]\) across all measures.