The SantaFe example
Simulate a set of pole figures for the SantaFe standard ODF, estimate an ODF and compare it to the inital SantaFe ODF.
Simulate pole figures
CS = crystalSymmetry('m-3m'); % crystal directions h = [Miller(1,0,0,CS),Miller(1,1,0,CS),Miller(1,1,1,CS),Miller(2,1,1,CS)]; % specimen directions r = equispacedS2Grid('resolution',5*degree,'antipodal'); % pole figures pf = calcPoleFigure(SantaFe,h,r); % add some noise pf = noisepf(pf,100); % plot them plot(pf,'MarkerSize',5) mtexColorMap LaboTeX

ODF Estimation with Ghost Correction
rec = calcODF(pf)
initialize solver start iteration error: 7.4953E-02 2.9751E-02 1.1052E-02 8.3333E-03 7.2418E-03 6.6074E-03 6.2839E-03 6.0492E-03 5.9099E-03 5.8012E-03 5.7241E-03 Finished PDF-ODF inversion. error: 5.7241E-03 alpha: 9.9665E+01 1.0081E+02 1.0063E+02 9.9904E+01 initialize solver start iteration error: 3.5294E-01 2.3167E-01 1.4255E-01 8.4677E-02 4.8738E-02 3.4332E-02 3.1719E-02 3.0814E-02 3.0273E-02 2.9997E-02 2.9755E-02 Finished PDF-ODF inversion. error: 2.9755E-02 alpha: 9.9696E+01 1.0074E+02 1.0063E+02 9.9977E+01 rec = ODF crystal symmetry : 432 specimen symmetry: 222 Uniform portion: weight: 0.60202 Radially symmetric portion: kernel: de la Vallee Poussin, halfwidth 5° center: 1224 orientations, resolution: 5° weight: 0.39798
ODF Estimation without Ghost Correction
rec2 = calcODF(pf,'NoGhostCorrection')
initialize solver start iteration error: 7.4953E-02 2.9751E-02 1.1052E-02 8.3333E-03 7.2418E-03 6.6074E-03 6.2839E-03 6.0492E-03 5.9099E-03 5.8012E-03 5.7241E-03 Finished PDF-ODF inversion. error: 5.7241E-03 alpha: 9.9665E+01 1.0081E+02 1.0063E+02 9.9904E+01 rec2 = ODF crystal symmetry : 432 specimen symmetry: 222 Radially symmetric portion: kernel: de la Vallee Poussin, halfwidth 5° center: 1231 orientations, resolution: 5° weight: 1
Error analysis
% calculate RP error calcError(rec,SantaFe) % difference plot between meassured and recalculated pole figures plotDiff(pf,rec)
ans = 0.0368 progress: 100%

Plot estimated pole figures
plotPDF(rec,pf.h,'antipodal')

Plot estimated ODF (Ghost Corrected)
plot(rec,'sections',18,'resolution',5*degree,... 'contourf','FontSize',10,'silent','figSize','large','minmax') mtexColorMap white2black

Plot odf
plot(SantaFe,'sections',18,'contourf','FontSize',10,'silent',... 'figSize','large','minmax') mtexColorMap white2black

Plot Fourier Coefficients
close all; % true ODF plotFourier(SantaFe,'bandwidth',32) % keep plot for adding the next plots hold all % With ghost correction: plotFourier(rec,'bandwidth',32) % Without ghost correction: plotFourier(rec2,'bandwidth',32) legend({'true ODF','with ghost correction','without ghost correction'}) % next plot command overwrites plot hold off

MTEX 4.5.2 |