watertap-org / watertap

The WaterTAP development repository
https://watertap.readthedocs.io/en/latest
Other
54 stars 54 forks source link

Parmest tutorial errors #1389

Closed adam-a-a closed 1 month ago

adam-a-a commented 2 months ago

Description

When running the parmest tutorial locally, I ran into two issues: 1) Needed to pip install tabulate for one of the early cells to execute. 2) Couldn't solve the parameter estimation problem because WARNING: Could not locate the 'ipopt' executable, which is required for solver ipopt and ApplicationError: No executable found for solver 'ipopt'.

Expected Behavior

The tutorial should run without issue.

Steps to Reproduce

Run cells in the tutorials\parmest_demo\parmest_example.ipynb notebook.

Environment

Anything Else?

I suspect I may just need to reinstall WaterTAP/refresh my environment, but here is what I get from pip list:

Package                       Version      Location
----------------------------- ------------ ----------------------------------
aiohttp                       3.9.3
aiosignal                     1.3.1
alabaster                     0.7.13
annotated-types               0.6.0
anyio                         4.1.0
appdirs                       1.4.4
argon2-cffi                   23.1.0
argon2-cffi-bindings          21.2.0
arrow                         1.3.0
astroid                       2.15.6
asttokens                     2.4.1
async-lru                     2.0.4
async-timeout                 4.0.3
attrs                         23.2.0
autodiff                      1.1.2
Babel                         2.12.1
backcall                      0.2.0
beautifulsoup4                4.12.2
black                         24.3.0
bleach                        6.0.0
cattrs                        23.1.2
certifi                       2023.7.22
cffi                          1.16.0
cfgv                          3.4.0
charset-normalizer            3.2.0
chemicalfun                   0.1.10
click                         8.1.7
colorama                      0.4.6
comm                          0.2.2
contourpy                     1.1.0
coverage                      7.3.1
cryptography                  41.0.7
cycler                        0.11.0
dataclasses-json              0.5.14
debugpy                       1.8.1
decorator                     5.1.1
defusedxml                    0.7.1
dill                          0.3.7
distlib                       0.3.7
dnspython                     2.4.2
docutils                      0.18.1
esbonio                       0.16.1
et-xmlfile                    1.1.0
exceptiongroup                1.1.3
executing                     2.0.1
fastjsonschema                2.19.1
filelock                      3.12.3
fonttools                     4.42.1
fqdn                          1.5.1
frozenlist                    1.4.1
h5py                          3.9.0
htmlmin                       0.1.12
idaes-pse                     2.4.0
idaes-ui                      0.23.12
identify                      2.5.27
idna                          3.4
imagesize                     1.4.1
importlib-metadata            7.1.0
importlib-resources           6.4.0
iniconfig                     2.0.0
ipykernel                     6.29.3
ipython                       8.12.2
ipywidgets                    8.1.1
isoduration                   20.11.0
isort                         5.12.0
jedi                          0.19.1
Jinja2                        3.0.3
json-schema-for-humans        0.45.2
json5                         0.9.14
jsonpointer                   2.4
jsonschema                    4.21.1
jsonschema-specifications     2023.12.1
jupyter                       1.0.0
jupyter-client                8.6.1
jupyter-console               6.6.3
jupyter-core                  5.7.2
jupyter-events                0.9.0
jupyter-lsp                   2.2.1
jupyter-server                2.12.1
jupyter-server-terminals      0.5.0
jupyterlab                    4.0.9
jupyterlab-pygments           0.2.2
jupyterlab-server             2.25.2
jupyterlab-widgets            3.0.9
kaleido                       0.2.1
kiwisolver                    1.4.5
lazy-object-proxy             1.9.0
linkify-it-py                 2.0.2
lsprotocol                    2023.0.0b1
markdown2                     2.4.10
MarkupSafe                    2.1.3
marshmallow                   3.20.1
matplotlib                    3.7.2
matplotlib-inline             0.1.7
mccabe                        0.7.0
mistune                       3.0.1
mongomock                     4.1.2
mpmath                        1.3.0
multidict                     6.0.5
multipledispatch              0.6.0
mypy-extensions               1.0.0
nbclient                      0.6.8
nbconvert                     7.8.0
nbformat                      5.10.4
nbmake                        1.4.3
nbsphinx                      0.9.3
nest-asyncio                  1.6.0
networkx                      3.1
nodeenv                       1.8.0
notebook                      7.0.6
notebook-shim                 0.2.3
numpy                         1.24.4
openpyxl                      3.1.2
optima                        0.5.0
overrides                     7.4.0
packaging                     24.0
pandas                        2.0.3
pandocfilters                 1.5.0
parso                         0.8.4
pathspec                      0.11.2
pickleshare                   0.7.5
Pillow                        10.0.0
Pint                          0.21.1
pip                           21.1.3
pkgutil-resolve-name          1.3.10
platformdirs                  4.2.0
plotly                        5.21.0
pluggy                        1.3.0
ply                           3.11
pre-commit                    3.4.0
prometheus-client             0.19.0
prompt-toolkit                3.0.42
psutil                        5.9.8
pure-eval                     0.2.2
pybind11                      2.12.0
pybind11-global               2.12.0
pycparser                     2.21
pydantic                      2.6.4
pydantic-core                 2.16.3
pygls                         1.1.0
pygments                      2.17.2
pylint                        2.17.5
pymongo                       4.5.0
Pyomo                         6.7.1
pyparsing                     3.0.9
pyspellchecker                0.7.2
pytest                        7.4.2
pytest-cov                    4.1.0
python-dateutil               2.9.0
python-json-logger            2.0.7
pytz                          2023.3.post1
pywin32                       306
pywinpty                      2.0.12
PyYAML                        6.0.1
pyzmq                         26.0.2
qtconsole                     5.5.1
QtPy                          2.4.1
reaktoro                      2.12.0
reaktplot                     0.4.1
referencing                   0.34.0
requests                      2.31.0
rfc3339-validator             0.1.4
rfc3986-validator             0.1.1
rpds-py                       0.18.0
scipy                         1.10.1
Send2Trash                    1.8.2
sentinels                     1.0.0
setuptools                    68.0.0
six                           1.16.0
sniffio                       1.3.0
snowballstemmer               2.2.0
soupsieve                     2.5
sphinx                        7.1.2
sphinx-rtd-theme              1.3.0
sphinxcontrib-applehelp       1.0.4
sphinxcontrib-devhelp         1.0.2
sphinxcontrib-htmlhelp        2.0.1
sphinxcontrib-jquery          4.1
sphinxcontrib-jsmath          1.0.1
sphinxcontrib-qthelp          1.0.3
sphinxcontrib-serializinghtml 1.1.5
stack-data                    0.6.2
sympy                         1.12
tabulate                      0.9.0
tenacity                      8.2.3
terminado                     0.18.0
thermofun                     0.4.5
tinycss2                      1.2.1
tomli                         2.0.1
tomlkit                       0.12.1
tornado                       6.4
traitlets                     5.14.3
typeguard                     3.0.2
types-python-dateutil         2.8.19.14
typing-extensions             4.11.0
typing-inspect                0.9.0
tzdata                        2023.3
uc-micro-py                   1.0.2
uri-template                  1.3.0
urllib3                       1.26.16
virtualenv                    20.24.5
watertap                      0.12.dev0    c:\users\adam\my-nawi-hub\watertap
wcwidth                       0.2.13
webcolors                     1.13
webencodings                  0.5.1
websocket-client              1.7.0
wheel                         0.38.4
widgetsnbextension            4.0.9
wrapt                         1.15.0
yarl                          1.9.4
zipp                          3.17.0
adam-a-a commented 2 months ago

Any thoughts @lbianchi-lbl ?

lbianchi-lbl commented 2 months ago

Any thoughts @lbianchi-lbl ?

@adam-a-a can you try to run https://github.com/watertap-org/getinfo in that environment and paste/attach the JSON output? The pip list is a good approach, but getinfo also specifically collects information about Pyomo and/or IDAES solver discovery.

Morgan88888888 commented 2 months ago

I encountered the same issue with the tabulate (first one) when I tested it. I use conda to manage my environment, and tabulate was missing from my list as well. After manually installing tabulate through conda, the issue was fixed. When I revisited the setup file, I noticed that 'tabulate' wasn't included. I think we can add it to fix this.

ksbeattie commented 2 months ago

Addressed in PR #1178