XRDMLread - Matlab function for reading X'Pert XRDML files


XRDMLread is a Matlab function for reading X'Pert XRDML files. The function returns data as a simple Matlab structure.

The returned structure contains measured intensities, axes positions and other useful information — sample ID, comment, (hkl) indexes, radiation wavelength, etc. Scan intensities and relevant axes positions are stored in simple matrices.

The XRDMLread function is freely distributable under the Simplified BSD license. It utilizes a Matlab XML Parser XMLTree toolbox, which can be freely downloaded under the GPL license from the XMLTree website.

Basic Example Preview - Matlab, Octave

Loading XRDML data in Matlab is as simple as the single command below. The most interesting fields may be the measured intensities — d.data in cps and axes positions — d.Theta2 and d.Omega.

% Load data in BST_O2T.xrdml file as struct d
>> d = XRDMLread('BST_O2T.xrdml')
 d = 

       filename: 'BST_O2T.xrdml'
       sampleID: 'BST-2056'
        comment: '2056 BaSrTiO3 superlattice'
       measType: 'Scan'
       scanAxis: 'Omega-2Theta'
         scannb: 1
           data: [1x1195 double]
           time: 5
         Theta2: [1x1195 double]
          Omega: [1x1195 double]
            Phi: 0
            Psi: -0.3000
              X: 0
              Y: 0
              Z: 0
          kType: 'K-Alpha 1'
        kAlpha1: 1.5406
        kAlpha2: 1.5444
    kAlphaRatio: 0
         Lambda: 1.5406
         xlabel: 'Omega-2Theta'
              x: [1x1195 double]
          xunit: 'deg'
     slitHeight: 0.7600


Contact and Support

All suggestions, comments and bug reports are welcomed.
Mailto: es.ul.vixam()jetam.kenedz