Skip to content

Conversation

@jtgrasb
Copy link
Contributor

@jtgrasb jtgrasb commented Aug 7, 2023

Output order of direct drive PTO is off and leads to mix-up between electrical power and velocity.

Note: this is also likely the cause of an old issue: #1033 .

@jtgrasb jtgrasb added the Bug bug in WEC-Sim source, high priority label Aug 7, 2023
@jtgrasb jtgrasb requested a review from jleonqu August 7, 2023 15:52
Copy link
Contributor

@jleonqu jleonqu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for catching this bug @jtgrasb ! The changes look good to me.

@kmruehl kmruehl added the PTO-Sim PTO-Sim (ptoSimClass.m) label Aug 9, 2023
@kmruehl kmruehl merged commit 41a8efc into WEC-Sim:master Aug 9, 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 FixPTOOutput 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 PTO-Sim PTO-Sim (ptoSimClass.m)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants