Fibre orientation in shell elements


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,


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.