[Math] Tensors in the context of engineering mechanics: can they be explained in an intuitive way

classical-mechanicslinear algebratensor-productstensors

I've spent a few weeks scouring the internet for a an explanation of tensors in the context of engineering mechanics. You know, the ones every engineering student know and love (stress, strain, etc.). But I cannot find any explanations of tensors without running into abstract formalisms like "homomorphisms" and "inner product spaces". I'm not looking for an explanation of tensors using abstract algebra or infinite, generalized vector spaces. I just want some clarification on what they actually mean and are doing in the nice 3D, Euclidean space, especially in the context of mechanics. There are a few questions that have been bugging me that I'm hoping all you smart people here can answer:

  1. What's the difference between a linear transformation and a tensor? Somehow they can both be represented by a $3\times 3$ matrix, but they do different things when acting on a vector? Like the columns of a $3 \times 3$ matrix of a linear transformation tell you where the basis vectors end up, but the same columns of a tensor don't represent basis vectors at all?

  2. Furthermore, a linear transformation transforms all of space but a tensor is defined at every point in space? Does a tensor act on vectors the same way as linear transformations do?

  3. What is the difference between a tensor product, dyadic product, and outer product and why are engineering tensors like the Cauchy stress built from the tensor product of two vectors (i.e. traction vector and normal vector)?

  4. Is it true that scalars and vectors are just $0^\mathrm{th}$ order and $1^\mathrm{st}$ order tensors, respectively? How are all these things related to each other?

  5. What topics and/or subtopics of linear algebra are essential to grasp the essence of tensors in the context of physics and engineering? Are they really just objects that act on vectors to produce other vectors (or numbers) or are they something more?

I have plenty more questions, but I figure the answers to these could already be enough to fill a whole textbook. Just to note, I have already searched Math.StackExchange for tensors but haven't found any explanations that make sense to me yet.

Thanks!

Best Answer

Although its a bit lengthy subject but i'll try to give you the exact mathematical information in as short an introduction as possible. Let's start directly with ....

DEFINITION OF TENSOR --- A ($p$,$q$)-tensor $T$ (with p and q integers) is a multilinear transformation $$T:\underbrace{V^*\times V^*\times\dots V^*}_{p\text{ times}}\times\underbrace{V\times V\times\dots V}_{q\text{ times}}\to\mathbb R$$ where $V$ is a vector space, $V^*$ is its dual vector space and $\mathbb R$ is the set of real numbers. The integer $p+q$ is the rank of the tensor.

Example, A (1,1) tensor is a multilinear transformation, $T:V^*\times V\to \mathbb R$. Using the same information we can construct an object $T:V\to V$ as shown later. We recognise this as a simple linear trasnformation of vectors, represented by a matrix. Hence a matrix is a (1,1) tensor.


What does that mean? It means that a Tensor takes p covectors and q vectors and converts them multilinearly to a real number. The main thing to understand here is the difference between a vector (member of a vector space) and a covector (member of the dual vector space). If you already know about this, you can skip this section. A vector is defined as a member of a vector space which itself is defined as a set with a addition and scalar multiplication following certain axioms.* A covector is defined as follows:

Definition (Dual space) The set of all linear transformations $\boldsymbol\omega:V\to\mathbb R$ is called the dual vector space and denoted by $V^*$. The members of the dual vector space are called covectors.

Theorem (without proof) The dual of a dual space of a finite dimesnional vector space $V$ is $V$. i.e., $$(V^*)^*=V$$

We usually denote vectors by $\boldsymbol v$ and covectors by $\boldsymbol \omega$. Also by convention, vectors have indices up and covectors have indices down. (The indices representing coordinates)

$$\boldsymbol{v}=v^i\boldsymbol e_i, \quad\boldsymbol\omega=\omega_i \boldsymbol \epsilon^i$$ Here $e^i$ are the basis vectors. Whenever you see an index up and the same index down you have to sum over that index, like in the above equations, ($\boldsymbol v = \sum_i v^i \boldsymbol e_i$).

Notice that a covector is a (0,1) tensor and a real number is a (0,0) tensor. This can bee seen readily from the definition. We can show that a vector is a (1,0) tensor, using the above mentioned theorem, although it is not very obvious.


How to represent tensors in a basis? Let's say we want to represent a (1,2)-tensor in a given basis. We apply it to an arbitrary input: $$T(\boldsymbol \omega, \boldsymbol v, \boldsymbol w)=T(\omega_a \boldsymbol\epsilon^a,v^b\boldsymbol e_b,w^c\boldsymbol e_c)=\omega_a v^b w^c T(\boldsymbol\epsilon^a,\boldsymbol e_b,\boldsymbol e_c)$$

Here the objects $T(\boldsymbol\epsilon^a,\boldsymbol e_b,\boldsymbol e_c)$ are simply real numbers and they can be labelled as $T^a_{bc}$. Hence a tensor can be represented by a set of $(\dim V)^{p+q}$ numbers. A tensor T of type (p,q) and rank (p+q) has p indices up and q indices down.


Theorem In the definition mentioned above we can transfer $V$ or $V^*$ to the other side by removing or adding a $*$ to V.

Consider a (1,1) tensor. It is an object $T^a_b$ which takes a vector and a covector and converts it to a real number, like so: $$T:V^*\times V\to\mathbb R$$ $$T^a_b \omega_a v^b = r, \,\, r\in\mathbb R.$$ However the same object can be used like so: $$T^a_bv^b = w^a,$$ here it has converted a vector to another, $$T:V\to V.$$

A matrix can do the same things, just think row vector = covector, column vector = vector, and matrix (NxN) = Tensor. Then: covector * Matrix * vector = real number, while Matrix * vector = vector. The entries of the matrix are precisely the numbers $T^a_b$.

Hence, a matrix is simply a (1,1) tensor. However the notation of matrices requires us to use it in some particular ways, like you can do covector * Matrix * vector but not Matrix * vector * covector.


Footnotes:

*the axioms are CANI ADDU - For addition: Commutativity, Associativity, Neutral element (0 vector) exists, Inverse elements exist. For scalar multiplication and addition: Associativity, two Distributivities, Unit element (1*v=v)

Please note this is only a mathematical introduction to this subject. I have not answered all your questions but this is an attempt to make things precise so you dont learn something wrong and probably you will now be able to answer thos questions yourself.

Related Question