Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add EPANET MSX enhancements #426

Open
wants to merge 149 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
149 commits
Select commit Hold shift + click to select a range
136fe58
initial creation of MSX reaction object
dbhart Aug 17, 2023
173e4b9
update requirements so that reactions test with sympy
dbhart Aug 18, 2023
a47305d
Importing module before it existed, oops
dbhart Aug 18, 2023
a931261
Merge pull request #128 from USEPA/main
dbhart Aug 18, 2023
5431a84
Documentation updates
dbhart Aug 18, 2023
4ae43db
Code updates for MSX utilities
dbhart Aug 25, 2023
6b4394a
Forgot some files
dbhart Aug 25, 2023
8036ef3
Updated code structure checkin
dbhart Aug 25, 2023
b37a1d5
Update to core reactions model codes
dbhart Aug 28, 2023
4892363
Updates to read things in - there are bugs
dbhart Aug 28, 2023
3649f60
Updates to documentation and completing the I/O
dbhart Aug 29, 2023
25f18a9
Completed MSX-input file IO
dbhart Aug 31, 2023
bb3ec89
Citations update
dbhart Sep 11, 2023
455958d
Adding a (very basic) citations class
dbhart Sep 11, 2023
d746e4f
Update documentation
dbhart Sep 11, 2023
57a9d2f
Updates after internal discussion
dbhart Sep 11, 2023
74a056f
Update to read/write citations on the WaterNetworkModel
dbhart Sep 12, 2023
b19122e
Documentation updates
dbhart Sep 12, 2023
f739713
Merge branch 'msx' into citations
dbhart Sep 12, 2023
7a6f46f
Merge pull request #129 from dbhart/citations
dbhart Sep 12, 2023
d4c31b5
Update to add basic citation class
dbhart Sep 12, 2023
a2b0c4f
Getting rid of merge conflict
dbhart Sep 12, 2023
6fac521
Merge pull request #131 from dbhart/citation
dbhart Sep 12, 2023
da46076
Merge pull request #132 from dbhart/exceptions
dbhart Sep 16, 2023
60af118
Exceptions (#133)
dbhart Sep 16, 2023
5e97685
Update to sphinx config (#134)
dbhart Sep 16, 2023
74b1a05
Updates to toolkit
dbhart Sep 16, 2023
52de3d5
Rebase library
dbhart Sep 16, 2023
a68835b
Updates to documentation, organization, and utilities
dbhart Sep 19, 2023
51f2a7c
Rename
dbhart Sep 20, 2023
ffcc1a5
Typo
dbhart Sep 20, 2023
eb6e7af
Updates to tests and organization
dbhart Sep 20, 2023
45d5976
Updates for testing and documentation
dbhart Sep 26, 2023
8862e25
Update to documentation and library functionality
dbhart Oct 6, 2023
6806c59
Merge branch 'USEPA:main' into msx
dbhart Oct 16, 2023
6b73e6c
Updates pulling MSX into the WaterNetworkModel
dbhart Oct 12, 2023
ca3451a
Stashing
dbhart Oct 24, 2023
9902471
Update to package structure
dbhart Oct 25, 2023
84e92ea
Tests still broken, but now fully running MSX
dbhart Oct 27, 2023
25a48e0
Renaming to conform to other wntr styles
dbhart Oct 27, 2023
0bc2088
Updates to naming, documentation
dbhart Nov 6, 2023
a8d0fd6
Merge branch 'USEPA:main' into msx
dbhart Nov 6, 2023
bc16886
Merge branch 'msx' of https://github.com/dbhart/WNTR into msx
kaklise Nov 9, 2023
1f8c3dd
Delete test file
dbhart Nov 9, 2023
e44e347
Add test file
dbhart Nov 9, 2023
1c200fe
Merge branch 'msx' of https://github.com/dbhart/WNTR into msx
kaklise Nov 9, 2023
8766bbd
Updates to documentation for MSX
dbhart Nov 9, 2023
54690ce
Update to example files and tests
dbhart Nov 9, 2023
7d193ed
Merge branch 'msx' of https://github.com/dbhart/WNTR into msx
kaklise Nov 9, 2023
73264e4
Test updates
dbhart Nov 9, 2023
f4244c7
Fix tolerances
dbhart Nov 9, 2023
46cf2db
Merge branch 'msx' of https://github.com/dbhart/WNTR into msx
kaklise Nov 9, 2023
8d1a41e
MSX documentation update
kaklise Nov 10, 2023
0b11e42
minor updates
kaklise Nov 10, 2023
cdcb4d1
MSX docs update (#135)
kaklise Nov 10, 2023
6c93a63
API docs update, removed excess imports, removed cite_msx
kaklise Nov 10, 2023
9bc4140
API docs update, removed excess imports, removed cite_msx (#136)
kaklise Nov 10, 2023
f21f81a
Merge branch 'USEPA:main' into msx
dbhart Nov 10, 2023
7b3975a
Merge pull request #137 from kaklise/msx
dbhart Nov 13, 2023
d347ad6
Docs update
dbhart Nov 13, 2023
e07e292
Fix changed name
dbhart Nov 17, 2023
361f167
Update to correct the exceptions listings
dbhart Oct 23, 2023
be11447
fix exceptions
dbhart Nov 17, 2023
d467860
Updates to address comments in PR. Tests forthcoming
dbhart Oct 30, 2023
4c9600a
Added the tests for exceptions
dbhart Nov 17, 2023
54e045e
Get rid of apidoc to match docs-theme
dbhart Nov 17, 2023
fd965c7
Exceptions/docs-theme merges
dbhart Nov 17, 2023
853536e
Final conflict
dbhart Nov 17, 2023
033a675
Merge pull request #139 from dbhart/exceptions
dbhart Nov 17, 2023
7ea6a6e
Updates to msx docs
kaklise Dec 13, 2023
fd3ae03
Merge pull request #140 from kaklise/msx
dbhart Dec 14, 2023
48a6faf
Fixing typos
dbhart Dec 14, 2023
08b60b7
Adding MSX binary files and updating .gitignore
dbhart Dec 18, 2023
263b9d6
Update dll paths
dbhart Dec 18, 2023
1709f1f
Updating tests...ish
dbhart Dec 19, 2023
6b146c5
MSX binaries update
dbhart Feb 12, 2024
076d202
Updates to documentation configuration
dbhart Feb 12, 2024
8791ccc
Merge branch 'USEPA:main' into msx
dbhart Feb 12, 2024
229f09f
Merge branch 'msx' of github.com:dbhart/WNTR into msx
dbhart Mar 11, 2024
8eadd15
Merge branch 'USEPA:main' into msx
dbhart Mar 11, 2024
63d782a
Fix toolkit problems.
dbhart Mar 13, 2024
f95bbdf
Updates to fix the wn.msx variable assignment
dbhart Apr 7, 2024
f76e997
JSON schema commit
dbhart Apr 30, 2024
e5db660
Merge branch 'USEPA:main' into msx
dbhart Apr 30, 2024
d1df04e
Update to MSX examples and bug fix
dbhart May 4, 2024
168e59d
Update to MSX demo
dbhart May 5, 2024
5ba02f3
Update to the MSX demo jupyter notebook.
dbhart May 7, 2024
4894e82
Update to demo
dbhart May 7, 2024
53cb5be
Merge branch 'USEPA:main' into msx
dbhart May 7, 2024
8124da7
MSX updates
dbhart May 20, 2024
2fe12ed
first draft of plot_network function with a GIS backend
kbonney Jun 11, 2024
b7e260f
Merge branch 'USEPA:main' into msx
dbhart Jul 2, 2024
366b7d7
Reverting
dbhart Jul 2, 2024
6c6dc92
add msx simulation test
kbonney Jul 15, 2024
2469acb
Revert documentation config changes
dbhart Jul 15, 2024
891d33c
Revert conf.py
dbhart Jul 15, 2024
fe5ca29
Finish revert erroneous commits
dbhart Jul 15, 2024
2ec9b81
CrowdStrike mess backup
dbhart Jul 20, 2024
a203e76
Merge pull request #142 from USEPA/main
dbhart Aug 26, 2024
48ac43e
incorporating the rest of the keywords from plot_network in plot_netw…
kbonney Sep 30, 2024
b1bd4f6
Merge branch 'main' into gis_plotting
kbonney Sep 30, 2024
920c480
Merge pull request #144 from USEPA/main
dbhart Oct 1, 2024
a5c2ed3
Merge pull request #141 from kbonney/msx
dbhart Oct 1, 2024
f307ae9
This addresses comments made regarding the msx model files. Documenta…
dbhart Oct 1, 2024
3baa93a
combining link-like and node-like gis files
kbonney Oct 1, 2024
487511a
adding tank/reservoir marker shapes and implementating other type opt…
kbonney Oct 1, 2024
6bfe13c
Update the epanetmsx binary builds from the USEPA official branch
dbhart Oct 7, 2024
c75d744
tests: correct filename in demo file, clean binary objects out of ipynb
dbhart Oct 7, 2024
9bc07cf
set geopandas backend to the plot_network function name. update the g…
kbonney Oct 21, 2024
3bb3c4b
archive networkx plotting function in test suite
kbonney Oct 21, 2024
1c3279f
Merge branch 'USEPA:main' into msx
dbhart Oct 21, 2024
1a7e0a5
clean up function and add directed functionality
kbonney Nov 5, 2024
08f9ee9
add comparison test for plotting
kbonney Nov 5, 2024
1eaaade
handle cbar manually to avoid error in earthquake demo
kbonney Nov 5, 2024
f0c32d4
Merge remote-tracking branch 'usepa/main' into gis_plotting
kbonney Nov 5, 2024
80eaf96
extend test cases
kbonney Nov 5, 2024
be18e35
Updates to MSX documentation
dbhart Nov 18, 2024
bacf024
Merge remote-tracking branch 'usepa/main' into gis_plotting
kbonney Nov 20, 2024
0757c2c
Merge remote-tracking branch 'usepa/main' into gis_plotting
kbonney Nov 20, 2024
d0d59f4
fix bug caused by node_type no longer provided by GIS geodataframes, …
kbonney Nov 20, 2024
6e3fcf6
add extra test cases, remove unneccesary calls to plt.figure
kbonney Nov 20, 2024
a3b2576
setting compare to false
kbonney Nov 20, 2024
c267ac1
add alpha to colorbars
kbonney Nov 26, 2024
664e4a5
fix color bug on mpl 3.8, change plot_valve/pumps kwarg name, set asp…
kbonney Nov 26, 2024
6401716
fix test case to adjust for new kwarg names
kbonney Nov 26, 2024
105d243
add legend and plot all nodes regardless of node_attribute
kbonney Dec 2, 2024
c8f9fd5
add additional tests
kbonney Dec 2, 2024
0558ff8
remove old plot network code, clean up plot network, add default colo…
kbonney Dec 3, 2024
4a8f5a4
remove pump/valve direction plotting tests
kbonney Dec 3, 2024
046006a
update plot_network to use _format functions instead of _prepare func…
kbonney Dec 3, 2024
caa0af2
build: Update binaries with structure condusive to multi-platform Dar…
dbhart Dec 14, 2024
171a22d
Merge branch 'USEPA:main' into msx
dbhart Dec 14, 2024
7901c21
chore: Load libraries in a different manner
dbhart Dec 14, 2024
19a34f4
fix: misspelling in library name
dbhart Dec 14, 2024
42e9d92
fix: misspelling in library name in regular wntr too
dbhart Dec 14, 2024
a28fa71
fix: Update DLLs for EPANET
dbhart Dec 15, 2024
35e46ca
debug: mark threaded test as skip temporarily.
dbhart Dec 15, 2024
0978643
Merge pull request #147 from kbonney/gis_plotting
dbhart Dec 16, 2024
effb245
fix: found bug with v2.2 threading
dbhart Dec 16, 2024
97a378d
fix: updated the initial_quality to valid gis name
dbhart Dec 16, 2024
9053c5a
Test build script update
dbhart Dec 16, 2024
0d9ba06
build: add libomp brew formula
dbhart Dec 16, 2024
f53c867
fix: missing comma breaking demos.
dbhart Dec 16, 2024
d4041bf
docs: Update msx-library and string outputs in documentation
dbhart Dec 16, 2024
1aa3184
fix: skip doctest ordered list
dbhart Dec 16, 2024
e79ae7b
test: Skip v2.0 on ARM processor
dbhart Dec 16, 2024
1250cbe
test: missed one test that needs to be skipped on arm processor
dbhart Dec 16, 2024
7872c33
ci: Remove doctests for arm processor
dbhart Dec 16, 2024
f99ad1d
ci: update release to proper macos names
dbhart Dec 16, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 15 additions & 3 deletions .github/workflows/build_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:
strategy:
matrix:
python-version: ['3.9', '3.10', '3.11', '3.12']
os: [windows-latest, macOS-13, ubuntu-latest]
os: [windows-latest, macOS-13, macos-latest, ubuntu-latest]
fail-fast: false
steps:
- uses: actions/checkout@v4
Expand Down Expand Up @@ -48,7 +48,7 @@ jobs:
strategy:
matrix:
python-version: ['3.9', '3.10', '3.11', '3.12']
os: [windows-latest, macOS-13, ubuntu-latest]
os: [windows-latest, macOS-13, macos-latest, ubuntu-latest]
fail-fast: false
steps:
- name: Set up Python
Expand All @@ -73,27 +73,39 @@ jobs:
strategy:
matrix:
python-version: ['3.9', '3.10', '3.11', '3.12']
os: [windows-latest, macOS-13, ubuntu-latest]
os: [windows-latest, macOS-13, ubuntu-latest, macos-latest]
fail-fast: false
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- if: ${{ matrix.os == 'macos-latest' || matrix.os == 'macOS-13'}}
run: |
brew reinstall --build-from-source --formula ./shell/apple/libomp.rb
- name: Install dependencies
run: |
python --version
python -m pip install --upgrade pip
pip install -r requirements.txt
python -m pip install -e .
- name: Run Tests
if: ${{ matrix.os != 'macos-latest' }}
run: |
coverage erase
coverage run --context=${{ matrix.os }}.py${{ matrix.python-version }} --source=wntr --omit="*/tests/*","*/sim/network_isolation/network_isolation.py","*/sim/aml/evaluator.py" -m pytest --doctest-modules --doctest-glob="*.rst" wntr
coverage run --context=${{ matrix.os }}.py${{ matrix.python-version }} --source=wntr --omit="*/tests/*","*/sim/network_isolation/network_isolation.py","*/sim/aml/evaluator.py" --append -m pytest --doctest-glob="*.rst" documentation
env:
COVERAGE_FILE: .coverage.${{ matrix.python-version }}.${{ matrix.os }}
- name: Run Tests (ARM-processor)
if: ${{ matrix.os == 'macos-latest'}}
# doctests are not flexible enough to skip EPANET=v2.0 errors on ARM processor, so do not run doctests on ARM system
run: |
coverage erase
coverage run --context=${{ matrix.os }}.py${{ matrix.python-version }} --source=wntr --omit="*/tests/*","*/sim/network_isolation/network_isolation.py","*/sim/aml/evaluator.py" -m pytest --doctest-modules --doctest-glob="*.rst" wntr
env:
COVERAGE_FILE: .coverage.${{ matrix.python-version }}.${{ matrix.os }}
- name: Save coverage
uses: actions/upload-artifact@v4
with:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [windows-latest, macOS-13, macos-13, ubuntu-latest]
os: [windows-latest, macos-latest, macos-13, ubuntu-latest]
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- name: Build wheels
Expand Down
84 changes: 78 additions & 6 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,26 +1,98 @@
# Developer IDE directories
/.project
/.spyproject
_build/

# Spyder project settings
.spyderproject
.spyproject

# Rope project settings
.ropeproject

# VS Code project settings
*.code-workspace
/.vscode

# IPython
profile_default/
ipython_config.py

# pyenv
.python-version

# Environments
.env
.venv
env/
venv/
ENV/
env.bak/
venv.bak/

# Distribution / packaging
.Python
build/
wntr.egg-info/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
docker/
/.vscode

# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class

# Unit test / coverage reports
htmlcov/
.tox/
.nox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
.hypothesis/
.pytest_cache/

# Mac cleanup
**/.DS_Store

# Other items / test output
temp*
*.pyd
*.pyc
*.egg
*.coverage
*.ipynb
*.html
*.pickle
*.xlsx

temp*

examples/*.inp
wntr/tests/*.png
wntr/tests/*.tif

# Documentation build files
documentation/_build
documentation/_local
documentation/apidoc

# WNTR specific
wntr/sim/aml/*.so
wntr/sim/aml/*.dll
wntr/sim/aml/*.dylib
wntr/sim/network_isolation/*.so
wntr/sim/network_isolation/*.dll
wntr/sim/network_isolation/*.dylib
4 changes: 3 additions & 1 deletion MANIFEST.in
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,6 @@ include wntr/sim/aml/evaluator*
include wntr/sim/aml/numpy.i
include wntr/sim/network_isolation/network_isolation*
include wntr/sim/network_isolation/numpy.i
include wntr/tests/networks_for_testing/*.inp
include wntr/tests/networks_for_testing/*.inp
include wntr/library/msx/*.json
include wntr/library/msx/*.msx
Loading
Loading