% some plane strain q = 0; epsilon = strainTensor(diag([1 -q -(1-q)])) % define a crystal orientation ori = orientation('Euler',0,30*degree,15*degree,cs) % compute the Taylor factor [M,b,mori] = calcTaylor(inv(ori)*epsilon,sS.symmetrise);
Here, the strain tensor and orientation (g) are aligned in rolling direction.
Is it possible to calculate the taylor factor with an angle (alpha) between strain direction and rolling direction.
Best Regards,
Suresh.
--
If you want to reduce the number of emails you get through this forum login to https://groups.google.com/forum/?fromgroups=#!forum/mtexmail, click "My membership" and select "Don't send me email updates". You can still get emails on selected topics by staring them.
---
You received this message because you are subscribed to a topic in the Google Groups "MTEX" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/mtexmail/HQCla6gkedU/unsubscribe.
To unsubscribe from this group and all its topics, send an email to mtexmail+u...@googlegroups.com.
Visit this group at https://groups.google.com/group/mtexmail.
For more options, visit https://groups.google.com/d/optout.
%% Load slipsystems
cs = crystalSymmetry('432');
sS = slipSystem.bcc(cs);
% and all symmetrically equivalent variants
sS = sS.symmetrise;
%% Initializing the strain ratio matrix
no_q = 0.95/0.05 +1;
for i = 1:no_q
qi(i)= i*0.05;
end
%%
% load GDPO;
%
% o = GDPO(1).meanOrientation;
%%
load o;
g = Func_cal_gmatrix(o);
Ang = 0*degree;
clear M;
rotf = rotation('Euler', Ang, 0,0);
for i = 1:length(qi)
q = qi(i);
eps = strainTensor(diag([1 -q -(1-q)]),'name','strain');
epsr = o.*eps; epsr = rotf .* epsr;
epsg = g' * eps.matrix * g;
epsgr = epsr;
epsgr.M = epsg; epsgr = rotf .* epsgr;
[Mr(i),b,mori] = calcTaylor(epsr, sS);
[Mg(i),b,mori] = calcTaylor(epsgr,sS);
end
[m, ind] = min(Mr);
qr = qi(ind);
[m, ind] = min(Mg);
qg = qi(ind);
Rr = qr/(1-qr)
Rg = qg/(1-qg)
figure();plot(qi, Mr);
%%
%% Func_Cal_gmatrix
function [g] = Func_cal_gmatrix(o)
p1 = o.phi1;
p = o.Phi; p2 = o.phi2;
g(1,1) = cos(p1)*cos(p2) - sin(p1)*sin(p2)*cos(p);
g(1,2) = sin(p1)*cos(p2) + cos(p1)*sin(p2)*cos(p);
g(1,3) = sin(p2)*sin(p);
g(2,1) = -cos(p1)*sin(p2) - sin(p1)*cos(p2)*cos(p);
g(2,2) = -sin(p1)*sin(p2) + cos(p1)*cos(p2)*cos(p);
g(2,3) = cos(p2)*sin(p);
g(3,1) = sin(p1)*sin(p);
g(3,2) = -cos(p1)*sin(p);
g(3,3) = cos(p);
end
clc; clear all;
addpath /Users/sureshk/Documents/mtex-5.0.1;
startup_mtex;
%% plotting convention
setMTEXpref('xAxisDirection','east');
setMTEXpref('zAxisDirection','intoPlane');
load tDPO;
% figure();
% plot(tDPO, tDPO.meanOrientation);
%% Load slipsystems
cs = crystalSymmetry('432');
sS = slipSystem.bcc(cs);
% and all symmetrically equivalent variants
sS = sS.symmetrise;
%% Initializing the strain ratio matrix
dq = 0.025;
no_q = 0.95/dq +1;
for i = 1:no_q
qi(i)= i*dq;
end
%%
o = tDPO(109).meanOrientation;
g = Func_cal_gmatrix(o);
Ang = 45;
clear M;
rotf = rotation('Euler', Ang*degree, 0*degree, 0*degree);
for i = 1:length(qi)
q = qi(i);
eps = strainTensor(diag([1 -q -(1-q)]),'name','strain');
% Calculating the strain tensor in crystal frame
% So the rolling direction is aligned to the crystal frame X dir'n
epsr = inv(o).* eps; %epsr = rotf .* epsr;
% calculating the strain tensor from g matrix and transforming to
% the crystal space
epsg = g * eps.matrix * g';
epsgr = eps;
epsgr.M = epsg; % converting the matrix into tensor
epsgr = rotf .* epsgr; % Rotating by an angle 'Ang' to the rolling direction
[Mr(i),br(i,:),mori] = calcTaylor(epsr, sS);
[Mg(i),bg(i,:),mori] = calcTaylor(epsgr,sS);
end
% Looking for different contraction ratio, the min taylor factor
[m, ind0] = min(Mr); ind0
qr = qi(ind0);
[m, inda] = min(Mg); inda
qg = qi(inda);
R0 = qr/(1-qr)
Ra = qg/(1-qg)
figure();
subplot(2,1,1) ;plot(qi, Mr);
subplot(2,1,2) ;plot(qi, Mg);
%% Function code
Function [g] = Func_cal_gmatrix(o)