mtex
mtex copied to clipboard
Calc NYE Tensor bug in MTEX 4.4.alpha5 and 4.3.2
Hello
I use an adapted version of the function calcGND to extract the components of the NYE tensor.
It give me different result using MTEX 4.3.1 or MTEX 4.4.alpha5 and 4.3.2 (who give the same result). I do trust the result from the version 4.3.1 because it is similar to the result I have with ATOM, software from LEM3 in Metz.
Here I plot the alpha33 using the same script and the same adapted version of calcGND:
using mtex4.3.1 and 4.3.2
using mtex4.3.1 and 4.4.alpha5
and here the same component using ATOM data import in mtex.
By the way, I think you should remove the component
alpha(1,1)
alpha(2,2)
alpha(3,1)
alpha(3,2)
from your gnd calculation which are not available from 2d EBSD (see equation 12 in Pantleon 2008). Like this you could remove the % we have to do something here TODO!!
.
I hope this can helps. All the best Thomas
here my adapted calcGND.m function. calcGND.m.txt
Hi Thomas,
I can confirm that MTEX 4.3.1 and 4.3.2 give different values for alpha33. More specifically, both versions give different values for ebsd.gradientX (and gradientY). However, the two values of gradientX are symmetrically equivalent. I just now realized that gradientX and gradientY are well defined only modulo symmetry. As a consequence the Nye tensor is also effected by crystal symmetry.
Is there a reason, why you think that alpha33 is unambiguously defined?
Ralf
alpha33
Ralf.
Hi Ralf
Thanks for your answer. I will try to answer your question.
First when you said gradientX (and gradientY) give symmetrically equivalent value you mean in regard to the crystal symmetry CS. But you don't have gradientX_mtex331=-gradientX_mtex332
. From what I check I agree with this.
I did the calculation using the function 9 and 10 from Pantleon2008. It is written just before the equation 8 that Delta_Theta_i is compute here in sample coordinates. I compute Delta_Theta using equation 9. If I do the calculation with my function (eq9_pantleon.m) it give me the same result on both 4.3.1 and 4.4.alph5. and the result are consistent with gradientX (and gradientY) of Mtex 4.3.1.
Here the script and the function
Panthleon.m.txt
eq9_Pantleon.m.txt
And the result for the same script running on 4.3.1 and 4.4.alpha5
Is there a reason, why you think that alpha33 is unambiguously defined?
I see the point that due to the crystal symmetry there is not a unique solution. By looking at the reference 6 in Pantleon2008 here. Pantleon said (after the equation 8) that he choose the quaternion representing the rotation between 2 orientations A and B which have the lowest misorientation angle. From a physical point of view this is coherent because it will minimize the number of dislocation.
To conclude I think (from Pantleon2005) that we should take the lowest misorientation angle for Delta q
Thanks Thomas
Hi Thomas,
first a short point, I will think about this later more in detail. If you look at the quaternion representing the rotation between A and B then it makes a lot of sense to consider the quaternion that has the lowest misorientation angle. In fact, MTEX is doing it like this. However, this makes the choice of the quaternion still not unique as there are many quaternions representing symmetrically equivalent misorientations that have the same minimal angle.
Effectively, the gradient in a certain direction is nothing else as a scaled version of the rotational axis of one of these quaternions. Thus depending of which of the quaternions you choose you will get a different gradient.
Ralf.
Hi Ralf
I come back to this probleme of NYE tensor calculation and I still have few point unclear.
First I have been tested the latest version of MTEX 4.5.0 and it give me strange value. I still use as reference the version 4.3.1 which give me similar result compare to ATOM software from LEM3 (Metz). Is there any change in the function gradientX and gradientY between these MTEX version.
Second I have been reading Pantleon 2008 again and I have one comment (or question). We agreed to choose during the calculation the misorientation with the lowest misorientation angle and you said that there is not a unique solution. I wonder if for each lowest misorientation angle the calculation of lattice curvature is different. Is it possible to test it.
Thanks for your helps. Thomas
Hi Thomas, Your question is very interesting and important. I tried to figure it out. By comparing your eq9_Pantleon and the gradientX function, I think I got the root for the difference. I referred Mtex as the 4.5.0 version in this comment.
- The quaternion range in your file will give a different size as used in Mtex. Yours is size(q)-1, while Mtex has size(q). Also you compare the q to left and down, while Mtex compare it to right and up.
-
log.m in Mtex is using eq9 in the paper, and its output tq should be the same as your
KK1*dx
andKK2*dy
. Mtex equation forgradientX/Y
could be wrong because it times the quaternion of the ebsd data again: by usinggX = ori .* log(ori_right,ori) ./ ebsd.dx;
in EBSDsquare.m. - You can get the same result as Mtex if you try my edited version of your file. But this result should be wrong as eq9 should be
gX = log(ori_right,ori) ./ ebsd.dx
if using a Mtex expression. - In EBSDsquare.m, we may consider to fix:
59 gX = ori .* log(ori_right,ori) ./ ebsd.dx;
70 gY = ori .* log(ori_up,ori) ./ ebsd.dy;
to59 gX = log(ori_right,ori) ./ ebsd.dx;
70 gY = log(ori_up,ori) ./ ebsd.dy;
Ralf, please correct me if I was wrong.
All the best, Shuai