
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)