3
$\begingroup$

I am trying to model a linear elastic material in Abaqus using UMAT. For my application, I need to rotate the 6x6 compliance matrix for a given set of eigenvectors (or a rotation matrix). I came across a thread titled "debugging a rotation matrix for elastic constants" where this recap theory was explained in very good detail.

I was wondering if there are any good sources out there that show the actual matrix rotation process either in a computational sense or just a theoretical representation.

$\endgroup$
6
$\begingroup$

There are two main ways to write stress/strain tensors as 6 components vectors:

  • Voigt notation, that is the most common; and

  • Mandel-Kelvin notation, that has the advantage of writing stress and strains in the same way, so their rotations are done via the same $6\times 6$ matrices.

A reference that I consider good for Voigt's notation is Auld's book, and Mehrabadi and Cowin's paper describes the rotation matrix for Mandel-Kelvin notation. In general, I would suggest that you use a CAS for your calculation since they can get long really fast. I developed a Python package and the developing version has these matrices in there.

References

  • Auld, B. A. (1973). Acoustic fields and waves in solids. Рипол Классик.

  • Bower, Allan F. Applied mechanics of solids. CRC press, 2009. Ch. 3.

  • Carcione, J. M. (2007). Wave fields in real media: Wave propagation in anisotropic, anelastic, porous and electromagnetic media. Elsevier.

  • Mehrabadi, Morteza M., y Stephen C. Cowin. 1990. “Eigentensors of Linear Anisotropic Elastic Materials”. The Quarterly Journal of Mechanics and Applied Mathematics 43(1):15–41.


Suppose that you have a rotation matrix

$$[Q] = \begin{bmatrix} Q_{xx} &Q_{xy} &Q_{xz}\\ Q_{yz} &Q_{yy} &Q_{yz}\\ Q_{zx} &Q_{zy} &Q_{zz} \end{bmatrix}\, ,$$

you can form the (Bond-like) rotation matrices that are described below.

Voigt notation

Rotation of stresses

$$[M] =\begin{bmatrix} Q_{xx}^{2} & Q_{xy}^{2} & Q_{xz}^{2} & 2 Q_{xy} Q_{xz} & 2 Q_{xx} Q_{xz} & 2 Q_{xx} Q_{xy}\\ Q_{yx}^{2} & Q_{yy}^{2} & Q_{yz}^{2} & 2 Q_{yy} Q_{yz} & 2 Q_{yx} Q_{yz} & 2 Q_{yx} Q_{yy}\\ Q_{zx}^{2} & Q_{zy}^{2} & Q_{zz}^{2} & 2 Q_{zy} Q_{zz} & 2 Q_{zx} Q_{zz} & 2 Q_{zx} Q_{zy}\\ Q_{yx} Q_{zx} & Q_{yy} Q_{zy} & Q_{yz} Q_{zz} & Q_{yy} Q_{zz} + Q_{yz} Q_{zy} & Q_{yx} Q_{zz} + Q_{yz} Q_{zx} & Q_{yx} Q_{zy} + Q_{yy} Q_{zx}\\ Q_{xx} Q_{zx} & Q_{xy} Q_{zy} & Q_{xz} Q_{zz} & Q_{xy} Q_{zz} + Q_{xz} Q_{zy} & Q_{xx} Q_{zz} + Q_{xz} Q_{zx} & Q_{xx} Q_{zy} + Q_{xy} Q_{zx}\\ Q_{xx} Q_{yx} & Q_{xy} Q_{yy} & Q_{xz} Q_{yz} & Q_{xy} Q_{yz} + Q_{xz} Q_{yy} & Q_{xx} Q_{yz} + Q_{xz} Q_{yx} & Q_{xx} Q_{yy} + Q_{xy} Q_{yx} \end{bmatrix}$$

The rotation of a stiffness tensor in Voigt's notation is done via

$$[C'] = [M] [C] [M^T]\, .$$

Rotation of strains

$$[N] = \begin{bmatrix}Q_{xx}^{2} & Q_{xy}^{2} & Q_{xz}^{2} & Q_{xy} Q_{xz} & Q_{xx} Q_{xz} & Q_{xx} Q_{xy}\\ Q_{yx}^{2} & Q_{yy}^{2} & Q_{yz}^{2} & Q_{yy} Q_{yz} & Q_{yx} Q_{yz} & Q_{yx} Q_{yy}\\ Q_{zx}^{2} & Q_{zy}^{2} & Q_{zz}^{2} & Q_{zy} Q_{zz} & Q_{zx} Q_{zz} & Q_{zx} Q_{zy}\\ 2 Q_{yx} Q_{zx} & 2 Q_{yy} Q_{zy} & 2 Q_{yz} Q_{zz} & Q_{yy} Q_{zz} + Q_{yz} Q_{zy} & Q_{yx} Q_{zz} + Q_{yz} Q_{zx} & Q_{yx} Q_{zy} + Q_{yy} Q_{zx}\\ 2 Q_{xx} Q_{zx} & 2 Q_{xy} Q_{zy} & 2 Q_{xz} Q_{zz} & Q_{xy} Q_{zz} + Q_{xz} Q_{zy} & Q_{xx} Q_{zz} + Q_{xz} Q_{zx} & Q_{xx} Q_{zy} + Q_{xy} Q_{zx}\\ 2 Q_{xx} Q_{yx} & 2 Q_{xy} Q_{yy} & 2 Q_{xz} Q_{yz} & Q_{xy} Q_{yz} + Q_{xz} Q_{yy} & Q_{xx} Q_{yz} + Q_{xz} Q_{yx} & Q_{xx} Q_{yy} + Q_{xy} Q_{yx} \end{bmatrix}$$

The rotation of a compliance tensor in Voigt's notation is done via

$$[C'] = [N] [C] [N^T]\, .$$

Mandel-Kelvin notation

$$[M] = \begin{bmatrix} Q_{xx}^{2} & Q_{xy}^{2} & Q_{xz}^{2} & \sqrt{2} Q_{xy} Q_{xz} & \sqrt{2} Q_{xx} Q_{xz} & \sqrt{2} Q_{xx} Q_{xy}\\ Q_{yx}^{2} & Q_{yy}^{2} & Q_{yz}^{2} & \sqrt{2} Q_{yy} Q_{yz} & \sqrt{2} Q_{yx} Q_{yz} & \sqrt{2} Q_{yx} Q_{yy}\\ Q_{zx}^{2} & Q_{zy}^{2} & Q_{zz}^{2} & \sqrt{2} Q_{zy} Q_{zz} & \sqrt{2} Q_{zx} Q_{zz} & \sqrt{2} Q_{zx} Q_{zy}\\ \sqrt{2}Q_{yx} Q_{zx} & \sqrt{2}Q_{yy} Q_{zy} & \sqrt{2}Q_{yz} Q_{zz} & Q_{yy}Q_{zz} + Q_{yz} Q_{zy} & Q_{yx} Q_{zz} + Q_{yz} Q_{zx} & Q_{yx} Q_{zy} + Q_{yy} Q_{zx}\\ \sqrt{2}Q_{xx} Q_{zx} & \sqrt{2}Q_{xy} Q_{zy} & \sqrt{2}Q_{xz} Q_{zz} & Q_{xy}Q_{zz} + Q_{xz} Q_{zy} & Q_{xx} Q_{zz} + Q_{xz} Q_{zx} & Q_{xx} Q_{zy} + Q_{xy} Q_{zx}\\ \sqrt{2}Q_{xx} Q_{yx} & \sqrt{2}Q_{xy} Q_{yy} & \sqrt{2}Q_{xz} Q_{yz} & Q_{xy} Q_{yz} + Q_{xz} Q_{yy} & Q_{xx} Q_{yz} + Q_{xz} Q_{yx} & Q_{xx} Q_{yy} + Q_{xy} Q_{yx} \end{bmatrix}$$

In this case, you can rotate stiffness and compliance tensors with

$$[A'] = [M] [A] [M^T]\, .$$

| cite | improve this answer | |
$\endgroup$
  • 1
    $\begingroup$ Thank you for the response. This is really helpful. I appreciate your help. $\endgroup$ – Sagar Shah Jul 24 at 13:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.