Hello all,
I am currently working on a model to map all relevant loads from an openFAST simulation, which considers a rigid substructure, to a shell-based finite element model.
To verify this mapping strategy, I would then consider the sum of all loads and the sum of all moments, which in theory should be equal to zero. However, this is not the case in both my finite element simulations and my openFAST simulations.
The openFAST model has following details:
- Version: custom version of OpenFAST-e0bc0cf9-dirty (number of member level outputs was extended to 9 points on 16 members)
- Aerodyn is disabled
- Still water conditions or periodic waves with H_s=10m and T_p=9s
- Potential flow model: PotMod = 1, ExctnMod = 1, RdtnMod = 0
- No second order loads are considered
- No Morison drag loads are considered
My method for calculating the sum of all forces in a local reference from linked to the floater goes as follows:
1.Calculate the rotation matrix R(roll,pitch,yaw)
to transform load vectors from the global to the local reference system
2.Hydrodynamic loads: HydroFxi, HydroFyi, HydroFzi
- From the documentation:
When coupled to FAST, the hydrodynamic loads computed by HydroDyn are applied to the displaced position of the substructure (i.e., the displaced platform in ElastoDyn and/or the displaced substructure in SubDyn), but are based on wave kinematics at the undisplaced position.
- These forces are directly applied in the local coordinate system (CSYS)
3.Tower base: TwrBsFxt, TwrBsFyt, TwrBsFzt
- From the documentation: directed along the xt axis (=local coordinate system?)
- These forces are directly applied in the local coordinate system
4.Mooring line loads: TwrBsFxt, TwrBsFyt, TwrBsFzt
- Calculate the orientation of the mooring line
- Calculate the force components of the mooring line loads via:
F_(mooring,i, global)=FAIRTENi direction/(|direction|)
- Transform from the global CSYS to the local CSYS:
F_(mooring,i) =R F_(mooring,i, global)
5.Gravity load
- Transform the gravity load vector to the local CSYS:
F_gravity=R (m_structure [0,0,-9.81])
6.Inertia loads
- Extract:
PtfmTAxi, PtfmTAyi, PtfmTAzi
- Define:
F_(inertia,global)=m_structure [PtfmTaxi,PtfmTAyi,PtfmTAzi]
- Transform to local CSYS:
F_inertia=R F_(inertia,global)
7.Take the sum of all loads
Σ_i F_i = HydroF+TwrBsF+∑_j F_(mooring,j) +F_gravity+F_inertia =?= 0
If this is implemented, the following results are found for no wind and no wave conditions:
The forces in y and z appeared to die out relatively quickly, but there was something wrong with F_x. This was solved by not transforming the gravity loads, i.e. the gravity loads are considered to be m_structure [0,0,-9.81] in the local CSYS:
These results are relatively good, however note that F_y and F_z are centered around 0, but that F_x is not.
When waves are introduced (and the potential flow solution becomes important), the results become extremely bad:
The loads are still centered around 0, however the amplitude in F_x and F_z is in the order of 10MN.
If someone has any ideas of what is going wrong and is willing to share them, I’d be very grateful.
Kind regards,
Victor Rappe