Skip to content

Kelvin–Mandel representation

Minor-symmetric order-4 tensors and symmetric order-2 tensors form spaces of dimension 21 and 6 in 3-D. The Kelvin–Mandel representation makes that explicit by mapping them onto   matrices and -vectors isometrically, which turns tensor algebra into matrix algebra. It goes back to Thomson [1] and Mandel [2]; its spectral consequences are developed in [3].

The map

Index pairs are ordered

and off-diagonal entries carry a factor — one per off-diagonal pair, so where both index pairs are off-diagonal:

These are KM and its inverse inv_KM; the index ordering is _KM_COUPLES in src/tens_projection.jl.

What the buys

The factors are chosen so that the map is an isometry for the Frobenius scalar product of Tensor algebra. Every line below is an identity, verified in test/:

Tensor statementMatrix statement
  
  
  
  

Double contraction is an ordinary matrix product and inversion an ordinary matrix inverse. This is why every projection algorithm in this library is written in the   picture.

Contrast with Voigt

Voigt notation uses engineering shear strains: a factor on the off-diagonal strain components and on the stress ones. The consequences matter:

Kelvin–MandelVoigt
stress and strain treatedidenticallydifferently
  preservedyesno
   matrix productyesno
  matrix inverseyesno
rotation matrix orthogonalnot orthogonal

The last line is the decisive one for this library and is developed next.

Rotation: an orthogonal congruence

Let   and let    be the order-4 tensor rotating minor-symmetric tensors (Rotations). Its Kelvin–Mandel matrix

so a change of frame is an orthogonal congruence

TensND builds it either from Euler angles (_KM_rotation(θ, ϕ, ψ)) or directly from a frame (_km_congruence, in src/tens_anisotropic.jl); the latter is what relates the two views of an orthotropic tensor,

with the block-diagonal matrix in the material frame (Orthotropy).

Why orthogonality is the whole point

Because is orthogonal, the congruence is a rotation of the 21-dimensional Euclidean space of elasticity tensors: it preserves  , hence preserves distances to a symmetry class. Every projection in Projection onto a symmetry class may therefore be computed in whichever frame is convenient and rotated back, and the optimization over orientation is an optimization over a compact group acting by isometries. In Voigt notation none of this holds.

This identity is easy to get wrong and easy to appear right: in the canonical frame   and every convention error hides. It is therefore pinned by a test on a rotated frame (Testing and conventions).