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

OpenMDAO variable connections broken #363

Closed
yonghoonlee opened this issue Mar 14, 2025 · 9 comments
Closed

OpenMDAO variable connections broken #363

yonghoonlee opened this issue Mar 14, 2025 · 9 comments

Comments

@yonghoonlee
Copy link
Contributor

Description

Failure in running RAFT optimization example.
It seems that the OpenMDAO variable connections are broken.

Steps to reproduce issue

Installed the current (as of March 14, 2025) version of WEIS develop branch with commit hash: df651c32c2cb6cc9f198a41d5b9fc4341df8f9e8 and ran:

cd examples/15_RAFT_Studies
python weis_driver_raft_opt.py

Current behavior

Using weis.aeroelasticse in rosco.toolbox...
WARNING: AggregatedJoints hasn't included rectangular yet
WARNING: AggregatedJoints hasn't included rectangular yet
WARNING: AggregatedJoints hasn't included rectangular yet
Traceback (most recent call last):
  File "/Users/yhlee/work/WEIS/examples/15_RAFT_Studies/weis_driver_raft_opt.py", line 11, in <module>
    wt_opt, modeling_options, opt_options = weis_main(fname_wt_input,
                                            ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/yhlee/work/WEIS/weis/main.py", line 48, in weis_main
    wt_opt, modeling_options, opt_options = run_weis(fname_wt_input, 
                                            ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/yhlee/work/WEIS/weis/glue_code/runWEIS.py", line 117, in run_weis
    wt_opt.setup()
  File "/Users/yhlee/miniforge3/envs/weis-env/lib/python3.12/site-packages/openmdao/core/problem.py", line 1064, in setup
    self._check_collected_errors()
  File "/Users/yhlee/miniforge3/envs/weis-env/lib/python3.12/site-packages/openmdao/core/problem.py", line 636, in _check_collected_errors
    raise RuntimeError('\n'.join(final_msg))
RuntimeError: 
Collected errors for problem 'weis_driver_raft_opt':
   <model> <class WindPark>: Attempted to connect from 'blade.high_level_blade_props.rotor_radius' to 'sse_tune.Rtip', but 'blade.high_level_blade_props.rotor_radius' doesn't exist. Perhaps you meant to connect to one of the following outputs: ['blade.high_level_blade_props.rotor_solidity', 'blade.high_level_blade_props.rotor_diameter', 'blade.high_level_blade_props.r_blade'].
   <model> <class WindPark>: Attempted to connect from 'blade.high_level_blade_props.rotor_radius' to 'sse_tune.tune_rosco.R', but 'blade.high_level_blade_props.rotor_radius' doesn't exist. Perhaps you meant to connect to one of the following outputs: ['blade.high_level_blade_props.rotor_solidity', 'blade.high_level_blade_props.rotor_diameter', 'blade.high_level_blade_props.r_blade'].
   <model> <class WindPark>: Attempted to connect from 'blade.high_level_blade_props.rotor_radius' to 'raft.blade_Rtip', but 'blade.high_level_blade_props.rotor_radius' doesn't exist. Perhaps you meant to connect to one of the following outputs: ['blade.high_level_blade_props.rotor_solidity', 'blade.high_level_blade_props.rotor_diameter', 'blade.high_level_blade_props.r_blade'].

Expected behavior

Code versions

# Name                    Version                   Build  Channel
alabaster                 1.0.0              pyhd8ed1ab_1    conda-forge
ampl-asl                  1.0.0                h286801f_2    conda-forge
anyio                     4.8.0                    pypi_0    pypi
appnope                   0.1.4                    pypi_0    pypi
argon2-cffi               23.1.0                   pypi_0    pypi
argon2-cffi-bindings      21.2.0                   pypi_0    pypi
arrow                     1.3.0                    pypi_0    pypi
asttokens                 3.0.0                    pypi_0    pypi
async-lru                 2.0.4                    pypi_0    pypi
attrs                     25.3.0             pyh71513ae_0    conda-forge
babel                     2.17.0             pyhd8ed1ab_0    conda-forge
beautifulsoup4            4.13.3                   pypi_0    pypi
bleach                    6.2.0                    pypi_0    pypi
blinker                   1.9.0              pyhff2d567_0    conda-forge
brotli                    1.1.0                hd74edd7_2    conda-forge
brotli-bin                1.1.0                hd74edd7_2    conda-forge
brotli-python             1.1.0           py312hde4cb15_2    conda-forge
bzip2                     1.0.8                h99b78c6_7    conda-forge
c-ares                    1.34.4               h5505292_0    conda-forge
ca-certificates           2025.1.31            hf0a4a13_0    conda-forge
certifi                   2025.1.31          pyhd8ed1ab_0    conda-forge
cffi                      1.17.1          py312h0fad829_0    conda-forge
charset-normalizer        3.4.1              pyhd8ed1ab_0    conda-forge
click                     8.1.8              pyh707e725_0    conda-forge
colorama                  0.4.6              pyhd8ed1ab_1    conda-forge
comm                      0.2.2                    pypi_0    pypi
contourpy                 1.3.1           py312hb23fbb9_0    conda-forge
control                   0.10.1             pyhd8ed1ab_1    conda-forge
cycler                    0.12.1             pyhd8ed1ab_1    conda-forge
dash                      2.18.2             pyhd8ed1ab_2    conda-forge
dash-bootstrap-components 1.7.1                    pypi_0    pypi
dash-core-components      2.0.0                    pypi_0    pypi
dash-html-components      2.0.0                    pypi_0    pypi
dash-mantine-components   1.0.0                    pypi_0    pypi
dash-table                5.0.0                    pypi_0    pypi
dash-vtk                  0.0.9                    pypi_0    pypi
dearpygui                 2.0.0                    pypi_0    pypi
debugpy                   1.8.13                   pypi_0    pypi
decorator                 5.2.1                    pypi_0    pypi
deepdiff                  8.3.0                    pypi_0    pypi
defusedxml                0.7.1                    pypi_0    pypi
dill                      0.3.9              pyhd8ed1ab_1    conda-forge
docopt                    0.6.2                    pypi_0    pypi
docutils                  0.21.2             pyhd8ed1ab_1    conda-forge
et_xmlfile                2.0.0              pyhd8ed1ab_1    conda-forge
exceptiongroup            1.2.2              pyhd8ed1ab_1    conda-forge
executing                 2.2.0                    pypi_0    pypi
fastjsonschema            2.21.1                   pypi_0    pypi
fatpack                   0.7.8              pyhd8ed1ab_0    conda-forge
fftw                      3.3.10          mpi_openmpi_h260600c_10    conda-forge
flask                     3.1.0              pyhd8ed1ab_1    conda-forge
fonttools                 4.56.0          py312h998013c_0    conda-forge
fqdn                      1.5.1                    pypi_0    pypi
freetype                  2.13.3               h1d14073_0    conda-forge
h11                       0.14.0                   pypi_0    pypi
h2                        4.2.0              pyhd8ed1ab_0    conda-forge
hdf5                      1.14.3          mpi_openmpi_h91eef8b_9    conda-forge
hpack                     4.1.0              pyhd8ed1ab_0    conda-forge
httpcore                  1.0.7                    pypi_0    pypi
httpx                     0.28.1                   pypi_0    pypi
hyperframe                6.1.0              pyhd8ed1ab_0    conda-forge
hypre                     2.32.0          mpi_openmpi_h19a00c9_1    conda-forge
idna                      3.10               pyhd8ed1ab_1    conda-forge
imagesize                 1.4.1              pyhd8ed1ab_0    conda-forge
importlib-metadata        8.6.1              pyha770c72_0    conda-forge
importlib_resources       6.5.2              pyhd8ed1ab_0    conda-forge
iniconfig                 2.0.0              pyhd8ed1ab_1    conda-forge
ipopt                     3.14.17              h3e4dc2c_0    conda-forge
ipykernel                 6.29.5                   pypi_0    pypi
ipython                   9.0.2                    pypi_0    pypi
ipython-pygments-lexers   1.1.1                    pypi_0    pypi
ipywidgets                8.1.5                    pypi_0    pypi
isoduration               20.11.0                  pypi_0    pypi
itsdangerous              2.2.0              pyhd8ed1ab_1    conda-forge
jedi                      0.19.2                   pypi_0    pypi
jenn                      1.0.8              pyhd8ed1ab_1    conda-forge
jinja2                    3.1.6              pyhd8ed1ab_0    conda-forge
joblib                    1.4.2              pyhd8ed1ab_1    conda-forge
json5                     0.10.0                   pypi_0    pypi
jsonmerge                 1.9.2              pyhd8ed1ab_2    conda-forge
jsonpointer               3.0.0           py312h81bd7bf_1    conda-forge
jsonschema                4.23.0             pyhd8ed1ab_1    conda-forge
jsonschema-specifications 2024.10.1          pyhd8ed1ab_1    conda-forge
jupyter                   1.1.1                    pypi_0    pypi
jupyter-client            8.6.3                    pypi_0    pypi
jupyter-console           6.6.3                    pypi_0    pypi
jupyter-core              5.7.2                    pypi_0    pypi
jupyter-events            0.12.0                   pypi_0    pypi
jupyter-lsp               2.2.5                    pypi_0    pypi
jupyter-server            2.15.0                   pypi_0    pypi
jupyter-server-terminals  0.5.3                    pypi_0    pypi
jupyterlab                4.3.6                    pypi_0    pypi
jupyterlab-pygments       0.3.0                    pypi_0    pypi
jupyterlab-server         2.27.3                   pypi_0    pypi
jupyterlab-widgets        3.0.13                   pypi_0    pypi
kiwisolver                1.4.8           py312h2c4a281_0    conda-forge
krb5                      1.21.3               h237132a_0    conda-forge
lcms2                     2.17                 h7eeda09_0    conda-forge
lerc                      4.0.0                h9a09cb3_0    conda-forge
libaec                    1.1.3                hebf3989_0    conda-forge
libamd                    3.3.3           h60d6dc3_7100101    conda-forge
libblas                   3.9.0           31_h10e41b3_openblas    conda-forge
libbrotlicommon           1.1.0                hd74edd7_2    conda-forge
libbrotlidec              1.1.0                hd74edd7_2    conda-forge
libbrotlienc              1.1.0                hd74edd7_2    conda-forge
libbtf                    2.3.2           h19f808f_7100101    conda-forge
libcamd                   3.3.3           h19f808f_7100101    conda-forge
libcblas                  3.9.0           31_hb3479ef_openblas    conda-forge
libccolamd                3.3.4           h19f808f_7100101    conda-forge
libcholmod                5.3.1           h015585b_7100101    conda-forge
libcolamd                 3.3.4           h19f808f_7100101    conda-forge
libcurl                   8.12.1               h73640d1_0    conda-forge
libcxx                    19.1.7               ha82da77_0    conda-forge
libdeflate                1.23                 hec38601_0    conda-forge
libedit                   3.1.20250104    pl5321hafb1f1b_0    conda-forge
libev                     4.33                 h93a5062_2    conda-forge
libevent                  2.1.12               h2757513_1    conda-forge
libexpat                  2.6.4                h286801f_0    conda-forge
libfabric                 2.0.0                hce30654_1    conda-forge
libfabric1                2.0.0                h5505292_1    conda-forge
libffi                    3.4.2                h3422bc3_5    conda-forge
libgfortran               5.0.0           13_2_0_hd922786_3    conda-forge
libgfortran5              13.2.0               hf226fd6_3    conda-forge
libhwloc                  2.11.2          default_hbce5d74_1001    conda-forge
libiconv                  1.18                 hfe07756_1    conda-forge
libjpeg-turbo             3.0.0                hb547adb_1    conda-forge
libklu                    2.3.5           hfc2a0af_7100101    conda-forge
liblapack                 3.9.0           31_hc9a63f6_openblas    conda-forge
liblzma                   5.6.4                h39f12f2_0    conda-forge
libnghttp2                1.64.0               h6d7220d_0    conda-forge
libopenblas               0.3.29          openmp_hf332438_0    conda-forge
libosqp                   0.6.3                h5833ebf_1    conda-forge
libpmix                   5.0.6                h6500a5a_0    conda-forge
libpng                    1.6.47               h3783ad8_0    conda-forge
libptscotch               7.0.6                hcb9bb0f_1    conda-forge
libqdldl                  0.1.7                hb7217d7_0    conda-forge
libscotch                 7.0.6                he56f69b_1    conda-forge
libsodium                 1.0.20               h99b78c6_0    conda-forge
libspqr                   4.3.4           h72b1b63_7100101    conda-forge
libsqlite                 3.49.1               h3f77e49_1    conda-forge
libssh2                   1.11.1               h9cc3647_0    conda-forge
libsuitesparseconfig      7.10.1          h4a8fc20_7100101    conda-forge
libtiff                   4.7.0                h551f018_3    conda-forge
libumfpack                6.3.5           hafcb94f_7100101    conda-forge
libwebp-base              1.5.0                h2471fea_0    conda-forge
libxcb                    1.17.0               hdb1d25a_0    conda-forge
libxml2                   2.13.6               hce475f1_0    conda-forge
libzlib                   1.3.1                h8359307_2    conda-forge
llvm-openmp               19.1.7               hdb05f8b_0    conda-forge
markupsafe                3.0.2           py312h998013c_1    conda-forge
marmot-agents             0.2.5                    pypi_0    pypi
mat4py                    0.6.0              pyhd8ed1ab_0    conda-forge
matplotlib                3.10.1          py312h1f38498_0    conda-forge
matplotlib-base           3.10.1          py312hdbc7e53_0    conda-forge
matplotlib-inline         0.1.7                    pypi_0    pypi
mdolab-baseclasses        1.8.1              pyhd8ed1ab_0    conda-forge
meson                     1.7.0                    pypi_0    pypi
metis                     5.1.0             h15f6cfe_1007    conda-forge
mistune                   3.1.2                    pypi_0    pypi
moorpy                    1.1.0              pyhd8ed1ab_1    conda-forge
mpi                       1.0                     openmpi    conda-forge
mpi4py                    4.0.3           py312h7e3e288_0    conda-forge
mumps-include             5.7.3                hce30654_8    conda-forge
mumps-mpi                 5.7.3                h9351703_8    conda-forge
mumps-seq                 5.7.3                hc9708e0_8    conda-forge
munkres                   1.1.4              pyh9f0ad1d_0    conda-forge
narwhals                  1.30.0             pyhd8ed1ab_0    conda-forge
nbclient                  0.10.2                   pypi_0    pypi
nbconvert                 7.16.6                   pypi_0    pypi
nbformat                  5.10.4                   pypi_0    pypi
ncurses                   6.5                  h5e97a16_3    conda-forge
nest-asyncio              1.6.0              pyhd8ed1ab_1    conda-forge
networkx                  3.4.2              pyh267e887_2    conda-forge
ninja                     1.11.1.3                 pypi_0    pypi
nlopt                     2.10.0          py312h5f881f4_0    conda-forge
notebook                  7.3.3                    pypi_0    pypi
notebook-shim             0.2.4                    pypi_0    pypi
numexpr                   2.10.2          py312hbbbb429_0    conda-forge
numpy                     1.26.4          py312h8442bc7_0    conda-forge
numpydoc                  1.8.0              pyhd8ed1ab_1    conda-forge
openfast                  4.0.2                h2c1d878_2    conda-forge
openfast-io               4.0.2                    pypi_0    pypi
openjpeg                  2.5.3                h8a3d83b_0    conda-forge
openmdao                  3.37.0             pyh29332c3_0    conda-forge
openmpi                   5.0.7              h31ce4ef_100    conda-forge
openpyxl                  3.1.5           py312hf6e0af7_1    conda-forge
openraft                  1.3.2              pyhd8ed1ab_0    conda-forge
openssl                   3.4.1                h81ee809_0    conda-forge
orderly-set               5.3.0                    pypi_0    pypi
orjson                    3.10.15         py312hcd83bfe_0    conda-forge
osqp                      0.6.7.post3     py312h72a45a2_1    conda-forge
overrides                 7.7.0                    pypi_0    pypi
packaging                 24.2               pyhd8ed1ab_2    conda-forge
pandas                    2.2.3           py312hcd31e36_1    conda-forge
pandocfilters             1.5.1                    pypi_0    pypi
parmetis                  4.0.3             he8458ae_1007    conda-forge
parso                     0.8.4                    pypi_0    pypi
patsy                     1.0.1              pyhd8ed1ab_1    conda-forge
pcrunch                   2.0.1              pyhd8ed1ab_0    conda-forge
petsc                     3.22.3          real_h824c086_103    conda-forge
petsc4py                  3.22.2          np20py312h97bb1b2_1    conda-forge
pexpect                   4.9.0                    pypi_0    pypi
pillow                    11.1.0          py312h50aef2c_0    conda-forge
pip                       25.0.1             pyh8b19718_0    conda-forge
pkgutil-resolve-name      1.3.10             pyhd8ed1ab_2    conda-forge
platformdirs              4.3.6                    pypi_0    pypi
plotly                    6.0.0              pyhd8ed1ab_0    conda-forge
pluggy                    1.5.0              pyhd8ed1ab_1    conda-forge
pooch                     1.8.2                    pypi_0    pypi
prometheus-client         0.21.1                   pypi_0    pypi
prompt-toolkit            3.0.50                   pypi_0    pypi
psutil                    7.0.0                    pypi_0    pypi
pthread-stubs             0.4               hd74edd7_1002    conda-forge
ptyprocess                0.7.0                    pypi_0    pypi
pure-eval                 0.2.3                    pypi_0    pypi
pycparser                 2.22               pyh29332c3_1    conda-forge
pydoe3                    1.0.4              pyhd8ed1ab_0    conda-forge
pygments                  2.19.1             pyhd8ed1ab_0    conda-forge
pyhams                    1.3.0           py312h246f3ab_3    conda-forge
pyoptsparse               2.13.0          py312hd5b660f_0    conda-forge
pyparsing                 3.2.1              pyhd8ed1ab_0    conda-forge
pysocks                   1.7.1              pyha55dd90_7    conda-forge
pytest                    8.3.5              pyhd8ed1ab_0    conda-forge
python                    3.12.9          hc22306f_1_cpython    conda-forge
python-benedict           0.33.1                   pypi_0    pypi
python-dateutil           2.9.0.post0        pyhff2d567_1    conda-forge
python-fsutil             0.15.0             pyhff2d567_0    conda-forge
python-json-logger        3.3.0                    pypi_0    pypi
python-slugify            8.0.4              pyhd8ed1ab_1    conda-forge
python-tzdata             2025.1             pyhd8ed1ab_0    conda-forge
python_abi                3.12                    5_cp312    conda-forge
pytz                      2024.1             pyhd8ed1ab_0    conda-forge
pyvista                   0.44.2                   pypi_0    pypi
pyyaml                    6.0.2           py312h998013c_2    conda-forge
pyzmq                     26.3.0          py312hf4875e0_0    conda-forge
qdldl-python              0.1.7.post5     py312hcb1e3ce_0    conda-forge
qhull                     2020.2               h420ef59_5    conda-forge
readline                  8.2                  h1d1bf99_2    conda-forge
referencing               0.36.2             pyh29332c3_0    conda-forge
requests                  2.32.3             pyhd8ed1ab_1    conda-forge
retrying                  1.3.4              pyhd8ed1ab_0    conda-forge
rfc3339-validator         0.1.4                    pypi_0    pypi
rfc3986-validator         0.1.1                    pypi_0    pypi
roman-numerals-py         3.1.0              pyhd8ed1ab_0    conda-forge
rosco                     2.9.7           py312h66c0429_0    conda-forge
rpds-py                   0.23.1          py312hd60eec9_0    conda-forge
ruamel.yaml               0.18.10         py312hea69d52_0    conda-forge
ruamel.yaml.clib          0.2.8           py312h0bf5046_1    conda-forge
scalapack                 2.2.0                ha79e478_4    conda-forge
scikit-learn              1.6.1           py312h39203ce_0    conda-forge
scipy                     1.15.2          py312h99a188d_0    conda-forge
scooby                    0.10.0                   pypi_0    pypi
send2trash                1.8.3                    pypi_0    pypi
setuptools                75.8.2             pyhff2d567_0    conda-forge
simpy                     4.1.1              pyhd8ed1ab_1    conda-forge
six                       1.17.0             pyhd8ed1ab_0    conda-forge
slycot                    0.6.0           py312h42037e1_2    conda-forge
smt                       2.7.0           py312h02baea5_0    conda-forge
sniffio                   1.3.1                    pypi_0    pypi
snowballstemmer           2.2.0              pyhd8ed1ab_0    conda-forge
sortedcontainers          2.4.0              pyhd8ed1ab_1    conda-forge
soupsieve                 2.6                      pypi_0    pypi
sphinx                    8.2.3              pyhd8ed1ab_0    conda-forge
sphinxcontrib-applehelp   2.0.0              pyhd8ed1ab_1    conda-forge
sphinxcontrib-devhelp     2.0.0              pyhd8ed1ab_1    conda-forge
sphinxcontrib-htmlhelp    2.1.0              pyhd8ed1ab_1    conda-forge
sphinxcontrib-jsmath      1.0.1              pyhd8ed1ab_1    conda-forge
sphinxcontrib-qthelp      2.0.0              pyhd8ed1ab_1    conda-forge
sphinxcontrib-serializinghtml 1.1.10             pyhd8ed1ab_1    conda-forge
sqlitedict                2.1.0              pyhd8ed1ab_1    conda-forge
stack-data                0.6.3                    pypi_0    pypi
statsmodels               0.14.4          py312h755e627_0    conda-forge
superlu                   7.0.0                h742a510_1    conda-forge
superlu_dist              9.1.0                h6ba37e7_0    conda-forge
tabulate                  0.9.0              pyhd8ed1ab_2    conda-forge
terminado                 0.18.1                   pypi_0    pypi
text-unidecode            1.3                pyhd8ed1ab_2    conda-forge
threadpoolctl             3.6.0              pyhecae5ae_0    conda-forge
tinycss2                  1.4.0                    pypi_0    pypi
tk                        8.6.13               h5083fa2_1    conda-forge
tomli                     2.2.1              pyhd8ed1ab_1    conda-forge
tornado                   6.4.2           py312hea69d52_0    conda-forge
traitlets                 5.14.3                   pypi_0    pypi
treon                     0.1.4                    pypi_0    pypi
types-python-dateutil     2.9.0.20241206           pypi_0    pypi
typing_extensions         4.12.2             pyha770c72_1    conda-forge
tzdata                    2025a                h78e105d_0    conda-forge
unicodedata2              16.0.0          py312hea69d52_0    conda-forge
uri-template              1.3.0                    pypi_0    pypi
urllib3                   2.3.0              pyhd8ed1ab_0    conda-forge
vtk                       9.3.1                    pypi_0    pypi
wcwidth                   0.2.13                   pypi_0    pypi
webcolors                 24.11.1                  pypi_0    pypi
webencodings              0.5.1                    pypi_0    pypi
websocket-client          1.8.0                    pypi_0    pypi
weis                      1.4                      pypi_0    pypi
werkzeug                  3.1.3              pyhd8ed1ab_1    conda-forge
wheel                     0.45.1             pyhd8ed1ab_1    conda-forge
widgetsnbextension        4.0.13                   pypi_0    pypi
wisdem                    3.20.0          nompi_hedc07dd_100    conda-forge
xorg-libxau               1.0.12               h5505292_0    conda-forge
xorg-libxdmcp             1.1.5                hd74edd7_0    conda-forge
yaml                      0.2.5                h3422bc3_2    conda-forge
zeromq                    4.3.5                hc1bb282_7    conda-forge
zipp                      3.21.0             pyhd8ed1ab_1    conda-forge
zstandard                 0.23.0          py312hea69d52_1    conda-forge
zstd                      1.5.7                h6491c7d_1    conda-forge
@yonghoonlee
Copy link
Contributor Author

Besides the issue raised above, the following change needs to be made:

tuning_yaml: ../01_aeroelasticse/OpenFAST_models/IEA-15-240-RWT/IEA-15-240-RWT-UMaineSemi/IEA15MW-UMaineSemi.yaml

-    tuning_yaml: ../01_aeroelasticse/OpenFAST_models/IEA-15-240-RWT/IEA-15-240-RWT-UMaineSemi/IEA15MW-UMaineSemi.yaml
+    tuning_yaml: ../01_aeroelasticse/OpenFAST_models/IEA-15-240-RWT/IEA-15-240-RWT-UMaineSemi/IEA-15-240-RWT-UMaineSemi_ROSCO.yaml

@yonghoonlee
Copy link
Contributor Author

The issue is not only appearing with the RAFT, but also appearing with the OpenFAST cases.
Please refer to another case I have tried, given below:

cd examples/06_IEA-15-240-RWT/
python weis_driver_umaine_semi.py
Using weis.aeroelasticse in rosco.toolbox...
Found existing potential model: ../01_aeroelasticse/OpenFAST_models/IEA-15-240-RWT/IEA-15-240-RWT-UMaineSemi/HydroData/IEA-15-240-RWT-UMaineSemi
    - Trying to use this instead of running PyHAMS.
Traceback (most recent call last):
  File "/Users/yhlee/work/WEIS/examples/06_IEA-15-240-RWT/weis_driver_umaine_semi.py", line 10, in <module>
    wt_opt, modeling_options, opt_options = weis_main(fname_wt_input,
                                            ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/yhlee/work/WEIS/weis/main.py", line 48, in weis_main
    wt_opt, modeling_options, opt_options = run_weis(fname_wt_input, 
                                            ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/yhlee/work/WEIS/weis/glue_code/runWEIS.py", line 121, in run_weis
    wt_opt.setup(derivatives=False)
  File "/Users/yhlee/miniforge3/envs/weis-env/lib/python3.12/site-packages/openmdao/core/problem.py", line 1064, in setup
    self._check_collected_errors()
  File "/Users/yhlee/miniforge3/envs/weis-env/lib/python3.12/site-packages/openmdao/core/problem.py", line 636, in _check_collected_errors
    raise RuntimeError('\n'.join(final_msg))
RuntimeError: 
Collected errors for problem 'weis_driver_umaine_semi':
   <model> <class WindPark>: Attempted to connect from 'blade.high_level_blade_props.rotor_radius' to 'sse_tune.Rtip', but 'blade.high_level_blade_props.rotor_radius' doesn't exist. Perhaps you meant to connect to one of the following outputs: ['blade.high_level_blade_props.rotor_solidity', 'blade.high_level_blade_props.rotor_diameter', 'blade.high_level_blade_props.r_blade'].
   <model> <class WindPark>: Attempted to connect from 'blade.high_level_blade_props.rotor_radius' to 'sse_tune.tune_rosco.R', but 'blade.high_level_blade_props.rotor_radius' doesn't exist. Perhaps you meant to connect to one of the following outputs: ['blade.high_level_blade_props.rotor_solidity', 'blade.high_level_blade_props.rotor_diameter', 'blade.high_level_blade_props.r_blade'].
   <model> <class WindPark>: Attempted to connect from 'blade.high_level_blade_props.rotor_radius' to 'aeroelastic.Rtip', but 'blade.high_level_blade_props.rotor_radius' doesn't exist. Perhaps you meant to connect to one of the following outputs: ['blade.high_level_blade_props.rotor_solidity', 'blade.high_level_blade_props.rotor_diameter', 'blade.high_level_blade_props.r_blade'].
   <model> <class WindPark>: Attempted to connect from 'blade.high_level_blade_props.rotor_radius' to 'tcons_post.Rtip', but 'blade.high_level_blade_props.rotor_radius' doesn't exist. Perhaps you meant to connect to one of the following outputs: ['blade.high_level_blade_props.rotor_solidity', 'blade.high_level_blade_props.rotor_diameter', 'blade.high_level_blade_props.r_blade'].

@yonghoonlee yonghoonlee changed the title RAFT example not working - OpenMDAO variable connections broken OpenMDAO variable connections broken Mar 15, 2025
@yonghoonlee
Copy link
Contributor Author

I also tried with the main branch (v1.5.1 after pCrunch pinning commit, with commit hash 0da256fe7b02de10cf0726830b3f1da26c087c8f) and this version has the same issue.

cd examples/06_IEA-15-240-RWT
python weis_driver_umaine_semi.py
Using weis.aeroelasticse in rosco.toolbox...
Found existing potential model: ../01_aeroelasticse/OpenFAST_models/IEA-15-240-RWT/IEA-15-240-RWT-UMaineSemi/HydroData/IEA-15-240-RWT-UMaineSemi
    - Trying to use this instead of running PyHAMS.
Traceback (most recent call last):
  File "/Users/yhlee/work/WEIS-0da256f/examples/06_IEA-15-240-RWT/weis_driver_umaine_semi.py", line 10, in <module>
    wt_opt, modeling_options, opt_options = weis_main(fname_wt_input,
                                            ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/yhlee/work/WEIS-0da256f/weis/main.py", line 48, in weis_main
    wt_opt, modeling_options, opt_options = run_weis(fname_wt_input, 
                                            ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/yhlee/work/WEIS-0da256f/weis/glue_code/runWEIS.py", line 121, in run_weis
    wt_opt.setup(derivatives=False)
  File "/Users/yhlee/miniforge3/envs/weis-0da256f/lib/python3.12/site-packages/openmdao/core/problem.py", line 1064, in setup
    self._check_collected_errors()
  File "/Users/yhlee/miniforge3/envs/weis-0da256f/lib/python3.12/site-packages/openmdao/core/problem.py", line 636, in _check_collected_errors
    raise RuntimeError('\n'.join(final_msg))
RuntimeError: 
Collected errors for problem 'weis_driver_umaine_semi':
   <model> <class WindPark>: Attempted to connect from 'blade.high_level_blade_props.rotor_radius' to 'sse_tune.Rtip', but 'blade.high_level_blade_props.rotor_radius' doesn't exist. Perhaps you meant to connect to one of the following outputs: ['blade.high_level_blade_props.rotor_solidity', 'blade.high_level_blade_props.rotor_diameter', 'blade.high_level_blade_props.r_blade'].
   <model> <class WindPark>: Attempted to connect from 'blade.high_level_blade_props.rotor_radius' to 'sse_tune.tune_rosco.R', but 'blade.high_level_blade_props.rotor_radius' doesn't exist. Perhaps you meant to connect to one of the following outputs: ['blade.high_level_blade_props.rotor_solidity', 'blade.high_level_blade_props.rotor_diameter', 'blade.high_level_blade_props.r_blade'].
   <model> <class WindPark>: Attempted to connect from 'blade.high_level_blade_props.rotor_radius' to 'aeroelastic.Rtip', but 'blade.high_level_blade_props.rotor_radius' doesn't exist. Perhaps you meant to connect to one of the following outputs: ['blade.high_level_blade_props.rotor_solidity', 'blade.high_level_blade_props.rotor_diameter', 'blade.high_level_blade_props.r_blade'].
   <model> <class WindPark>: Attempted to connect from 'blade.high_level_blade_props.rotor_radius' to 'tcons_post.Rtip', but 'blade.high_level_blade_props.rotor_radius' doesn't exist. Perhaps you meant to connect to one of the following outputs: ['blade.high_level_blade_props.rotor_solidity', 'blade.high_level_blade_props.rotor_diameter', 'blade.high_level_blade_props.r_blade'].

@gbarter
Copy link
Member

gbarter commented Mar 15, 2025

@yonghoonlee - Can you please double check that your WISDEM and WEIS files are synced with the latest versions?

@yonghoonlee
Copy link
Contributor Author

@gbarter I created new environments every time I install them, so I think the WISDEM is installed as the environment.yml specifies. The WISDEM version is 3.20.0, which seems to be the latest release version, and installed through conda-forge repository.
Also, the WEIS code was cloned directly from the https://github.com/WISDEM/WEIS.git, so the WEIS version is the latest one. I tried both the develop and main branches. They behave the same way.

@gbarter
Copy link
Member

gbarter commented Mar 19, 2025

Sorry for the delay. I can confirm I can recreate the error.

@ptrbortolotti - Most of the broken connections I think arose when you resolved the ambiguity around rotor diameter. There are 4-5 places in the WEIS glue code that need to be fixed (not sure why the tests didn't pick this up). All but one of them should clearly be changed from rotor_radius (which no longer exists) to Rtip. I cannot tell about this line though:
https://github.com/WISDEM/WEIS/blob/main/weis/glue_code/glue_code.py#L161

What do you think?

@gbarter
Copy link
Member

gbarter commented Mar 19, 2025

@ptrbortolotti - Sorry, it looks like you already resolved this issue at least in your precomp2beamdyn branch. I can either push these specific changes in a new branch or you can merge your branch into develop. I will see if I can recreate the other issue that is holding up your branch.

@gbarter
Copy link
Member

gbarter commented Mar 19, 2025

@yonghoonlee - Pietro pointed out that we just needed to better lock with WISDEM version with the various WEIS branches. I have updated the environment.yml in the develop and main branches to WISDEM v3.19. All you need to do is downgrade via conda install wisdem==3.19.0

@yonghoonlee
Copy link
Contributor Author

@gbarter Thank you for resolving the issue. I will downgrade and test it. I believe it should work, so I will close the issue. Thank you for your help.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants