Gear mesh stiffness

I did a static non linear simulation of a spur gear in order to evaluate the mesh stiffness. I am using CCX 2.17. To do that I created a rigid body to the hub of the pinion and the wheel. The simulation has 4 steps:

  1. imposed rotation on the pinion to initialize the contact (keeping wheel fixed)

  2. Impose a small torque on the wheel (keeping pinion fixed)

  3. Impose the desired torque on the wheel (keeping pinion fixed)

  4. Impose the desired resisting torque on the wheel and impose a rotation on the pinion corresponding to 2 mesh cycles.

A surface to surface penalty contact without friction is used, everything converges and the results are (apparently) similar to previous works. The problem relies on the results of Reaction Force (RF) for the rotation nodes used for the rigid body (step 4):

  • the reference nodes don’t belong to the node set;
  • the imposed torque is correct on the wheel;
  • the imposed rotation is correct on the by pinion;
  • but the torque evaluated on the pinion rotation node is not constant and also depends on the penalty coefficient. I expected to have influence on the rotation angles only…

It would be helpful to have your feedback. My experience with CalculiX is mostly doing thermal analysis of gears, so probably I am missing some important points.

Best regards,
Carlos Fernandes

not sure if applicable to you, but please be aware of this remark in the manual:

6.11.5 Forces obtained by selecting RF
This section has been included because the output when selecting RF on a *NODE PRINT, *NODE FILE or *NODE OUTPUT card is not always what the user expects. With RF you get the sum of all external forces in a node. The external forces can be viewed as the sum of the loading forces and the reaction forces.

1 Like


Thanks for the hint. I will verify in a different way. My main doubt relies on the change of the RF as the penalty coefficient increases.

I recall a topic on contact stiffness setting. Based on that discussion, I would expect the torque evaluated on the pinion rotation node not to be constant and will depend on the penalty coefficient. Are you using linear elastic materials?

1 Like

Yes, I am using linear elastic material just to validate the model with the standards/literature.

The shape of the mesh stiffness curve is exactly as expected, but its value is quite dependent on the penalty coefficient and much lower than the standards (my penalty coefficient is high, if the penalty decreases, the value of mesh stiffness also decreases even more due to penetration. Penetration changes the relation between pinion and wheel angles). Maybe I have to compute the mesh stiffness in a different way…

Thank you for the recall of the previous topic.

1 Like

Thank you all for the help.

I decided to ask a colleague to run my input deck on Abaqus. It runs perfectly just needed to change the reference nodes/rotation nodes. I decided to share my observations in the case that it can be useful…

I verified that the values at the reference nodes on the CalculiX are different just in a small part of the step. If I increase the penalty coefficient it deviates in a larger part of the step.

The zones where CalculiX doesn’t fit the expected behaviour is coincident with wrong torque evaluation.

The mesh stiffness is evaluated only considering the node rotations (the torque is not needed for this analysis, but is expected to be approximately constant). I used a smaller penalty on CalculiX just to have a better shape for the curve (with 10^14 it fits partially the Abaqus results, but for less points).

I am now wondering what is the reason for this…

1 Like

Did you use quadratic elements? Remember that ccx linear elements do not have locking prevention features. From the manual 4 Golden Rules:
3. USE QUADRATIC ELEMENTS (C3D10, C3D15, C3D20(R), S8, CPE8,CPS8, CAX8, B32). The standard shape functions for quadratic elements are very good. Most finite element programs use these standard functions.For linear elements this is not the case: linear elements exhibit all kind of weird behavior such as shear locking and volumetric locking.



thank you for the warning. The stresses were “as expected” and I couldn’t figure easily this possible weird behaviour with the first order elements. Maybe it is exactly the cause. I have to use a coarser mesh with 2nd order elements otherwise I need a week of computation. But I will check it for sure. Thanks.

I did a trial with 2nd order elements C3D10:

The behaviour is not better.


I managed to get a good solution both with first order and 2nd order elements. I had to use much much larger (10 times bigger than in Abaqus) number of steps and increments to get the expected result.


Thank you all.


Great work. The results are really in good agreement and confirm the Calculix as a great alternative to commercial codes.

May I ask, how it comes to a 10x larger number of increments. What is the reason for that. Did you not use automatic incrementation?

1 Like

Hi Matej,

Maybe I was not precise in my text. I had to divide the rotation of the gear in a much larger number of divisions. In reality, if the rotation tends to a very small value the result tends to the expected one. At the same time I was increasing the number of increments of STEP calculation, since it seems to help. However, since now I found the cause, I have room to explore and see what is really making the difference.