# Fibre orientation in shell elements

**URL:** <https://calculix.discourse.group/t/fibre-orientation-in-shell-elements/1249>\
**Category:** Uncategorized\
**Created:** [September 5, 2022, 3:26pm UTC](https://calculix.discourse.group/t/fibre-orientation-in-shell-elements/1249 "2022-09-05T15:26:49Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Marin](https://avatars.discourse-cdn.com/v4/letter/m/cdc98d/32.png) [@Marin](https://calculix.discourse.group/u/Marin)\
**Post date:** [September 5, 2022, 3:26pm UTC](https://calculix.discourse.group/t/fibre-orientation-in-shell-elements/1249/1 "2022-09-05T15:26:49Z")

</div>

Hi,

I am simulating a biological membrane interacting with a fluid flow, and for this, I am using the Holzapfel material model implemented in CalculiX.

My material has two fibre families orthogonal to each other with the same material properties. In addition, the structure I am considering has two regions where the two fibres families are still orthogonal but run in a slightly different direction. To do so, I define a single user material using the Holzapfel model, with fibre orientation vector `a_1 = [1.,0.,0.]` and `a_2= [0,1.,0.]`. And the use an `*orientation` card to orient this material in two slightly different directions for each region of my model.

What I am unsure of is the coordinate system that is used when I define my fibre orientation in the first place. According to the manual, shell elements always introduce a local coordinate system, whether or not an `*orientation` card is specified. When I define a new coordinate system, the only difference I can gather is that this local coordinate system is defined using this new coordinate system and not the reference one.

It would make sense to me that fibre orientation is global. Otherwise, you could produce some wired behaviour for triangular elements where local coordinate system orientation will change across elements, for example.

Thanks in advance,

Marin

---

<div class="post-metadata">

**Author:** ![Calc\_em](https://avatars.discourse-cdn.com/v4/letter/c/43a26b/32.png) [@Calc\_em](https://calculix.discourse.group/u/Calc_em)\
**Post date:** [September 5, 2022, 5:51pm UTC](https://calculix.discourse.group/t/fibre-orientation-in-shell-elements/1249/2 "2022-09-05T17:51:06Z")

</div>

A good explanation may be found in Abaqus documentation, I think that you can use it as a reference due to the similarity of both codes:

> When a user-defined orientation is used with shell, membrane, or gasket elements or with contact surfaces, Abaqus first rotates and then projects the orientation system onto the element or contact surface using the algorithm described in this section.

And the explanation of subsequent steps of this projection follows.
