David Mainprice 23/01/2018
Specify Crystal Symmetries
% crystal symmetry
Fo_CS = crystalSymmetry('222', [4.756 10.207 5.98], 'mineral', 'Forsterite', 'color', 'light green')
Wad_CS = crystalSymmetry('222', [5.6978 11.462 8.2571], 'mineral', 'Wadsleyite', 'color', 'light blue')Fo_CS = crystalSymmetry
mineral : Forsterite
color : light green
symmetry: 222
elements: 4
a, b, c : 4.8, 10, 6
Wad_CS = crystalSymmetry
mineral : Wadsleyite
color : light blue
symmetry: 222
elements: 4
a, b, c : 5.7, 11, 8.3Define Burgers orientation relation between parent and child phases
<html>
<table class="usertable">
<tr>
<td>
<p>(01-1)Wad & [001]ol</p>
</td>
</tr>
</table>
</html>
Parent Child (100)Forsterite || (01-1)Wadsleyite (010)Forsterite || (012)Wadsleyite [001]Forsterite || [100]Wadsleyite
Fo2Wa = orientation.map(...
Miller(1,0,0,Fo_CS,'hkl'),Miller(0,1,-1,Wad_CS,'hkl'),...
Miller(0,0,1,Fo_CS,'uvw'),Miller(1,0,0,Wad_CS,'uvw'))Fo2Wa = misorientation (Forsterite → Wadsleyite)
(001) || (100) [010] || [011]axis/angle pair for Forsterite to Wadsleyite misorientation
mis_axis_wrt_Fo = round(axis(Fo2Wa))
mis_axis_wrt_Wad = round(Miller(mis_axis_wrt_Fo,Wad_CS,'hkl'))
mis_angle_Fo_Wad = angle(Fo2Wa)/degreemis_axis_wrt_Fo = Miller (222)
h k l
1 3 1
mis_axis_wrt_Wad = Miller (Wadsleyite)
h k l
2 12 3
mis_angle_Fo_Wad =
95.4115generate Child Wadsleyite orientations using misorientation 'Forsterite2Wadsleyite'
% Forsterite Parent orientation
ori_Fo_Parent = orientation.id(Fo_CS)
% compute a Wadsleyite child orientation related to the Parent Forsterite orientation
Wad_Child = ori_Fo_Parent * inv(Fo2Wa)ori_Fo_Parent = orientation (Forsterite → y↓→x)
Bunge Euler angles in degree
phi1 Phi phi2
0 0 0
Wad_Child = orientation (Wadsleyite → y↓→x)
Bunge Euler angles in degree
phi1 Phi phi2
234.231 90 90compute all symmetrically possible child orientations - strange angles like 144.231 144.231 0 0 etc - maybe I made a mistake here ? RH: this is incorrect
Wad_Child_orientations_Symm = unique(Wad_Child.symmetrise * inv(Fo2Wa))
% RH: this is correct - you have to symmetrise the parent and then apply
% the orientation relation ship to get all possibe variants
Wad_Child_orientations = unique(ori_Fo_Parent.symmetrise * inv(Fo2Wa))
% Childs using the function variants
% RH: this is correct as well and gives the same result as above
Wad_Child_orientations = ori_Fo_Parent * inv(Fo2Wa.variants)
% all possible child to child misorientations- I get the same result here !
% Wad_Child_mori = (100)/71.5371
% RH: this is correct
Wad_Child_mori = unique(Fo2Wa.variants * inv(Fo2Wa))
%
%
% Wad_Wad misorientation peak - N.B. This not an variant or child rather a twin
% Data analysis from an experiment at T = 1600C & P = 16 GPa
gB_Child_Child = orientation.byAxisAngle(Miller(0,0,1,Wad_CS,'uvw'),90.0*degree,Wad_CS,Wad_CS)
%**************************************************************************Warning: Symmetry missmatch! The following crystal frames seem to be different
Wadsleyite (222)
Forsterite (222)
Wad_Child_orientations_Symm = orientation (Wadsleyite → y↓→x)
size: 2 x 1
Bunge Euler angles in degree
phi1 Phi phi2
144.231 144.231 0
324.231 144.231 0
Wad_Child_orientations = orientation (Wadsleyite → y↓→x)
size: 2 x 1
Bunge Euler angles in degree
phi1 Phi phi2
305.769 90 270
234.231 90 90
Wad_Child_orientations = orientation (Wadsleyite → y↓→x)
size: 1 x 2
Bunge Euler angles in degree
phi1 Phi phi2
234.231 90 90
305.769 90 270
Wad_Child_mori = misorientation (Wadsleyite → Wadsleyite)
size: 2 x 1
Bunge Euler angles in degree
phi1 Phi phi2
0 0 0
0 71.5371 180
gB_Child_Child = misorientation (Wadsleyite → Wadsleyite)
(001) || (001) [100] || [010]Parent (Forsterite) to 4 Daughter (Wadsleyite) variants
Mis = inv(O1) * O2
% all crystallographically equivalent orientations using symmetry of Parent
% Parent (Forsterite) reference orientation Euler (0,0,0)
ori_Fo_Parent = orientation.byEuler(0,0,0,Fo_CS)
% all crystallographically equivalent Child orientations
ori_Wad_Childs = symmetrise(ori_Fo_Parent) * inv(Fo2Wa)ori_Fo_Parent = orientation (Forsterite → y↓→x)
Bunge Euler angles in degree
phi1 Phi phi2
0 0 0
ori_Wad_Childs = orientation (Wadsleyite → y↓→x)
size: 4 x 1
Bunge Euler angles in degree
phi1 Phi phi2
234.231 90 90
305.769 90 270
54.2314 90 90
125.769 90 270Find all combinations of ori_Wad_Childs to define misorientations for child
n=0;
nsymm = length(ori_Wad_Childs);
for i=1:nsymm
ori_Wad_Childs(i);
for j=1:nsymm
if(ne(i,j))
n=n+1;
%fprintf('%i %i %i \n',i,j,n);
Mis_deltaO(n) = inv(ori_Wad_Childs(i))*ori_Wad_Childs(j);
end
end
end
Mis_deltaOMis_deltaO = misorientation (Wadsleyite → Wadsleyite)
size: 1 x 12
Bunge Euler angles in degree
phi1 Phi phi2
0 71.5371 180
0 180 0
180 108.463 0
0 71.5371 180
180 108.463 0
0 180 0
180 180 180
180 108.463 0
0 71.5371 180
180 108.463 0
180 180 180
0 71.5371 180%Mis_Axes = round(axis(Mis_unique))
%Mis_Angles = angle(Mis_unique)./degree%Mis_unique = unique(Mis_deltaO)
%axis(Mis_unique(1))
%angle(Mis_unique(1))/degree
%axis(Mis_unique(2))
%angle(Mis_unique(2))/degree
Citing this page.
This page is part of the documentation of
MTEX, a free and open
source MATLAB toolbox for analyzing and modeling crystallographic textures.
It was written by The MTEX Developers and is published at
https://mtex-toolbox.github.io/Forsterite_to_WadsleyiteMainprice.html.
If you use MTEX, or reuse text or figures from this page, in your research,
please cite
F. Bachmann, R. Hielscher, H. Schaeben: Texture Analysis with MTEX - Free and Open Source Software Toolbox, Solid State Phenomena 160 (2010), 63-68. 10.4028/www.scientific.net/SSP.160.63
BibTeX
@article{bachmann2010mtex,
author = {F. Bachmann and R. Hielscher and H. Schaeben},
title = {Texture Analysis with MTEX - Free and Open Source Software Toolbox},
journal = {Solid State Phenomena},
volume = {160},
pages = {63-68},
year = {2010},
doi = {10.4028/www.scientific.net/SSP.160.63},
url = {https://doi.org/10.4028/www.scientific.net/SSP.160.63}
}
Other papers describing specific MTEX methods are listed under Publications — please cite the one that best fits your application. The MTEX source code is licensed under the GNU General Public License v2.0; the text and figures of this documentation are licensed under CC BY 4.0, which permits reuse — including by automated systems — provided The MTEX Developers and this page are credited.