Gradient of a tensor in cylindrical coordinates

Click For Summary

Discussion Overview

The discussion revolves around the computation of the gradient of a tensor in cylindrical coordinates. Participants explore the definitions and calculations involved, comparing their results to those found in external references, particularly Wikipedia.

Discussion Character

  • Technical explanation
  • Debate/contested
  • Mathematical reasoning

Main Points Raised

  • One participant presents a formula for the gradient of a tensor and notes discrepancies between their results and those from Wikipedia, specifically regarding the term involving \( S_{rz} \).
  • Another participant raises concerns about the nature of the tensor field, questioning whether it is covariant or contravariant, which could affect the calculations.
  • There is a discussion about the interpretation of the term 'gradient', with suggestions that the participant may need to consider raising indices in their calculations.
  • A participant mentions a potential calculation mistake related to the Christoffel symbols, indicating confusion over their indices in the context of the gradient computation.
  • One participant suggests that if \( S_{ij} \) is covariant, the gradient should be computed as \( \nabla^a S_{ij} \), aligning with the Wikipedia reference.
  • A later reply acknowledges a calculation mistake regarding the Christoffel symbols, which may have contributed to the discrepancies in results.

Areas of Agreement / Disagreement

Participants express uncertainty regarding the correct interpretation of the tensor's nature and the appropriate method for calculating the gradient. Multiple competing views remain about the proper approach and the implications of covariant versus contravariant tensors.

Contextual Notes

Limitations include the unclear nature of the tensor field being discussed and the potential for misinterpretation of the gradient's definition. The discussion also highlights the importance of correctly identifying and applying Christoffel symbols in the calculations.

hanson
Messages
312
Reaction score
0
Hi all, I have been struggling (really) with this and hope someone can help me out.

I would just like to compute the gradient of a tensor in cylindrical coordinates.
I thought I got the right way to calculate and successfully computed several terms and check against the results given by wikipedia (see attached images).
However, there are some terms I computer are different from what's given in wikipedia.

For example the following term:
\nabla S = ... +\frac{1}{r}\left[ \frac{\partial S_{\theta z}}{\partial \theta} + S_{rz}\right] e_{\theta} \otimes e_{z} \otimes e_{\theta}+...

The formula I use is the following
\nabla S = \left[ \frac{\partial S_{ij}}{\partial \xi^k} - \Gamma^l_{ki} S_{lj}-\Gamma^l_{kj}S_{il}\right] g^i \otimes g^j \otimes g^k<br />

Denoting 1:r, \ 2:\theta, 3:z, I know that
<br /> S_{11} = S_{rr}, \ S_{12} = r S_{r \theta}, \ S_{13} = S_{rz} <br />
<br /> S_{21} = r S_{\theta r}, \ S_{22} = r^2 S_{\theta \theta}, \ S_{23} = r S_{\theta z} <br />
<br /> S_{31} = S_{z r}, \ S_{32} = r S_{z \theta}, \ S_{33} = S_{z z} <br />

And
<br /> g^1 = e_r, \ g^2 =\frac{1}{r} e_{\theta}, \ g^3 = e_{z}<br />

And the non-zeros Christoffel symbols are:
<br /> \Gamma^2_{12} = \frac{1}{r}, \ \Gamma^1_{22} = -r<br />

Then, using the definition above, I naively think that the term I mentioned above in the very beginning will be computed as
<br /> \begin{align}<br /> (\nabla S)_{232} &amp;= \left( \frac{\partial S_{23}}{\partial \xi^2}-\Gamma^1_{23} S_{13}-\Gamma^2_{23} S_{23}-\Gamma^3_{23} S_{33}-\Gamma^1_{22} S_{21}-\Gamma^2_{22} S_{22}-\Gamma^3_{22} S_{23} \right) g^2 \otimes g^3 \otimes g^2<br /> \\<br /> &amp;= \left[ \frac{r S_{\theta z}}{\partial \theta} +r (r S_{\theta r}) \right] \frac{1}{r^2} e_{\theta} \otimes e_{z} \otimes e_{\theta} \\<br /> &amp;= \frac{1}{r} \left( \frac{\partial S_{\theta z}}{\partial \theta} + r S_{\theta r} \right) e_\theta \otimes e_z \otimes e_\theta<br /> \end{align} <br />

which is clearly different from what wikipedia says. I don't understand how S_{rz} could possibly remain because it is multiplied by a zero Chirstoffel symbol...
I have been using this approach to successfully calculate many other terms, but it worked. I do not understand why it doesn't work in these terms.

If I turn to another formula for the gradient of a tensor
<br /> \nabla S = \left( \frac{\partial S^{ij}}{\partial z^k} + S^{lj}\Gamma^i_{lk}+S^{il}\Gamma^j_{lk} \right) g_i \otimes g_j \otimes g^k<br />
it seems that this might work because after expansion,
S_{rz}
is multiplied by \Gamma^2_{12}, which is non-zero.

I am very confused about this. What the problem with my first approach?
Can someone help me out? Thanks.
 

Attachments

  • formula.png
    formula.png
    7.4 KB · Views: 769
  • gradTensor.png
    gradTensor.png
    41.7 KB · Views: 983
Last edited:
Physics news on Phys.org
I didn't see any obvious mistakes, but I'm not sure of the nature of your tensor field, and I suspect that could be the problem.

S^{ij} transforms differently from S_{ij}, one is covariant in both indices, and one is contravariant in both indices.

Without knowing more about the details of your problem, I can't tell whether S is supposed to be covariant or contravariant.

For rank 1 tensors, \frac{\partial}{\partial r} would be contravariant, aka a "vector", while dr would be covariant, a map from a vector to a scalar (Sometimes dr could be considered just a scalar, a number, rather than a tensor. The difference is in the domain, if it's just a number it doesn't operate on anything, if it's a tensor it still returns a number, but it returns a number when it's given a vector as input)

For rank 2 tensors, if you're returning a number given two vectors, the tensor is covariant, written with lower indices, S_{ij}, just as the tensor v_{i}, a synonym for d x_{i} returns a number given one vector.

[add]
Another possible issue is the interpretation of 'gradient'. I was thinking \nabla_{a}, which is what you computed in step one, but it's possible you are actually looking for \nabla^{a}. Again, it's the whole co-contravariant thing.

A gradient usually has a vector value, you might just need to raise the index of what you computed. This would be done by multiplying by g^{ab}, i.e

<br /> \nabla^{a} S_{ij} = g^{ab} \nabla_{b} S_{ij}<br />

where summation over the repeated index (b in this case) is implied
 
Last edited:
pervect said:
I didn't see any obvious mistakes, but I'm not sure of the nature of your tensor field, and I suspect that could be the problem.

S^{ij} transforms differently from S_{ij}, one is covariant in both indices, and one is contravariant in both indices.

Without knowing more about the details of your problem, I can't tell whether S is supposed to be covariant or contravariant.

For rank 1 tensors, \frac{\partial}{\partial r} would be contravariant, aka a "vector", while dr would be covariant, a map from a vector to a scalar (Sometimes dr could be considered just a scalar, a number, rather than a tensor. The difference is in the domain, if it's just a number it doesn't operate on anything, if it's a tensor it still returns a number, but it returns a number when it's given a vector as input)

For rank 2 tensors, if you're returning a number given two vectors, the tensor is covariant, written with lower indices, S_{ij}, just as the tensor v_{i}, a synonym for d x_{i} returns a number given one vector.

[add]
Another possible issue is the interpretation of 'gradient'. I was thinking \nabla_{a}, but it's possible you are actually looking for \nabla^{a}. Again, it's the whole co-contravariant thing...

How about if S is the stress tensor, and I would like to find the gradient of the stress tensor, which is a third order tensor in cylindrical coordinates?

I am calculating according to the definition of the gradient of a tensor given up, which is the same definition wikipedia used...
I am not sure why they could be different... :(
 
Last edited:
If we assume that S_ij is actually covariant, as you wrote it, I'd think that the gradient would be \nabla^a S_{ij}. Which is pretty much what the wiki seems to say, and it suggests that you omitted to raise the index in your calculations.

See for instance http://mathworld.wolfram.com/IndexRaising.html as to how to raise an index.

At least that's my best guess at this point, I'm afraid I don't have the time to dig into this really thoroughly at the moment, and I'm "shooting from the hip" a bit. Maybe someone else can help you.
 
A friend of mine spotted a calculation mistake...
Somehow I read \Gamma^l_{ki} as \Gamma^l_{kj}...
and
\Gamma^l_{kj} as \Gamma^l_{ki}.
I don't know why I didn't make this mistake for the previous terms but only for this term, and couldn't spot it...stupid mistake.

Anyway, thank you for your help.
 

Similar threads

  • · Replies 14 ·
Replies
14
Views
2K
  • · Replies 21 ·
Replies
21
Views
3K
  • · Replies 6 ·
Replies
6
Views
1K
  • · Replies 1 ·
Replies
1
Views
1K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 7 ·
Replies
7
Views
3K
  • · Replies 3 ·
Replies
3
Views
937
  • · Replies 8 ·
Replies
8
Views
3K
  • · Replies 8 ·
Replies
8
Views
2K
  • · Replies 26 ·
Replies
26
Views
2K