# How to interpret tensor form PDE in terms of matrix algebra

From this mathwork page "c for system", the usual second order PDE is written in tensor form:

$$-\nabla\cdot(\mathbf{c} \otimes \nabla \mathbf{u})+\mathbf{a}\mathbf{u}=\mathbf{f}$$

and $\mathbf{c}$ is claimed to be a $N$-by-$N$-by-$2$-by-$2$ tensor. Each side of the equation should correspond to a $N$-by-$1$ vector in this case, and now I am confused... I want to express this equation in matrix form, since $\mathbf{c}$ is a 4th rank tensor while $\nabla{u}$ is 2nd order tensor($2$-by-$N$ matrix?), how to define the tensor operation $\otimes$ then? Seems wiki doesn't give the answer.

Cand anybody elaborate the rule here? (Also how to cast the gradient operator in this case?) Any physical insight is honestly appreciated!

• I'll translate this to abstract index notation because it will probably make the question clearer. The equation is $-\nabla^c c{}^a{}_b{}_{cd} \nabla^d u^b + a^a{}_b u^b = f^a$ (I think). Aug 19, 2014 at 21:21

Using abstract index notation:

There are two types of indices here: I will use $i,j,\ldots$ for indices relative to the domain (which appears to be $\mathbb{R}^2$) and $A,B,\ldots$ for indices relative to the co-domain (basically from the number of equations) which is $\mathbb{R}^N$. We can write $\mathbf{c}$ as the rank 4 tensor in index notation

$$c^{A;ij}_{B}$$

(I included a semicolon just for clarity to separate the upper case and lower case indices.) and adopting the Einstein summation convention your equation is

$$- \nabla_i ( c^{A;ij}_{B} \nabla_j u^B) + a^A_B u^B = f^A$$

Without using indices:

Your tensor $\mathbf{c}$ can be thought of a $(N\times 2)\times (N\times 2)$ matrix, that is a square matrix with $N\times 2$ rows and columns. You can flatten $\nabla \mathbf{u}$ to an $N\times 2$ column vector. Then $\mathbf{c}$ acts on $\nabla \mathbf{u}$ by matrix multiplication.

The key, of course, is to flatten things the same way from $\mathbf{c}$ and $\mathbf{u}$.

• Thanks! but I still can't be convinced $-\nabla\cdot(\mathbf{c} \otimes \nabla \mathbf{u})$ results in an N-by-1 vector. the stuff in the braket gives N-by-2 matrix, right? then what about the left divergence? Aug 20, 2014 at 15:31
• Yes, the stuff in the bracket is $N\times 2$, the 2 gets killed by the divergence. Think about the case where $N = 1$: the divergence of a vector (which is a 1-by-2 matrix) is a scalar (which is a 1-by-1 matrix). In the general case, the divergence act on each of the $N$ rows separately, collapsing each row (which is a 1-by-2 matrix) to a scalar. So you end up with N-by-1. Aug 20, 2014 at 15:38
• thanks! now I understand! in fact I don't know much about tensor analysis, do you know any reference that illutrates various tensor equations using matrix algebra? Aug 20, 2014 at 15:55
• The use of the tensor product symbol $\otimes$ on the page you linked to is actually a pretty poor choice of notation. What you are working with is in fact tensor contractions which sometimes is better denoted by $\cdot$ (to remind us the simplest case, which is the dot product). In fact, this is why a lot of people prefer to work with some version of the abstract index notation since for products between higher rank tensors there are just too many possibilities to be concisely captured with a few binary operators. Aug 21, 2014 at 9:07
• There is no 'rule' about flattening tensors: it is up to the author to make clear which product between two tensors he is taking. In the webpage that you linked to, the author did explain exactly what he meant (see the second displayed equation), even though his choice of original notation is poor. So the "flattening" rule you are looking for is exactly "what the author specified". // Regarding 2xN versus Nx2 : the ordering of rows versus columns does not matter in the grand scheme of things. What's important is making sure the indices line up correctly. Aug 21, 2014 at 9:12