You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+2-1Lines changed: 2 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,6 +7,7 @@ MoorDyn is a lumped-mass model for simulating the dynamics of mooring systems co
7
7
license.
8
8
9
9
Read the docs here: [moordyn.readthedocs.io](https://moordyn.readthedocs.io/en/latest/)
10
+
Example uses and instructions here: [Examples](https://github.com/FloatingArrayDesign/MoorDyn/tree/dev/example)
10
11
11
12
It accounts for internal axial stiffness and damping forces, weight and buoyancy forces, hydrodynamic forces from Morison's equation (assuming calm water so far), and vertical spring-damper forces from contact with the seabed. MoorDyn's input file format is based on that of [MAP](https://www.nrel.gov/wind/nwtc/map-plus-plus.html). The model supports arbitrary line interconnections, clump weights and floats, different line properties, and six degree of freedom rods and bodies.
12
13
@@ -21,7 +22,7 @@ MoorDyn-C. The dev branch contains new features currently in development. The v1
21
22
22
23
[National Renewable Energy Laboratory (NREL)](https://www.nrel.gov/):
Copy file name to clipboardExpand all lines: docs/drivers.rst
+20-4Lines changed: 20 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,6 +8,10 @@ MoorDyn-F contains a driver script that has a :ref:`separate input file <MDF_dri
8
8
and MoorDyn-F compiles in OpenFAST as moordyn_driver. The MoorDyn-F driver follows all
9
9
the same principles as the examples below. See :ref:`compiling <compiling>` and
10
10
:ref:`inputs <inputs>` sections for instructions on how to use the MoorDyn-F driver.
11
+
Additionally, MoorDyn-F has a c-bindings interface, which allows it (along with the rest
12
+
of OpenFAST) to be coupled with other languages. The MoorDyn-F C interface is set up using
13
+
the MoorDyn V1 approach (single 6 DOF coupling), thus it requires a single coupled body to
14
+
be used in the MoorDyn input file.
11
15
12
16
Currently MoorDyn-C v2 can be used in Python, C/C++, Fortran, and Matlab. You can
13
17
read more on how to install MoorDyn for each different language in
@@ -80,6 +84,8 @@ MoorDyn-C can be compiled as a dynamically linked library with C bindings or a m
80
84
sophisticated API functions and wrappers, making it accessible from a wide range of
81
85
programming languages.
82
86
87
+
Further examples of MoorDyn-C drivers with input files can be found in the `examples folder <https://github.com/FloatingArrayDesign/MoorDyn/tree/dev/example>`_.
88
+
83
89
Python
84
90
^^^^^^
85
91
.. _python_wrapper:
@@ -127,11 +133,9 @@ control:
127
133
for node_id inrange(n_segs+1):
128
134
print(" node {}:".format(node_id))
129
135
pos = moordyn.GetLineNodePos(line, node_id)
130
-
printf(" pos = {}".format(pos))
136
+
print(" pos = {}".format(pos))
131
137
ten = moordyn.GetLineNodeTen(line, node_id)
132
-
printf(" ten = {}".format(ten))
133
-
}
134
-
}
138
+
print(" ten = {}".format(ten))
135
139
136
140
# Alright, time to finish!
137
141
moordyn.Close(system)
@@ -811,3 +815,15 @@ After developing a coupling with MoorDyn, the DualSPHysics team has forked it in
811
815
a seperate version called MoorDyn+, specifically dedicated to the coupling with
812
816
DualSPHysics.
813
817
818
+
OpenFOAM
819
+
^^^^^^^^
820
+
821
+
MoorDyn-C has been coupled with OpenFOAM through the `foamMooring <https://gitlab.com/hfchen20/foamMooring>`_ project.
822
+
823
+
Bladed
824
+
^^^^^^
825
+
826
+
MoorDyn V1 has been coupled with DNV's Bladed software. See the following links for details:
Copy file name to clipboardExpand all lines: docs/inputs.rst
+12-12Lines changed: 12 additions & 12 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -247,10 +247,10 @@ two fixed points located far from where your system is located.
247
247
Most of the sections are set up to contain a table of input information. These
248
248
tables begin with two preset lines that contain the column names and the
249
249
corresponding units. These lines are followed by any number of lines containing
250
-
the entries in that section's table of inputs. # is the general comment chacater. If you are adding notes
250
+
the entries in that section's table of inputs. # is the general comment character. If you are adding notes
251
251
to self after any of the lines, # will prevent MoorDyn from reading them.
252
252
253
-
Examples of input files for MoorDyn-C can be found in the `test directory <https://github.com/FloatingArrayDesign/MoorDyn/tree/master/tests/Mooring>`_ (note that these do not include outputs becasue they are for tests).
253
+
Examples of input files for MoorDyn-C can be found in the `test directory <https://github.com/FloatingArrayDesign/MoorDyn/tree/master/tests/Mooring>`_ (note that these do not include outputs because they are for tests).
254
254
255
255
Examples for MoorDyn-F can be found in the `OpenFAST tests <https://github.com/OpenFAST/r-test/tree/main/modules/moordyn>`_.
256
256
@@ -301,9 +301,9 @@ The columns in order are as follows:
301
301
for end nodes (and thus end half-segments), so if simulating VIV users should ensure to include a higher number of segments.
302
302
Also note that VIV has only been tested with explicit time schemes (specifically rk2 and rk4). There may be unexpected behavior
303
303
if used with an implicit time scheme.
304
-
- dF - OPTIONAL - the cF +- range of non-dimensional frequnecies for the CF VIV synchronization model. If it is not
304
+
- dF - OPTIONAL - the cF +- range of non-dimensional frequencies for the CF VIV synchronization model. If it is not
305
305
provided and VIV is enabled (Cl > 0) then it is default to 0.08 to align with the the theory found :ref:`here <version2>`
306
-
- cF - OPTIONAL - the center of the range of non-dimensional frequnecies for the CF VIV synchronization model. If it is not
306
+
- cF - OPTIONAL - the center of the range of non-dimensional frequencies for the CF VIV synchronization model. If it is not
307
307
provided and VIV is enabled (Cl > 0) then it is default to 0.18 to align with the the theory found :ref:`here <version2>`
308
308
309
309
Note: Non-linear values for the stiffness (EA) are an option in MoorDyn. For this, a file name can be provided instead of a number. This file
@@ -320,10 +320,10 @@ tabulated file with 3 header lines and then a strain column and a tension column
320
320
... ...
321
321
322
322
Note: MoorDyn has the ability to model the viscoelastic properties of synthetic lines in two ways. The first method, from work linked in the
323
-
:ref:`theory section <theory>`, allows a user to specify a bar-seperated constant dynamic and static stiffness. The second method allows the user
323
+
:ref:`theory section <theory>`, allows a user to specify a bar-separated constant dynamic and static stiffness. The second method allows the user
324
324
to provide a constant static stiffness and two terms to determine the dynamic stiffness as a linear function of mean load. The equation is:
325
325
`EA_d = EA_Dc + EA_D_Lm * mean_load` where `EA_D_Lm` is the slope of the load-stiffness curve. Both of these methods allow users to provide static
326
-
and dynamic damping coefficients as values seperated by |. While the static damping can be described as a fraction of cricial, the dyanamic damping
326
+
and dynamic damping coefficients as values separated by |. While the static damping can be described as a fraction of critical, the dynamic damping
327
327
needs to be input as a value. Example inputs are below:
328
328
329
329
.. code-block:: none
@@ -822,7 +822,7 @@ Footnotes:
822
822
- There are a couple additional outputs left over from OpenFAST conventions that don’t follow the
823
823
same format: FairTen and AnchTen. FairTen[n] is the same as Line[n]TenB. For example, the
824
824
fairlead tension of line 1 would be FAIRTEN1 or LINE1TENB.
825
-
- The output list is not case sensistive, however all MoorDyn-F outputs will be printed to the output
825
+
- The output list is not case sensitive, however all MoorDyn-F outputs will be printed to the output
826
826
file in all caps. When searching OpenFAST output channels, users will need to search for MoorDyn
827
827
channels in all caps. Example: the channel fairten1 would appear in the output file as FAIRTEN1.
828
828
@@ -886,11 +886,11 @@ follows the order of the state vector: Body degrees of freedom, rod degrees of f
886
886
degrees of freedom. For coupled pinned bodies and rods the full 6DOF need to be provided, however the rotational
887
887
values will be ignored by by the MoorDyn-F driver (they can be set to zero).
888
888
889
-
When using the MoorDyn driver in OpenFAST mode, the inital positions represents the offsets to the
889
+
When using the MoorDyn driver in OpenFAST mode, the initial positions represents the offsets to the
890
890
global frame. When using OpenFAST mode with the positions set to 0's, then MoorDyn objects will be
891
891
simulated based on the positions defined in the MoorDyn input file. If a non-zero value is provided,
892
-
it will be incorporated into the inital positions of coupled objects. For example, if the following
893
-
inital positions are given:
892
+
it will be incorporated into the initial positions of coupled objects. For example, if the following
893
+
initial positions are given:
894
894
895
895
.. code-block:: none
896
896
@@ -1004,8 +1004,8 @@ data.
1004
1004
0.0 0.9 0.0
1005
1005
150 0.5 0.0
1006
1006
1000 0.25 0.0
1007
-
1500 0.2 0.0
1008
-
5000 0.15 0.0
1007
+
1500 0.2 0.0
1008
+
5000 0.15 0.0
1009
1009
--------------------- need this line ------------------
Copy file name to clipboardExpand all lines: docs/references.rst
+15Lines changed: 15 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -97,15 +97,30 @@ Non-linear line stiffness:
97
97
`Lozon, Ericka, Matthew Hall, Paul McEvoy, Seojin Kim, and Bradley Ling, “Design and Analysis of a Floating-Wind Shallow-Water Mooring System
98
98
Featuring Polymer Springs.” American Society of Mechanical Engineers Digital Collection, 2022. <https://doi.org/10.1115/IOWTC2022-98149>`_
99
99
100
+
Bladed-MoorDyn Coupling:
101
+
102
+
`Alexandre, Armando, Francesc Fabregas Flavia, Jingyi Yu, Ali Bakhshandehrostami, and Steven Parkinson. "Coupling Bladed With External Finite-Element Mooring Libraries."
103
+
American Society of Mechanical Engineers Digital Collection, 2023. <https://doi.org/10.1115/IOWTC2023-119346>`_
104
+
100
105
Viscoelastic approach for non-linear rope behavior:
101
106
102
107
`Hall, Matthew, Brian Duong, and Ericka Lozon, “Streamlined Loads Analysis of Floating Wind Turbines With Fiber Rope Mooring Lines.” In ASME 2023
103
108
5th International Offshore Wind Technical Conference, V001T01A029. Exeter, UK: American Society of Mechanical Engineers, 2023. <https://doi.org/10.1115/IOWTC2023-119524>`_
104
109
105
110
Updated MoorDyn-OpenFOAM Coupling:
111
+
106
112
`Haifei Chen, Tanausú Almeida Medina, and Jose Luis Cercos-Pita, "CFD simulation of multiple moored floating structures using OpenFOAM: An open-access mooring restraints
`Soydan, Ahmet, Widar Weizhi Wang, and Hans Bihs. "An Improved Direct Forcing Immersed Boundary Method With Integrated Mooring Algorithm for Floating Offshore Wind
118
+
Turbines." American Society of Mechanical Engineers Digital Collection, 2024. <https://doi.org/10.1115/1.4067117>`_
119
+
120
+
Modeling of Bi-stable Nonlinear Energy Sinks in MoorDyn (most recent description of MoorDyn theory):
121
+
122
+
`Anargyros Michaloliakos, Wei-Ying Wong, Ryan Davies, Malakonda Reddy Lekkala, Matthew Hall, Lei Zuo, Alexander F. Vakakis, "Stabilizing dynamic subsea power cables using
123
+
Bi-stable nonlinear energy sinks", Ocean Engineering, vol. 334, August 2025. <https://doi.org/10.1016/j.oceaneng.2025.121613>`_
109
124
110
125
The Fortran version of MoorDyn is available as a module inside of OpenFAST:
0 commit comments