## Introduction to the DAVE software package

Brief Historical Context

Principal Project Goals

DAVE is an integrated environment for the reduction, visualization and analysis of inelastic neutron scattering data. It is built using IDL (Interactive Data Language) from ITT Visual Information Solutions (formally Research Systems, Inc.) which is a cross-platform application development tool with built-in graphics. All efforts have been made to ensure that DAVE is supported on Linux, Windows and MacOS X. It is available at no cost to users in two forms. The first is as a binary executable with an embedded IDL runtime license which can be used by anyone running on any of the three supported operating systems. In addition, for those who have an IDL development license, the complete source code for DAVE is also available.

### A Brief Historical Perspective

DAVE came about as a result of a few prevailing factors at the NCNR in the late 1990's, most of which were common to other neutron scattering facilities at that time. These included:

- Few or non-existent software tools for basic data reduction and analysis.
- The traditional approach of user-written software at neutron scattering facilities is time-consuming with much duplication of effort.
- Steadily increasing complexity with improvements in spectrometer designs – software development process is more error prone.
- Inefficient use of available beam time in some case because the user is unable to quickly view the data in a meaningful way and to change course accordingly.
- Existing software tools were disparate with little coordination between the various developers who tended to view their effort in some case as a 'hobby' and hence without any clear long term support commitment.

To address these and other shortcomings, a group of instrument scientists at the NCNR met in a series of meetings in 2000 and proposed a workable and pragmatic solution. They decided to create the DAVE project with clear goals and guidelines based on the available skillset of those present. The following summarises the project intent:

- Develop common user-friendly toolbox for inelastic neutron scattering addressing the software requirements of the NCNR user community. The end result should include components for data reduction, visualization and analysis.
- Takes needs of new, occasional and expert users into account.
- Provide support for multiple OS platforms in use at the NCNR.
- The end product should be freely available to all.
- Instrument scientists should play a key role in the software development, particularly in data reduction aspects.

After extensive considerations the IDL package distributed by ITT Visual Information Solutions (formally RSI Inc.) was chosen as the development platform for the new software project. This made sense because IDL: was fully supported on several OS platforms; provided built-in support for scientific programming and optimized for large array operations; contains a reasonably good widget toolkit for providing GUIs; was already in use at the NCNR so there was programming expertise in the language. As IDL is a commercial development platform a license was required both to develop and to run the completed applications. (As of IDL 6.0, a freely available IDL virtual machine makes possible for end users to run an IDL application without requiring a license). Primary concerns about this licensing issue was resolved by an agreement with ITT which granted NIST the right to freely distribute a DAVE executable with an embedded run-time license.

Development started on DAVE in 2001 and the first stable release was made in the summer of 2001. The initial release contained data reduction support for several inelastic instruments at the NCNR, least squares fitting for performing data analysis, basic data visualization and numerous experiment planning and other miscellaneous programs. There were several minor realeases made in what is termed the DAVE 1.x series which lasted until early 2007. In late 2007 a major update to the DAVE 2.x series occurred.

### Principal Project Goals

Today, DAVE is relatively mature with respect to data reduction and basic data analysis. Nevetheless, development work is still continuing with a gradual progression now towards slightly more advanced data analysis and visualization techniques. We are still striving towards meeting our central goal which is to provide a user friendly tool for scientists involved in neutron scattering research to quickly reduce, visualize and interpret their data. We are particularly interested in making sure that new and occasional users, a growing segment of the userbase, can make more effective use of the available beam time and to reduce the time it takes from experiment to eventual publication of results. This means focusing on the simple things initially and ensuring that they are done well.

In addition to our primary aim of supporting the user program at the NCNR, we also provide outreach and support development efforts outside of NIST. For example, in on-going collaborative efforts with developers at the Laboratory for Neutron Scattering, ETHZ and Paul-Scherrer Institute, CH-5232 Villigen, Switzerland (PSI), they have been able to provide data reduction support for their own instruments into DAVE. Hopefully, in future the PSI developers will also be making contributions to the analysis and visualization modules which will benefit all.