Data Analysis and Visualization Environment

IDL/DAVE Lunchtime Seminar

General announcement to scientific programmers at the NCNR (PDF-81 kb)


Upcoming seminars




Title: DAVE2 Training
Date: March 4-6, 2008 (All-day Sessions)
Speaker: Richard Azuah
Location: Building 235, Room E-100
Abstract: This will provide an introduction to DAVE2 and explain the process of creating and adding your own modules to DAVE2.


Previous seminars



Title: Basic Object-Oriented Programming in IDL
Date: January 31 and February 7, 2008
Speaker: Richard Azuah
Location: Building 235, Room E-100
Abstract: These sessions will introduce the concept of object-oriented programming in IDL. The first session will cover the basics of classes and objects in IDL, and the second session will introduce basic object graphics in IDL. This will be especially useful for those taking the DAVE2 course in March.

Title: Visualization of one-dimensional quantum dynamics (a spin-off from the 2007 NCNR Summer School)
Date: July 20, 2007
Speaker: Robert Dimeo
Location: Building 235, Room E-100
Abstract: An interactive end-user application that performs the numerical integration of the one-dimensional time-dependent Schrodinger equation will be presented. The user can specify the initial wavefunction and potential.the time-evolution of the wavefunction is then calculated over a user-defined time and space range. The calculations are relatively quick.of order a few seconds for many interesting systems.allowing the user to play with a number of different scenarios and change many different parameters in .real time.. Of particular interest is the simulation of scattering events in which the user can see how wavepackets interact with some model potential systems. The time-evolution can be viewed as an animation or as a 2D image and the quantities such as the real and imaginary parts of the wavefunction, the probability density, and the probability current can be viewed (and saved). In addition, the time-evolution of the wavefunction and/or probability density in momentum space can be viewed. In this seminar a demonstration of the following systems will be shown: (1) scattering/reflection from a potential step, (2) a quantum .bouncing ball., (3) tunneling through a barrier, (4) excitation of a metastable state, (5) transmission through a reflectionless potential, (6) alpha decay, (7) Bragg scattering and propagation into a periodic potential, and more. Information will also be provided to those interested in getting the program.

Title: NSE GUI: An Instrument Control Client in IDL
Date: March 28, 2006
Speaker: Antonio Faraone
Location: Building 235, Room A-136
Abstract: The NG-5 Neutron Spin Echo instrument is currently controlled by a command-line program which can run scan macros. Rather than simply edit macros, it is desirable to have a more interactive macro creation program which integrates data visualization and communication with the instrument control program. NSE GUI provides this functionality. Its motivation and features will be presented.


Title: DM_PLOT, A Versatile Plotting Tool
Date: October 19, 2005
Speaker: Yiming Qiu
Location: Building 235, Room E-100
Abstract: Plotting the data usually is the final purpose of using IDL in data analysis. IDL provides powerful programs to satisfy the different needs of plotting. However, the direct graphics in IDL lack interactive options, and iTools can be overwhelming for a first-time user. In developing dcs_mslice, I came up with dm_plot, an object graphics plotting program. It is easy to use, and yet versatile enough to plot both 1-D and 2-D data. I will show how to use it at the command line and in an object widget program.
Demonstration program and Handout (IDL program and MS Word file): ymq_dm_plot_demo.zip

Title: Creating your own application documentation using the ONLINE_HELP facility in IDL 6.2
Date: August 19, 2005
Speaker: Rob Dimeo
Location: Building 235, Room E-100
Abstract: Among the features in the new release of IDL (version 6.2) is a cross-platform HTML help system. This system is called IDL Assistant and it is based on the Qt development toolkit from Trolltech. Creating help for individual applications is simple and I will demonstrate this with a live example. Moreover it is possible to use this facility to provide a comprehensive documentation set for large multi-module applications like DAVE. I will describe a means by which individual DAVE developers create documentation for their applications only which are subsequently compiled at runtime into a comprehensive documentation set.

Title: Overcoming "widget envy"
Date: May 26, 2005
Speaker: Rob Dimeo
Location: Building 235, Room E-100
Abstract: One of the deficiencies of IDL is its limited widget toolkit which is an unfortunate consequence of one of IDL's strengths: its platform independence. Sophisticated widget toolkits such as that found in the LABVIEW and IRIS Explorer software packages have some nice looking controls and displays that provide for a very professional appearance. A current activity of the DAVE team and the Data Acquisition and Controls team is to develop a user-friendly graphical user-interface for the ICE system for BT7. The SPICE software at ORNL for TAS is based on LABVIEW, thus it provides a functional and professional-looking user-interface. In order to go beyond mere functionality and compose an intuitive and aesthetically-pleasing user-interface in IDL we are developing a number of new compound widgets that extend IDL's GUI tools. In this seminar I will (1) demonstrate, and (2) describe how I constructed a few such compound widgets and show you how you can drop them into your own IDL applications.

Title: Building New iTools
Date: April 13, 2005
Speaker: Kevin O'Donovan
Location: Building 235, Room E-100
Abstract: Building new iTools visualizations and tools can be easy--if you have the right design philosophy. I will discuss here how to develop custom visualizations which take a parametrization of a 2d or 3d function and display it in an iTool. I'll also show how to use a standard, but undocumented, compound widget developed by RSI to allow users to vary the parameters of the function. I'll even show you how to add a simple object graphics item to a visualization.

Title: Legends of the NCNR
Date: January 27, 2005
Speaker: Larry Kneller
Location: Building 235, Room E-100
Abstract: Tired of writing setProperty and getProperty methods for your IDL classes? Sick of trying to figure out how to put a legend onto a plot using IDL direct graphics? Need to access objects in a running program from the IDL command line? Me too! I will present some useful programs I wrote to solve these problems.

Title: Global optimization: visualizing heuristic strategies
Date: December 14, 2004
Speaker: Rob Dimeo
Location: Building 235, Room E-100
Abstract: Many data analysis problems involve minimizing an objective function, typically chi-squared. Often this objective function has multiple minima and conventional minimization routines can "get stuck" in a local minimum. Global optimization algorithms employing heuristic search strategies offer a possible solution. In this seminar I will discuss a few such strategies (stochastic tree search, stochastic downhill simplex, and the genetic algorithm) and demonstrate how they work with some visualization tools.
IDL programs demonstrated (SGA and documentation): rmd_ga.zip (153 kb)
Presentation notes (PPT): presentation (163 kb)

Title: Tracking pointers in twisted images
Date: November 23, 2004
Speaker: Kevin O'Donovan
Location: Building 235, Room E-100
Abstract: For applications displaying 2d images representing data, it is often helpful to have a status line which indicates the value of the data under the mouse pointer. At first blush this seems to be a straightforward problem. But when the map is not a regular shape, mapping device coordinates to matrix indices can be a nontrivial problem. I'll demonstrate a program which solves this problem for the case of linear detector scans through reciprocal space when plotted as a function of the coordinates of reciprocal space. I've implemented a cool function which tests whether the pointer is inside any simply connected region of the plot.

Title: An interactive data analysis application for the NCNR sample environment group
Date: October 14, 2004
Speaker: Rob Dimeo
Location: Building 235, Room E-100
Abstract: Recently the sample environment group posed an analysis problem that involved automatically extracting time constants from temperature traces recorded for their closed-cycle refrigerator systems undergoing stepwise changes in heater power input. I adopted this as a "home project" and quickly found that problems with data fitting required more user interactivity. In this presentation I will demonstrate the application and show how this interactivity was implemented in the code.
Seminar documentation: Control of thermal systems (PDF-410 kb)

Title: Whoops! I didn't want that--wait, yes I did! How to support undo and redo in iTools operations
Date: September 23, 2004
Speaker: Kevin O'Donovan
Location: Building 235, Room E-100
Abstract: Users of iTools want to be able to undo and redo the last operation they applied. Here we'll learn how to work with the iTools interface to add this capability to our custom operations, and expand our earlier discussion of data-specific operations to general operations. I'll also show how to interact with the user to select data loaded into iTools.

Title: How to put eggs into baskets EFFICIENTLY: rebinning without loops
Date: September 9, 2004
Speaker: John Copley
Location: Building 235, Room E-100
Abstract: "Rebinning" can mean different things to different people so I shall start with a description of what it means to me as applied to data with associated errors. I'll present the corresponding algorithm and then describe and compare implementations in IDL (i) using and (ii) avoiding constructions such as FOR loops and IF statements. I'll discuss the implications of unequal histogram bin widths, an acceptable way to "rebin" data collected point-by-point, and one or two pitfalls to avoid when writing code that handles arrays.

Title: iTools "How-To'ols": File Readers (redux) and Data Operations
Date: August 3, 2004
Speaker: Kevin O'Donovan
Location: Building 235, Room E-100
Abstract: Nearly every custom iTool app will need to read in data files and perform operations on those files. Here I will discuss how an ICP data file for 2D detectors can be read in to the iTools database and plotted using standard tools. Since tools such as iSurface and iImage can't handle log axes, a simple data operation was created to operate on the data directly.
IDL programs demonstrated: icp.tar.gz (1.2 Mb)

Title: Gambling with compound widget objects
Date: July 20, 2004
Speaker: Rob Dimeo
Location: Building 235, Room E-100
Abstract: I will review compound widgets (briefly since Larry did a fine job covering this material in his May 26 seminar) and spend most of the time discussing how you can combine widgets and objects to create flexible and powerful compound widgets. As an example I will demonstrate a simple implementation of a compound widget that simulates a die and how you can interact with the die to "roll it" and extract the result. Finally I will show you how this compound widget object can be implemented in a short simulation of the game called Chuck-a-Luck, an old favorite of traveling carnivals. (I'll also show you how to "beat the house" in this game.)
IDL programs demonstrated: dice.zip (22.7 kb)
Seminar documentation: Compound object widgets (290 kb)

Title: Creating a custom iTool file reader
Date: June 16, 2004
Speaker: Kevin O'Donovan
Location: Building 235, Room E-100

Title: Developing custom compound widgets
Date: May 26, 2004
Speaker: Larry Kneller
Location: Building 235, Room E-100

Title: Advanced data visualization using iTools
Date: April 15, 2004
Speaker: Rob Dimeo
Location: Building 235, Room E-100
IDL programs demonstrated: iplot.zip (3.7 Mb)

Title: Visualization of a reflectometer beam profile using iTools
Date: March 29, 2004
Speaker: Kevin O'Donovan
Location: Building 235, Room E-100
IDL programs demonstrated: footprint.tar (30 kb)

Title: Using property sheets to interact with graphical objects in IDL
Date: March 5, 2004
Speaker: Richard Azuah
Location: Building 235, Room E-100
IDL programs demonstrated: prop_sheet.zip (99 kb)

Title: Peak finding without fitting
Date: January 21, 2004
Speaker: Rob Dimeo
Location: Building 235, Room E-100
IDL programs demonstrated: get_peak_pos.pro (7.1 kb), master_mind.zip (259 kb)