State of the CASA Package February 2007 Steven T. Myers, CASA Project Scientist --------------------------------------- Over the past four years, significant changes have occurred in the project formerly known as AIPS++. This process, which began in late 2002 with the transition to the Project Leadership team of Joe McMullin as Project Manager and myself as Project Scientist, and was followed by the Technical Review and subsequent project reorganization in 2003, will come to fruition with the upcoming Beta release of the Common Astronomy Software Applications (CASA) package scheduled for September 2007. This will be the first chance that a significant cross-section of the user community will be able to try out CASA and receive some (initially limited) user support. Over the past 4 years, the CASA team has been developing the form and functionality of the package based upon the requirements specified in the ALMA Offline Data Processing Requirements and the EVLA Data Post-Processing Software Requirements documents. During this period, they have also implemented significant changes to the core code-base and the framework based upon the findings of the external Technical Review. Following the panel recommendations, we have kept and enhanced the core C++ modules that made up the aips++ toolkit, and provided these as libraries that would be called from a new Python-based user interface. In addition, these libraries would be accessible to other processes, such as those in the ALMA Pipeline system. Management of the project was refocused on supporting data post-processing for the ALMA and EVLA projects. CASA development has been guided by extensive user input from within NRAO, most notably from the NRAO Applications User Group (NAUG), and from the ALMA and EVLA projects. For example, ALMA has carried out a series of four formal tests of the functionality based upon the fulfillment of the software requirements. EVLA has started a series of more informal user tests. The results of these tests are publicly available (see Appendix), as are the development plans for CASA drawn up in consultation with the project representatives. CASA has passed these tests, and in the process received valuable input, including criticism, from the projects regarding the implementation of these requirements and the scope of future development plans. One criticism that CASA has consistently received about the nature of these tests is that they have been focused on the formal requirements and the delivery of capabilities on schedule, and not upon more general use of the package by a wider cross-section of users for the reduction of their own data. This is a fair point, and we feel that the upcoming Beta release is the appropriate point to "open up" the package. Note that the purpose of the formal ALMA and EVLA tests was to test the deliverables specified in the project planning as milestones for acceptance. It made no sense in the context of these tests to evaluate functionality that was not scheduled for delivery. This was particularly true during the past two years where we have made the transition from the glish-based aips++ framework to the Python-based CASA environment, as the staged process of porting and rewriting parts of the old system that relied heavily on glish meant that there were significant gaps in end-to-end paths for data through the system. However, at the point of the Beta release, we will have sufficient supported capabilities for wider use of the package. We will also have completed the implementation of a user interface in the CASA Python environment. Some of these recent developments will be tested in the fifth ALMA formal test scheduled for March 2007. However, the true "user" test of CASA will again be with the wider use of the Beta release. The top-ten key features of the CASA package when it reaches Beta release will include: 1. A "casapy" environment based on a widely used Python interface (IPython), which provides access to the core CASA tasks and tools, as well as common Python features. 2. A standard set of supported data (e.g. UVFITS, Measurement Sets) and image (including FITS, CASA and Miriad Images) formats, along with fillers for data from selected telescopes (e.g. VLA, ALMA SDM). 3. High-level tasks for common operations, such as calibration and imaging. 4. Access to a robust "toolkit" of functions for more advanced processing and script construction. 5. A uniform logical parameter-setting interface to the tasks and tools. Initially, an interface similar in form to the Miriad and AIPS interfaces will be provided at the Python level. 6. End-to-end processing for key VLA modes of operation, plus support for a few other telescopes and observing modes (such as those that have served as the basis of the ALMA tests). 7. A robust and functional viewer for interactive image and uv-data display. 8. Robust and functional interactive data flagging, calibration visualization, and deconvolution control capabilities, in addition to script-based alternatives for these operations. 9. Full support for download and user installation of the package and needed external libraries through rpms, for a select subset of supported operating systems and platforms. 10. Full online and inline user documentation of the package, including a task and tool reference manual, data processing cookbook, and extensive example scripts. Note that this will be a "beta release", with some of the tasks and interfaces presented in a prototype form. One of the main goals of the Beta release is to get feedback from a wider array of potential users on the important but more subjective look-and-feel of the package under real use. Subsequent to the Beta release, we plan on a year of further refinement and development leading up to a full release by the end of 2008. In spite of the the necessarily incomplete nature of a Beta release such as that for CASA, we intend that what features are provided will be robust, documented, and will provide the expected functionality for real data processing for the supported modes. Note that some of these features will be available for the more limited ALMA Test 5 internal release, allowing for feedback before the Beta. There will also be focused NRAO staff testing following the ALMA test and leading up the release. The CASA team has been working hard to prepare for these critical milestones coming this year, and we look forward to the opportunity to finally be able to present the Beta release to the community. We would like to thank those of the NRAO staff and our external colleagues who have steadfastly provided their expertise, time, and effort during the past four years. Without the timely feedback from the user testing and focus groups, we would not be where we are now: confident and proud that we will be able to deliver a capable and usable package to the ALMA and EVLA user communities. --------------------- For more information: CASA Home Page -- http://casa.nrao.edu NAUG Home Page -- http://www.aoc.nrao.edu/~smyers/naug