Getting Started | Documentation | Glish | Learn More | Programming | Contact Us |
Version 1.9 Build 1488 |
|
AIPS++ Beta Release: release notes |
AIPS++ Project
NRAO, Socorro New Mexico, U.S.A. |
whole document as Postscript
|
HTML updated: 1997 September 03 |
N.B. This document uses HTML 3 Tables, and
in-line images to display mathematical expressions.
Turn Image
Loading ON, and set your font size in the range
12 to 14pt for optimal browsing.
This document is a guide for beta testers of AIPS++ release 0.9. It is intended to describe the installation procedures, outline the current capabilities of AIPS++, and to describe what feedback we would like from beta testers.
The content of this document is close to that of the release notes for AIPS++ release 0.8. The main changes are to describe the new functionality.
It is important to understand the role of this beta release in the development of AIPS++. The AIPS++ release process has been described in a document on Planning for Releases of AIPS++. AIPS++ is continuing development at the various AIPS++ consortium sites, and rapidly evolving versions of the AIPS++ system are to be found at the consortium sites. A release is a snapshot of the development system that is suitable for export to other sites. We plan to make two major releases, one in 1997 and one in 1998. The first is designated as a ``Limited Public Release'' since it will contain only a subset of the functionality expected to be present eventually. The second release, in 1998, is expected to have a more rounded set of capabilities. Both of these will be preceded by explicit ``beta'' releases. The release described here is is the second beta release: AIPS++ Version 0.9. The expected set of releases are thus:
We use the term beta release to denote a distribution of the system to a limited number of people who have agreed to test the system and report problems and general comments. The principal goals of the beta releases and the LPR are to provide astronomers with a first look at functionality in a number of different areas: synthesis, image analysis, general tool-kit, and for the AIPS++ Project to get experience with distribution and support of AIPS++ outside consortium sites.
More specific description of what we expect to learn from beta-testers is given below. First, we describe the current capabilities of AIPS++ and how to install it.
In this section, we provide a brief overview of the capabilities of AIPS++, describing both what is present in the system, and what we have not yet delivered.
More details of the synthesis capabilities can be found from the documentation on the imager, and from the Guide to Synthesis Processing in AIPS++.
We assume that you are installing a Beta release of the system, complete with prebuilt binaries. You need to refer to other documentation if you are attempting an installation from source; such is beyond the scope of this document.
Installation over the top of a existing version is possible but you may wish to make a new installation.
If you have an existing installation, we recommend that you write existing MeasurementSets and Images to FITS format from where they can be reloaded.
The installation process involves you downloading several compressed (GNU-zipped) tar files from the aips2.nrao.edu anonymous ftp server, and running an install script (called configure). It will uncompress and unpack these tar files in the right places, and you will end up with a complete source-and-binary AIPS++ system, ready to run. All that will be required is the invocation of an initialization script (aipsinit.sh or aipsinit.csh) which you can call for convenience in your .login or .profile or equivalent login script.
This beta release is targeted at a few architectures:
We use the GNU C++ compiler to generate the binaries. You do not need to have the GNU compiler, however, as prebuilt binaries and libraries are provided.
While a separate account for AIPS++ is recommended, it is not required for the installation. Your own personal account -- assuming sufficient disk space -- should suffice. You will not need root access, and should not perform the installation as root. In addition, you will not be required to gain access to any operating system files or directories; everything can be done from a normal, non-privileged account.
AIPS++ uses the Caltech PGPLOT package (version 5.1.0 or later) to provide various plotting capabilities. If you already have an installation of PGPLOT, then you can and should use that. Otherwise, for convenience we provide a copy of the PGPLOT library and the required font file, grfont.dat. Please note that PGPLOT is not public-domain software. However, it is freely available for non-commercial use. It is copyrighted by California Institute of Technology.
Here is an approximate outline of the various hardware and software requirements for this release:
While this is a minimum list, you may also want to include these optional items:
Before you plunge in and start the installation, you may want to make some preparations. First, if you have a local copy of gunzip, make sure your PATH environment variable includes the directory where it is found. If it does not by default, you can add it like this (if your shell is one of sh, bash, ksh, zsh or some other bourne-like shell):
or if your shell is csh, tcsh or another C-like shell:
In the above examples, it is presumed that gunzip is found in the directory /wherever/bin/gunzip.
Another variable you may wish to add to the PATH variable is the location of your X11 or OpenWindows software. On Sun systems, this will typically be in /usr/openwin:
or for C-shells:
If you have an existing Classic AIPS installation, you may want to ensure that you have defined its environment via the LOGIN.SH or LOGIN.CSH scripts first. This will cause the configure script for AIPS++ to automatically generate a hosts database from the existing AIPS information in HOSTS.LIST, which can be a real timesaver.
Finally, if you have a favourite text editor (emacs, vi, textedit, elvis, etc.), you should make sure that either the EDITOR or VISUAL environment variables are set to invoke it, e.g.,
or:
as appropriate for your shell.
Make sure you are in the code subdirectory where you left the GNU-zipped tar files, and enter this on your Unix command line:
Then answer the questions, which are fairly routine. The steps you have to go through for this installation are actually fewer and less complex than the equivalent (INSTEP1) for Classic AIPS, so don't panic.
The first thing you'll see is something like this:
The 'configure' script bootstraps the AIPS++ system to a state where it can be used by end-users. It will by default perform a binary installation, but it can be used to recursively build the libraries, executables, and other parts of the system. It may be used to configure AIPS++ from scratch, or to add a new architecture. In the latter case the installation of the aipsinit scripts and databases can be skipped. You will be asked a few simple questions, most of which have default answers (in square brackets). Simply type <return> to accept these defaults.
If you are reading this document, then you are doing a binary installation, you are not configuring from scratch, and you are not adding a new architecture. If you have previously defined an EDITOR or VISUAL environment variable, you will see a notice to the effect that configure found this, and will use it to let you edit a few critical files along the way.
If you already have a binary installation and you wish to install a new patch you should merely need to fetch the latest bin- and docs- (note! plural) .tar.gz files and untar them from the code directory. Be sure to temporarily undo any ``noclobber'' setting in your shell to allow replacement of files by the (un)tar command. The source files will be out of date, however for a binary installation this should be fine. If you want the sources to be current as well, it is probably best for you to reinstall from scratch.
At this point, you should have an AIPS++ installation that is ready for testing.
To test the installation, use the assay module:
. /aips++/beta/aipsinit.sh # For Bourne/Korn/Bash shells source /aips++/beta/aipsinit.csh # For C-like shells aips++ - include 'assay.g' - assay().trytests()
This will run all registered test scripts in the system, and summarize at the end which failed. The complete sequence should take about 20 minutes.
The final number printed will be the number that failed. If this is zero, then the installation has passed the first test. If it is not, then you need to determine which test failed and run it again e.g. if imagertest failed then do:
aips++ - include 'assay.g' - assay().try('imagertest')
If it is not clear why a particular test fails, then please contact us using the mail exploder aips2-beta@nrao.edu (see below for more details).
If no tests failed then you are ready to move on to using the system. At this point, it may be a good idea to re-read the document on Getting Started in AIPS++, and decide what you wish to try out.
The most likely source of error on systems that support it is an incorrect value for the environment variable LD_LIBRARY_PATH. On Sun and Linux systems, this variable specifies additional directories to search for unresolved shared libraries referenced in the binaries. Your site may not have the various system and optional shared libraries in the same places as we do, so the binaries we generate may need this variable set to include some of your site-specific directories before you can run certain programs, or the aips++ system itself.
The configure script will attempt to figure out what is needed for this variable, and it will set and/or extend it (possibly on multiple lines) for you in the file sun4sol_gnu/aips++local.sh (replace sun4sol_gnu with your architecture if needed); while it tries to figure out the right settings, it may not be correct for your environment.
If you find the value in this file incorrect, please change it to whatever is correct for your system. Note that if you do not have either PGPLOT or TCL libraries on your system, this variable will need to include the AIPS++ architecture-specific library (e.g., $AIPSROOT/sun4sol_gnu/lib) as that is where they will then be found.
The purpose of the beta release is two-fold: to determine and correct bugs, problems and deficiencies in the current software, and to solicit general comment and feedback on AIPS++. To be successful, both require a considerable allocation of time and patience, and so we would like to thank you for agreeing to be a tester.
AIPS++ is a totally new package and has many features and capabilities that most astronomers will be unfamiliar with. It has been designed in accord with the AIPS++ User Requirements to have both canned algorithms and general purpose tools. The general flavor of the package may may seem strange (and probably irritating!) at first. Please give it a chance. What you see here is undoubtedly rawer than what the end-user will eventually encounter. We do plan to add more user-friendly interfaces as we gain experience in what people want.
We suggest that you first take time to read a number of key pieces of documentation. Please remember to keep notes on the documentation that you read: Is it clear? Does it cover what you need to know? Is there jargon present? Do the examples actually work?
Start by reading the document on Getting Started in AIPS++, probably all of the easy track. Then you should be in a good position to try out some of the examples in that document.
If that leaves you curious about Glish, then try the Glish tutorial. This document contains a very good introduction to the use of Glish, and also touchs on some more sophisticated uses of Glish.
If you are interested in synthesis processing, then we recommend that you read the documentation on the imager and the Guide to Synthesis Processing in AIPS++. imager has a demonstration (imagerdemo) and a test (imagertest) that are both worth running. After running these examples, you might want to read the introductory material for imager again.
Another tool that is worth looking at in some detail is Wim Brouw's measures module. This handles conversions of measured quantities with units and reference frames. For example, it can be used to calculate the rising time of a source at a given observatory.
At this point, you should be ready to decide on a small project that you might wish to pursue, perhaps synthesis imaging of some sort, or processing of ascii table data using the table system, or simply image display.
We suggest that as you proceed, you report bugs and ``features'' as you find them using one of the various methods described in the next section. We also need more general and wide-ranging reactions to the software, but our experience with our testers so far is that you should give the system a little time beforehand.
If you are having trouble doing something that you think the system should do, and you've read the documentation, you can get a human to help by sending a message to the AIPS++ Beta exploder aips2-beta@nrao.edu. This mailing list will include all the beta testers, and members of the AIPS++ Project. You should expect to receive advice from a member of the Project within a day or less. If you see a message from one of the other testers that you understand the answer to, please help us out and reply. An archive of all messages is available.
If you know what to do and it just doesn't work, then report a bug. There are a number of ways of doing this. The easiest is to use the bug() command from inside AIPS++. The advantage of this approach is that it gives us information we need about your environment. An alternative and sometimes more straightforward approach is to use the WWW interface to the AIPS++ Bug reporting system. Please also use this mechanism to request or suggest enhancements to the current system. You can also review all existing bugs from the AIPS++ Gnats Page.
Finally, if you are totally frustrated and everything else has failed, contact Tim Cornwell (505 835 7333, tcornwel@nrao.edu) or Brian Glendenning (505 835 7347, bglenden@nrao.edu)
We are aware of the following problems:
There have been many changes:
Glish setprinter() should no longer be used. For backward
compatibility, the function
setprinter(<printerName>) has the same effect as
setprintcommand("pri -P<printerName>").
Glish psprint() now causes a dialog box from "printer.g" to appear to control printing for each plot.
gplot1d will create its own private colormap if enough colors are not available in the default colormap. This may cause flashing when moving the mouse between the plot window and other programs. If you do not want this behaviour, close the plot window, then close other applications that use excessive colors (e.g., Netscape), and reopen the plot window.
All boolean functions that were previously restricted to accepting the set of strings ("on", "off", "true", "false", "yes", "no") now also accept boolean or numeric values. For scalar values, the value zero is false, and all other numbers are true.
All plotter functions will now fail gracefully if any parameter is of an unacceptable type.
We thank Tim Pearson and Martin Shepherd for allowing use of PGPLOT, and for help with the Glish binding to PGPLOT.
Glish is covered by the following copyright:
Copyright (c) 1993 The Regents of the University of California.
All rights reserved.
Copyright (c) 1997,1999,2000 Associated Universities Inc.
All rights reserved.
This code is derived from software contributed to Berkeley by Vern Paxson and software contributed to Associated Universities Inc. by Darrell Schiebel.
The United States Government has rights in this work pursuant to contract no. DE-AC03-76SF00098 between the United States Department of Energy and the University of California, contract no. DE-AC02-89ER40486 between the United States Department of Energy and the Universities Research Association, Inc. and Cooperative Research Agreement #AST-9223814 between the United States National Science Foundation and Associated Universities, Inc.
Redistribution and use in source and binary forms are permitted provided that: (1) source distributions retain this entire copyright notice and comment, and (2) distributions including binaries display the following acknowledgement: ``This product includes software developed by the University of California, Berkeley, the National Radio Astronomy Observatory (NRAO), and their contributors'' in the documentation or other materials provided with the distribution and in all advertising materials mentioning features or use of this software. Neither the names of the University or NRAO or the names of their contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
AIPS++ is covered by the following copyright:
Copyright (C) 1996,1997,1999,2000 Associated Universities, Inc. Washington DC, USA.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Massachusetts Ave, Cambridge, MA 02139, USA. Correspondence concerning AIPS++ should be addressed as follows:
Internet email: aips2-request@nrao.edu
Postal address: AIPS++ Project Office, National Radio Astronomy Observatory, 520 Edgemont Road, Charlottesville, VA 22903-2475 USA.