# Rotor and Nacelle Mass moment of Inertia Tensors

**URL:** <https://forums.nlr.gov/t/rotor-and-nacelle-mass-moment-of-inertia-tensors/2015>\
**Category:** Rotor Aerodynamics\
**Created:** [March 28, 2019, 8:20am UTC](https://forums.nlr.gov/t/rotor-and-nacelle-mass-moment-of-inertia-tensors/2015 "2019-03-28T08:20:46Z")\
**Posts on this page:** 14\
**Page:** 1

<div class="post-metadata">

**Author:** ![Zahid.Ullah](https://avatars.discourse-cdn.com/v4/letter/z/a87d85/32.png) [@Zahid.Ullah](https://forums.nlr.gov/u/Zahid.Ullah)\
**Post date:** [March 28, 2019, 8:20am UTC](https://forums.nlr.gov/t/rotor-and-nacelle-mass-moment-of-inertia-tensors/2015/1 "2019-03-28T08:20:46Z")

</div>

Dear Dr. jason Jonkman

I am trying to determine the inertia tensors of rotor and nacelle separately. I was able to find the combine (RNA) inertia values (Ixx, Iyy, Izz, Ixy, Izx, Iyz) of the 5MW wind turbine on this forum. However, i could not find separately the inertia values of rotor and nacelle. I will highly appreciate if you can guide me on the calculation procedure of these values separately or if you can provide me some values.

Link for combine RNA values: [Tower Eigenfrequencies of NREL 5MW Turbine](http://forums.nlr.gov/t/tower-eigenfrequencies-of-nrel-5mw-turbine/517/1)

Best  
Zahid

---

<div class="post-metadata">

**Author:** ![Jason.Jonkman](https://dub1.discourse-cdn.com/nrel/user_avatar/forums.nlr.gov/jason.jonkman/32/3086_2.png) [@Jason.Jonkman](https://forums.nlr.gov/u/Jason.Jonkman)\
**Post date:** [March 28, 2019, 2:24pm UTC](https://forums.nlr.gov/t/rotor-and-nacelle-mass-moment-of-inertia-tensors/2015/2 "2019-03-28T14:24:54Z")

</div>

Dear Zahid,

The nacelle mass, center of mass, and inertia about the yaw axis are specified in the NREL 5-MW specifications report: [nrel.gov/docs/fy09osti/38060.pdf](http://www.nrel.gov/docs/fy09osti/38060.pdf). The other nacelle inertia terms were neglected. So, the rest of the rotor-nacelle assembly (RNA) inertia comes from the rotor.

Best regards,

---

<div class="post-metadata">

**Author:** ![Zahid.Ullah](https://avatars.discourse-cdn.com/v4/letter/z/a87d85/32.png) [@Zahid.Ullah](https://forums.nlr.gov/u/Zahid.Ullah)\
**Post date:** [March 29, 2019, 1:22pm UTC](https://forums.nlr.gov/t/rotor-and-nacelle-mass-moment-of-inertia-tensors/2015/3 "2019-03-29T13:22:02Z")

</div>

Dear Dr. Jason Jonkman

Thank you for your kind response. Following your suggestion i calculated the Rotor inertia about its Center of Mass (Cm) using parallel axis theorem. I have briefly described the procedure of determination in the following steps.

Step 1: Transfer the nacelle inertia from yaw-axis to its Center of mass.  
Step 2: Transfer the nacelle inertia from its center of mass to RNA center of mass.  
Step 3: Subtract the nacelle inertia form RNA inertia (about RNA center of mass, obtained from another post on this forum) and thus found the Rotor inertia about RNA center of mass.  
Step 4: Transfer Rotor inertia from RNA center of mass to Rotor center of mass

I have done this step wise calculation in an excel sheet and attached here. Can you please kindly give a look to the final values of Rotor inertia about Rotor center of mass if they seems correct.  
[5MW\_Turbine\_Inertia\_2019.xlsx](https://forums.nlr.gov/uploads/short-url/3HtiSIG3lpk4Em38NQ92U5vOuSs.xlsx) (206 KB)

---

<div class="post-metadata">

**Author:** ![Jason.Jonkman](https://dub1.discourse-cdn.com/nrel/user_avatar/forums.nlr.gov/jason.jonkman/32/3086_2.png) [@Jason.Jonkman](https://forums.nlr.gov/u/Jason.Jonkman)\
**Post date:** [April 1, 2019, 4:02pm UTC](https://forums.nlr.gov/t/rotor-and-nacelle-mass-moment-of-inertia-tensors/2015/4 "2019-04-01T16:02:44Z")

</div>

Dear Zahid,

You’re overall approach is correct, but I found several mistakes in your spreadsheet. Please find my commented spreadsheet attached. With my corrections, I calculate the rotor mass and inertia about its CM as follows:  
Mass = 110000  
Ixx = 4.37E7  
Iyy = 1.99E7  
Izz = 2.01E7  
Ixy = 0  
Izx = 8.3E5  
Iyz = 0

[5MW\_Turbine\_Inertia\_2019\_JJ.xlsx](https://forums.nlr.gov/uploads/short-url/dRcBLnGjGJkg9e308l0OsMBRFYm.xlsx) (210 KB)  
Best regards,

---

<div class="post-metadata">

**Author:** ![Zahid.Ullah](https://avatars.discourse-cdn.com/v4/letter/z/a87d85/32.png) [@Zahid.Ullah](https://forums.nlr.gov/u/Zahid.Ullah)\
**Post date:** [April 2, 2019, 2:39am UTC](https://forums.nlr.gov/t/rotor-and-nacelle-mass-moment-of-inertia-tensors/2015/5 "2019-04-02T02:39:08Z")

</div>

Dear Dr. Jason Jonkman

I followed all the comments and made the corrections and thus obtained the corrected values as you calculated. I am highly grateful for your valuable comments and corrections. Heartfelt thanks.

Zahid Ullah

---

<div class="post-metadata">

**Author:** ![Ran.Tu](https://avatars.discourse-cdn.com/v4/letter/r/82dd89/32.png) [@Ran.Tu](https://forums.nlr.gov/u/Ran.Tu)\
**Post date:** [August 29, 2022, 12:16pm UTC](https://forums.nlr.gov/t/rotor-and-nacelle-mass-moment-of-inertia-tensors/2015/6 "2022-08-29T12:16:27Z")

</div>

Dear @Jason.Jonkman ,

Is there any approach in OpenFAST to directly output RNA mass matrix? I remembered that I had read a post saying linearization can output RNA mass matrix if reference point is correctly configured and platform is neglected.

I can not remember clearly and found that post again. Could you please describe how to output RNA mass matrix in OpenFAST as I want to compare with your result from MSC.ADAMS.

Regards,  
Ran

---

<div class="post-metadata">

**Author:** ![Jason.Jonkman](https://dub1.discourse-cdn.com/nrel/user_avatar/forums.nlr.gov/jason.jonkman/32/3086_2.png) [@Jason.Jonkman](https://forums.nlr.gov/u/Jason.Jonkman)\
**Post date:** [August 29, 2022, 1:04pm UTC](https://forums.nlr.gov/t/rotor-and-nacelle-mass-moment-of-inertia-tensors/2015/7 "2022-08-29T13:04:05Z")

</div>

Dear @Ran.Tu,

The OpenFAST linearizations do not show the mass matrix directly, but this matrix can often be inferred from other matrices generated through the linearization process. A similar question was asked and answered in the following forum topic: [http://forums.nlr.gov/t/openfast-2nd-order-linearization/2249/2](http://forums.nlr.gov/t/openfast-2nd-order-linearization/2249/2). To get only the RNA mass matrix, set the tower and platform masses to zero.

Best regards,

---

<div class="post-metadata">

**Author:** ![Ran.Tu](https://avatars.discourse-cdn.com/v4/letter/r/82dd89/32.png) [@Ran.Tu](https://forums.nlr.gov/u/Ran.Tu)\
**Post date:** [August 29, 2022, 2:36pm UTC](https://forums.nlr.gov/t/rotor-and-nacelle-mass-moment-of-inertia-tensors/2015/8 "2022-08-29T14:36:17Z")

</div>

Thank you @Jason.Jonkman ,

I only turn on Elasotdyn, and only turn on platform DOF. In Elastodyn, I set as:

```auto
       87.6 TowerHt - Height of tower above ground level [onshore] or MSL [offshore] (meters)
       87.5999 TowerBsHt - Height of tower base above ground level [onshore] or MSL [offshore] (meters)
          0 PtfmCMxt - Downwind distance from the ground level [onshore] or MSL [offshore] to the platform CM (meters)
          0 PtfmCMyt - Lateral distance from the ground level [onshore] or MSL [offshore] to the platform CM (meters)
          0 PtfmCMzt - Vertical distance from the ground level [onshore] or MSL [offshore] to the platform CM (meters)
       87.5999 PtfmRefzt - Vertical distance from the ground level [onshore] or MSL [offshore] to the platform reference point (meters)

```

I don’t change TwrFile which contains line density. I just set TowerBsHt to be very close to TowerHt to eliminate tower mass.  
For platform, mass and inertia are kept zeroed. I think platform reference point would be the reference point for the inferred mass matrix.

Then I conducted the linearization. And I extract B matrix.

In xdot\_desc, the acceleration of platform DOF is located between 7-12. In u\_desc, the force in platform DOF is loacted between 343-348. So I extract B(7:12, 343:348). And then get the inverse matrix of B. I think it would be the mass matrix.:

```auto
349945.913585992	-1.31697775849274e-16	-0.793097343607247	-1.29185550223194e-15	693088.051891439	-1.06695622694160e-10
-2.02467864330034e-16	349989.268487729	4.35244261998299e-16	-693308.937606429	-1.04150819498913e-14	-199682.577685825
-0.793097343607680	-3.79413744939221e-17	349943.712554865	-3.72176166879697e-16	199674.695828790	-3.07383974512040e-11
-1.10353899464704e-15	-693308.937606429	5.82047200617969e-11	40482058.5576065	3.49180562953951e-10	-871642.151351890
693088.051891439	-4.90012562720014e-15	199674.695828790	-4.80665236166781e-14	25787971.7639663	-3.96986169054139e-09
-5.81874892790818e-11	-199682.577685825	3.13686653728374e-15	-871642.151351890	-3.86648351441338e-09	26264647.2943439

```

For M(1 ,1) M(2,2) and M(3,3) are the mass of RNA. I think it can match with ADAMS results.  
But the other component would be different as the reference point is different between my model and ADAMS model.  
So my questions are:

1. For below BModes input file, what is the reference point for below inertias? Tower top? RNA center of gravity?

```auto
4.370E7 ixx_tip blade lag mass moment of inertia about the tip-section x reference axis (kg-m^2)
2.353E7 iyy_tip blade flap mass moment of inertia about the tip-section y reference axis (kg-m^2)
2.542E7 izz_tip torsion mass moment of inertia about the tip-section z reference axis (kg-m^2)
0. ixy_tip cross product of inertia about x and y reference axes(kg-m^2)
1.169E6 izx_tip cross product of inertia about z and x reference axes(kg-m^2)
0. iyz_tip cross product of inertia about y and z reference axes(kg-m^2)

```

1. Could you please share a link demonstrating the formula of mass matrix. I think there would be some relationships between these components. I want to infer the center of gravity from my results.

Regards,  
Ran

---

<div class="post-metadata">

**Author:** ![Jason.Jonkman](https://dub1.discourse-cdn.com/nrel/user_avatar/forums.nlr.gov/jason.jonkman/32/3086_2.png) [@Jason.Jonkman](https://forums.nlr.gov/u/Jason.Jonkman)\
**Post date:** [August 29, 2022, 7:45pm UTC](https://forums.nlr.gov/t/rotor-and-nacelle-mass-moment-of-inertia-tensors/2015/9 "2022-08-29T19:45:43Z")

</div>

Dear @Ran.Tu,

The tower-top inertias specified in BModes (`ixx_tip`, etc.) are specified relative to the RNA center of mass.

Regarding the format of the 6x6 rigid-body mass matrix derived through the OpenFAST linearization analysis, please see my post dated May 2, 2022 in the following forum topic: [RNA Inertia FASTv7](https://forums.nlr.gov/t/rna-inertia-fastv7/2297).

Best regards,

---

<div class="post-metadata">

**Author:** ![Ran.Tu](https://avatars.discourse-cdn.com/v4/letter/r/82dd89/32.png) [@Ran.Tu](https://forums.nlr.gov/u/Ran.Tu)\
**Post date:** [August 30, 2022, 11:54am UTC](https://forums.nlr.gov/t/rotor-and-nacelle-mass-moment-of-inertia-tensors/2015/10 "2022-08-30T11:54:30Z")

</div>

> [@RNA Inertia FASTv7](https://forums.nlr.gov/t/rna-inertia-fastv7/2297/5):
>
> Dear @Xiaogang.Huang,
> 
> The 6x6 rigid-body mass matrix generated through the linearization of FAST or OpenFAST should have the following form:
> 
> ![MassMatrix](https://europe1.discourse-cdn.com/nrel/original/2X/c/cdc10587d64b69de4faee69008745ec6ade3e0dc.png)
> 
> where  
> m = mass  
> (x\_g,y\_g,z\_g) = center of mass relative to the platform reference point  
> (I\_11,I\_12,…I\_33) = inertias relative to the platform reference point.
> 
> So, you can calculate the center of mass relative to the platform reference point from the off diagonal entries. Based on knowledge of the center of mass, you can shift the inertias to a different reference point using the parallel axis theorem.
> 
> Best regards,

Dear @Jason.Jonkman ,

Thanks you, I have successfully calculated the center of mass (CM) base on lower-left submatix of mass matrix.

Sorry for my limited knowledge about parallel axis theorem, I know how to transfer I11, I22, and I33 from platfrom reference point to CM of RNA. But I don’t know how to transfer I12, I23, and I32 from platfrom reference point to CM of RNA, even I have searched for this theorem.

Could you please type the formula to transfer I12, I23, and I32 from platfrom reference point to CM of RNA?

Regards,  
Ran

---

<div class="post-metadata">

**Author:** ![Jason.Jonkman](https://dub1.discourse-cdn.com/nrel/user_avatar/forums.nlr.gov/jason.jonkman/32/3086_2.png) [@Jason.Jonkman](https://forums.nlr.gov/u/Jason.Jonkman)\
**Post date:** [August 30, 2022, 12:35pm UTC](https://forums.nlr.gov/t/rotor-and-nacelle-mass-moment-of-inertia-tensors/2015/11 "2022-08-30T12:35:44Z")

</div>

Dear @Ran.Tu,

See the “tensor generalization” of the parallel axis theorem documented here: [Parallel axis theorem - Wikipedia](https://en.wikipedia.org/wiki/Parallel_axis_theorem).

Best regards,

---

<div class="post-metadata">

**Author:** ![Ran.Tu](https://avatars.discourse-cdn.com/v4/letter/r/82dd89/32.png) [@Ran.Tu](https://forums.nlr.gov/u/Ran.Tu)\
**Post date:** [August 30, 2022, 2:11pm UTC](https://forums.nlr.gov/t/rotor-and-nacelle-mass-moment-of-inertia-tensors/2015/12 "2022-08-30T14:11:09Z")

</div>

Dear Jason,

Thank you for the shared link. I converted the mass matrix. But I found one thing strange.  
When do linearation:  
#1 Only turn on all platform DOF, then I get:

```auto
mass = 3.499338008682417e+05 kg

xg = -0.414194292642138 m
zg = 1.967118872063959 m

Iij in RNA center: 
    1.0e+07 *

    3.9103 -0.0000 -0.1319
   -0.0000 2.3727 -0.0000
   -0.1319 -0.0000 2.5582

```

#2 Only turn on all platform DOF and GenDOF , then I get:

```auto
mass = 3.499338008682417e+05 kg

xg = -0.414194292504722 m
zg = 1.967118872063959 m

Iij in RNA center: 
   1.0e+07 *

    0.4515 -0.0000 0.1707
   -0.0000 2.3727 -0.0000
    0.1707 -0.0000 2.5317

```

#3 And the result in ADAMS (mentioned in other posts) is:

```auto
mass = 3.500003109E+005 kg

xg = -0.4137754432 m
zg = 1.9669893542 m

Iij in RNA center: 
   1.0e+07 *

    4.370 -0.0000 0.1169
   -0.0000 2.353 -0.0000
    0.1169 -0.0000 2.542

```

1. I can not understand why the inertia matrix changed after I turn on GenDOF. Does it mean GenIner will not be considered if GenDOF turned off?

2. the mass and center of mass can match well. But the inertia matrix is different.  
For #1, I can not understand why I31 is negative.  
For #2 (turn on GenDOF), I31 is positive, but I11 becomes too small.  
Below is my matlab code to output the results:

```auto
clear all; close all; clc; 
restoredefaultpath;
addpath(genpath('D:/Program/openfast/matlab-toolbox-main'));
data=ReadFASTLinear('5MW_Land_DLL_WindSteady.1.lin');
subB=data.B(8:13,343:348);
M=inv(subB);
m=M(1,1);
zg=M(5,1)/m;
yg=-M(6,1)/m;
xg=M(6,2)/m;

posVec=-[xg;yg;zg];
Iij=M(4:6,4:6)- m*(posVec' * posVec*eye(3)-posVec * posVec')

```

For #1, In xdot\_desc, the acceleration of platform DOF is located between 7-12. In u\_desc, the force in platform DOF is loacted between 343-348. So i will change the Matlab code.  
`subB=data.B(7:12,343:348);`

For #2, In xdot\_desc, the acceleration of platform DOF is located between 8-13. In u\_desc, the force in platform DOF is loacted between 343-348.

---

<div class="post-metadata">

**Author:** ![Jason.Jonkman](https://dub1.discourse-cdn.com/nrel/user_avatar/forums.nlr.gov/jason.jonkman/32/3086_2.png) [@Jason.Jonkman](https://forums.nlr.gov/u/Jason.Jonkman)\
**Post date:** [August 31, 2022, 12:36pm UTC](https://forums.nlr.gov/t/rotor-and-nacelle-mass-moment-of-inertia-tensors/2015/13 "2022-08-31T12:36:55Z")

</div>

Dear @Ran.Tu,

Regarding (1), when you enable `GenDOF`, you no longer have a 6x6 rigid-body mass matrix; instead, you have a 7x7 mass matrix (including rigid-body + a rotational joint) and the formulation doesn’t apply.

Regarding why I31 (Izx) is negative in OpenFAST and positive in ADAMS, I’m not sure. I also see that I11 (Ixx) is also a bit lower in OpenFAST than in ADAMS. I would guess that there are some differences between the mass distribution in the two models (the ADAMS model results have not been touched in years). Overall, I believe your approach with `GenDOF` disabled is correct.

Best regards,

---

<div class="post-metadata">

**Author:** ![Ran.Tu](https://avatars.discourse-cdn.com/v4/letter/r/82dd89/32.png) [@Ran.Tu](https://forums.nlr.gov/u/Ran.Tu)\
**Post date:** [August 31, 2022, 12:40pm UTC](https://forums.nlr.gov/t/rotor-and-nacelle-mass-moment-of-inertia-tensors/2015/14 "2022-08-31T12:40:45Z")

</div>

Thank you, Jason,

It is of my fault that do not notice GenDOF will allow rotor to rotate.

I will double check my model.

Regards,  
Ran
