1. Easy EDDEasy EDD
High Throughput Synchrotron EDD ProgramHigh Throughput Synchrotron EDD Program
Taha SochiTaha Sochi
2. TEDDITEDDI
Tomographic imaging technique which exploitsTomographic imaging technique which exploits
synchrotron to gain diffraction information fromsynchrotron 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 termsUsed to image the interiors of objects in terms
of both density and compositional variations.of both density and compositional variations.
Each volume elementEach volume element
visited yields avisited yields a
diffraction patterndiffraction pattern
3. Software for TEDDISoftware for TEDDI
Currently there is no customised software forCurrently 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
4. What is Easy EDDWhat is Easy EDD
High throughput software to manage, process,High throughput software to manage, process,
analyse and visualise synchrotron EDD data.analyse and visualise synchrotron EDD data.
Purpose: processing large quantities of dataPurpose: processing large quantities of data
with ease and comfort using limited time andwith ease and comfort using limited time and
computing resources.computing resources.
The data is stored in a 3D vector. The basic unitThe data is stored in a 3D vector. The basic unit
is a “Voxel” object in which all data relevant tois a “Voxel” object in which all data relevant to
an individual cell are stored.an individual cell are stored.
5. What is Easy EDDWhat is Easy EDD
Combines Graphic User Interface (GUI)Combines Graphic User Interface (GUI)
technology (e.g. wizards, dialogs, tool tips,technology (e.g. wizards, dialogs, tool tips,
colour coding, context menus, etc.) withcolour coding, context menus, etc.) with
standard scientific computing techniques.standard scientific computing techniques.
6. ResourcesResources
Qt toolkit and its extensions (Qwt andQt toolkit and its extensions (Qwt and
QwtPlot3D) for GUI design.QwtPlot3D) for GUI design.
Extensive library of scientific numericalExtensive library of scientific numerical
recipes.recipes.
Large number of tailored algorithms, functionsLarge number of tailored algorithms, functions
and techniques.and techniques.
Standard C++ library.Standard C++ library.
Possibility of using wxWidgets library for GUIPossibility of using wxWidgets library for GUI
design.design.
7. Current State of Easy EDDCurrent State of Easy EDD
The data files are read and automaticallyThe data files are read and automatically
recognised (e.g. SRS, scalars or vectors).recognised (e.g. SRS, scalars or vectors).
The data is then stored and mapped on a 2DThe data is then stored and mapped on a 2D
intensity-colour-coded grid.intensity-colour-coded grid.
The SRS 16.4 data file format is currentlyThe SRS 16.4 data file format is currently
supported and the code can be extended tosupported and the code can be extended to
support other data file formats such assupport other data file formats such as
Diamond and ESRF.Diamond and ESRF.
Graphing and refinement capabilities areGraphing and refinement capabilities are
wholly or partially implemented.wholly or partially implemented.
8. Standard GUI window with menus, toolbars andStandard GUI window with menus, toolbars and
so on.so on.
Main ComponentsMain Components
9. 2D color-coded scalable tabs for voxel mapping2D color-coded scalable tabs for voxel mapping
with text and graphical tool-tips to show allwith text and graphical tool-tips to show all
essential file and voxel properties.essential file and voxel properties.
Main ComponentsMain Components
10. 2D plotter to obtain a graph of intensity vs.2D plotter to obtain a graph of intensity vs.
channel number for any voxel by clicking onchannel number for any voxel by clicking on
its cell.its cell.
Main ComponentsMain Components
11. The plotter capabilities include:The plotter capabilities include:
Main ComponentsMain Components
Save image in several formats.Save image in several formats.
Creating, drawing, modifying and clearingCreating, drawing, modifying and clearing
fitting basis functions (polynomials ≤ 6,fitting basis functions (polynomials ≤ 6,
Gauss, Lorentz and pseudo-Voigt) by simpleGauss, Lorentz and pseudo-Voigt) by simple
click or press and drag actions.click or press and drag actions.
Non-linear least squares curve fitting byNon-linear least squares curve fitting by
Levenberg-Marquardt algorithm.Levenberg-Marquardt algorithm.
12. Spreadsheet form which interacts with theSpreadsheet form which interacts with the
plotter to control the refinement process withplotter to control the refinement process with
plotting and saving capabilities to facilitateplotting and saving capabilities to facilitate
mass application of standard refinementmass application of standard refinement
processes.processes.
Main ComponentsMain Components
13. Future DevelopmentFuture Development
Mapping data on a 3D grid (tab for each slice)Mapping data on a 3D grid (tab for each slice)
according to the real spatial coordinates.according to the real spatial coordinates.
Incorporating more scientific functionality suchIncorporating more scientific functionality such
as corrections and final analysis.as corrections and final analysis.
Implementing other refinement techniquesImplementing other refinement techniques
such as Le Bail.such as Le Bail.
Validating the program by experimental work.Validating the program by experimental work.
3D visualisation.3D visualisation.
14. First release November 2007 for internal useFirst release November 2007 for internal use
and real-life test.and real-life test.
Finally…Finally…
Feed-back will be essential for improving theFeed-back will be essential for improving the
program and preparing for the final release.program and preparing for the final release.
Thank you!Thank you!
Questions?Questions?
15. FeaturesFeatures
Cross platform code to support users ofCross platform code to support users of
different operating systems.different operating systems.
Widgets with memory.Widgets with memory.
FTP for remote file access and transport.FTP for remote file access and transport.