270 likes | 408 Views
The Integrated Spectral Analysis Workbench (ISAW). DANSE Kickoff Meeting, Aug. 15, 2006, D. Mikkelson, T. Worlton, Julian Tao. Outline. What is ISAW Design Goals Highlights from supported instruments Overall Structure What Worked Well What Didn't Future. ISAW.
E N D
The Integrated Spectral Analysis Workbench (ISAW) DANSE Kickoff Meeting, Aug. 15, 2006, D. Mikkelson, T. Worlton, Julian Tao
Outline • What is ISAW • Design Goals • Highlights from supported instruments • Overall Structure • What Worked Well • What Didn't • Future
ISAW • Developed as collaborative effort between IPNS and UW-Stout • Development started in 1999 • Funding from the NSF since 2002 • Currently used on • 8 instruments at IPNS • 4 instruments at LANSE • Some components are being used in the SNS Portal and at ANSTO
ISAW's Main Goal • Provide a user-friendly, coherent collection of tools for neutron scattering data visualization, reduction and analysis, including remote access and access to “live” data for experiment steering.
Extensible • Operators provide new functionality • Scripts allow users to combine operators, control and customize data reduction • User supplied scripts and operators are automatically found, placed in menus and callable from other operators and scripts
Portable • Portable to different instruments of the same type. • Portable within and across facilities • Portable to future upgraded instruments • Portable to most widely used personal computing systems, Windows, Mac, Linux
Really Free • GNU GPL • Based on freely available deployment and development system. (Java)
ISAW Data Objects • A “Data” object represents one sequence of values at a list of “X” values, together with attributes that apply to the sequence of values. • A “DataSet” is a list of Data objects together with attributes that apply to the full collection of Data objects. • “Virtual Arrays” provide abstraction for a source of Data that can be mapped to an array
Retrievers & Writers • “Retriever” objects can get DataSets from • IPNS run files • NeXus files (LANSCE, SNS, LENS) • ISIS files (some instruments) • Live or Remote Data servers • ISAW serialized DataSets & ISAW XML format • “Writer” objects write data to • NeXus files • GSAS input files • ISAW serialized DataSets & ISAW XML format
Viewers • DataSets and Virtual Arrays can be displayed in highly interactive viewers for • images • tables • graphs • 3D
Operators • Encapsulate one logical operation • Are self-describing • Include a method to provide end-user documentation • Can be automatically wrapped around Java static method • Can be wrapped around external methods (C, FORTRAN, or... via JNI)
ISAW Scripts • “Special Purpose” scripting language • VERY easy to use • Controls a sequence of operations, typically on DataSets • GUI is auto generated for rapid prototyping • End user documentation provided in scripts • New scripts are automatically placed in the ISAW menu system
Wizards • An ISAW Wizard controls a sequence of operations • Step forward/backward through forms, view intermediate results, change parameters, etc. • Each Wizard form corresponds to one operator or script • A Wizard is EASILY constructed from a sequence of operators and/or scripts (“almost” automatic”) • Parameters can be linked across forms
What Worked Well • Common Data structures • Reusable interactive viewers • The operator concept (NOTE: operators ”should” just be wrapped around calculation to keep the core calculations isolated from the framework.) • Scripts (Instrument scientists can customize)
What Worked Well (cont'd) • Automatically generated GUI for scripts and operators • Operator Generator (wraps an underlying method in an operator) • Wizards • Auto-discovery of new scripts and operators • Automatic placement in menu system • NOTE: ISAW is NOT monolithic... the “workbench” is just a convenient launching point for scripts, operators and wizards
What Didn't • Original Data/DataSet objects only appropriate for raw data and certain types of reduced data • Need a better strategy for managing data attributes, as Data are summed, merged, etc. • NeXus promises to provide a common format for data interchange but... • need instrument definitions • need facilities to write “standard” NeXus files
Future Directions • Collaboration with DANSE and SNS • DANSE & SNS could use ISAW components where appropriate • ISAW hosted as application in SNS Portal • ISAW could provide complementary data reduction and visualization on small computers using DANSE and SNS components • New capabilities: TOPAZ reciprocal space visualization and analysis • Collaboration with Xray community • Support our users! (IPNS, LANSCE, SNS...)
Acknowledgments • This material is based on work supported by the National Science Foundation under grant numbers DMR-0218882 and DMR-0426797 • ANL/IPNS • The whole ISAW team