# Gradient of dot product of two tensors

Through obtaining an alternative form for force balance equation in a fluid mechanics problem, I stopped at a point where I have to prove this identity where $$A$$ and $$B$$ are second-order matrices:$$\nabla(A.B)=(\nabla A).B + A^T .(\nabla B)$$How can it be derived using index notation?
Edit
I found this proof from here.
enter image description here
Apart from two typos that I guess are present (e.g. $$\nabla .A$$ instaed of $$\nabla A$$), I don't understand where $$B_{,m}$$ converts to $$e_m . \nabla B$$. Also I prefer a full index notation proof rather than a partly indexed one.
Edit
By dot product, I mean the contraction of one of the indices.

• This question seems to be more about mathematics than about computational science. May 8, 2020 at 16:38
• Also, how do you define the "dot product"? Is it the contraction of one of the indices or two of them? May 8, 2020 at 19:43
• What it boils down to is to write everything down in index notation. If you understand over which indices summation happens in the original formula, then the proof will be obvious. May 8, 2020 at 22:08
• @nicoguaro By dot product, I mean the contraction of one of the indices. The contraction of two of the indices is usually called double dot product, shown by : . May 9, 2020 at 2:01
• @Alish is right... the term $B,_{m}$ is only equal to $(e_m\cdot \nabla)B$ and not $e_m\cdot \nabla B$.
– HBR
May 9, 2020 at 11:22

$$\def\p{\partial_{p}}$$The linked paper has not been peer-reviewed and the result is clearly wrong.
Expanding the expression in index notation yields \eqalign{ {\cal H} &= \nabla(A\cdot B) \\ {\cal H}_{pik} &= \p(A_{ij}B_{jk}) \\ &= (\p A_{ij})B_{jk} + A_{ij}(\p B_{jk}) \\ &= (\p A_{ij})B_{jk} + (\p B_{kj}^T)A_{ji}^T \\ {\cal H} &= (\nabla A)\cdot B + \Big((\nabla B^T)\cdot A^T\Big):{\cal E} \\ } where $${\cal E}$$ is a fourth-order tensor which permutes the final two indices, and whose components can be expressed in terms of Kronecker delta symbols as \eqalign{ {\cal E}_{ijk\ell} &= \delta_{i\ell}\,\delta_{jk} \\ }