19
Easy EDD Easy EDD High Throughput Powder Diffraction High Throughput Powder Diffraction Program Program Taha Sochi Taha Sochi

Easy edd phd talks 28 oct 2008

Embed Size (px)

Citation preview

Page 1: Easy edd phd talks 28 oct 2008

Easy EDDEasy EDDHigh Throughput Powder Diffraction ProgramHigh Throughput Powder Diffraction Program

Taha SochiTaha Sochi

Page 2: Easy edd phd talks 28 oct 2008

TEDDITEDDITomographic imaging technique which exploits Tomographic imaging technique which exploits synchrotron to gain diffraction information from synchrotron to gain diffraction information from volume elements within a bulk sample.volume elements within a bulk sample.Used to image the interiors of objects in terms Used to image the interiors of objects in terms of both density and compositional variations.of both density and compositional variations.

Each volume element Each volume element visited yields a visited yields a

diffraction patterndiffraction pattern

Page 3: Easy edd phd talks 28 oct 2008

SoftwareSoftwareCurrently there is no customised software for Currently there is no customised software for TEDDI analysis. Instead, scripts are in use: TEDDI analysis. Instead, scripts are in use:

Read dataRead data

Beam & counting efficiency correctionsBeam & counting efficiency corrections

Visualisation stepVisualisation step

Export to Rietica/TopasExport to Rietica/Topas

Fitting in Rietica/TopasFitting in Rietica/Topas

Visualisation of final resultsVisualisation of final results

Page 4: Easy edd phd talks 28 oct 2008

EasyEDDEasyEDD

High throughput software to manage, process, High throughput software to manage, process, analyse and visualise powder diffraction data.analyse and visualise powder diffraction data.

Purpose: processing large quantities of data Purpose: processing large quantities of data with ease and comfort using limited time and with ease and comfort using limited time and computing resources. This batch-processing computing resources. This batch-processing approach is desperately needed for the new approach is desperately needed for the new generation of high throughput TEDDI detectors.generation of high throughput TEDDI detectors.

The data is stored in a 3D vector. The basic unit The data is stored in a 3D vector. The basic unit is a “voxel” object in which all data relevant to is a “voxel” object in which all data relevant to an individual cell are stored. an individual cell are stored.

Page 5: Easy edd phd talks 28 oct 2008

EasyEDDEasyEDDCombines Graphic User Interface (GUI) Combines Graphic User Interface (GUI) technology (e.g. wizards, dialogs, tooltips, technology (e.g. wizards, dialogs, tooltips, colour coding, context menus, etc.) with colour coding, context menus, etc.) with standard scientific computing techniques.standard scientific computing techniques.

Page 6: Easy edd phd talks 28 oct 2008

ResourcesResources

Qt toolkit and its extensions (Qwt and Qt toolkit and its extensions (Qwt and QwtPlot3D) for GUI design.QwtPlot3D) for GUI design.

Extensive library of scientific numerical recipes. Extensive library of scientific numerical recipes.

Large number of tailored algorithms, functions Large number of tailored algorithms, functions and techniques.and techniques.

Standard C++ library. Standard C++ library.

Page 7: Easy edd phd talks 28 oct 2008

Current StateCurrent StateFour data file formats are currently supported: Four data file formats are currently supported: SRS 16.4, ESRF XY data, Diamond MCA, and SRS 16.4, ESRF XY data, Diamond MCA, and Manchester ERD format. The code can be Manchester ERD format. The code can be easily extended to support other data formats.easily extended to support other data formats.

ERD DetectorERD Detector SRS 16.4SRS 16.4

Page 8: Easy edd phd talks 28 oct 2008

Current StateCurrent State

The data files are read and automatically The data files are read and automatically recognised (e.g. SRS, scalars or vectors). The recognised (e.g. SRS, scalars or vectors). The data is then stored and mapped on a 2D data is then stored and mapped on a 2D colour-coded grid. Multiple tabs from different colour-coded grid. Multiple tabs from different data sources can be created (and removed) at data sources can be created (and removed) at the same time.the same time.

Correction, graphing and fitting capabilities are Correction, graphing and fitting capabilities are implemented.implemented.

Page 9: Easy edd phd talks 28 oct 2008

Standard GUI window with menus, toolbars, etc. Standard GUI window with menus, toolbars, etc. ComponentsComponents

Page 10: Easy edd phd talks 28 oct 2008

2D colour-coded scalable tabs for voxel mapping 2D colour-coded scalable tabs for voxel mapping with graphic and text tooltips to show all with graphic and text tooltips to show all essential file and voxel properties. essential file and voxel properties.

ComponentsComponents

Page 11: Easy edd phd talks 28 oct 2008

2D plotter to obtain a graph of intensity for any 2D plotter to obtain a graph of intensity for any voxel by clicking on its cell. It is also used to voxel by clicking on its cell. It is also used to create basis functions for fitting.create basis functions for fitting.

ComponentsComponents

The plotter capabilities include:The plotter capabilities include:

Creating, drawing, modifying and clearing Creating, drawing, modifying and clearing fitting basis functions (polynomials ≤ 6, fitting basis functions (polynomials ≤ 6, Gauss, Lorentz and pseudo-Voigt) by simple Gauss, Lorentz and pseudo-Voigt) by simple click or press and drag actions.click or press and drag actions.

Non-linear least squares curve fitting by Non-linear least squares curve fitting by Levenberg-Marquardt algorithm.Levenberg-Marquardt algorithm.

Save image in several formats.Save image in several formats.

Page 12: Easy edd phd talks 28 oct 2008

Levenberg-MarquardtLevenberg-MarquardtExample: Example:

Red: Experimental data.

Yellow:

Fitting curve.

Page 13: Easy edd phd talks 28 oct 2008

Spreadsheet form Spreadsheet form which interacts with the which interacts with the plotter to control the plotter to control the refinement process refinement process with plotting and with plotting and saving capabilities to saving capabilities to facilitate mass facilitate mass application of curve application of curve fitting.fitting.

ComponentsComponents

Page 14: Easy edd phd talks 28 oct 2008

3D plotter to obtain a graph of the current tab 3D plotter to obtain a graph of the current tab where intensity is plotted as a function of the where intensity is plotted as a function of the voxel position in the tab.voxel position in the tab.

ComponentsComponents

Page 15: Easy edd phd talks 28 oct 2008

Curve fitting can be done on a single or Curve fitting can be done on a single or multiple peaks using any number of basis multiple peaks using any number of basis functions with and without background.functions with and without background.

Curve FittingCurve Fitting

Curve fitting can be performed for a single Curve fitting can be performed for a single pattern, a number of randomly selected pattern, a number of randomly selected patterns, a whole tab or a number of tabs.patterns, a whole tab or a number of tabs.

After curve fitting, a widget is created in After curve fitting, a widget is created in which the statistical indicators and refinement which the statistical indicators and refinement parameters are displayed. From these the parameters are displayed. From these the colour code can be changed according to colour code can be changed according to each one of these quantities.each one of these quantities.

Restraints are partly implemented.Restraints are partly implemented.

Page 16: Easy edd phd talks 28 oct 2008

From Olivier Lazzari:From Olivier Lazzari:Data SamplesData Samples

Area of a peak after fitting to Area of a peak after fitting to Gauss with linear background Gauss with linear background

Raw data with initial scalingRaw data with initial scaling

Real life picture Real life picture of test object of test object (From Simon (From Simon Jacques)Jacques)

Schematic of test Schematic of test object (From object (From Olivier Lazzari)Olivier Lazzari)

Page 17: Easy edd phd talks 28 oct 2008

From Vesna Middelkoop:From Vesna Middelkoop:Data SamplesData Samples

Area of a peak after fitting to Area of a peak after fitting to Gauss with linear background Gauss with linear background

Raw data with initial scalingRaw data with initial scaling

Schematic of pipe (From Schematic of pipe (From Vesna Middelkoop)Vesna Middelkoop)

Illustration of TEDDI principle Illustration of TEDDI principle (From Simon Jacques).(From Simon Jacques).

Page 18: Easy edd phd talks 28 oct 2008

Future DevelopmentFuture Development

Implementing whole pattern decomposition.Implementing whole pattern decomposition.

Mapping data on a 3D grid (tab for each slice) Mapping data on a 3D grid (tab for each slice) according to the real space coordinates.according to the real space coordinates.

Completing restraints implementation.Completing restraints implementation.

Cleaning and optimising the code.Cleaning and optimising the code.

Investigating other least squares and Investigating other least squares and minimisation techniques.minimisation techniques.

Incorporating more scientific functionality such Incorporating more scientific functionality such as corrections, deconvolution & final analysis.as corrections, deconvolution & final analysis.Investigating voxels correlation.Investigating voxels correlation.

Doing experimental work for test and validation.Doing experimental work for test and validation.

Page 19: Easy edd phd talks 28 oct 2008

Thank you!Thank you! Questions?Questions?

Users & Mailing ListUsers & Mailing List

[email protected]@mail.cryst.bbk.ac.uk

Current mailing list includes 11 members.Current mailing list includes 11 members.To join mailing list, send a message to:To join mailing list, send a message to:

The program is currently in use by a number of The program is currently in use by a number of researchers from several institutes, making researchers from several institutes, making valuable contribution in batch-processing huge valuable contribution in batch-processing huge amounts of data, and hence saving a lot of time amounts of data, and hence saving a lot of time and effort.and effort.