variants parent to child orientation relationship
Syntax
p2cVariants = variants(p2c, 'child')
p2cVariants = variants(p2c, 'parent')
% compute all child variants
oriChild = variants(p2c, oriParent)
% compute child variants specified by variantId
oriChild = variants(p2c, oriParent, variantId)
% compute all parent variants
oriParent = variants(p2c, oriChild)
% compute parent variants specified by variantId
oriParent = variants(p2c, oriChild, variantId)
Input
p2c | parent to child orientation relationship |
oriParent | parent orientation |
hklParent | parent direction Miller |
oriChild | child orientation |
hklChild | child direction Miller |
variantId | id of the variant |
Output
p2cVariants | parent to child variants |
oriParent | parent orientation (numOri x numVariants) |
hklParent | parent directions (numOri x numVariants) |
oriChild | child orientation (numOri x numVariants) |
hklChild | child directions (numOri x numVariants) |
Options
parent | return parent variants |
child | return child variants (default) |
Example
% parent symmetry
cs_fcc = crystalSymmetry('432', [3.6599 3.6599 3.6599], 'mineral', 'Iron fcc');
% child symmetry
cs_bcc = crystalSymmetry('432', [2.866 2.866 2.866], 'mineral', 'Iron bcc')
cs_bcc = crystalSymmetry
mineral : Iron bcc
symmetry: 432
elements: 24
a, b, c : 2.9, 2.9, 2.9
% define a fcc parent orientation
ori_fcc = orientation.brass(cs_fcc)
ori_fcc = orientation (Iron fcc → xyz)
Bunge Euler angles in degree
phi1 Phi phi2 Inv.
35 45 0 0
% define Nishiyama Wassermann fcc to bcc orientation relation ship
NW = orientation.NishiyamaWassermann(cs_fcc,cs_bcc)
NW = misorientation (Iron fcc → Iron bcc)
(111) || (011) [1-10] || [-100]
% compute a bcc child orientation related to the fcc orientation
ori_bcc = ori_fcc * inv(NW)
ori_bcc = orientation (Iron bcc → xyz)
Bunge Euler angles in degree
phi1 Phi phi2 Inv.
166.305 68.0853 32.6118 0
% compute all symmetrically possible child orientations
ori_bcc = unique(ori_fcc.symmetrise * inv(NW))
ori_bcc = orientation (Iron bcc → xyz)
size: 12 x 1
Bunge Euler angles in degree
phi1 Phi phi2 Inv.
25.2644 90 270 0
224.736 90 90 0
96.8294 127.761 39.2315 0
96.8294 52.2388 140.768 0
125 9.73561 0 0
305 9.73561 0 0
166.305 68.0853 32.6118 0
346.305 68.0853 32.6118 0
83.6949 68.0853 327.388 0
263.695 68.0853 327.388 0
153.171 127.761 320.768 0
153.171 52.2388 219.232 0
% same using the function variants
ori_bcc2 = variants(NW,ori_fcc)
ori_bcc2 = orientation (Iron bcc → xyz)
size: 1 x 12
Bunge Euler angles in degree
phi1 Phi phi2 Inv.
153.171 127.761 320.768 0
44.7356 90 90 0
153.171 52.2388 219.232 0
305 9.73561 360 0
263.695 111.915 212.612 0
166.305 68.0853 32.6118 0
276.829 127.761 39.2315 0
96.8294 127.761 39.2315 0
205.264 90 270 0
83.6949 111.915 212.612 0
125 9.73561 0 0
166.305 111.915 147.388 0
% we may also compute all possible child to child misorientations
bcc2bcc = unique(variants(NW,'child') * inv(NW))
bcc2bcc = misorientation (Iron bcc → Iron bcc)
size: 6 x 1
Bunge Euler angles in degree
phi1 Phi phi2 Inv.
0 0 0 0
99.598 91.6386 80.402 0
180 19.4712 0 0
212.612 136.171 327.388 0
315.528 60.9415 334.724 0
320.768 104.478 219.232 0