Office-Scripts: https://github.com/Mariosmsk/EPANET-Office-Scripts-Excel
Category EPANET
EPANET Viewer using EPyT and #streamlit
Battle of the Leakage Detection and Isolation Methods (BattLeDIM 2020)
The Battle of the Leakage Detection and Isolation Methods (BattLeDIM), which will take place online on September 3rd, 2020, 08:30-10:00 CET (https://time.is/0830_03_September_2020_in_Brussels).
Participants and audience can register to enter the online Zoom meeting: https://ucy.zoom.us/meeting/register/tJUkceisrTooGdYW31lWq3x0DKQBdwoLioxD.
Also, the event will be broadcasted online on YouTube, accessible through the competition website: https://battledim.ucy.ac.cy
BattLeDIM aims at objectively comparing the performance of methods for the detection and localization of leakage events, relying on SCADA measurements of flow and pressure sensors installed within a new benchmark water distribution network.
This is a joint collaboration of academics from @KIOSCoE @UCYOfficial, TU Delft @tudelft, Technion @TechnionLive joint, and Tsinghua University @Tsinghua_Uni.
This event has been partially supported by the SmartWater2020 project @SWater2020 @Interreg_GRCY, the H2020 KIOS CoE @KIOSCoE Teaming project @EU_H2020 and Deutsche Forschungsgemeinschaft (DFG).
Collaborations:
KIOS Center of Excellence, University of Cyprus, Cyprus
Technical University Delft, the Netherlands
Technion – Israel Institute of Technology, Israel
Technical University Delft, the Netherlands
Tsinghua University, China
Source: @eldemet https://twitter.com/SWater2020/status/1300003714237952000
Merge networks using the EPANET-MATLAB-Toolkit
Create standalone app “Network Viewer” using EPANET-Matlab-Toolkit
Load basemaps from #QGIS to #EPANET
Using plugin “Lat Lon Tools” to copy canvas bounding box!
Rotate water network via EPANET-MATLAB-Toolkit
%% Example: Rotate EPANET Inp File clc; close all; clear all; % Load network and paths start_toolkit; d = epanet('Net1.inp'); %Plot nework initial h = d.plot; % Rotate degrees theta theta = pi/2; %90 degrees for theta = 0:pi/20:pi*2 % define the x- and y-data for the original line we would like to rotate x = d.getNodeCoordinates{1}'; y = d.getNodeCoordinates{2}'; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % **** % create a matrix of these points, which will be useful in future calculations v = [x;y]; % choose a point which will be the center of rotation x_center = x(1); y_center = y(1); % create a matrix which will be used later in calculations center = repmat([x_center; y_center], 1, length(x)); % define a 60 degree counter-clockwise rotation matrix % theta = pi/3; % pi/3 radians = 60 degrees R = [cos(theta) -sin(theta); sin(theta) cos(theta)]; % do the rotation... s = v - center; % shift points in the plane so that the center of rotation is at the origin so = R*s; % apply the rotation about the origin vo = so + center; % shift again so the origin goes back to the desired center of rotation % this can be done in one line as: % vo = R*(v - center) + center % pick out the vectors of rotated x- and y-data x_new = vo(1,:); y_new = vo(2,:); % **** %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% for i=1:d.NodeCount d.setNodeCoordinates(i, [x_new(i) y_new(i)]); end % Plot rotated network cla; d.plot('axes', h) pause(.05) end % d.saveInputFile('rotated.inp'); %% Source: % https://www.mathworks.com/matlabcentral/answers/93554-how-can-i-rotate-a-set-of-points-in-a-plane-by-a-certain-angle-about-an-arbitrary-point
Building the EPANET library and executable files #EPANET
SWMM-EPANET User Interface
Load basemaps in EPANETUI (Google satellite & Openstreetmap).
Demands in distribution networks #QGIS #EPANET
Calculates demand on nodes:
Estimate the demand at the nodes (hubs), based on household consumption. The calculation is performed by adding the demand in the households and designating the total demand in the nodes of the distribution network. This processing plugin is based on component “Distance to nearest hub“.
Operation: Given a layer of origin (households) and another layer representing destination points (nodes), the algorithm calculates the distance between each point of origin (households) and the nearest point of detention (Nodes) households, and totaling the demand value that will be assigned to the nearest node (hub).
In addition, the algorithm displays a “line” layer, created by the “Distance to nearest hub” component, which identifies households (origin) and Nodes (destination), allowing easy verification of geoprocessing connectivity.
QGIS 2.8 or higher processing provider plugin that calculates demand on distribution network nodes.null
Where to find the algorithm:
Once installed and active, this plugin adds the new provider (Algorithms to designate demands on nodes in the distribution network) in the Processing Toolbox. You find the algorithm in the Toolbox under Algorithms to designate demands on the nodes in the distribution network -> Algorithms -> Calculate the Demand Flow in the Nodes.

