Trace, Scalar Product, Eigenvalues

“Trace” is a particular operator that, when “applied” to a 2^{nd} order (or higher) tensor, sums the diagonal components. Strictly-speaking, the definition of “trace” can be taken as tr(\mathbf{u}\otimes\mathbf{v})=\mathbf{u\cdot v}

tr(\mathbf{A \cdot B})=tr(\mathbf{C})=C_{ii}
C_{ij}=A_{ik}B_{kj} \ne A_{ik}B_{jk} unless the tensor is symmetric
tr(\mathbf{A \cdot B})=C_{ii}=A_{ik}B_{ki}
tr(\mathbf{A \cdot B \cdot C})=tr(\mathbf{B \cdot C \cdot A})=tr(\mathbf{C \cdot A \cdot B})=A_{ik}B_{kl}C_{li}

The “scalar product” of tensors is analogous to the “dot product” of vectors. In this text, the scalar product is denoted by the operator “:” and is defined as follows:

\mathbf{A:B}=tr(\mathbf{A}^{T} \cdot \mathbf{B})=tr(\mathbf{A} \cdot \mathbf{B}^T)=A_{ik}B_{ik}

We can arrive at the same result in a different manner:

\mathbf{A:B}=A_{ij}\mathbf{e_ie_j}:B_{lk}\mathbf{e_l e_k}=A_{ij}B_{lk}\delta_{il}\delta_{jk}=A_{ik}B_{ik}

note: Since the scalar product of two tensors is analogous to the “dot product” of two vectors, some authors define the scalar product between \mathbf{A} and \mathbf{B} as \mathbf{A \cdot B} [Hoger]. In other words, these authors define \mathbf{A} \cdot \mathbf{B}=A_{ik}B_{ik}. Using such a definition, \mathbf{A \cdot B}, which still must be equal to A_{ij}\mathbf{e_ie_j} \cdot B_{kl}\mathbf{e_ke_l}, can no longer be expressed as A_{ij}B_{kl}\delta_{jk}\mathbf{e_i}\mathbf{e_l}, as was done previously.

An eigenvector, \mathbf{n}, of a tensor or a matrix has the following special property:
when \mathbf{n} is multiplied by the matrix, the result is a new vector that has the same direction as \mathbf{n}. The amount by which the magnitude of the vector has changed is the value of the eigenvalue (the eigenvalue that corresponds to the eigenvector \mathbf{n}).

i.e. (\mathbf{A}-\lambda\mathbf{I}) \cdot \mathbf{n}=0

\lambda are the eigenvalue solutions and \mathbf{n} are the corresponding eigenvectors
Any tensor product can be expressed in terms of invariants (or eigenvalues)
\boldsymbol{\epsilon}=[\lambda_{1}n_{i}^{1}n_{j}^{1}+\lambda_{2}n_{i}^{2}n_{j}^{2}+\lambda_{3}n_{i}^{3}n_{j}^{3}]\mathbf{e_i \otimes e_j} (skipped work)
\boldsymbol{\epsilon}=\sum_{a=1}^{3}\lambda_{a}\mathbf{n_a \otimes n_a}

Characteristic equation and Cayley-Hamilton Theorem:

One would typically solve for the eigenvalues from a “characteristic equation” of the form \lambda^3-I_A\lambda^2+II_A\lambda-III_A=0 (for a 3×3 matrix), where I_A, II_A, III_A are coefficients that depend on the values within the matrix, \mathbf{A}. These coefficients, I_A, II_A, III_A, are more commonly called invariants.


We’ll see some alternative expressions for I_A, II_A, III_A later, when we get to “hyperelasticity.”

note: The invariants of a matrix are the same regardless of coordinate system (as is the trace).

The matrix also satisfies its own characteristic equation (this is known as the Cayley-Hamilton Theorem).

(1)   \begin{equation*} \mathbf{A}^3-I_A\mathbf{A}^2+II_A\mathbf{A}-III_A\mathbf{I}=0 \end{equation*}


(2)   \begin{equation*} \frac{1}{III_A}(\mathbf{A}^2-I_A\mathbf{A}+II_A\mathbf{I})=\mathbf{A}^{-1} \end{equation*}

Either eq. 1 or eq. 2 are often used in derivations of hyperelasticity later on.

  • [DOI] A. Hoger, “A second order constitutive theory for hyperelastic materials,” International Journal of Solids and Structures, vol. 36, iss. 6, pp. 847-868, 1999.
    title = "A second order constitutive theory for hyperelastic materials",
    journal = "International Journal of Solids and Structures",
    volume = "36",
    number = "6",
    pages = "847 - 868",
    year = "1999",
    note = "",
    issn = "0020-7683",
    doi = "10.1016/S0020-7683(97)00330-2",
    url = "",
    author = "Anne Hoger"