Dear everyone,
I now want to carry out a combination of synthetic fibers and anchor chains for mooring, as synthetic fibers are very nonlinear, but MoorDyn can only compute linear chains, and I learned that MoorDynv2 can compute nonlinearities and Wave kinematics, and Bending stiffness. so I would like to upgrade my MooeDyn to the V2 version.
Normally I modify MoorDyn’s inputfile to modify the mooring parameters, but I looked at https://moordyn.readthedocs.io/en/latest/theory.html and it’s not too clear how MoorDynv2 is coupled to openfast, is it still necessary to MoorDynDriver? , and at the same time is it required to be coupled with Python to work?
I hope to get help from everyone, thank you very much!
Best regards，
Dear @Yushun.Fu,
As of OpenFAST v3.3 and newer, OpenFAST is coupled to MoorDyn v2 rather than older versions of MoorDyn.
Best regards,
Dear Jason，
Thank you for your reply, as stated above, if I want to use synthetic fibers as my mooring lines, in order to account for nonlinearities, please is there an example of the file content for the alternative number, I’d like to see what the content and format of the file looks like.
I didn’t understand why there is also a column about time, do Stiffness, Internal damping, and Bent stiffness change over time, and is nonlinearity expressed through time changes?
Best regards，
Dear @Matthew.Hall ，
I want to try to simulate IEA15MW using the moordynv2 version in openfast, and I’m currently experiencing three problems.
The first one is the problem that I want synthetic fibers as my mooring lines, so I need to take into account its nonlinearity, which is new in v2. But I’m not quite sure what a time column and a data column stand for, is there a relevant example for me to learn from?
The second question is I see that v2 supports Wave Kinematics and The seabed friction[Input Files — MoorDyn 2.1.0 documentation]）, why does it show as uninterpretable in the initialization in fast, is there a problem with my formatting?
The third question is I see that v2 version can consider Water Kinematics, in this input file waveelev.dat here can I use the Wave1Elev output in hydrodyn?
By the way, what is MoorDynDriver_x64 used for, I’m a little bit confused
Looking forward to your reply！
Best regards，
Dear @Matthew.Hall,
I’m working on a floating offshore wind turbine with semisubmersible platform using OpenFAST (namely, test 25, “5MW_OC4Semi_WSt_WavesWN”). I’m trying to model the mooring dynamics nonlinearly by using MoorDyn model (Fortran). As far as I know, MoorDyn model is based on a linear relationship between the tension and strains of mooring lines, represented by module of elasticity (E). However, I read that MoorDyn v2 can handle a nonlinear relationship between the tension and the strains of mooring lines. This paper : https://www.nrel.gov/docs/fy23osti/83342.pdf, discusses how to extend the capabilities of MoorDyn to handle this nonlinear relationship by looking into a userdefined lookup table.
My concern is about whether there’s a regression test in OpenFAST that incorporates MoorDyn v2, particularly considering its capability to handle the nonlinear relationship of mooring lines in MoorDyn.
Any help is appreciated.
Regards,
@Asma.Omar there is not a regression test that incorporates the nonlinear lookup table in MoorDyn, however all the regression tests are uptodate with MoorDyn v2. The paper you reference does document how MoorDyn incorporate nonlinear line behavior. For the specifics of how to implement that in an input file, check out this section of the docs: Input Files — MoorDyn 2.2.2 documentation.
In general if you want example MoorDyn input files, the testing directory of the MDC repo has a lot of good examples with v2 features (none have nonlinear EA): MoorDyn/tests/Mooring at dev · FloatingArrayDesign/MoorDyn · GitHub
Heres an example of a v2 input file using nonlinear stressstrain relationship:
MD input:
MoorDyn Input File
 LINE TYPES 
Name Diam MassDen EA BA/zeta EI Cd Ca CdAx CaAx
() (m) (kg/m) (N) (Ns/) () () () () ()
main 0.333 685.00 strain.txt 1 0 1 0.27 1 0.20
 ROD TYPES 
TypeName Diam Mass/m Cd Ca CdEnd CaEnd
(name) (m) (kg/m) () () () ()
main 0.333 3.27E+09 1 0.27 1 0.20
 RODS 
ID RodType Attachment Xa Ya Za Xb Yb Zb NumSegs RodOutputs
(#) (name) (#/key) (m) (m) (m) (m) (m) (m) () ()
1 main Fixed 0 0 15 0 0 10 3 p
 POINTS 
Node Type X Y Z M V CdA CA
() () (m) (m) (m) (kg) (m^3) (m^2) ()
1 Fixed 800.0 0.0 215.0 0 0 0 0
2 Fixed 800.0 0.0 215.0 0 0 0 0
 LINES 
Line LineType NodeAnch NodeFair UnstrLen NumSegs Flags/Outputs
() () () () (m) () ()
1 main 1 R1a 850.00 40 p
2 main 2 R1a 850.00 40 p
 SOLVER OPTIONS 
2 writeLog
215 WtrDpth
0.001 dtM  time step to use in mooring integration (s)
3.0e6 kBot  bottom stiffness (Pa/m)
3.0e5 cBot  bottom damping (Pas/m)
1.0 dtIC  time interval for analyzing convergence during IC gen (s)
200.0 TmaxIC  max time for ic gen (s)
4.0 CdScaleIC  factor by which to scale drag coefficients during dynamic relaxation ()
0.001 threshIC  threshold for IC convergence ()
0.1 dtOut
 OUTPUTS 
FAIRTEN1
Line1N20Ten
 need this line 
strain.txt:
Polyester
Strain Tension
() (N)
0.0 0.0
100 1e8
Dear @Ryan.Davies,
Thank you for your response. I have a few questions.
1 Based on my understanding, I can not use the example of MoorDyn v2 with nonlinear lookup table that you have included in your response as my MoorDyn input file for test “5MW_OC4Semi_WSt_WavesWN”, because the MoorDyn input file has to be compatible with the specifications of the test I am using, is this correct?
2 Those examples of MoorDyn v2 you were referring to, can they be used with any of OpenFAST’s regression tests?
3 Based on your response: “all the regression tests are uptodate with MoorDyn v2”, the MoorDyn input file I’m using with test “5MW_OC4Semi_WSt_WavesWN” is then v2?
Your help is appreciated, Ryan.
Regards,
Hi @Asma.Omar,
 Correct, if you wanted to use a nonlinear lookup table in the 5MW_OC4Semi_WSt_WavesWN case you mentioned then you would format the lookup table it like the one I shared above and then replace the value of EA in the MoorDyn input file with the file name (like it is done in the example). The lookup table text file needs to be in the same directory as the executable calling MoorDyn, or you can provide the file path as the EA value. The example I provided would work with the MoorDyn driver, using a standard driver file. The driver allows MoorDyn to be run on it’s own, separate from OpenFAST. You can find more info about it in the MoorDyn documentation I linked above.

No, the examples I mentioned are just examples of what MoorDyn input files looks like. The regression tests are each a unique configuration, and so the mooring systems described in the MoorDyn input file wont necessarily swap between them.

Yes. MoorDyn v1 is deprecated and not used in any of the most recent versions of OpenFAST, WECSim, or other codes. MoorDyn v1 still is available as a C++ code, but all users should use v2 unless they have a specific reason not to.