How to analyze slip transmission at grain boundaries
On this page ... |
Import Titanium data |
Schmid Factor |
Resolved shear stress |
Compatibility of slip systems |
Plot m' in misorientation space |
From Mercier D. - MTEX 2016 Workshop - TU Chemnitz (Germany) Calculation and plot on GBs of m' parameter Dataset from Mercier D. - cp-Ti (alpha phase - hcp)
mtexdata titanium % compute grains [grains, ebsd.grainId] = calcGrains(ebsd('indexed')); % make them a bit nicer grains = smooth(grains); % extract inner phase grain boundaries gB = grains.boundary('indexed'); plot(ebsd,ebsd.orientations) hold on plot(grains.boundary) hold off
% consider Basal slip sSBasal = slipSystem.basal(ebsd.CS) % and all symmetrically equivalent variants sSBasal = sSBasal.symmetrise; % compute Schmid factor for all slip systems SF = sSBasal.SchmidFactor(inv(grains.meanOrientation) * xvector); % find the maximum Schmidt factor [SF,id] = max(SF,[],2); % and plot it for each grain plot(grains,SF) mtexColorbar
sSBasal = slipSystem mineral: Titanium (Alpha) (622, X||a, Y||b*, Z||c) size: 1 x 1 U V T W | H K I L CRSS 1 1 -2 0 0 0 0 1 1
The variable id contains now for each grain the id of the slip system with the largest Schmidt factor. In order to visualize it, we first rotate for each grain the slip system with largest Schmid factor in specimen coordinates
sSGrain = grains.meanOrientation .* sSBasal(id) % and then plot the plane normal and the Burgers vectors into the centers % of the grains hold on quiver(grains,cross(sSGrain.n,zvector),'displayName','slip plane') hold on quiver(grains,sSGrain.b,'displayName','slip direction') hold off
sSGrain = slipSystem CRSS: 1 size: 85 x 1
We may also analyse the distribution of the slip directions in a pole figure plot
plot(sSGrain.b)
The same as a contour plot. We see a clear trend towards the east.
plot(sSGrain.b,'contourf')
We could do the same as above with a more general stress tensor. However, the result is a bit different. TODO: why the directions do not point towards east???
% more general syntax for the same stress tensor sigma = stressTensor.uniaxial(xvector); % compute Schmid factor for all slip systems SF = sSBasal.SchmidFactor(inv(grains.meanOrientation) * sigma); % find the maximum Schmidt factor [SF,id] = max(SF,[],2); % plot the Schmid factor plot(grains,SF) mtexColorbar % active slip system in specimen coordinates sSGrain = grains.meanOrientation .* sSBasal(id) % and plot then the plance normal and the Burgers vectors into the centers % of the grains hold on quiver(grains,cross(sSGrain.n,zvector),'displayName','slip plane') hold on quiver(grains,sSGrain.b,'displayName','slip direction') hold off
sSGrain = slipSystem CRSS: 1 size: 85 x 1
Next, we want to analyze, how much geometrically compatible the slip systems with highest Schmid factor are at the grain boundaries
% some background plot(grains,'FaceColor',0.8*[1 1 1],'figSize','large') % compute m' id = gB.grainId; mP = mPrime(sSGrain(id(:,1)),sSGrain(id(:,2))); % plot m' along the grain boundaries hold on plot(gB,mP,'linewidth',3) mtexColorbar % and plot then the plance normal and the Burgers vectors into the centers % of the grains hold on quiver(grains,cross(sSGrain.n,zvector),'displayName','slip plane') hold on quiver(grains,sSGrain.b,'displayName','slip direction') hold off
Since m' depends on the misorientation only why may plot it directly in misorientation space
% set up an axis angle plot sP = axisAngleSections(sSBasal.CS,sSBasal.CS); % generate a grid of misorientations moriGrid = sP.makeGrid; % compute mPrime for all misorientations sSBasal = slipSystem.basal(ebsd.CS); mP = max(mPrime(sSBasal,moriGrid*sSBasal.symmetrise),[],2); % plot mPrime sP.plot(mP,'smooth') mtexColorbar
DocHelp 0.1 beta |