# Extract Rotation Z and Contact Normal Force

**URL:** https://prepomax.discourse.group/t/extract-rotation-z-and-contact-normal-force/2482
**Category:** General Questions
**Created:** [February 18, 2025, 9:08am UTC](https://prepomax.discourse.group/t/extract-rotation-z-and-contact-normal-force/2482 "2025-02-18T09:08:47Z")
**Posts on this page:** 6
**Page:** 1

<div class="post-metadata">

### Author: ![ainurritegui](https://avatars.discourse-cdn.com/v4/letter/a/b5a626/32.png) [@ainurritegui](https://prepomax.discourse.group/u/ainurritegui)
#### Post date: [February 18, 2025, 9:08am UTC](https://prepomax.discourse.group/t/extract-rotation-z-and-contact-normal-force/2482/1 "2025-02-18T09:08:47Z")

</div>

I want to extract the Rotation in z axis from a gear 2d plane stress simulation and the contact normal force of a set of nodes.

I did not find a way to extract the Rotation Z, so what I do is to extract displacement in X and Y directions and calculate it from there.

Regarding the Contact Normal force, I am not sure of the values I am obtaining, since regardless of the position of the gears (single contact or double contact) the values i am obtaining are the same… so I think that perhaps I am not getting the contact normal force of only those nodes in the set I want, and all the contact surface nodes are taken into account or i am not getting the right value…

Could you help me or gide me with that?

I am using this commands to get that information in my .inp file

> \*Contact print, Nset=Contact\_P\_flanc\_3  
> CF

Thank you vey much!

---

<div class="post-metadata">

### Author: ![FEAnalyst](https://yyz2.discourse-cdn.com/free1/user_avatar/prepomax.discourse.group/feanalyst/32/688_2.png) [@FEAnalyst](https://prepomax.discourse.group/u/FEAnalyst)
#### Post date: [February 18, 2025, 9:17am UTC](https://prepomax.discourse.group/t/extract-rotation-z-and-contact-normal-force/2482/2 "2025-02-18T09:17:27Z")

</div>

You can get the rotation directly if your gear is driven by rigid body constraints - its ROT NODE has rotational DOFs.

> [@ainurritegui](#):
>
> \*Contact print, Nset=Contact\_P\_flanc\_3  
> CF

There’s no such parameter for this keyword in CalculiX, only Abaqus has it. You should use SLAVE and MASTER parameters to identify the contact pair instead.

---

<div class="post-metadata">

### Author: ![ainurritegui](https://avatars.discourse-cdn.com/v4/letter/a/b5a626/32.png) [@ainurritegui](https://prepomax.discourse.group/u/ainurritegui)
#### Post date: [February 18, 2025, 10:03am UTC](https://prepomax.discourse.group/t/extract-rotation-z-and-contact-normal-force/2482/3 "2025-02-18T10:03:47Z")

</div>

Ok. But when I define the slave and master I have all the 3 teeth in the contact pair surfaces.  
Thus, how could I do to only extract the contact normal force of only a single tooth??

---

<div class="post-metadata">

### Author: ![FEAnalyst](https://yyz2.discourse-cdn.com/free1/user_avatar/prepomax.discourse.group/feanalyst/32/688_2.png) [@FEAnalyst](https://prepomax.discourse.group/u/FEAnalyst)
#### Post date: [February 18, 2025, 10:31am UTC](https://prepomax.discourse.group/t/extract-rotation-z-and-contact-normal-force/2482/4 "2025-02-18T10:31:12Z")

</div>

You would have to split this contact pair into separate pairs involving smaller regions (e.g. individual teeth). Just avoid overconstraints.

---

<div class="post-metadata">

### Author: ![ainurritegui](https://avatars.discourse-cdn.com/v4/letter/a/b5a626/32.png) [@ainurritegui](https://prepomax.discourse.group/u/ainurritegui)
#### Post date: [February 18, 2025, 10:53am UTC](https://prepomax.discourse.group/t/extract-rotation-z-and-contact-normal-force/2482/5 "2025-02-18T10:53:23Z")

</div>

Ok right.  
In that case this is what I defined:

> \*Surface interaction, Name=Contacto  
> \*Surface behavior, Pressure-overclosure=Linear  
> \*Surface interaction, Name=Contacto1  
> \*Surface behavior, Pressure-overclosure=Linear  
> \*Surface interaction, Name=Contacto2  
> \*Surface behavior, Pressure-overclosure=Linear

> \*Contact pair, Interaction=Contacto, Type=Surface to surface  
> Contact\_P\_flanc\_2, Contact\_G\_flanc\_2  
> \*Contact pair, Interaction=Contacto1, Type=Surface to surface  
> Contact\_P\_flanc\_3, Contact\_G\_flanc\_3  
> \*Contact pair, Interaction=Contacto2, Type=Surface to surface  
> Contact\_P\_flanc\_4, Contact\_G\_flanc\_4

And then if I only extract this , it should work right???

> \*Contact print, Slave=Contact\_G\_flanc\_3, Master=Contact\_P\_flanc\_3  
> CF

I have a problem now loading this file in PrePoMax … .that is why I am asking in the definition is correct??? I think there is an error

---

<div class="post-metadata">

### Author: ![FEAnalyst](https://yyz2.discourse-cdn.com/free1/user_avatar/prepomax.discourse.group/feanalyst/32/688_2.png) [@FEAnalyst](https://prepomax.discourse.group/u/FEAnalyst)
#### Post date: [February 18, 2025, 11:05am UTC](https://prepomax.discourse.group/t/extract-rotation-z-and-contact-normal-force/2482/6 "2025-02-18T11:05:07Z")

</div>

You don’t have to define it via keyword editor, PrePoMax supports `*CONTACT PRINT` in GUI (History Outputs → Contact Output).
