Generated list of angles/axes of BCC variant pairs not unique for K-S OR #251
-
Dear Developers, Given below is a script written in Mtex 4.5.0 to generate a list of angle/axes shared between the 24 bcc variants for the K-S orientation relationship. The angle/axis notation is representative of the unique misorientation angle and axis shared by a pair of variants V1/Vx, where (V = variant, x varies from 1 to 24). %--- Start Mtex
startup_mtex;
%---
%--- Define the crystal symmetry of the various phases (Note: Phase ID should match the CTF file)
cs_fcc = crystalSymmetry('m-3m', [3.6599 3.6599 3.6599], 'mineral', 'fcc');
cs_bcc = crystalSymmetry('m-3m', [2.866 2.866 2.866], 'mineral', 'bcc');
%---
%--- Define sample symmetry
ss = specimenSymmetry('orthorhombic');
%---
%--- Define the orientation relationship ---
% The Kurdjumov-Sachs OR
fcc2bcc = orientation('map',...
Miller(1,1,1,cs_fcc),Miller(0,1,1,cs_bcc),...
Miller(1,0,-1,cs_fcc),Miller(1,1,-1,cs_bcc));
fcc2_BCCvariants = fcc2bcc * cs_fcc.properGroup * inv(fcc2bcc);
anglz_fcc2_BCCvariants = angle(fcc2_BCCvariants)./degree
axz_fcc2_BCCvariants = axis(fcc2_BCCvariants);
[axz_fcc2_BCCvariants.h axz_fcc2_BCCvariants.k axz_fcc2_BCCvariants.l]` The script outputs the angles and axes of the 24 variant pairs of the K-S OR in the command window. For example: 60 deg/ [-1 -1 1]
60 deg/ [0 -1 -1]
60 deg/ [0 1 1] In the output from the script, there are 3 variant pairs with a 60 deg misorientation as follows: Similarly, in a unique K-S OR list, there are 4 variant pairs with a 50.5102 deg misorientation as follows: In the output from the script, there are 4 variant pairs with a 50.5102 deg misorientation as follows: I do not know and am not sure if this is a bug in Mtex (so my apologies in advance if I have posted this issue in the wrong forum) but I would be very grateful for:
Thank you in advance for any and all help. Regards, |
Beta Was this translation helpful? Give feedback.
Replies: 6 comments
-
Hi Azdiar, sorry for the late answer, but it took me some time to understand this issue. I think the reason you get a different result as expected is that what you compute as On the other hand, variants usually refers to orientations, i.e., assume variant 1 to have cube orientation (0°,0°,0°) then all other variants are computed by v = orientation.id(cs_bcc) * fcc2_BCCvariants These variants are not symmetrically equivalent. Inspecting their rotational angles and axes I think you get close to what you expect. omega = angle(v)./degree;
[omega,id] = sort(omega);
ax = round(axis(v(id)),'maxHKL',4);
[omega, ax.h, ax.k, ax.l] Ralf |
Beta Was this translation helpful? Give feedback.
-
Hi Ralf, Thank you ever so much for looking into this. %--- Start Mtex
startup_mtex;
%---
%--- Define the crystal symmetry of the various phases (Note: Phase ID should match the CTF file)
cs_hcp = crystalSymmetry('6/mmm', [2.545 2.545 4.14], 'X||a', 'Y||b*', 'Z||c', 'mineral', 'hcp','color',[0.5 0.5 0.5]);
cs_bcc = crystalSymmetry('m-3m', [2.866 2.866 2.866], 'mineral', 'bcc');
%---
%--- Define sample symmetry
ss = specimenSymmetry('orthorhombic');
%---
%--- Define the orientation relationship ---
% Note: the following command requires only one set of orthogonal planes and directions to describe the full OR
% The Burgers OR
hcp2bcc = orientation('map',...
Miller(0,0,0,1,cs_hcp,'HKIL',ss),Miller(0,1,1,cs_bcc,'hkl',ss),...
Miller(1,1,-2,0,cs_hcp,'UVTW',ss),Miller(1,1,-1,cs_bcc,'uvw',ss));
hcp2_BCCvariants = hcp2bcc * cs_hcp.properGroup * inv(hcp2bcc);
v = orientation.id(cs_bcc.properGroup) * hcp2_BCCvariants;
omega = angle(v)./degree;
[omega,id] = sort(omega);
ax = axis(v(id));
[omega', ax.h, ax.k, ax.l]` The output is as follows:
It is logical that for each misorientation angle, there are 2 listed angle/axis outputs that are the same. This can be easily reduced down to one unique angle/axis per misorientation angle. In the output, for the 60 deg misorientation angle, there are 6 listed variants which need to be reduced down to 3 unique variants. However, rows 8 and 10 (in bold) should return the same angle and axes in order to reduce them to 1 unique variant. But their axes do not match and are re-listed below as follows: Is there something else that needs to be considered when dealing with hexagonal-cubic transformations and their variants that I have not accounted for? Once again, thank you so much for all your help. Cheers, |
Beta Was this translation helpful? Give feedback.
-
The point is that for 60 degree rotations we are at the boundary of the fundamental region of the orientation space and hence the misorientation axis is well defined only up to sign. The most simples way to reduce your variants to a unique list of variants is v = unique(v) right after the definition of Ralf. |
Beta Was this translation helpful? Give feedback.
-
Dear Mr. Hielscher, i want to calculate the angles between KS-variants. I am referring to this publication for the definition and numbering of the variants: Morito, S., Huang, X., Furuhara, T., Maki, T., & Hansen, N. (2006). The morphology and crystallography of lath martensite in alloy steels. Acta Materialia, 54(19), 5323–5331. http://doi.org/10.1016/j.actamat.2006.07.009 The definition is done using
The paper mentioned above also gives the angles and axis of the variants with regard to variant 1. If I do the same using MTEX I use the following commands:
This gives:
This is not consistent with the angles given in the paper, which are:
plotting the orientations from a arbitrary fcc-orientation gives only two single orientations in a pole figure
The result is not suprising because
So I guess that the definition of the variants in the paper includes only two variants which are not symmetrically equivalent (but they also show a pole figure representing the variants and calculate angles between them)? Is there a problem in the paper or in MTEX? If I use another definition from here: http://digitool.library.mcgill.ca/webclient/StreamGate?folder_id=0&dvs=1510652225996~435 (p. 31) which gives:
This gives the expected figure for
and the angles/axis are:
Which are again not consistent with the angles given in literature (p.59) which are:
Why are these angles not consistent? The safest way to define KS-Varinats in MTEX seems to be something like:
which is nice and easy but how can i relate these variants to the definitions which are very frequently used in literature? Thanks in advance for your help! Regards, |
Beta Was this translation helpful? Give feedback.
-
Hi Michel, this is a long question. Some remarks not covering all:
r = inv(iks(1)) .* iks
r = iks(1) .* inv(iks) Although the result seems to be correct, it is not the correct way of computing the angles between the variants. What you did in 2) was the correct way. This indicates that the variants iks have not been defined correctly.
unique(trans) and your conclusion is correct the definition of the variants is not correct.
plotPDF(mori,Miller(1,1,1,mori.CS),'noSymmetry')
KS = orientation.KurdjumovSachs(cs_fcc,cs_bcc)
child_ori = parent_ori * inv(KS.variants)
angle(KS.variants * inv(KS))./degree which gives you the angles you want - but in the wrong order.
Ralf. |
Beta Was this translation helpful? Give feedback.
-
Hi Michael, no further comment here? Ralf. |
Beta Was this translation helpful? Give feedback.
Hi Michel,
this is a long question. Some remarks not covering all:
Although the result seems to be correct, it is not the correct way of computing the angles between the variants. What you did in 2) was the correct way. This indicates that the variants iks have not been defined correctly.