Dear Jason Jonkman,
Thank you for your quick reply,
I did not zero the platform mass and inertias in ElastoDyn. So if I understand correctly, after enabling SubDyn, this should be done to prevent the platform mass and inertia to be counted twice in the simulation?
If I zero the platform mass AND the inertias, I am getting a fatal error from MoorDyn (as shown below):
If I leave the inertias untouched and just zero the platform mass, I observe the opposite behaviour as before, namely that there is a positive heave offset. This is suggesting that the platform modelled in SubDyn is modelled less heavy than it should be.
I suspect something is wrongly formulated in my SubDyn input file, however I can’t seem to find it. The visualisation of the platform from my previous post is directly plotted using the information about the Joints- Members and Member properties specification from the SubDyn file. For the member properties, I closely followed the properties specified in the OC4 semisub definition report. Furthermore, when I analytically calculate the metal mass of one of the members defined in my SubDyn file (e.g. the centre column, being 1.436E+05), the mass coïncides with the mass specified in the report.
I agree with you that one would expect that the rigid-body equivalent mass matrix from SubDyn would match the mass, center of mass, and mass moment of inertias specified in the original ElastoDyn model. I included the entries of my SubDyn inputu file below.
Please, could you indicate if you see anything going wrong here?
Your help is much appreciated!
.
.
.
----------- SubDyn MultiMember Support Structure Input File ------------
OC4 ‘Semisubmersible’ SubStructure Input File.
-------------------------- SIMULATION CONTROL ---------------------------------
False Echo - Echo input data to “.SD.ech” (flag)
“DEFAULT” SDdeltaT - Local Integration Step. If “default”, the glue-code integration step will be used.
3 IntMethod - Integration Method [1/2/3/4 = RK4/AB4/ABM4/AM2].
True SttcSolve - Solve dynamics about static equilibrium point
True GuyanLoadCorrection - Include extra moment from lever arm at interface and rotate FEM for floating.
-------------------- FEA and CRAIG-BAMPTON PARAMETERS---------------------------
3 FEMMod - FEM switch: element model in the FEM. [1= Euler-Bernoulli(E-B); 2=Tapered E-B (unavailable); 3= 2-node Timoshenko; 4= 2-node tapered Timoshenko (unavailable)]
1 NDiv - Number of sub-elements per member
True CBMod - [T/F] If True perform C-B reduction, else full FEM dofs will be retained. If True, select Nmodes to retain in C-B reduced system.
0 Nmodes - Number of internal modes to retain (ignored if CBMod=False). If Nmodes=0 → Guyan Reduction.
1 JDampings - Damping Ratios for each retained mode (% of critical) If Nmodes>0, list Nmodes structural damping ratios for each retained mode (% of critical), or a single damping ratio to be applied to all retained modes. (last entered value will be used for all remaining modes).
0 GuyanDampMod - Guyan damping {0=none, 1=Rayleigh Damping, 2=user specified 6x6 matrix}
0.000, 0.000 RayleighDamp - Mass and stiffness proportional damping coefficients (Rayleigh Damping) [only if GuyanDampMod=1]
6 GuyanDampSize - Guyan damping matrix (6x6) [only if GuyanDampMod=2]
0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
0.0000e+00 0.0000e+00 1.066100e+06 0.0000e+00 0.0000e+00 0.0000e+00
0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
---- STRUCTURE JOINTS: joints connect structure members (~Hydrodyn Input File)—
18 NJoints - Number of joints (-)
JointID JointXss JointYss JointZss JointType JointDirX JointDirY JointDirZ JointStiff
(-) (m) (m) (m) (-) (-) (-) (-) (Nm/rad)
1 0.00000 0.00000 -20.00000 1 0.0 0.0 0.0 0.0
2 0.00000 0.00000 -17.00000 1 0.0 0.0 0.0 0.0
3 0.00000 0.00000 10.00000 1 0.0 0.0 0.0 0.0
4 -28.87000 0.00000 -20.00000 1 0.0 0.0 0.0 0.0
5 -28.87000 0.00000 -17.00000 1 0.0 0.0 0.0 0.0
6 -28.87000 0.00000 -14.00000 1 0.0 0.0 0.0 0.0
7 -28.87000 0.00000 10.00000 1 0.0 0.0 0.0 0.0
8 -28.87000 0.00000 12.00000 1 0.0 0.0 0.0 0.0
9 14.43500 25.00000 -20.00000 1 0.0 0.0 0.0 0.0
10 14.43500 25.00000 -17.00000 1 0.0 0.0 0.0 0.0
11 14.43500 25.00000 -14.00000 1 0.0 0.0 0.0 0.0
12 14.43500 25.00000 10.00000 1 0.0 0.0 0.0 0.0
13 14.43500 25.00000 12.00000 1 0.0 0.0 0.0 0.0
14 14.43500 -25.00000 -20.00000 1 0.0 0.0 0.0 0.0
15 14.43500 -25.00000 -17.00000 1 0.0 0.0 0.0 0.0
16 14.43500 -25.00000 -14.00000 1 0.0 0.0 0.0 0.0
17 14.43500 -25.00000 10.00000 1 0.0 0.0 0.0 0.0
18 14.43500 -25.00000 12.00000 1 0.0 0.0 0.0 0.0
------------------- BASE REACTION JOINTS: 1/0 for Locked/Free DOF @ each Reaction Node ---------------------
0 NReact - Number of Joints with reaction forces; be sure to remove all rigid motion DOFs of the structure (else det([K])=[0])
RJointID RctTDXss RctTDYss RctTDZss RctRDXss RctRDYss RctRDZss SSIfile ![Global Coordinate System]
(-) (flag) (flag) (flag) (flag) (flag) (flag) (string)
------- INTERFACE JOINTS: 1/0 for Locked (to the TP)/Free DOF @each Interface Joint (only Locked-to-TP implemented thus far (=rigid TP)) ---------
1 NInterf - Number of interface joints locked to the Transition Piece (TP): be sure to remove all rigid motion dofs
IJointID ItfTDXss ItfTDYss ItfTDZss ItfRDXss ItfRDYss ItfRDZss
(-) (flag) (flag) (flag) (flag) (flag) (flag)
3 1 1 1 1 1 1
----------------------------------- MEMBERS --------------------------------------
29 NMembers - Number of frame members
MemberID MJointID1 MJointID2 MPropSetID1 MPropSetID2 MType COSMID
(-) (-) (-) (-) (-) (-) (-)
1 1 2 1 1 1
2 2 3 1 1 1
3 4 5 2 2 1
4 5 6 2 2 1
5 6 7 3 3 1
6 7 8 3 3 1
7 9 10 2 2 1
8 10 11 2 2 1
9 11 12 3 3 1
10 12 13 3 3 1
11 14 15 2 2 1
12 15 16 2 2 1
13 16 17 3 3 1
14 17 18 3 3 1
15 5 10 4 4 1
16 10 15 4 4 1
17 15 5 4 4 1
18 7 12 4 4 1
19 12 17 4 4 1
20 17 7 4 4 1
21 5 2 4 4 1
22 10 2 4 4 1
23 15 2 4 4 1
24 7 3 4 4 1
25 12 3 4 4 1
26 17 3 4 4 1
27 7 2 4 4 1
28 12 2 4 4 1
29 17 2 4 4 1
------------------ MEMBER X-SECTION PROPERTY data 1/2 [isotropic material for now: use this table for circular-tubular elements] ------------------------
4 NPropSets - Number of structurally unique x-sections (i.e. how many groups of X-sectional properties are utilized throughout all of the members)
PropSetID YoungE ShearG MatDens XsecD XsecT
(-) (N/m2) (N/m2) (kg/m3) (m) (m)
1 2.10000e+11 8.07690e+10 7850.00 6.500000 0.030000
2 2.10000e+11 8.07690e+10 7850.00 24.000000 0.060000
3 2.10000e+11 8.07690e+10 7850.00 12.000000 0.060000
4 2.10000e+11 8.07690e+10 7850.00 1.600000 0.017500
------------------ MEMBER X-SECTION PROPERTY data 2/2 [isotropic material for now: use this table if any section other than circular, however provide COSM(i,j) below] ------------------------
0 NXPropSets - Number of structurally unique non-circular x-sections (if 0 the following table is ignored)
PropSetID YoungE ShearG MatDens XsecA XsecAsx XsecAsy XsecJxx XsecJyy XsecJ0
(-) (N/m2) (N/m2) (kg/m3) (m2) (m2) (m2) (m4) (m4) (m4)
-------------------------- CABLE PROPERTIES -------------------------------------
0 NCablePropSets - Number of cable cable properties
PropSetID EA MatDens T0 CtrlChannel
(-) (N) (kg/m) (N) (-)
----------------------- RIGID LINK PROPERTIES ------------------------------------
0 NRigidPropSets - Number of rigid link properties
PropSetID MatDens
(-) (kg/m)
---------------------- MEMBER COSINE MATRICES COSM(i,j) ------------------------
0 NCOSMs - Number of unique cosine matrices (i.e., of unique member alignments including principal axis rotations); ignored if NXPropSets=0 or 9999 in any element below
COSMID COSM11 COSM12 COSM13 COSM21 COSM22 COSM23 COSM31 COSM32 COSM33
(-) (-) (-) (-) (-) (-) (-) (-) (-) (-)
------------------------ JOINT ADDITIONAL CONCENTRATED MASSES--------------------------
0 NCmass - Number of joints with concentrated masses; Global Coordinate System
CMJointID JMass JMXX JMYY JMZZ JMXY JMXZ JMYZ MCGX MCGY MCGZ
(-) (kg) (kgm^2) (kgm^2) (kgm^2) (kgm^2) (kgm^2) (kgm^2) (m) (m) (m)
---------------------------- OUTPUT: SUMMARY & OUTFILE ------------------------------
True SumPrint - Output a Summary File (flag).It contains: matrices K,M and C-B reduced M_BB, M-BM, K_BB, K_MM(OMG^2), PHI_R, PHI_L. It can also contain COSMs if requested.
0 OutCBModes - Output Guyan and Craig-Bampton modes {0: No output, 1: JSON output}, (flag)
0 OutFEMModes - Output first 30 FEM modes {0: No output, 1: JSON output} (flag)
False OutCOSM - Output cosine matrices with the selected output member forces (flag)
False OutAll - [T/F] Output all members’ end forces
2 OutSwtch - [1/2/3] Output requested channels to: 1=.SD.out; 2=.out (generated by FAST); 3=both files.
True TabDelim - Generate a tab-delimited output in the .SD.out file
1 OutDec - Decimation of output in the .SD.out file
“ES11.4e2” OutFmt - Output format for numerical results in the .SD.out file
“A11” OutSFmt - Output format for header strings in the .SD.out file
------------------------- MEMBER OUTPUT LIST ------------------------------------------
6 NMOutputs - Number of members whose forces/displacements/velocities/accelerations will be output (-) [Must be <= 9].
MemberID NOutCnt NodeCnt ![NOutCnt=how many nodes to get output for [< 10]; NodeCnt are local ordinal numbers from the start of the member, and must be >=1 and <= NDiv+1] If NMOutputs=0 leave blank as well.
(-) (-) (-)
1 1 1 ! M1
15 1 1 ! M2
10 1 1 ! M3
15 1 1 ! M4
20 1 1 ! M5
25 1 1 ! M6
------------------------- SDOutList: The next line(s) contains a list of output parameters that will be output in .SD.out or .out. ------
“M1N1FKZe, M2N1FKZe” - Axial force in leg 2 at K1L2 and in leg 4 at K1L4
“M5N1FKXe,M5N1FKYe,M5N1FKZe,M6N1FKXe,M6N1FKYe,M6N1FKZe” - Forces OOP and Axial at mid brace points x,y, z >> *we will need to do some post-processing using the direction cosine matrices to get OOP forces
END of output channels and end of file. (the word “END” must appear in the first 3 columns of this line)