simulateEBSD edit page

Class guiding through the simple simulation of an EBSD object

It allows to simulate a single/multigradient EBSD map with a free choice of the starting orientation, size, misorientation axis, direction of misorientaiton increase, type and range of noise Multiple gradients can be superposed and you can use an existing map and add noise or deform it.

TODO: - add the singleJump, multiKnob, polyGrain - make noise distribution more flexible - allow to start from a different pos - fix first column of pixels

Syntax

%% initialize the object ebsdSIM = simulateEBSD

%% set the dimension (optional) ebsdSIM.xdim = 50 ebsdSIM.ydim = 50

%% change the initial orientation (optional) ebsdSIM.ori0 = orientation.byEuler([0, pi, 30]*degree,ebsdSIM.CS)

%% make a planar map ebsdSIM.makeMap plot(ebsdSIM.EBSDsim)

%% 1) create a simple gradient % 1a) set the misorientation axis ebsdSIM.axS = vector3d(1,1,0) % 1b) set the direction towards which the misorientation increases ebsdSIM.gradDir = vector3d(1,0,0); % 1c) create the gradient ebsdSIM.addFeature_simpleGradient

%% 2) add noise % 2a) specify noise type: 'uniform' or 'logn' ebsdSIM.noiseFun = 'logn' % 2b) specify maximum noise ebsdSIM.noiseMax = 0.1*degree; % 2c) create noise ebsdSIM.addnoise

%% 3) add a circular "subgrain" % 3a) set the misorientation axis ebsdSIM.axS = vector3d(1,1,1) % 3b) add "subgrain" ebsdSIM.addFeature_circularSubgrain

%% inspect the result ebsd = ebsdSIM.EBSDsim; plot(ebsd,angle(ebsd.orientations,ebsd.orientations(1))/degree) nextAxis ebsd = ebsd.gridify plot(ebsd,ebsd.gradientX.norm) nextAxis plot(ebsd,ebsd.gradientY.norm) nextAxis sax = axis(ebsd(1).orientations,ebsd.orientations) ck= HSVDirectionKey(specimenSymmetry('1')) plot(ebsd,ck.direction2color(sax)) nextAxis plot(ck)

Input