Dear @Matthew.Hall, @Stein.Housner ,
MoorPy documentation in (MoorPy Usage — MoorPy 0.9.1 documentation) mention that “The analytical stiffness method derives the stiffness of each mooring line using the Catenary equations and translates that stiffness to whichever point (or body) the mooring line is attached to.” Usually, mooring lines are attached to fairleads which are usually different than body reference point or centre of gravity (CoG) of the floating system.
-
If I add a body using addBody.r6=[0, 0, 0, 0, 0, 0], in MoorPy, is the following stiffness matrix, KA about [0,0,0]? You can assume the body as IEA 15 mw UMaine VolturnUS-S Reference Platform.
KA = ms.getSystemStiffnessA(DOFtype=“free”, lines_only=True, rho=1025, g=9.81)
-
I was wondering if there is any built-in (helper) functions to handle the transformation of mooring stiffness matrix computed about another point other than the default one in MoorPy. Any advise on how this can be done in MoorPy?
Regards,
Hi, mooring system effective stiffness is complicated because of the effects of line tensions. The stiffness matrices by themselves can’t simply be transformed/translated to get the equivalent stiffness at a different location. (More info here https://www.mdpi.com/1996-1073/17/13/3155#) So it isn’t quite as simple as it sounds in the documentation, and there isn’t a helper function that can translate stiffness from one reference point to another.
- System.getSystemStiffnessA will compute the stiffness matrix of the system relative to each system DOF. So if the system contains a Body, then 6 rows/columns of the stiffness matrix will pertain to the x/y/z and roll/pitch/yaw DOFs of the body. If the body is at 0,0,0, then those parts of the stiffness matrix will be about that same location.
- To get the stiffness matrix about some arbitrary location, the best thing to do would be to create a body that is already at that location, then attach the mooring lines, then call one of the get-stiffness functions.
Dear @Matthew.Hall ,
Thank you very much for your reply and explanation.
Following your reply on (1), I was able to create a mooring system in MoorPy for IEA-15mW UMaine VolturnUS-S Reference Platform utilising line properties from Table 6: Mooring System Properties. The objective of this study was to obtain the mooring system stiffness matrix from MoorPy and compare with the value given in IEA-15-240-RWT_2nd.frc (ISTIF). The comparison of computed stiffness shows significant differences in Roll, Pitch and Yaw.
However, the pretension value (2437 kN) match exactly:
Line and body properties:

Extraction of Tension (T) and Mooring Stiffness (KA):
Do you think that the reference point in MoorPy output and IEA-15-240-RWT_2nd.frc files are different? Could you please help me to resolve this?
Regards,
Touhid
Hi Touhid,
It looks to me like those rotational stiffness numbers match almost exactly (within rounding to a reasonable number of significant figures). What is the significant difference you’re seeing?
Matt
Dear @Matthew.Hall,
The difference between the two matrices is

The order of difference for Roll, Pitch and Yaw are higher compare to the other modes. In real life senario, these moments are around 2 ton*m but from numerical point of view why these differences are happening? Did I misunderstood any part of it? Please give your comments.
Regards,
Touhid
I think comparing these numbers in a relative instead of absolute sense (i.e. % instead of subtraction) is more meaningful in this situation. In other words, the differences between the two stiffness matrices will make almost no difference in any simulations, I expect.
My guess is that the differences aren’t from numerical issues but from using rounding to a reasonable number of significant figures.
1 Like
Dear @Matthew.Hall ,
Thanks you very much for your reply.
Regards,
Touhid