1 / 21

ISAW: Integrated Spectral Analysis Workbench Technical Overview

ISAW provides a GUI and scripting language for analyzing neutron scattering data. It aims to be user and programmer friendly, freely available, and supports remote data access.

sarmando
Download Presentation

ISAW: Integrated Spectral Analysis Workbench Technical Overview

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ISAW: Integrated Spectral Analysis WorkbenchTechnical Overview ARCS Software Workshop at California Institute of Technology Peter F. Peterson (IPNS)

  2. ISAW contributors • Dennis Mikkelson and Ruth Mikkelson—UW-Stout • Alok Chatterjee (now on DAS team) • Peter Peterson (Post-Doc) • John Hammonds (DAS—read run file) • Chun Loong (scientific advisor) • Tom Worlton (project manager) • Dongfeng Chen (HRMECS functions, now in China)

  3. The IPNS Web Project • The goal of the IPNS Web Project is to provide remote access to data using portable, extensible software • Integrated Spectral Analysis Workbench (ISAW) • ISAW can read, view, and manipulate neutron scattering data. It provides both a GUI for ease of use and a scripting language for the power of repetitive operations. It is written entirely in Java using object-oriented programming techniques for ease of portability and maintenance.

  4. ISAW Design Goals • Interactive environment for visualization and analysis of Neutron Scattering Data • Applicable to any instrument • Freely available • User friendly GUI • Programmer friendly (OOP) • User extensible • Remote data access

  5. DataSet Concept • A DataSet holds a collection of DataBlocks (spectra) with same units • Each DataBlock can have meta-data associated with it stored in an extensible list of Attributes

  6. DataSet Concept (cont) • DataBlocks (individual spectra—functions or histograms) • Includes attributes, x-values, y-values, errors • DataSets (sets of spectra) • Includes DataBlocks, OperationLog, x-units, x-label, y-units, y-label, title, data ranges, attributes • Operations are DataSet dependent and can be performed on all spectra in DataSet • Datasets can be merged, summed, etc. • Containers (sets of DataSets)

  7. ISAW data views Table view Tree view

  8. ISAW data views Selected graph view Image view Scrolled graph view 3D view

  9. Views are responsive to controls • DataSets know which spectrum is currently pointed at/clicked on • DataSets know which spectra are selected • Menus know what operations can be performed on specified DataSets

  10. Views are responsive to controls • Operations menu depends on DataSet pointed at by mouse/arrow keys • Attributes are listed for pointed at spectrum or DataSet • Cursor position readouts are responsive to mouse drag movements and arrow key movements • Selected graph view only shows selected spectra • Graph portion of Image view shows selected spectra plus pointed at spectrum • Mouse/keyboard used to zoom/unzoom

  11. Abridged Organizationof ISAW Source

  12. Adding New Functionality • End users can add new subroutines either as scripts or operators • Common subroutines can be shared in a single location • Individual users can develop code for their specific use

  13. Operators • Written in java • Automatically located and added to menus • Promotes code reuse • Function: • Maintains a list of parameters • Invoked Using getResult()

  14. EXAMPLE: ActivateStorage Required methods • constructors • getCommand()for scripts to call the operator • setDefaultParameters() set up reasonable default values • getResult() perform the actual operation All information is passed to the operator in parameters

  15. Scripts • Simple uncompiled language to make repetitive tasks easier using FORTRAN/Basic-like syntax • Automatically added to menu system • GUI interface is automatically generated • Function: • Provide easy user add-ons • Can be run inside or outside of ISAW

  16. EXAMPLE: merge_runs

  17. Merged runs

  18. Zoom in on merged runs

  19. Future Interface: Wizards

  20. EXAMPLE: MathWizard Forms • perform one logical step • draw themselves • contain help information Wizards • collect forms in an order • communicate between forms • allows switching between forms in order • contain help information

  21. Future Plans for ISAW • Abstraction of data types – allow for using model functions and event data • Viewers – create custom viewers using existing viewer components • Wizards • Greater NeXuS support • XML for internal saves of data and processing information

More Related