the integrated spectral analysis workbench (isaw)
DESCRIPTION
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. - PowerPoint PPT PresentationTRANSCRIPT
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)
HRCS S(Q,E)
SCD Index/Integrate Wizards
SCD Reciprocal Space Slicer
SCD Reciprocal Space Viewer
SAND/SASI S(Qx,Qy)
GPPD raw data
GSAS Peak Shapes
GLAD -> Reduced Noise
GLAD -> Extended Q Range
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