Skip to content

Conversation

@jtgrasb
Copy link
Contributor

@jtgrasb jtgrasb commented Aug 9, 2023

This PR attempts to fix the error with the accelerator modes from Issue #1099. It seems to be an issue with the temp folder used to store the accelerator (MEX) files.

This fix allows the accelerator modes to run without errors. I do not know the intended use-case of the accelerator modes though, so I find it difficult to be sure if they're working as intended.

@jtgrasb jtgrasb added Bug bug in WEC-Sim source, high priority Simulation Class Simulation Class (simulationClass.m) labels Aug 9, 2023
@kmruehl kmruehl self-requested a review August 10, 2023 15:13
@kmruehl kmruehl self-assigned this Aug 10, 2023
@kmruehl
Copy link
Collaborator

kmruehl commented Aug 10, 2023

@jtgrasb I confirmed that this bug-fix works. Thank you so much! I'll merge it into master, then I'll open a new PR to pull master into dev.

@kmruehl kmruehl merged commit b5a5c8b into WEC-Sim:master Aug 10, 2023
kmruehl added a commit that referenced this pull request Aug 10, 2023
* Revert "fix non-linear hydro (#910)" (#1016)

This reverts commit 118f156.

* Updating MoorDyn to resolve the MoorDyn crashing MATLAB session. (#1012)

When MoorDyn is used in WEC-Sim design, it is called as an external DLL executable library, and it runs on a separate console.exe under MATLAB's main process, with its separate process-ID(PID) in the windows task manager. The issue is related to the following scenarios on the Windows platform:
1>> if the lines data text file has an error in it.
2>> MoorDyn fails to converge.
3>> MoorDyn is launched, but the model has some other error.
Under such a scenario, MATLAB fails to terminate the MoorDyn Console and hangs instead, and either crash immediately or crashes if we press the close button on the MoorDyn console window. Either way, there seems to be no way the MATLAB session can recover from MoorDyn failure without crashing. It becomes a major issue if we are trying to tune mooring lines and want to try different lines configurations and stiffnesses, etc., to find an optimal mooring system because some configurations will not work, which will keep crashing MATLAB sessions during the test and trial.
The goal is for MoorDyn's failure not to crash the MATLAB session but instead MoorDyn dll execution to close and the MoorDyn console to close. I've found a solution to that.
For scenarios 1 and 2, the following Fix#01 seems to work on the Windows platform. And to cover scenario 3, an additional Fix#02 is needed.
Fix#01
In the MoorDyn block's 'InitFcn' call, making the following suggested changes check for MoorDyn Initialization failure and terminates the MoorDyn.dll console without crashing the MATLAB Session.
Fix#02
Suppose the MoorDyn console has been launched, but there is an error in the Simulink model. In that case, MATLAB throws an error and terminates the Simulink execution without terminating the MoorDyn console window. A try-catch statement in the wecsim file can address this issue. If a Simulink model error occurs, we can print the error and terminate the MoorDyn Console process.

* Update docs on master (#1031)

* updates_docs_on_master

* incorporating_kelleys_minor_edits

* save mooring library to R2020b

* Add missing bibtex file

* Use master branch of matlabdomain

Fixes function parsing error

* Fix DD PTO Output order (#1095)

* resolves issue #1090 readAQWA bug (#1096)

* resolving failed tests

* Set 'CacheFolder' to '' (#1100)

---------

Co-authored-by: dforbush2 <dforbus@sandia.gov>
Co-authored-by: Dr. Ali Haider (Alix) <71473429+AlixHaider@users.noreply.github.com>
Co-authored-by: Sal <84348506+salhus@users.noreply.github.com>
Co-authored-by: akeeste <akeeste@sandia.gov>
Co-authored-by: jtgrasb <87095491+jtgrasb@users.noreply.github.com>
Co-authored-by: Mathew Topper <damm_horse@yahoo.co.uk>
Co-authored-by: Salman Husain <shusain@nrel.gov>
@jtgrasb jtgrasb deleted the Fix-accel_mode branch October 18, 2023 11:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Bug bug in WEC-Sim source, high priority Simulation Class Simulation Class (simulationClass.m)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants