How to supply a visualization for the displacement gradient tensor

[This post was initially posted at iMechanica. After posting it, I realized there was some inconsistency with it, and I noted so at the thread at iMechanica. What I am posting below is a slightly modified version.]

It all began with a paper that I proposed for an upcoming conference in India. The extended abstract got accepted, of course, but my work is still in progress, and today I am quite sure that I cannot meet the deadline. So, I am going to withdraw it, and then submit a longer version of it to a journal, later.

Anyway, here is a gist of the idea behind the paper. I am building a very small pedagogical software called “toyDNS.” DNS stands for Displacement, straiN, and streSs, and the order of the letters in the acronymn emphasizes what I (now) believe is the correct hierarchical order for the three concepts. Anyway, let’s keep the hierarchical order aside and look into what the software does—which I guess could be more interesting.

The sofware is very very small and simple. It begins by showing the user a regular 2D grid (i.e. squares). The user distorts the grid using the mouse, which is somewhat similar to the action of an image-warping software. The software, then, immediately (i.e. in real time, without using menus etc.) computes and shows the following fields in the adjacent windows: (i) the displacement vector field, (ii) the displacement gradient tensor field, (iii) the rotation field, (iv) the strain field, (v) and the stress field. The software assumes plane-stress, linear elasticity, and uses static configuration data for material properties like nu and E. The software also shows the boundary tractions (forces) that would be required to maintain the displacement field that the user has specified.

Basically, the idea is that the beginning undergraduate student encountering the mechanics of materials for the first time, gets to see the importance of the rotation field (which is usually not emphasized in textbooks or courses), and thereby is able to directly appreciate the reason why an arbitrary displacement field uniquely determines the corresponding strain and stress fields but why the converse is not true—why an arbitrary stress/strain field cannot uniquely determine a corresponding displacement field. To illustrate this point (call it the compatibility issue if you wish) is the whole rationale behind this toy software.

Now, when it comes to visualizing the fields, I can always use arrows for showing the vector fields of displacements and forces. For strains and stresses, I can use Lame’s ellipse (this being a 2D space). In fact, since the strain and stress fields are symmetric, in 2D, they each have only 3 components, which means that the symmetric tensor object taken as a whole can directly map onto an RGB (or HLS) color-space, and so, I can also show a single, full-color field plot for the strain (or stress) field.

Ok. So far, so good.

The problem is with the displacement gradient tensor (DG for short here). Since the displacement field is arbitrary, there is no symmetry to the DG tensor. Hence, even in 2D, there are 4 independent components to it—i.e. one component too many than what can be accomodated in the three-component color-space. So, a direct depiction of the tensor object taken as a whole is not possible, and something else has to be done. So, I thought of the following idea.

First, the notation. Assume that the DG tensor is being described thus:

DG11 DG12
DG21 DG22


du/dx du/dy
dv/dx dv/dy

where DGij are the components of the DG tensor, u and v are the x- and y-components of the displacement field, and the d’s represent the partial differentation. (Also imagine as if the square brackets of the matrix notation are placed around the components listing above.)

Consider that DGij can be taken to represent a component of a vector that refers to the i-th face and j-th direction. Understanding this scheme is easier to do for the stress tensor. For the stress tensor, Sij is the component of the traction vector acting across the i-the face and pointing in the j-th direction. For instance, in fig. 2.3 here: , T^{e_1} is the vector acting across the face normal to the 1-axis.

Even if the DG tensor is not symmetric, the basic idea would still apply, wouldn’t it?

Thus, each row in the DG tensor represents a vector: the first row is a vector acting on the face normal to the x-axis, and the second is another vector (which, for DG, is completely indpendent of the first) acting on the face normal to the y-axis. For 2D, substitute “line” in place of “face.”

If I now show these two vectors, they would completely describe the DG tensor. This representation would be somewhat similar to the “cross-bars” visualization commonly used in engineering software for the stress tensor, wherein the tensor field is shown using periodically arranged cross-bars—very convenient if the grid is regular and uniform and has square elements.

Notice a salient difference, however. Since the DG tensor is asymmetric, the two vectors will not in general lie at right-angles to each other. The latter is the case only with the symmetric tensors such as the strain and stress tensors. [Correction added while posting this entry at this blog here: Here, for the strain and stress vectors, I have already assumed that the two vectors are aligned along the principal axes. Notice that for the DG tensor, my description assumes that the reference faces or lines are aligned with the global xy reference frame that is attached to the domain. This introduces the inconsistency that I later noted at the iMechanica blog.]

My question is this: Do you see any issues with this kind of visualization for the DG tensor? Is there any loss of generality by following this scheme of visualization? I mean, I read some literature on visualization of asymmetric tensors, and noticed that they sometimes worry about the eigenvalues being complex, not real. I think that complex eigenvalues would not be a consideration for the above kind of depiction of the DG tensor—the rotation part will be separately shown in a separate window anyway. But, still, I wanted to have the generality aspect cross-checked. Hence this post. Am I missing something? assuming too much? What are the other things, if any, that I need to consider? Also: Would you be “intuitively” comfortable with this scheme? Can you think of or suggest any alternatives?

Comments are welcome.

Addenda (while now posting this entry at this blog here, on Oct. 28, 2010):

At iMechanica, Biswajit Banerjee provided a very helpful link to notes on Mohr’s circle by Prof. Rebecca Brannon (Uni. Utah). Then I also found a few papers by her. Dr. Phillips Wallstedt also provided a helpful pointer. I still have to go through all this material, esp. the paper suggested by Wallstedt. Anyhow, let me reiterate my point: Lame’s ellipse is a superior visualization as compared to Mohr’s circle. Brannon’s notes are truly helpful in that they directly show how to use Mohr’s circle for asymmetric tensors as well. Much of the material regarding asymmetric tensors in her notes was not at all known to me, and I am really grateful to her for having posted it online (and to Biswajit for pointing it out to me). Yet, I am going to try and see what(ever) that can be done along the cross-bars and/or Lame’s ellipse side. One solution now obvious to me (after Brannon’s notes—which I have merely browsed not read through) is what she has already shown in her notes: show the eigenvectors in reference to the non-rectangular stress element—even if she adds an “arghh” to the idea :). I think it is not at all a bad idea. Indeed, the more I think about it, the better I like it. At least, it will be consistent with the cross-bars visualization for the symmetric tensors.  … And, oh, BTW, it reminds me of a point that I have wanted to make for a long time, viz., the possibly misleading nature of the stress element they usually always use in showing stress tensor definition. … Next post!

* * * * *    * * * * *    * * * * *

A Song I Like:

[Initially I thought of skipping this section just for this post, but then changed my mind. … This song is dedicated to the fond memory of a certain relative of ours who passed away yesterday, at a ripe age of 85+. It was my sister’s mother-in-law—but she never let us feel that “in-law” part of it. She was an almost completely unlettered lady who lived all her life in a village, herself working in farms. She was a lifelong “warkari,” and more: a soul of a very rare kind of simplicity and beauty.]

(Marathi) “saavaLyaa viThhalaa, tujhyaa daari aale”
Singer: Suman Kalyanpur
Music: Dashrath Pujari
Lyrics: R. N. Pawar