Jump to content

Measurement:Canonical Units: Difference between revisions

From AOWIS
mNo edit summary
mNo edit summary
 
(4 intermediate revisions by the same user not shown)
Line 2: Line 2:
* Related to: [[Measurement:Units]]
* Related to: [[Measurement:Units]]


AOWIS uses the canonical SI-based engineering units specified in [[Measurement:Units|Units]]. UCUM<ref name="UCUM">Unified Code for Units of Measure (UCUM) https://ucum.org</ref> is the normative syntax and code system for machine-readable physical unit identifiers.
This page is the normative registry of canonical measurement quantities and units used by AOWIS.


AOWIS defines a canonical set of UCUM unit identifiers used across all system interfaces, storage formats, APIs, and inter-system data exchanges.
The representation and conversion rules governing these quantities are defined in [[Measurement:Units]].


Unit identifiers are machine-readable tokens and are not intended to represent typographic or human-readable unit notation.
UCUM<ref name="UCUM">Unified Code for Units of Measure (UCUM) https://ucum.org</ref> is used for machine-readable physical unit identifiers.


Currencies are not represented as UCUM units in AOWIS. Monetary values use currencies identified by ISO 4217<ref name="ISO4217">ISO 4217 Currency Codes https://www.iso.org/iso-4217-currency-codes.html</ref> and follow the monetary-value rules defined on this page.
== Identifier and Field-Naming Rules ==


== General Rules ==
The canonical unit assigned to each measurement quantity in this registry is authoritative.


* All physical unit identifiers MUST conform to UCUM.
When a unit identifier is explicitly represented, it MUST use the canonical UCUM identifier defined here.
* Each fixed or resolved physical measurement quantity MUST be assigned exactly one UCUM unit identifier as its canonical unit identifier.
* Canonical unit identifiers MUST be used consistently across all AOWIS-compliant systems, interfaces, storage formats, APIs, and inter-system data exchanges.
* Canonical unit identifiers MUST be interpreted independently of locale, display format, implementation, and system context.
* Canonical unit identifiers MUST remain stable across AOWIS-compliant systems and data formats.
* A numeric value is not necessarily a measurement quantity. Counts, indices, priorities, precision values, identifiers, and similar non-measurement numbers do not receive UCUM unit identifiers merely because they are numeric.
* Dimensionless physical quantities use the UCUM unity unit <code>1</code>. Fixed-schema fields whose canonical unit is <code>1</code> do not require an AOWIS unit suffix when the field name unambiguously identifies the dimensionless quantity.
* A numeric value whose physical quantity depends on another field, enum, object type, equation, or operating mode MUST NOT be assigned a misleading fixed unit. It MUST be resolved through a quantity-specific field or discriminated structure.
* Equation coefficients whose dimensions depend on a configurable non-integer exponent MUST be stored together with the equation parameters that determine their dimensional meaning and MUST NOT be represented as if they had one fixed standalone UCUM unit.
* Backend-native, imported, display, and user-selected units MUST be converted to the canonical AOWIS representation at system boundaries unless the backend-native representation is itself the canonical AOWIS representation.
* Currencies and exchange rates are outside UCUM unit conversion. Monetary values MUST identify or reference their ISO 4217 currency.


== Requirements ==
The AOWIS identifier suffix is an ASCII-safe naming convention used for fixed-schema field names, property names, database columns, and similar technical identifiers.


<pre>
The suffix convention is:
REQ-MEAS-UNI-001: All physical unit identifiers MUST conform to UCUM.


REQ-MEAS-UNI-002: Each fixed or resolved physical measurement quantity MUST be assigned exactly one UCUM unit identifier as its canonical unit identifier.
* division is represented by <code>_per_</code>;
* multiplication is represented by <code>_</code>;
* unit symbols are normalized to lower case where required for identifier naming;
* quantity-specific semantic qualifiers MAY be included where a literal unit-only suffix would be ambiguous;
* dimensionless fields with canonical UCUM unit <code>1</code> normally omit a unit suffix.


REQ-MEAS-UNI-003: The canonical unit identifier assigned to a measurement quantity MUST be used consistently across all AOWIS-compliant systems, interfaces, storage formats, APIs, and inter-system data exchanges.
For example:


REQ-MEAS-UNI-004: The measurement quantity identifier defines what is measured, while the unit identifier defines the unit in which it is expressed.
<pre>
 
m3/h        -> m3_per_h
REQ-MEAS-UNI-005: Dimensionless physical measurement quantities MUST use the UCUM unit identifier "1". A fixed-schema field with canonical unit "1" MAY omit a unit suffix when its field name unambiguously identifies the quantity.
m/s        -> m_per_s
 
kW.h/m3    -> kw_h_per_m3
REQ-MEAS-UNI-006: Numeric values that are not physical measurement quantities MUST NOT be assigned UCUM unit identifiers solely because they are numeric.
mm2/(100.m) -> mm2_per_100m
 
REQ-MEAS-UNI-007: A value whose physical quantity depends on another field, enum, object type, equation, or operating mode MUST be represented using quantity-specific fields or a discriminated structure that identifies the resolved quantity.
 
REQ-MEAS-UNI-008: An equation coefficient whose dimensions depend on a configurable non-integer exponent MUST be stored together with the parameters that determine its dimensional meaning and MUST NOT be assigned a misleading fixed standalone UCUM unit.
 
REQ-MEAS-UNI-009: Non-canonical backend, import, display, or user-selected units MUST be converted to the canonical AOWIS representation at system boundaries.
 
REQ-MEAS-UNI-010: Currencies MUST NOT be represented as UCUM units in AOWIS. Monetary values MUST identify or reference a currency using its ISO 4217 currency identifier.
</pre>
</pre>


== Canonical Measurement Quantities and Units ==
The AOWIS identifier suffix is not itself a UCUM unit identifier.
 
The canonical UCUM unit identifier assigned to a measurement quantity is authoritative whenever a unit identifier is represented in serialization or data exchange.
 
The AOWIS identifier suffix is an ASCII-safe representation used in field names, property names, database columns, and other technical identifiers. Division is represented by <code>_per_</code>, multiplication by <code>_</code>, and upper case is normalized to lower case. A quantity-specific semantic qualifier MAY be included where a literal unit-only suffix would be ambiguous or misleading; for example, <code>mm2_per_m_head</code> makes explicit that the denominator represents pressure head.
 
For fixed-schema measurement fields, the measurement quantity and canonical unit MAY be defined normatively by the schema and represented through the field name and its AOWIS identifier suffix. Such fields do not require a separate unit-identifier property.
 
Dimensionless fixed-schema fields whose canonical unit is <code>1</code> normally omit a unit suffix. Semantic words such as <code>ratio</code>, <code>factor</code>, <code>coefficient</code>, <code>multiplier</code>, and <code>exponent</code> describe the quantity and are not unit suffixes.
 
When a unit identifier is represented explicitly, it MUST use the canonical UCUM identifier assigned to the measurement quantity. The AOWIS identifier suffix is a technical field-naming convention and is not itself a UCUM unit identifier.
 
Generic or dynamically typed physical measurement values MUST explicitly identify their resolved measurement quantity and canonical UCUM unit and MUST NOT rely solely on a field-name suffix.


Each identifier suffix is explicitly defined in the following tables.
For generic or dynamically typed measurement values, the resolved measurement quantity determines the canonical unit through this registry.


=== Length and Distance Quantities ===
== Length and Distance Quantities ==


{| class="wikitable"
{| class="wikitable"
! Measurement Quantity Identifier !! Definition !! Canonical Unit !! Canonical UCUM Unit Identifier !! AOWIS Identifier Suffix !! AOWIS Model / EPANET Mapping
! Measurement Quantity Identifier !! Definition !! Canonical Unit !! UCUM Identifier !! AOWIS Identifier Suffix !! AOWIS Model / EPANET Mapping
|-
|-
| <code>length</code> || Linear spatial extent along an object or path || metre (m) || <code>m</code> || <code>m</code> || Pipe and link length
| <code>length</code> || Linear spatial extent along an object or path || metre (m) || <code>m</code> || <code>m</code> || Pipe and link length
Line 83: Line 56:
| <code>tank_diameter</code> || Internal diameter of a cylindrical storage tank || metre (m) || <code>m</code> || <code>m</code> || EPANET tank diameter
| <code>tank_diameter</code> || Internal diameter of a cylindrical storage tank || metre (m) || <code>m</code> || <code>m</code> || EPANET tank diameter
|-
|-
| <code>darcy_weisbach_roughness_height</code> || Absolute pipe-wall roughness height used by the Darcy-Weisbach head-loss formulation || millimetre (mm) || <code>mm</code> || <code>mm</code> || EPANET Darcy-Weisbach pipe roughness
| <code>darcy_weisbach_roughness_height</code> || Absolute pipe-wall roughness height used by the Darcy-Weisbach formulation || millimetre (mm) || <code>mm</code> || <code>mm</code> || EPANET Darcy-Weisbach pipe roughness
|}
|}


=== Geographic Coordinate Quantities ===
== Geographic Coordinate Quantities ==


{| class="wikitable"
{| class="wikitable"
! Measurement Quantity Identifier !! Definition !! Canonical Unit !! Canonical UCUM Unit Identifier !! AOWIS Identifier Suffix !! AOWIS Model / EPANET Mapping
! Measurement Quantity Identifier !! Definition !! Canonical Unit !! UCUM Identifier !! AOWIS Identifier Suffix !! AOWIS Model / EPANET Mapping
|-
|-
| <code>latitude</code> || Angular position north or south of the equator || degree (°) || <code>deg</code> || <code>deg</code> || WGS 84 latitude
| <code>latitude</code> || Angular position north or south of the equator || degree (°) || <code>deg</code> || <code>deg</code> || WGS 84 latitude
Line 95: Line 68:
| <code>longitude</code> || Angular position east or west of the prime meridian || degree (°) || <code>deg</code> || <code>deg</code> || WGS 84 longitude
| <code>longitude</code> || Angular position east or west of the prime meridian || degree (°) || <code>deg</code> || <code>deg</code> || WGS 84 longitude
|-
|-
| <code>projected_easting</code> || Eastward coordinate within a projected coordinate reference system || metre (m) || <code>m</code> || <code>m</code> || UTM, UPS, and other projected-coordinate eastings
| <code>projected_easting</code> || Eastward coordinate within a projected coordinate reference system || metre (m) || <code>m</code> || <code>m</code> || Projected-coordinate easting
|-
|-
| <code>projected_northing</code> || Northward coordinate within a projected coordinate reference system || metre (m) || <code>m</code> || <code>m</code> || UTM, UPS, and other projected-coordinate northings
| <code>projected_northing</code> || Northward coordinate within a projected coordinate reference system || metre (m) || <code>m</code> || <code>m</code> || Projected-coordinate northing
|-
|-
| <code>local_x</code> || X coordinate within an explicitly defined local engineering coordinate system || metre (m) || <code>m</code> || <code>m</code> || Local engineering coordinates when the local coordinate system is defined in metres
| <code>local_x</code> || X coordinate within an explicitly defined local engineering coordinate system || metre (m) || <code>m</code> || <code>m</code> || Local coordinates when the coordinate system is defined in metres
|-
|-
| <code>local_y</code> || Y coordinate within an explicitly defined local engineering coordinate system || metre (m) || <code>m</code> || <code>m</code> || Local engineering coordinates when the local coordinate system is defined in metres
| <code>local_y</code> || Y coordinate within an explicitly defined local engineering coordinate system || metre (m) || <code>m</code> || <code>m</code> || Local coordinates when the coordinate system is defined in metres
|}
|}


=== Area and Volume ===
== Area and Volume Quantities ==


{| class="wikitable"
{| class="wikitable"
! Measurement Quantity Identifier !! Definition !! Canonical Unit !! Canonical UCUM Unit Identifier !! AOWIS Identifier Suffix !! AOWIS Model / EPANET Mapping
! Measurement Quantity Identifier !! Definition !! Canonical Unit !! UCUM Identifier !! AOWIS Identifier Suffix !! AOWIS Model / EPANET Mapping
|-
|-
| <code>area</code> || Two-dimensional spatial extent || square metre (m²) || <code>m2</code> || <code>m2</code> || Tank cross-sectional area and other geometric areas
| <code>area</code> || Two-dimensional spatial extent || square metre (m²) || <code>m2</code> || <code>m2</code> || Tank cross-sectional area and other geometric areas
Line 114: Line 87:
|}
|}


=== Flow and Transport ===
== Flow and Transport Quantities ==


{| class="wikitable"
{| class="wikitable"
! Measurement Quantity Identifier !! Definition !! Canonical Unit !! Canonical UCUM Unit Identifier !! AOWIS Identifier Suffix !! AOWIS Model / EPANET Mapping
! Measurement Quantity Identifier !! Definition !! Canonical Unit !! UCUM Identifier !! AOWIS Identifier Suffix !! AOWIS Model / EPANET Mapping
|-
|-
| <code>volumetric_flow_rate</code> || Volume transported per unit time || cubic metre per hour (m³/h) || <code>m3/h</code> || <code>m3_per_h</code> || Demand, link flow, leakage flow, emitter flow, and pump-curve flow
| <code>volumetric_flow_rate</code> || Volume transported per unit time || cubic metre per hour (m³/h) || <code>m3/h</code> || <code>m3_per_h</code> || Demand, link flow, leakage flow, emitter flow, and pump-curve flow
Line 124: Line 97:
|}
|}


=== Hydraulic Head, Pressure, and Stress ===
== Hydraulic Head, Pressure, and Stress Quantities ==


{| class="wikitable"
{| class="wikitable"
! Measurement Quantity Identifier !! Definition !! Canonical Unit !! Canonical UCUM Unit Identifier !! AOWIS Identifier Suffix !! AOWIS Model / EPANET Mapping
! Measurement Quantity Identifier !! Definition !! Canonical Unit !! UCUM Identifier !! AOWIS Identifier Suffix !! AOWIS Model / EPANET Mapping
|-
|-
| <code>hydraulic_head</code> || Total mechanical energy per unit weight of fluid expressed as an equivalent fluid-column height || metre (m) || <code>m</code> || <code>m</code> || Junction, reservoir, and tank hydraulic head
| <code>hydraulic_head</code> || Total mechanical energy per unit weight of fluid expressed as an equivalent fluid-column height || metre (m) || <code>m</code> || <code>m</code> || Junction, reservoir, and tank hydraulic head
Line 135: Line 108:
| <code>water_level</code> || Height of a water surface relative to a defined local reference level || metre (m) || <code>m</code> || <code>m</code> || Initial, minimum, maximum, and simulated tank levels
| <code>water_level</code> || Height of a water surface relative to a defined local reference level || metre (m) || <code>m</code> || <code>m</code> || Initial, minimum, maximum, and simulated tank levels
|-
|-
| <code>head_gain</code> || Increase in hydraulic head across an energy-adding component || metre (m) || <code>m</code> || <code>m</code> || Pump head curves and pump simulation results
| <code>head_gain</code> || Increase in hydraulic head across an energy-adding component || metre (m) || <code>m</code> || <code>m</code> || Pump curves and pump simulation results
|-
|-
| <code>head_loss</code> || Reduction in hydraulic head across a hydraulic component || metre (m) || <code>m</code> || <code>m</code> || Total head loss across pipes, valves, and other energy-dissipating components
| <code>head_loss</code> || Reduction in hydraulic head across a hydraulic component || metre (m) || <code>m</code> || <code>m</code> || Pipes, valves, and other energy-dissipating components
|-
|-
| <code>head_loss_gradient</code> || Hydraulic head loss per unit pipe length || metre per kilometre (m/km) || <code>m/km</code> || <code>m_per_km</code> || EPANET pipe head-loss reporting
| <code>head_loss_gradient</code> || Hydraulic head loss per unit pipe length || metre per kilometre (m/km) || <code>m/km</code> || <code>m_per_km</code> || EPANET pipe head-loss reporting
|-
|-
| <code>pressure</code> || Normal force per unit area within a fluid system || kilopascal (kPa) || <code>kPa</code> || <code>kpa</code> || Physical pressure measurements, sensors, SCADA data, and external-system exchange
| <code>pressure</code> || Normal force per unit area within a fluid system || kilopascal (kPa) || <code>kPa</code> || <code>kpa</code> || Physical pressure measurements, sensors, SCADA data, and external exchange
|-
|-
| <code>stress</code> || Internal force per unit area within a material || megapascal (MPa) || <code>MPa</code> || <code>mpa</code> || Structural and material analysis; not currently represented in the hydraulic model
| <code>stress</code> || Internal force per unit area within a material || megapascal (MPa) || <code>MPa</code> || <code>mpa</code> || Structural and material analysis
|}
|}


=== Time ===
== Time Quantities ==


{| class="wikitable"
{| class="wikitable"
! Measurement Quantity Identifier !! Definition !! Canonical Unit !! Canonical UCUM Unit Identifier !! AOWIS Identifier Suffix !! AOWIS Model / EPANET Mapping
! Measurement Quantity Identifier !! Definition !! Canonical Unit !! UCUM Identifier !! AOWIS Identifier Suffix !! AOWIS Model / EPANET Mapping
|-
|-
| <code>elapsed_time</code> || Time elapsed from a defined simulation or process origin || second (s) || <code>s</code> || <code>s</code> || Simulation elapsed time and time-based control triggers
| <code>elapsed_time</code> || Time elapsed from a defined simulation or process origin || second (s) || <code>s</code> || <code>s</code> || Simulation elapsed time and time-based control triggers
|-
|-
| <code>duration</code> || Length of a time interval || second (s) || <code>s</code> || <code>s</code> || Simulation duration, hydraulic timesteps, quality timesteps, reporting intervals, and rule intervals
| <code>duration</code> || Length of a time interval || second (s) || <code>s</code> || <code>s</code> || Simulation duration and time steps
|-
|-
| <code>time_of_day</code> || Time elapsed since the start of the current day || second (s) || <code>s</code> || <code>s</code> || Simulation start time of day and clock-time controls
| <code>time_of_day</code> || Time elapsed since the start of the current day || second (s) || <code>s</code> || <code>s</code> || Simulation start time and clock-time controls
|}
|}


=== Hydraulic Coefficients and Other Dimensionless Quantities ===
== Hydraulic Coefficients and Other Dimensionless Quantities ==
 
The canonical UCUM unit identifier for all quantities in this section is <code>1</code>. The AOWIS unit suffix is omitted.


The canonical UCUM unit identifier for the quantities in this section is <code>1</code>. The AOWIS unit suffix is intentionally omitted. Semantic field-name components such as <code>ratio</code>, <code>factor</code>, <code>coefficient</code>, <code>multiplier</code>, and <code>exponent</code> remain part of the quantity name where useful.
Semantic terms such as <code>ratio</code>, <code>factor</code>, <code>coefficient</code>, <code>multiplier</code>, and <code>exponent</code> describe the quantity and are not unit suffixes.


{| class="wikitable"
{| class="wikitable"
! Measurement Quantity Identifier !! Definition !! Canonical Unit !! Canonical UCUM Unit Identifier !! AOWIS Identifier Suffix !! AOWIS Model / EPANET Mapping
! Measurement Quantity Identifier !! Definition !! UCUM Identifier !! AOWIS Identifier Suffix !! AOWIS Model / EPANET Mapping
|-
|-
| <code>hazen_williams_roughness_coefficient</code> || Empirical pipe roughness coefficient used by the Hazen-Williams head-loss formulation || dimensionless || <code>1</code> || ''none'' || EPANET Hazen-Williams pipe roughness
| <code>hazen_williams_roughness_coefficient</code> || Hazen-Williams pipe roughness coefficient || <code>1</code> || none || EPANET Hazen-Williams roughness
|-
|-
| <code>chezy_manning_roughness_coefficient</code> || Empirical pipe roughness coefficient used by the Chezy-Manning head-loss formulation || dimensionless || <code>1</code> || ''none'' || EPANET Chezy-Manning pipe roughness
| <code>chezy_manning_roughness_coefficient</code> || Chezy-Manning pipe roughness coefficient || <code>1</code> || none || EPANET Chezy-Manning roughness
|-
|-
| <code>minor_loss_coefficient</code> || Dimensionless coefficient representing local hydraulic losses through fittings, valves, or other components || dimensionless || <code>1</code> || ''none'' || Pipe and valve minor-loss coefficient; TCV setting
| <code>minor_loss_coefficient</code> || Coefficient representing local hydraulic losses || <code>1</code> || none || Pipe and valve minor loss; TCV setting
|-
|-
| <code>darcy_weisbach_friction_factor</code> || Dimensionless friction factor used in Darcy-Weisbach head-loss calculations || dimensionless || <code>1</code> || ''none'' || Pipe simulation friction factor
| <code>darcy_weisbach_friction_factor</code> || Darcy-Weisbach friction factor || <code>1</code> || none || Pipe simulation result
|-
|-
| <code>pump_speed_ratio</code> || Pump rotational speed relative to its nominal or reference speed || dimensionless || <code>1</code> || ''none'' || Pump initial speed, simulated speed, pattern-modified speed, and pump control/rule settings
| <code>pump_speed_ratio</code> || Pump rotational speed relative to nominal or reference speed || <code>1</code> || none || Pump setting, result, pattern, control, and rule values
|-
|-
| <code>pattern_multiplier</code> || Dimensionless factor applied by a hydraulic or energy pattern || dimensionless || <code>1</code> || ''none'' || EPANET pattern factors
| <code>pattern_multiplier</code> || Factor applied by a hydraulic or energy pattern || <code>1</code> || none || EPANET pattern factor
|-
|-
| <code>demand_multiplier</code> || Global factor applied to base demands || dimensionless || <code>1</code> || ''none'' || EPANET demand multiplier
| <code>demand_multiplier</code> || Global factor applied to base demands || <code>1</code> || none || EPANET demand multiplier
|-
|-
| <code>pressure_exponent</code> || Exponent used by the pressure-driven demand relation || dimensionless || <code>1</code> || ''none'' || EPANET pressure exponent
| <code>pressure_exponent</code> || Exponent used by the pressure-driven demand relation || <code>1</code> || none || EPANET pressure exponent
|-
|-
| <code>emitter_exponent</code> || Exponent used by the emitter pressure-flow relation || dimensionless || <code>1</code> || ''none'' || EPANET emitter exponent
| <code>emitter_exponent</code> || Exponent used by the emitter pressure-flow relation || <code>1</code> || none || EPANET emitter exponent
|-
|-
| <code>reaction_order</code> || Exponent defining the order of a bulk, wall, or tank reaction equation || dimensionless || <code>1</code> || ''none'' || EPANET bulk, wall, and tank reaction orders
| <code>reaction_order</code> || Order of a bulk, wall, or tank reaction equation || <code>1</code> || none || EPANET reaction order
|-
|-
| <code>specific_gravity</code> || Fluid density relative to the reference density used by the hydraulic solver || dimensionless || <code>1</code> || ''none'' || EPANET specific gravity
| <code>specific_gravity</code> || Fluid density relative to a defined reference density || <code>1</code> || none || EPANET specific gravity
|-
|-
| <code>relative_viscosity</code> || Fluid kinematic viscosity relative to the solver's reference viscosity || dimensionless || <code>1</code> || ''none'' || EPANET relative viscosity
| <code>relative_viscosity</code> || Kinematic viscosity relative to the solver reference || <code>1</code> || none || EPANET relative viscosity
|-
|-
| <code>relative_diffusivity</code> || Molecular diffusivity relative to the solver's reference diffusivity || dimensionless || <code>1</code> || ''none'' || EPANET relative diffusivity
| <code>relative_diffusivity</code> || Molecular diffusivity relative to the solver reference || <code>1</code> || none || EPANET relative diffusivity
|-
|-
| <code>mixing_fraction</code> || Fraction of tank volume assigned to the mixing zone in applicable tank mixing models || dimensionless || <code>1</code> || ''none'' || EPANET tank mixing fraction
| <code>mixing_fraction</code> || Fraction of tank volume assigned to the applicable mixing zone || <code>1</code> || none || EPANET tank mixing fraction
|-
|-
| <code>hydraulic_accuracy</code> || Relative convergence criterion used by the hydraulic solver || dimensionless || <code>1</code> || ''none'' || EPANET hydraulic accuracy
| <code>hydraulic_accuracy</code> || Relative hydraulic convergence criterion || <code>1</code> || none || EPANET hydraulic accuracy
|-
|-
| <code>hydraulic_damping_limit</code> || Relative accuracy threshold at which hydraulic solution damping/status checks are activated || dimensionless || <code>1</code> || ''none'' || EPANET damping limit
| <code>hydraulic_damping_limit</code> || Relative threshold controlling solver damping or status checks || <code>1</code> || none || EPANET damping limit
|-
|-
| <code>relative_error</code> || Relative numerical error reported by a solver or conformance check || dimensionless || <code>1</code> || ''none'' || Hydraulic simulation statistics
| <code>relative_error</code> || Relative numerical error || <code>1</code> || none || Hydraulic simulation statistics
|-
|-
| <code>flow_balance_ratio</code> || Ratio of total outflow to total inflow || dimensionless || <code>1</code> || ''none'' || EPANET flow-balance reporting
| <code>flow_balance_ratio</code> || Ratio of total outflow to total inflow || <code>1</code> || none || EPANET flow-balance reporting
|-
|-
| <code>quality_mass_balance_ratio</code> || Ratio expressing conservation of transported water-quality mass || dimensionless || <code>1</code> || ''none'' || EPANET water-quality mass-balance statistic
| <code>quality_mass_balance_ratio</code> || Water-quality mass-conservation ratio || <code>1</code> || none || EPANET quality mass-balance reporting
|}
|}


=== Percentage Quantities ===
== Percentage Quantities ==


{| class="wikitable"
{| class="wikitable"
! Measurement Quantity Identifier !! Definition !! Canonical Unit !! Canonical UCUM Unit Identifier !! AOWIS Identifier Suffix !! AOWIS Model / EPANET Mapping
! Measurement Quantity Identifier !! Definition !! Canonical Unit !! UCUM Identifier !! AOWIS Identifier Suffix !! AOWIS Model / EPANET Mapping
|-
|-
| <code>efficiency</code> || Ratio of useful output to total input, expressed as a percentage || percent (%) || <code>%</code> || <code>percent</code> || Pump efficiency values and efficiency curves
| <code>efficiency</code> || Ratio of useful output to total input expressed as a percentage || percent (%) || <code>%</code> || <code>percent</code> || Pump efficiency and efficiency curves
|-
|-
| <code>relative_flow</code> || Flow relative to a defined reference flow, expressed as a percentage || percent (%) || <code>%</code> || <code>percent</code> || Valve characteristic curves
| <code>relative_flow</code> || Flow relative to a defined reference flow || percent (%) || <code>%</code> || <code>percent</code> || Valve characteristic curves
|-
|-
| <code>valve_position</code> || Valve opening position relative to its full operating range || percent (%) || <code>%</code> || <code>percent</code> || Position-control valves and valve characteristic curves
| <code>valve_position</code> || Valve opening position relative to its operating range || percent (%) || <code>%</code> || <code>percent</code> || Position-control valves
|-
|-
| <code>source_trace_percentage</code> || Proportion of water originating from a specified source node || percent (%) || <code>%</code> || <code>percent</code> || EPANET source-trace analysis
| <code>source_trace_percentage</code> || Proportion of water originating from a specified source node || percent (%) || <code>%</code> || <code>percent</code> || EPANET source-trace analysis
|-
|-
| <code>operating_time_percentage</code> || Fraction of a reporting period during which equipment is operating, expressed as a percentage || percent (%) || <code>%</code> || <code>percent</code> || Pump energy reporting time online
| <code>operating_time_percentage</code> || Fraction of a reporting period during which equipment operates || percent (%) || <code>%</code> || <code>percent</code> || Pump energy reporting
|-
|-
| <code>demand_reduction_percentage</code> || Reduction in delivered demand relative to requested demand, expressed as a percentage || percent (%) || <code>%</code> || <code>percent</code> || Hydraulic simulation statistics
| <code>demand_reduction_percentage</code> || Reduction in delivered demand relative to requested demand || percent (%) || <code>%</code> || <code>percent</code> || Hydraulic statistics
|-
|-
| <code>leakage_loss_percentage</code> || Leakage loss relative to total system inflow, expressed as a percentage || percent (%) || <code>%</code> || <code>percent</code> || EPANET leakage-loss statistic
| <code>leakage_loss_percentage</code> || Leakage loss relative to total system inflow || percent (%) || <code>%</code> || <code>percent</code> || Leakage statistics
|}
|}


=== Reaction and Leakage Quantities ===
== Reaction and Leakage Quantities ==


{| class="wikitable"
{| class="wikitable"
! Measurement Quantity Identifier !! Definition !! Canonical Unit !! Canonical UCUM Unit Identifier !! AOWIS Identifier Suffix !! AOWIS Model / EPANET Mapping
! Measurement Quantity Identifier !! Definition !! Canonical Unit !! UCUM Identifier !! AOWIS Identifier Suffix !! AOWIS Model / EPANET Mapping
|-
|-
| <code>first_order_bulk_reaction_coefficient</code> || First-order reaction-rate coefficient for a substance within the bulk fluid || per day (d⁻¹) || <code>/d</code> || <code>per_d</code> || Global, pipe-specific, and tank-specific first-order bulk reaction coefficients
| <code>first_order_bulk_reaction_coefficient</code> || First-order reaction-rate coefficient within the bulk fluid || per day (d⁻¹) || <code>/d</code> || <code>per_d</code> || Global, pipe, and tank first-order bulk reactions
|-
|-
| <code>first_order_wall_reaction_coefficient</code> || First-order reaction-rate coefficient for a substance at a pipe wall || metre per day (m/d) || <code>m/d</code> || <code>m_per_d</code> || Global and pipe-specific first-order wall reaction coefficients
| <code>first_order_wall_reaction_coefficient</code> || First-order reaction-rate coefficient at a pipe wall || metre per day (m/d) || <code>m/d</code> || <code>m_per_d</code> || Global and pipe first-order wall reactions
|-
|-
| <code>leak_area_per_100m_pipe_length</code> || Effective leak area assigned per 100 metres of pipe length || square millimetre per 100 metres (mm²/100 m) || <code>mm2/(100.m)</code> || <code>mm2_per_100m</code> || EPANET 2.3 FAVAD leak area; EPANET defines the native value per 100 project length units, so non-metric projects require conversion at the adapter boundary<ref name="EPANET23">OWA-EPANET 2.3 release notes https://github.com/OpenWaterAnalytics/EPANET/blob/v2.3/ReleaseNotes2_3.md</ref>
| <code>leak_area_per_100m_pipe_length</code> || Effective leak area assigned per 100 metres of pipe length || square millimetre per 100 metres (mm²/100 m) || <code>mm2/(100.m)</code> || <code>mm2_per_100m</code> || EPANET 2.3 FAVAD leak area; EPANET uses 100 project length units and the adapter converts when required<ref name="EPANET23">OWA-EPANET 2.3 release notes https://github.com/OpenWaterAnalytics/EPANET/blob/v2.3/ReleaseNotes2_3.md</ref>
|-
|-
| <code>leak_area_expansion_per_pressure_head</code> || Increase in effective leak area per unit pressure head || square millimetre per metre of pressure head (mm²/m) || <code>mm2/m</code> || <code>mm2_per_m_head</code> || EPANET 2.3 FAVAD leak expansion; non-metric projects require pressure-head conversion at the adapter boundary<ref name="EPANET23" />
| <code>leak_area_expansion_per_pressure_head</code> || Increase in effective leak area per unit pressure head || square millimetre per metre of pressure head (mm²/m) || <code>mm2/m</code> || <code>mm2_per_m_head</code> || EPANET 2.3 FAVAD leak expansion
|}
|}


=== Water Quality Quantities ===
== Water Quality Quantities ==


{| class="wikitable"
{| class="wikitable"
! Measurement Quantity Identifier !! Definition !! Canonical Unit !! Canonical UCUM Unit Identifier !! AOWIS Identifier Suffix !! AOWIS Model / EPANET Mapping
! Measurement Quantity Identifier !! Definition !! Canonical Unit !! UCUM Identifier !! AOWIS Identifier Suffix !! AOWIS Model / EPANET Mapping
|-
|-
| <code>chemical_concentration</code> || Mass concentration of a chemical substance in water || milligram per litre (mg/L) || <code>mg/L</code> || <code>mg_per_l</code> || EPANET chemical-quality input, reaction limiting concentration, quality-source concentration, and simulation results
| <code>chemical_concentration</code> || Mass concentration of a chemical substance in water || milligram per litre (mg/L) || <code>mg/L</code> || <code>mg_per_l</code> || Chemical quality input and results
|-
|-
| <code>chemical_mass_flow_rate</code> || Chemical mass introduced into or transported through the system per unit time || milligram per minute (mg/min) || <code>mg/min</code> || <code>mg_per_min</code> || EPANET mass-booster source strength and reported source mass rate when chemical concentration is canonicalized to mg/L
| <code>chemical_mass_flow_rate</code> || Chemical mass introduced into or transported through the system per unit time || milligram per minute (mg/min) || <code>mg/min</code> || <code>mg_per_min</code> || EPANET mass-booster source strength and source mass rate
|-
|-
| <code>water_age</code> || Time elapsed since water entered the modelled distribution system || hour (h) || <code>h</code> || <code>h</code> || EPANET water-age analysis
| <code>water_age</code> || Time elapsed since water entered the modelled distribution system || hour (h) || <code>h</code> || <code>h</code> || EPANET water-age analysis
|}
|}


=== Power, Energy, and Electrical Quantities ===
== Power, Energy, and Electrical Quantities ==


{| class="wikitable"
{| class="wikitable"
! Measurement Quantity Identifier !! Definition !! Canonical Unit !! Canonical UCUM Unit Identifier !! AOWIS Identifier Suffix !! AOWIS Model / EPANET Mapping
! Measurement Quantity Identifier !! Definition !! Canonical Unit !! UCUM Identifier !! AOWIS Identifier Suffix !! AOWIS Model / EPANET Mapping
|-
|-
| <code>power</code> || Rate of energy transfer || kilowatt (kW) || <code>kW</code> || <code>kw</code> || Pump power and electrical power
| <code>power</code> || Rate of energy transfer || kilowatt (kW) || <code>kW</code> || <code>kw</code> || Pump power and electrical power
|-
|-
| <code>energy</code> || Work performed or energy transferred || kilowatt-hour (kWh) || <code>kW.h</code> || <code>kw_h</code> || Pump energy consumption and electrical energy
| <code>energy</code> || Work performed or energy transferred || kilowatt-hour (kWh) || <code>kW.h</code> || <code>kw_h</code> || Pump energy consumption
|-
|-
| <code>energy_intensity</code> || Energy consumed per unit volume of transported water || kilowatt-hour per cubic metre (kWh/m³) || <code>kW.h/m3</code> || <code>kw_h_per_m3</code> || Pump energy-use reporting; canonical replacement for backend-dependent power-per-flow-unit values
| <code>energy_intensity</code> || Energy consumed per unit volume || kilowatt-hour per cubic metre (kWh/m³) || <code>kW.h/m3</code> || <code>kw_h_per_m3</code> || Pump energy-use reporting
|-
|-
| <code>electric_current</code> || Rate of electric charge flow || ampere (A) || <code>A</code> || <code>a</code> || Electrical model
| <code>electric_current</code> || Rate of electric charge flow || ampere (A) || <code>A</code> || <code>a</code> || Electrical model
Line 270: Line 245:
|}
|}


== Monetary Values and Currencies ==


Currencies are identifiers for monetary value and are not physical units in the AOWIS measurement system. AOWIS therefore does not encode currencies or currency compounds as UCUM unit identifiers.
== Context-Dependent Quantity Resolution ==


A monetary value MUST identify or reference a currency definition whose identifier is the ISO 4217 alphabetic currency code. The currency definition MAY be managed by the AOWIS Controller or another authoritative subsystem.
Some Model concepts resolve to different registered measurement quantities depending on their context. The representation requirements for such values are defined in [[Measurement:Units]] and, where applicable, the corresponding Measurement subsystem specification.
 
AOWIS MAY support multiple currencies simultaneously. Exchange rates, exchange-rate timestamps, conversion policy, rounding policy, and accounting policy belong to the currency/controller subsystem and MUST NOT be treated as physical unit conversions.
 
Where a monetary quantity is normalized by a physical quantity, the physical denominator MUST use the canonical AOWIS physical unit. This yields the following canonical monetary semantics:


{| class="wikitable"
{| class="wikitable"
! Monetary Quantity Identifier !! Definition !! Currency Representation !! Canonical Physical Denominator !! AOWIS Model / EPANET Mapping
! Model Concept !! Resolved Measurement Quantity
|-
|-
| <code>energy_price</code> || Monetary price charged per unit of electrical energy || ISO 4217 currency reference || kilowatt-hour (kWh) || Global and pump-specific energy price
| Valve setting || PRV, PSV, and PBV: <code>pressure_head</code>; FCV: <code>volumetric_flow_rate</code>; TCV: <code>minor_loss_coefficient</code>; PCV: <code>valve_position</code>; GPV: curve reference rather than a measurement value
|-
|-
| <code>demand_charge_rate</code> || Monetary demand charge per unit of peak power || ISO 4217 currency reference || kilowatt (kW) || Global demand charge
| Pump setting || <code>pump_speed_ratio</code>
|-
|-
| <code>daily_cost_rate</code> || Monetary cost accumulated or averaged per day || ISO 4217 currency reference || day (d) || Average pump cost, energy cost, demand charge, and total cost reporting
| Control trigger || <code>water_level</code>, <code>pressure_head</code>, <code>elapsed_time</code>, or <code>time_of_day</code>, depending on control type
|}
 
A monetary value MUST NOT be interpreted without its currency reference. Two monetary values denominated in different currencies MUST NOT be compared, added, or aggregated without an explicit currency conversion performed by the currency/controller subsystem.
 
== Context-Dependent Measurement Values ==
 
A numeric field whose measurement quantity or unit depends on another field, enum, object type, equation, or operating mode MUST NOT be assigned a single fixed canonical unit or AOWIS identifier suffix before that context has been resolved.
 
Such values MUST be represented using quantity-specific fields or a discriminated data structure that identifies the applicable measurement quantity. Once resolved to a defined measurement quantity, the value MUST use that quantity's canonical AOWIS unit.
 
{| class="wikitable"
! Current Model Concept !! Context-Dependent Meaning !! Required Resolution
|-
| Valve setting || PRV, PSV, and PBV settings are pressure head; FCV setting is volumetric flow rate; TCV setting is a minor-loss coefficient; PCV setting is valve position; GPV uses a curve reference rather than a numeric physical setting || Replace the generic numeric setting with quantity-specific fields or a discriminated valve-setting structure
|-
| Pump setting || Pump speed setting is a pump-speed ratio rather than a flow, head, or percentage || Represent pump settings explicitly as <code>pump_speed_ratio</code>
|-
|-
| Control action setting || The setting quantity supported by the controlled link type || Use the same quantity-specific representation as the target link
| Control or rule action setting || The measurement quantity supported by the target link type
|-
|-
| Control trigger level or pressure || Water level or pressure head, depending on the controlled node and control type || Represent water-level and pressure-head triggers separately
| Rule premise value || The measurement quantity selected by the rule variable
|-
|-
| Rule premise value || Demand, hydraulic head, water level, pressure head, volumetric flow rate, power, elapsed time, time of day, fill time, drain time, or another quantity selected by the rule variable || Store the rule variable together with a quantity-specific value representation
| Initial or simulated quality || <code>chemical_concentration</code>, <code>water_age</code>, or <code>source_trace_percentage</code>, depending on quality-analysis mode
|-
|-
| Rule action setting || The setting quantity supported by the target link type || Use the same quantity-specific representation as the target link
| Quality-source strength || <code>chemical_concentration</code> or <code>chemical_mass_flow_rate</code>, depending on source type
|-
|-
| Initial quality and simulation quality || Chemical concentration, water age, or source-trace percentage, depending on the quality-analysis mode || Represent each quality-analysis value using its defined measurement quantity
| Reaction coefficient || The applicable reaction-coefficient quantity determined by reaction order
|-
|-
| Water-quality solver tolerance || Chemical concentration, water age, or source-trace percentage, depending on the quality-analysis mode || Bind the tolerance to the selected quality-analysis mode and represent it using that mode's canonical quantity
| Emitter coefficient || Equation-dependent coefficient in <code>Q = C H^n</code>; no single fixed canonical unit applies independently of <code>n</code>
|-
|-
| Quality-source strength || Chemical concentration or chemical mass flow rate, depending on the quality-source type || Represent source strength using a source-type-specific structure
| Generic curve coordinate || The measurement quantity defined by the curve type
|-
|-
| Reported source mass rate || Chemical mass flow rate in chemical-quality analysis; other quality-analysis modes must not be mislabeled as chemical mass || Resolve the result through the active quality-analysis mode before assigning <code>chemical_mass_flow_rate</code>
| Report threshold || The measurement quantity of the corresponding report field
|-
|-
| Bulk and wall reaction coefficients || The dimensions of the coefficient depend on the configured reaction order || Use first-order fixed quantities only when the reaction order is exactly first order; otherwise store the coefficient together with reaction order in a discriminated reaction-coefficient structure
| EPANET map or backdrop coordinate || The applicable geographic, projected, or local coordinate quantity after the coordinate representation is resolved
|-
| Roughness-correlation reaction parameter || The parameter belongs to the configured wall-reaction correlation model and does not have a universally valid standalone measurement unit || Store it as part of the applicable reaction model rather than assigning a guessed fixed unit
|-
| Emitter coefficient || In the canonical AOWIS emitter equation <code>Q = C H^n</code>, <code>Q</code> is volumetric flow rate in m³/h, <code>H</code> is pressure head in m, and <code>n</code> is the dimensionless emitter exponent; the dimensional meaning of <code>C</code> therefore depends on <code>n</code> || Store the coefficient and exponent together in a dedicated emitter relation. The coefficient MUST NOT claim one fixed standalone UCUM unit for arbitrary non-integer <code>n</code>
|-
| Generic curve coordinates || Coordinate quantities determined by the curve type || Use a typed curve structure whenever the coordinate quantities are known; only genuinely generic curves may carry explicit quantity metadata
|-
| Report thresholds || The measurement quantity of the corresponding report field || Associate each threshold with the report field's defined measurement quantity and canonical unit
|-
| EPANET map and backdrop coordinates || Coordinate units determined by the associated EPANET map or backdrop configuration; <code>None</code> does not define a physical unit || Convert to an explicitly identified geographic, projected, or local coordinate representation before treating the coordinates as physical measurements
|}
|}


== Boundary Conversion Rules ==
== References ==


AOWIS canonical units define the public data contract. Backend-selected unit systems MUST NOT leak into fixed-schema AOWIS measurement fields.
The EPANET adapter MUST convert EPANET values to and from the canonical AOWIS units whenever EPANET's selected unit system differs from the canonical AOWIS representation.
This includes, where applicable:
* volumetric flow rates to and from <code>m3/h</code>;
* lengths and hydraulic heads to and from <code>m</code>;
* link diameters to and from <code>mm</code>;
* tank diameters to and from <code>m</code>;
* Darcy-Weisbach roughness to and from <code>mm</code>;
* head-loss gradients to and from <code>m/km</code>;
* leakage area to and from <code>mm2/(100.m)</code>;
* leakage expansion to and from <code>mm2/m</code> of pressure head;
* energy-use reporting to <code>kW.h/m3</code> where the backend reports power per selected flow unit;
* chemical concentration to <code>mg/L</code> when chemical-quality support is active;
* chemical mass flow rate to <code>mg/min</code> when chemical-quality support is active.
A backend configuration value that selects how the backend displays or interprets units is not itself a substitute for unit information in the AOWIS data contract.
== Data Model ==
Concrete AOWIS data structures and field definitions are specified by the [https://github.com/aowis-org/AOWIS-SERVER-MODEL AOWIS Server Model].
Fixed-schema fields encode their canonical unit through the normative schema and, where applicable, the AOWIS identifier suffix. Dimensionless fixed-schema fields with UCUM unit <code>1</code> may omit a unit suffix when their quantity is unambiguous. Generic or dynamically typed physical measurement values carry or resolve to an explicit canonical UCUM unit identifier.
Measurement fields defined by the model MUST use the canonical units specified on this page.
Monetary fields defined by the model MUST identify or reference an ISO 4217 currency and MUST follow the monetary-value rules on this page.
== References ==
<references />
<references />

Latest revision as of 11:12, 19 August 2026

This page is the normative registry of canonical measurement quantities and units used by AOWIS.

The representation and conversion rules governing these quantities are defined in Measurement:Units.

UCUM[1] is used for machine-readable physical unit identifiers.

Identifier and Field-Naming Rules

The canonical unit assigned to each measurement quantity in this registry is authoritative.

When a unit identifier is explicitly represented, it MUST use the canonical UCUM identifier defined here.

The AOWIS identifier suffix is an ASCII-safe naming convention used for fixed-schema field names, property names, database columns, and similar technical identifiers.

The suffix convention is:

  • division is represented by _per_;
  • multiplication is represented by _;
  • unit symbols are normalized to lower case where required for identifier naming;
  • quantity-specific semantic qualifiers MAY be included where a literal unit-only suffix would be ambiguous;
  • dimensionless fields with canonical UCUM unit 1 normally omit a unit suffix.

For example:

m3/h        -> m3_per_h
m/s         -> m_per_s
kW.h/m3     -> kw_h_per_m3
mm2/(100.m) -> mm2_per_100m

The AOWIS identifier suffix is not itself a UCUM unit identifier.

For generic or dynamically typed measurement values, the resolved measurement quantity determines the canonical unit through this registry.

Length and Distance Quantities

Measurement Quantity Identifier Definition Canonical Unit UCUM Identifier AOWIS Identifier Suffix AOWIS Model / EPANET Mapping
length Linear spatial extent along an object or path metre (m) m m Pipe and link length
elevation Vertical height relative to an engineering or hydraulic datum metre (m) m m Junction, tank, reservoir, and terrain elevation
altitude Vertical position reported by a geographic positioning source metre (m) m m Geographic altitude; not necessarily suitable as hydraulic elevation
distance Spatial separation between positions metre (m) m m Derived geometric distance
vertical_offset Vertical difference between referenced elevations or heads metre (m) m m Elevation, tank-bottom, and reservoir-head offsets
link_diameter Internal or nominal diameter of a pipe or valve millimetre (mm) mm mm EPANET pipe and valve diameter
tank_diameter Internal diameter of a cylindrical storage tank metre (m) m m EPANET tank diameter
darcy_weisbach_roughness_height Absolute pipe-wall roughness height used by the Darcy-Weisbach formulation millimetre (mm) mm mm EPANET Darcy-Weisbach pipe roughness

Geographic Coordinate Quantities

Measurement Quantity Identifier Definition Canonical Unit UCUM Identifier AOWIS Identifier Suffix AOWIS Model / EPANET Mapping
latitude Angular position north or south of the equator degree (°) deg deg WGS 84 latitude
longitude Angular position east or west of the prime meridian degree (°) deg deg WGS 84 longitude
projected_easting Eastward coordinate within a projected coordinate reference system metre (m) m m Projected-coordinate easting
projected_northing Northward coordinate within a projected coordinate reference system metre (m) m m Projected-coordinate northing
local_x X coordinate within an explicitly defined local engineering coordinate system metre (m) m m Local coordinates when the coordinate system is defined in metres
local_y Y coordinate within an explicitly defined local engineering coordinate system metre (m) m m Local coordinates when the coordinate system is defined in metres

Area and Volume Quantities

Measurement Quantity Identifier Definition Canonical Unit UCUM Identifier AOWIS Identifier Suffix AOWIS Model / EPANET Mapping
area Two-dimensional spatial extent square metre (m²) m2 m2 Tank cross-sectional area and other geometric areas
volume Three-dimensional spatial extent or storage capacity cubic metre (m³) m3 m3 Tank volume

Flow and Transport Quantities

Measurement Quantity Identifier Definition Canonical Unit UCUM Identifier AOWIS Identifier Suffix AOWIS Model / EPANET Mapping
volumetric_flow_rate Volume transported per unit time cubic metre per hour (m³/h) m3/h m3_per_h Demand, link flow, leakage flow, emitter flow, and pump-curve flow
velocity Rate of linear movement metre per second (m/s) m/s m_per_s Link flow velocity

Hydraulic Head, Pressure, and Stress Quantities

Measurement Quantity Identifier Definition Canonical Unit UCUM Identifier AOWIS Identifier Suffix AOWIS Model / EPANET Mapping
hydraulic_head Total mechanical energy per unit weight of fluid expressed as an equivalent fluid-column height metre (m) m m Junction, reservoir, and tank hydraulic head
pressure_head Fluid pressure expressed as an equivalent fluid-column height metre (m) m m EPANET node pressure, pressure-driven demand thresholds, and pressure-control valve settings
water_level Height of a water surface relative to a defined local reference level metre (m) m m Initial, minimum, maximum, and simulated tank levels
head_gain Increase in hydraulic head across an energy-adding component metre (m) m m Pump curves and pump simulation results
head_loss Reduction in hydraulic head across a hydraulic component metre (m) m m Pipes, valves, and other energy-dissipating components
head_loss_gradient Hydraulic head loss per unit pipe length metre per kilometre (m/km) m/km m_per_km EPANET pipe head-loss reporting
pressure Normal force per unit area within a fluid system kilopascal (kPa) kPa kpa Physical pressure measurements, sensors, SCADA data, and external exchange
stress Internal force per unit area within a material megapascal (MPa) MPa mpa Structural and material analysis

Time Quantities

Measurement Quantity Identifier Definition Canonical Unit UCUM Identifier AOWIS Identifier Suffix AOWIS Model / EPANET Mapping
elapsed_time Time elapsed from a defined simulation or process origin second (s) s s Simulation elapsed time and time-based control triggers
duration Length of a time interval second (s) s s Simulation duration and time steps
time_of_day Time elapsed since the start of the current day second (s) s s Simulation start time and clock-time controls

Hydraulic Coefficients and Other Dimensionless Quantities

The canonical UCUM unit identifier for all quantities in this section is 1. The AOWIS unit suffix is omitted.

Semantic terms such as ratio, factor, coefficient, multiplier, and exponent describe the quantity and are not unit suffixes.

Measurement Quantity Identifier Definition UCUM Identifier AOWIS Identifier Suffix AOWIS Model / EPANET Mapping
hazen_williams_roughness_coefficient Hazen-Williams pipe roughness coefficient 1 none EPANET Hazen-Williams roughness
chezy_manning_roughness_coefficient Chezy-Manning pipe roughness coefficient 1 none EPANET Chezy-Manning roughness
minor_loss_coefficient Coefficient representing local hydraulic losses 1 none Pipe and valve minor loss; TCV setting
darcy_weisbach_friction_factor Darcy-Weisbach friction factor 1 none Pipe simulation result
pump_speed_ratio Pump rotational speed relative to nominal or reference speed 1 none Pump setting, result, pattern, control, and rule values
pattern_multiplier Factor applied by a hydraulic or energy pattern 1 none EPANET pattern factor
demand_multiplier Global factor applied to base demands 1 none EPANET demand multiplier
pressure_exponent Exponent used by the pressure-driven demand relation 1 none EPANET pressure exponent
emitter_exponent Exponent used by the emitter pressure-flow relation 1 none EPANET emitter exponent
reaction_order Order of a bulk, wall, or tank reaction equation 1 none EPANET reaction order
specific_gravity Fluid density relative to a defined reference density 1 none EPANET specific gravity
relative_viscosity Kinematic viscosity relative to the solver reference 1 none EPANET relative viscosity
relative_diffusivity Molecular diffusivity relative to the solver reference 1 none EPANET relative diffusivity
mixing_fraction Fraction of tank volume assigned to the applicable mixing zone 1 none EPANET tank mixing fraction
hydraulic_accuracy Relative hydraulic convergence criterion 1 none EPANET hydraulic accuracy
hydraulic_damping_limit Relative threshold controlling solver damping or status checks 1 none EPANET damping limit
relative_error Relative numerical error 1 none Hydraulic simulation statistics
flow_balance_ratio Ratio of total outflow to total inflow 1 none EPANET flow-balance reporting
quality_mass_balance_ratio Water-quality mass-conservation ratio 1 none EPANET quality mass-balance reporting

Percentage Quantities

Measurement Quantity Identifier Definition Canonical Unit UCUM Identifier AOWIS Identifier Suffix AOWIS Model / EPANET Mapping
efficiency Ratio of useful output to total input expressed as a percentage percent (%) % percent Pump efficiency and efficiency curves
relative_flow Flow relative to a defined reference flow percent (%) % percent Valve characteristic curves
valve_position Valve opening position relative to its operating range percent (%) % percent Position-control valves
source_trace_percentage Proportion of water originating from a specified source node percent (%) % percent EPANET source-trace analysis
operating_time_percentage Fraction of a reporting period during which equipment operates percent (%) % percent Pump energy reporting
demand_reduction_percentage Reduction in delivered demand relative to requested demand percent (%) % percent Hydraulic statistics
leakage_loss_percentage Leakage loss relative to total system inflow percent (%) % percent Leakage statistics

Reaction and Leakage Quantities

Measurement Quantity Identifier Definition Canonical Unit UCUM Identifier AOWIS Identifier Suffix AOWIS Model / EPANET Mapping
first_order_bulk_reaction_coefficient First-order reaction-rate coefficient within the bulk fluid per day (d⁻¹) /d per_d Global, pipe, and tank first-order bulk reactions
first_order_wall_reaction_coefficient First-order reaction-rate coefficient at a pipe wall metre per day (m/d) m/d m_per_d Global and pipe first-order wall reactions
leak_area_per_100m_pipe_length Effective leak area assigned per 100 metres of pipe length square millimetre per 100 metres (mm²/100 m) mm2/(100.m) mm2_per_100m EPANET 2.3 FAVAD leak area; EPANET uses 100 project length units and the adapter converts when required[2]
leak_area_expansion_per_pressure_head Increase in effective leak area per unit pressure head square millimetre per metre of pressure head (mm²/m) mm2/m mm2_per_m_head EPANET 2.3 FAVAD leak expansion

Water Quality Quantities

Measurement Quantity Identifier Definition Canonical Unit UCUM Identifier AOWIS Identifier Suffix AOWIS Model / EPANET Mapping
chemical_concentration Mass concentration of a chemical substance in water milligram per litre (mg/L) mg/L mg_per_l Chemical quality input and results
chemical_mass_flow_rate Chemical mass introduced into or transported through the system per unit time milligram per minute (mg/min) mg/min mg_per_min EPANET mass-booster source strength and source mass rate
water_age Time elapsed since water entered the modelled distribution system hour (h) h h EPANET water-age analysis

Power, Energy, and Electrical Quantities

Measurement Quantity Identifier Definition Canonical Unit UCUM Identifier AOWIS Identifier Suffix AOWIS Model / EPANET Mapping
power Rate of energy transfer kilowatt (kW) kW kw Pump power and electrical power
energy Work performed or energy transferred kilowatt-hour (kWh) kW.h kw_h Pump energy consumption
energy_intensity Energy consumed per unit volume kilowatt-hour per cubic metre (kWh/m³) kW.h/m3 kw_h_per_m3 Pump energy-use reporting
electric_current Rate of electric charge flow ampere (A) A a Electrical model
voltage Electric potential difference volt (V) V v Electrical model
electrical_resistance Opposition to electric current flow ohm (Ω) Ohm ohm Electrical model
capacitance Ability to store electric charge farad (F) F f Electrical model


Context-Dependent Quantity Resolution

Some Model concepts resolve to different registered measurement quantities depending on their context. The representation requirements for such values are defined in Measurement:Units and, where applicable, the corresponding Measurement subsystem specification.

Model Concept Resolved Measurement Quantity
Valve setting PRV, PSV, and PBV: pressure_head; FCV: volumetric_flow_rate; TCV: minor_loss_coefficient; PCV: valve_position; GPV: curve reference rather than a measurement value
Pump setting pump_speed_ratio
Control trigger water_level, pressure_head, elapsed_time, or time_of_day, depending on control type
Control or rule action setting The measurement quantity supported by the target link type
Rule premise value The measurement quantity selected by the rule variable
Initial or simulated quality chemical_concentration, water_age, or source_trace_percentage, depending on quality-analysis mode
Quality-source strength chemical_concentration or chemical_mass_flow_rate, depending on source type
Reaction coefficient The applicable reaction-coefficient quantity determined by reaction order
Emitter coefficient Equation-dependent coefficient in Q = C H^n; no single fixed canonical unit applies independently of n
Generic curve coordinate The measurement quantity defined by the curve type
Report threshold The measurement quantity of the corresponding report field
EPANET map or backdrop coordinate The applicable geographic, projected, or local coordinate quantity after the coordinate representation is resolved

References

  1. Unified Code for Units of Measure (UCUM) https://ucum.org
  2. OWA-EPANET 2.3 release notes https://github.com/OpenWaterAnalytics/EPANET/blob/v2.3/ReleaseNotes2_3.md