-
Notifications
You must be signed in to change notification settings - Fork 463
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
Cleanup HydroDyn and SeaState code #1864
Cleanup HydroDyn and SeaState code #1864
Conversation
- removed PointsToSeaState (still need to fix some more pointers, though) - removed InitInp PtfmLocationX and Y from HD since it's used in SeaState - cleaned up some VS projects related to SeaSt/HD
This is already stored in the WaveField type, so doesn't need extra copies.
also added subroutines to add 1st and 2nd order arrays without copying all the error checks
These are now stored in WaveField data since the modules that need them already access the rest of the WaveField data. Also, all of the SeaSt InitOut data that are sent to HD Init are now done in one place instead of two (originally there was some issue with pointers in the SeaSt InitOut type, but that is not a concern any more).
- also removed extra pointer for WaveTime in SS Excitation module - cleaned up some text handling in SS Excitation (some incorrect routine names in error message and a lot of extra repeated string manipulation) - Do we have a test for SS-Excitation?
- `LastIndWave` in HD - `DT` in SeaSt
@luwang00, can you also review? |
As I was updating some of these variables, I question whether some of the tests involving Also, I think someone should double check where See comments with |
- removed a bunch of `bjj` comments in the code - simplified some of the checks based on WaveMod (made them easier to read by specifying exactly which models the checks apply to) - updated default z depth using entered water depth instead of the default water depth - removed override of `Hs` when it's not used - override WvHiCOff and WvLowCOff in the cases where they are not supposed to be used; the code DOES actually use them, so they need to be set to allow all frequencies in the cases where they are not supposed to be used. - put check on valid values of WaveStMod from HydroDyn into SeaState (and removed the conflicting SeaState check)
897d6ee
into
OpenFAST:dev-unstable-pointers
Feature or improvement description
This PR removes duplicate copies of data and pointers of many variables shared between SeaState and HydroDyn. These shared data are now stored in the
WaveField
data type (stored as a SeaState parameter).It also removes duplicated error checks, outdated code (including outdated driver codes for some HydroDyn submodules), and outdated comments. Hopefully these changes will make it easier to read the code, though more updates could be done.
Some particular changes to note:
WtrDpth
has been replaced withEffWtrDpth
in places where it had addedMSL2SWL
to the variable.WtrDpth
is now ALWAYS the value from the input file. This should help remove confusion about whether that variable is being used before or after addingMSL2SWL
.Impacted areas of the software
HydroDyn and SeaState; glue codes that connect the two modules are also modified.
Test results, if applicable
Regression test results have not changed.
Someone should add a test where
MSL2SWL
is non-zero, though. We should also add tests for the new features that have been added recently.