Comments (5)
I was able to reproduce this with the following snippet:
import wntr
inp_file = 'Net6.inp'
wn = wntr.network.WaterNetworkModel(inp_file)
wn.options.time.duration = 96*3600
sim = wntr.sim.WNTRSimulator(wn)
results = sim.run_sim()
head = results.node["head"]
pressure = results.node["pressure"]
demand = results.node["demand"]
flowrate = results.link["flowrate"]
todini = wntr.metrics.hydraulic.todini_index(head, pressure, demand, flowrate, wn, 21.09)
todini.plot()
Not sure why we are seeing those unexpected values, though. Will continue to look into this.
from wntr.
I was able to reproduce this with the following snippet:
import wntr inp_file = 'Net6.inp' wn = wntr.network.WaterNetworkModel(inp_file) wn.options.time.duration = 96*3600 sim = wntr.sim.WNTRSimulator(wn) results = sim.run_sim() head = results.node["head"] pressure = results.node["pressure"] demand = results.node["demand"] flowrate = results.link["flowrate"] todini = wntr.metrics.hydraulic.todini_index(head, pressure, demand, flowrate, wn, 21.09) todini.plot()
Not sure why we are seeing those unexpected values, though. Will continue to look into this.
Thanks for looking into this.
from wntr.
The Todini index generally results in values between 0 and 1, but values below 0 and above 1 are possible. The paper by Jayaram includes an explanation and suggests a modified resilience index (MRI), which is also included in WNTR.
WNTR function for MRI: https://usepa.github.io/WNTR/apidoc/wntr.metrics.hydraulic.modified_resilience_index.html#wntr.metrics.hydraulic.modified_resilience_index
Jayaram, N., & Srinivasan, K. (2008). Performance‐based optimal design and rehabilitation of water distribution networks using life cycle costing. Water resources research, 44(1).
from wntr.
The Todini index generally results in values between 0 and 1, but values below 0 and above 1 are possible. The paper by Jayaram includes an explanation and suggests a modified resilience index (MRI), which is also included in WNTR.
WNTR function for MRI: https://usepa.github.io/WNTR/apidoc/wntr.metrics.hydraulic.modified_resilience_index.html#wntr.metrics.hydraulic.modified_resilience_index
Jayaram, N., & Srinivasan, K. (2008). Performance‐based optimal design and rehabilitation of water distribution networks using life cycle costing. Water resources research, 44(1).
Thanks @kaklise for your reply and the link to the paper. Please correct me if I am wrong, the highest Todini Index attainable is one, while MRI can theoretically range till infinity.
from wntr.
Todini index generally results in values between 0 and 1, but values below 0 and above 1 are possible.
MRI can be over 1, but cannot be below –1 if elevation and pressure are positive.
I'm not sure if the theoretical upper limit is infinity, but both values can be > 1.
from wntr.
Related Issues (20)
- Questions about optimal scheduling of pumping stations HOT 1
- runnin the program HOT 3
- wntr.network.options has some abnormal annotation contents HOT 1
- Writing an inp file 'self' argument error message HOT 2
- Create a control object or rule object from text input HOT 5
- Get the reactions tab in the inp file from a water network instance HOT 1
- Add PBV support to [VALVES] section
- Generating Interactive leaflet networks HOT 7
- Pipe status problem HOT 4
- AttributeError: 'WaterNetworkModel' object has no attribute 'write_inpfile' HOT 3
- Differences with my epanet from zero model and inp from wntr model HOT 4
- Values in [DEMANDS] section are repetead and others are missing HOT 8
- Unable to remove leaks from network model HOT 3
- Not able to save the network with modified elements as an INP file. HOT 2
- EPANET Error 110 HOT 1
- leaflet map popups HOT 5
- Update EPANET binaries for MacOS arm64 HOT 1
- Version compatibility for dependencies HOT 1
- Pressure Threshold for Resilience indices like Todini and MRI HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from wntr.