Pittsburgh Supercomputing Center Software Overview 13 January 1992 1.0 Introduction 2.0 News and announcements 3.0 Getting online help 3.1 Help on system commands via MAN 3.2 Help on PSC software via MAN 3.3 Squeezing extra help out of MAN 4.0 Online Documents 4.1 ULTRIX and CMVAX access to documents in AFS 4.2 UNICOS access to documents in CFS 4.3 VMS access to documents in the PSCDOC: directory 4.4 Anonymous FTP access 5.0 The Examples Directories 5.1 ULTRIX and CMVAX access to examples in AFS 5.2 UNICOS access to examples in CFS 5.3 VMS access to examples in DOC$ROOT1:[EXAMPLES] 6.0 Access to Source Code 7.0 How to use Software 8.0 Mathematical Libraries 8.1 BCSLIB 8.2 IMSL 8.3 NAG 8.4 SLATEC 9.0 Built in Scientific Libraries 9.1 SCILIB 9.2 CMSSL 10.0 Special purpose software 10.1 Engineering Programs 10.2 Computational Chemistry 10.3 Biomedical software 11.0 Exercises 11.1 Use online help 11.2 Use an online document 11.3 Use an online example 11.4 Retrieve and use a source code 11.5 Use a PSC executable program 11.6 Use a PSC library program 11.7 Use a mathematical library 12.0 PSC Software list 1.0 Introduction The PSC has over 300 software packages. You may bump in to five or ten of them during this workshop, but the rest could remain utterly unknown to you. That's a shame, because there are loads of software out there, and if you like to scavenge, or if you desperately need a routine to solve a particular problem, you may be missing a useful source of help. I'd like to explain the system we use when installing software. Once you're used to the pattern, you will be able to investigate new packages easily. In particular, I want to emphasize how easy it is for you to get your hands on the actual source code of most of our libraries. An overview of some of the more useful groups of software follows. I'll make some claims about the various big mathematical packages like IMSL, and then point out the many specialized packages that deal very extensively with a small topic. The SCILIB and CMSSL mathematical libraries are of special importance. Both are supplied by the vendors of their respective computers, and contain routines highly optimized for the hardware. These libraries can be a quick route to high performance. This still leaves most of our packages unmentioned. I hope you will browse around and investigate what else we have. You might, in particular, look over the list of software included in the final section. We've tried, when installing software, to follow a scheme which makes your work easier. We've done this by putting all software in the same place, writing help files and documents with standard names, making examples of use available, and making the source code itself available when possible. To get the most out of our software, it's important that you know how to take advantage of this setup. 2.0 News and Announcements System news programs are used to announce new software, schedule changes, system crashes, workshops and other items. There are three: RN on the ULTRIX front ends, CMVAX, and other AFS machines; NEWS on the Cray YMP; BULLETIN on the VAX/VMS front end. On the ULTRIX front ends, and CMVAX, a program called RN is available. RN stands for "read news". A beginning user might invoke RN, and then type "ggeneral" to add the "general" newsgroup to the list to be monitored. Whenever you type RN, new items will be reported to you, which you can read or skip. On the Cray YMP, the NEWS program is available. When you log in, a message is printed telling you the names of files containing news items you have not read. You can read them by typing "news". Since this program typically "dumps" a lot of text, you might prefer to type "news | more". On the VMS front ends, a program called BULLETIN is used. When you log in, BULLETIN checks to see if any new items have been posted. It lists the heading of each new item, and asks if you'd like to read it, file it, or move on. After you've logged in, you may browse through the bulletin system at any time by typing "BULLETIN". On all machines, the PSC newsletter is available online. Most of the articles from the newsletter are available. Online issues begin with February 1990. You can run the program by typing "newsletter". 3.0 Online help: Online help contains QUICK reminders about system commands and local software. Help commands are man for system help on ULTRIX and UNICOS; help for system help on VMS; man for software help on ULTRIX, UNICOS, and VMS. 3.1 Help on system commands via MAN The MAN command was intended for help on operating system level commands. The UNICOS "MAN" command describes UNICOS commands you will use every time you log in, such as CF77, LS and CD. The information has been written and installed by Cray Research. To find out about the CF77 compiler, for instance, type: man cf77 MAN information is very compressed. It's hard to read on the screen. You may want to redirect the output to a file, using a command like man cf77 > myfile.txt or, on VMS, man -o myfile.txt cf77 If you want to find any command that deals with a particular topic, use the "k" switch. This allows you to specify a single word, or several words joined in quotes. MAN searches for any commands with that word in its description. For instance: man -k delete or man -k "remote shell" 3.2 Help on PSC software via MAN The PSC has added information about local software to the MAN system. On any PSC machine, typing "man" followed by the name of a program will give you brief help on the program. For example, type man scilib or man steam The MAN program will then print out, one page at a time, a short explanation of the purpose of the given program, followed by a list of documentation, examples, source code, usage, and references. For a list of all PSC software, type man software For a list of current software news, type man journal 4.0 Online Documents: To get full information on software, you need the document system. All documents are available to PSC users in AFS, CFS and on VMS. Non-PSC users can easily get copies of the documents via anonymous FTP. The document directory is named: /usr/local/doc on AFS and CFS; PSCDOC on VMS. Most documents have filenames ending in "DOC", but large ones end in "BIG". A list of all documents is available in "DOCUMENTS.DOC". 4.1 ULTRIX and CMVAX access to documents in AFS All PSC documents are available to users of CMVAX, the UNIX front ends, and local workstations via AFS (Andrew File System). With some exceptions, AFS looks a lot like a standard UNIX file system, to which standard UNIX commands may be applied. The location of the documents in AFS is the directory "/usr/local/doc". To get a list of all the documents in AFS, you could type ls /usr/local/doc or for a more detailed listing of a particular file: ls -l /usr/local/doc/bcslib.doc To type out a document one page at a time: more /usr/local/doc/bcslib.doc To search a document for the string "differential": grep -i differential /usr/local/doc/odepack.doc or to see if ANY document has the string "differential": grep -i differential /usr/local/doc/* To use an editor to browse through the file, you might say: ed /usr/local/doc/pdecol.doc or use a similar command with "edit", "vi" or "emacs". To copy a document to your home directory: cp /usr/local/doc/odepack.doc odepack.doc You can actually change your working directory to that area, with the command cd /usr/local/doc in which case, all of the above commands can drop the "/usr/local/doc" prefix. 4.2 UNICOS access to documents in CFS All PSC documents are available to UNICOS users through CFS. To do anything with a file in CFS, it must be copied out of CFS into your directory space. Once it is copied out, you can use "MORE" or "GREP" or an editor to search through the file. Unfortunately, you CAN'T search the whole document system as it lies in CFS. To get a list of all the documents in CFS, you could type cfs list /usr/local/doc 4.3 VMS access to documents in the PSCDOC: directory All PSC documents are available in a single VMS directory named PSCDOC. Some operations can be carried out without copying the file from PSCDOC. To get a list of all the documents, you could type $ DIR PSCDOC or, perhaps, for just the documents with "last name" of "DOC", $ DIR PSCDOC:*.DOC To type out a document one page at a time: $ TYPE/PAGE PSCDOC:BCSLIB.DOC To search all the documents for the string "differential": $ SEARCH PSCDOC:*.DOC "differential" or $ SEARCH PSCDOC:*.DOC,*.BIG "differential" In some cases, you may be able to use an editor to browse the file, with a command like: $ EDIT/READ PSCDOC:CALMATH.DOC However, you may find it easier to copy the file to your current directory first: $ COPY PSCDOC:DASSL.DOC * This copy can be edited, deleted, or otherwise mutilated as you wish. 4.4 Anonymous FTP access The PSC documents may be accessed by any person on the Internet. Currently, only the copies on VMS may be gotten. To get a document, you need to use FTP to connect to A.PSC.EDU or B.PSC.EDU, using the username of "anonymous" and your EMAIL address for the password. Then you can issue standard FTP commands to copy files from the document directory, such as get pscdoc:documents.doc which is a good file to copy first, since it has a list of all the others! 5.0 The EXAMPLES Directories: The PSC has set up sample input and result files for most software. These can be used to learn how a program works, to test a program without knowing much about it, or as a "starter" file you can convert to solve a problem you're interested in. The system is fully written up in the document EXAMPLES.DOC. 5.1 CMVAX and ULTRIX access to examples in AFS If you are logged in to CMVAX, the ULTRIX front ends, or an ULTRIX workstation at the PSC, you can start the EXAMPLES program by typing: examples If that doesn't work, try typing: /afs/psc.edu/common/usr/local/bin/examples The typical use of EXAMPLES is to display or copy some example files for a particular package and machine. The main menu will ask you to specify a machine (cm2, ultrix, vms or ymp) and then a package (bcslib, odepack, etc). Once this information is specified, you will see a list of the files available in that directory, and a secondary menu will be displayed, allowing you to type or copy them. 5.2 UNICOS access to examples in CFS On UNICOS, the examples files are available through CFS. The CFS examples are all subdirectories of the CFS directory /usr/local/examples. The same BCSLIB files are available in the CFS directory /usr/local/examples/bcslib You can list them by typing: cfs list /usr/local/examples/bcslib and then, to retrieve, say, bcsprb.f, type: cfs get /usr/local/examples/bcslib/bcsprb.f 5.3 VMS access to examples in DOC$ROOT1:[EXAMPLES] On VMS, the examples are contained in the directories DOC$ROOT1:[EXAMPLES.VMS] and DOC$ROOT1:[EXAMPLES.YMP]. Examples for a given piece of software will then be a subdirectory of one of these areas. The BCSLIB examples for the YMP are in the subdirectory DOC$ROOT1:[EXAMPLES.YMP.BCSLIB]. You could copy files from there via: $ COPY DOC$ROOT1:[EXAMPLES.YMP.BCSLIB]*.* * However, we recommend that you type $ SETUP EXAMPLES and type "GRAB" to copy the files you want, or "EXAMPLES" to browse. 6.0 Access to Source code: The source code for most of the programs installed at the PSC is available for examination by, or distribution to our users. With some exceptions, you are free to copy such source code, print it, modify it, take it to other machines and so on. The exceptions are the proprietary programs, such as IMSL and NAG, and other programs whose authors have specifically requested that the source code not be distributed. Source code is available in CFS only. There is no direct way to get source code on VMS, except by sending an NQS job to the Cray. There is no direct way to get source code through anonymous FTP. A complete discussion of source code availability is in SOURCE.DOC. That document lists all the CFS source code directories, and their contents. The CFS source code directories are subdirectories of /usr/local/src/bin where source code for executables is kept, and /usr/local/src/lib where source code for libraries is kept. For example, the source code for the executable program KIVA is stored in the CFS directory /usr/local/src/bin/kiva while the source for the library CHRPAK is in the CFS directory /usr/local/src/lib/chrpak Here, we will just make a few general remarks using CHRPAK as the example: To get a list of the files contained in the CHRPAK CFS source code directory: cfs list /usr/local/src/lib/chrpak The CHRPAK CFS source code directory includes the following files: chrpak.f The main portion of the CHRPAK library. chrpakult.f A portion of CHRPAK only need on ULTRIX machines. chrpakuni.f The source code for a UNICOS-specific portion of CHRPAK. chrpakvms.f The source code for a VMS-specific portion of CHRPAK. chrpak.com VMS COM file which compiles, installs CHRPAK at PSC. makefile UNICOS makefile which compiles, installs CHRPAK at PSC. To copy, for instance, chrpak.f from the CHRPAK source code directory, type: cfs get /usr/local/src/lib/chrpak/chrpak.f If you were going to install CHRPAK on another VMS machine, you would need chrpak.f, chrpakvms.f and chrpak.com. Similarly, to install CHRPAK on another Cray, you would need chrpak.f, chrpakuni.f, and makefile. If you were going to install it on some other operating system entirely, you should copy all the source code files and look them over. 7.0 How to use Software: Many programs are available on all systems, the CM2, ULTRIX, VMS and UNICOS. On UNICOS and ULTRIX, executables are stored in /usr/local/bin, and generally have no special extension. They are run simply by issuing their name, and you don't even need to specify the "/usr/local/bin" information. Thus, KIVA would be run by typing kiva UNICOS object library files are in /usr/local/lib. The files have "lib" put in front of its name, and an extension of ".a". Usually, ".a" files will be used this way: cf77 myprog.f -lodepack on UNICOS, or f77 myprog.f -lodepack Programs run on the Connection Machine (CM2) most be compiled and executed on one of the CM2 front end machines, such as the CMVAX. Currently, there are very few precompiled libraries or executables available. One library provided by the vendor is the CMSSL scientific library, which might be used in the following way: cmf myprog.fcm -lcmssl cmattach -w a.out Similarly, if an executable program were available for the CM2, it could be run with the command cmattach -w myprog Most VMS programs, whether libraries or executables, are stored in the directory PSC$LIB. Executable programs end with an extension of ".EXE". They may be run using the RUN command. For example, the LINPACK benchmark program is PSC$LIB:LBENCH.EXE, and can be run by typing $ RUN PSC$LIB:LBENCH Library files will generally have the extension ".OLB" and are used in connection with a compiled user calling program. For example, there is an ODE solving package called ODEPACK, whose compiled code is available in the file PSC$LIB:ODEPACK.OLB. To use ODEPACK, a program must be written which dimensions arrays, initializes data, and calls one or more of the subroutines in ODEPACK. The compilation, linking and running of the user calling program would be done by $ FORTRAN MYPROG.FOR $ LINK MYPROG.OBJ,PSC$LIB:ODEPACK/LIB $ RUN MYPROG The document "SOFTWARE.DOC" contains a list of all the software installed at the PSC. 8.0 Mathematical Libraries If you're writing programs regularly, it's a good idea to choose a general mathematical library to rely on. Such libraries CAN provide accurate, reliable, portable software. Moreover, a library may be optimized for a given computer, relieving you of the necessity of dealing with low level details. Library software is available for many of the following problems: Differential equations y'=f(x) Eigenvalues and eigenvectors, A*x=lambda*x Fourier transforms and time series analysis Interpolation, approximation, data smoothing Least squares solutions of A*x=b, data fitting Linear systems: solution of A*x=b, matrix factors, inverse or determinant Minimization of a scalar function f(x) of one or many variables Nonlinear equation solution, f(x)=0 for one or many variables and equations. Quadrature or Approximate Integration Special Functions (Bessel, Error, Gamma) Statistics and Probability (Regression, Correlation, Variance) Some general libraries at the PSC include: BCSLIB, CALMATH, CMLIB, HARWELL, IMSL, MATHLIB, NAG, RECIPES, SLATEC, Very brief comments about some of the libraries follow: BCSLIB - Boeing Computer Services library Outstanding vectorization on Cray YMP. Good documentation, available from vendor. Some online. All routine names being with H. An error flag IER is always used. IMSL - International Mathematics and Statistics Library Very widespread package, available even on PC's. Excellent documentation, available for $15 at some bookstores. Interactive documentation program available. NAG - Numerical Algorithms Group British origin. Good algorithms, more aggressive optimization than other libraries. Excellent documentation, not widely available. Interactive documentation program available. Routine names begin with a letter, then 2 digit number. SLATEC - Sandia/Livermore/Air Force Technical Exchange Collection National Laboratory software, source code freely available. Swallowed whole many famous packages (LINPACK, EISPACK, MINPACK, others). Interactive documentation, but NO hardcopy available! 9.0 Vendor Supplied Scientific Libraries Vendors simplify the use of supercomputers by providing a scientific library. The library can carry out common mathematical tasks for the user, while accessing the computer in a highly optimized way. Such a library allows beginning users to achieve high performance with little training. There are two such libraries available at the PSC: SCILIB for the Cray YMP, CMSSL for the Connection Machine. 9.1 SCILIB SCILIB is a built in library provided by Cray Research, Inc. The routines in SCILIB were intended to supply a solid base of popular routines that had been well optimized for the Cray. It was NOT the intent of CRI to supply a full mathematical library. SCILIB includes several linear algebra packages: BLAS Basic Linear Algebra Subprograms. EISPACK The standard eigenvalue package. LAPACK New linear algebra library, superior to LINPACK and EISPACK. LINPACK The standard linear algebra package. Aside from these packages that SCILIB swallowed wholesale, there are also: Fast Fourier Transforms Matrix-vector and matrix-matrix multiplication "Recursion" or "Recurrence" algorithms Vector search Sorting Vectorized random number generation VAX/Cray binary data conversion CHARACTER string manipulations Timing routines: real time, CPU time, clock cycles SCILIB is partially written in CAL, and optimized for the Cray. This means that SCILIB can be faster than a user program written in FORTRAN because a CAL program can specify that certain operations be done in a certain order, that certain vectors be kept in a local register, and so on. For example, to compute the matrix-vector product x=A*y, the following FORTRAN code might be used: DO 10 J=1,N DO 20 I=1,N X(I)=X(I)+A(I,J)*Y(J) 20 CONTINUE 10 CONTINUE which will read and write each element of X N times. If a SCILIB routine (SGEMV in this case) is used, the Cray can use registers and other tricks to cut down on the I/O while getting the same result more quickly. SCILIB is fully documented in SCILIB.BIG. For your convenience, we've installed a FORTRAN version of SCILIB on ULTRIX and VMS. This version has been extended at the PSC to include more of the UNICOS SCILIB routines. 9.2 CMSSL CMSSL is the Connection Machine Scientific Software Library. This library is supplied by Thinking Machines Corporation, the vendor of the Connection Machine. It is a library of subroutines for solving certain common mathematical problems. It contains well written algorithms for solving mathematical problems that are ideally suited for treatment on the Connection Machine. The algorithms have been carefully implemented for superior performance. CMSSL version 2.2 now supports both the slicewise and Paris models of the CM Fortran compiler. For more information on the slicewise model, see SLICEWISE.DOC. CMSSL can be linked with code written in C*, C/Paris, CM Fortran, Fortran/Paris, *Lisp or Lisp/Paris. CMSSL offers routines for the following operations: Broadcast of data from CM arrays to all processors; Fast Fourier transforms (powers of 2 only); Histogramming (data counting) routines; Linear equation solution, square matrix A, A*x=b: for a dense matrix A, using Gauss-Jordan or QR algorithm; for a triangular matrix A; for a tridiagonal matrix A, using cyclic reduction; Matrix inversion; Matrix-matrix and matrix-vector multiplication, A*B, A*x, or x*A; QR factorization and solution of rectangular linear systems; Random number generation (uniform); Sparse matrix vector product; For details, see the document CMSSL.DOC. 10.0 Special purpose software Some scientific and engineering fields are well enough understood that executable programs are available to solve a wide range of problems. The user has only to prepare a data file describing the particular problem. This is quite a different approach than that required when building a program by calling library routines. 10.1 Engineering Programs Sometimes called "finite element" programs, this category includes fluid flow and structural mechanics. Well known programs available at the PSC include the structural programs ABAQUS, ANSYS, the fluid programs FIDAP, FLOW3D and NEKTON, the electronic circuit program SPICE, and the internal combustion modeler KIVA. Moreover, the PSC has the whole series of dynamics codes from Livermore labs, including DYNA3D and NIKE3D. Versions of these programs were used, for instance, to model the deformation of aluminum cans under a crushing force by users from ALCOA. Some of these programs may not be used without permission. In that case, you must send mail to REMARKS requesting access. 10.2 Computational Chemistry The one program that accounts for the most usage at the PSC is the "Gaussian" quantum chemistry program. This is an "ab initio" package that computes the properties of atoms and molecules from basic theory. Gaussian is maintained at the PSC by Doug Fox, one of the members of the team that developed the program. The PSC sponsors workshops on Gaussian and on computational chemistry. Gaussian is documented in "GAUSSIAN.DOC". Other packages available include AMBER, AMPAC, CADPAC, CHARMM, GAMESS, and MOPAC. 10.3 Biomedical software The PSC has received a grant from the NIH to foster biomedical supercomputing. To that end, the PSC has collected many databases, and installed or adapted or created software to query those databases, to do sequence alignment and biomedical modeling. The databases available include GenBank and EMBL. Software includes RNAFOLD and RANFOLD, for structure prediction, MSA for multiple sequence alignment, and the XPLOR modeling program. The MAXSEGS sequence alignment program is available on both the Cray and the Connection machine. The PSC has a staff of three full time biomedical specialists who work with users and develop software. 11.0 Exercises Most of these exercises may be carried out on the Cray YMP, the VAX/VMS system, or the ULTRIX front end machines. If you are using the Cray, you will have to get documents out of CFS before reading them. If you are using the VMS VAX or ULTRIX front ends, you should probably run programs by submitting them to the Cray over the station. 11.1 Online help A) Get online help for the PSC installed program ANSYS, using MAN. B) Repeat this test, using the "man -o filename" command to store the information into a file. You may notice that the results are significantly different if you use output redirection instead! C) Get online help for the UNICOS or ULTRIX system command CD, using MAN. 11.2 Online documents A) If you are using ULTRIX or VMS, search all documents whose first name begins with "g" for the string "external". This is something you can't easily do on UNICOS, where the documents are stuck in CFS! B) Search the document CHRPAK.DOC for the string "reverse". On UNICOS, you will have to retrieve the file from CFS first, and you should include the switch "-i" in the GREP command. C) Find, in the document CHRPAK.DOC, the documentation for subroutine CHRREV, which explains the arguments for the routine. Save these lines to a file. On VMS, you may run into a file protection problem if you type "EDIT PSCDOC:CHRPAK.DOC". Use "EDIT/READ" instead. 11.3 Examples A) Get the YMP example job for BAILEY: On VMS, you will need to type "SETUP EXAMPLES" first. Get the YMP examples. The file you are interested in is ""BAILPRB.JOB". On UNICOS, you will need to retrieve each file one at a time out of CFS. Just get "bailprb.job". On ULTRIX, just type "examples", and specify the machine (YMP) and package. You want to copy "bailprb.job". B) Run the BAILEY example: On VMS, you can type "CRAY" to setup the connection between the Cray and the VAX, insert the correct information in the first line of "BAILPRB.JOB", type "CSUBMIT BAILPRB" The job will be sent to the Cray, and you will be notified by a message on the screen when the results come back in the file "BAILPRB.CPR". On UNICOS, to run in batch mode, type "qsub bailprb.job". Your job results will come back in two files, bailprb.e1234 and bailprb.o1234 ("1234" will actually be some other random four digit number!). The second file contains the interesting output! On ULTRIX, copy the file "bailprb.job" from the examples directory for the YMP. You will need to use the PSCSUB command to submit jobs. Please read the online documentation for PSCSUB, since you will need to set up special permission files on ULTRIX and UNICOS. Once you've done that, send the job to the Cray using the PSCSUB command "pscsub bailprb.job". 11.4 Source code A) Get the source code for the C LINPACK benchmark code "LBENCHC". If you do not want to touch a C program, then carry out this exercise using the FORTRAN version of the LINPACK benchmark code, "LBENCH". Use the MAN program to find out where the source code is. If you are on VMS, you will need to submit a job to the Cray to get the source code. If you are on ULTRIX, you will have to use the TELNET program to log in to the YMP, and the FTP program to send the file back to ULTRIX. B) Compile and run the source code using these commands: On UNICOS or ULTRIX: cc lbenchc.c a.out or on VMS: $ CC/NOLIST LBENCHC.C $ SETUP C $ LINK LBENCHC $ RUN LBENCHC 11.5 Using PSC executable programs A) Run the FORTRAN LINPACK benchmark programs. On VMS, you can run the local version, or submit a station job to run the Cray version. On ULTRIX, you'll have to run the local version. On UNICOS, there are two versions: LBENCH and LBENCHSCI. LBENCH uses FORTRAN versions of LINPACK routines, but LBENCHSCI uses the Cray SCILIB versions. Notice the difference in speed! B) Try to preserve the output of LBENCH in a file: On UNICOS or ULTRIX, use redirection: lbench > lbench.out On VMS, try using one of these assignments: $ ASSIGN/USER LBENCH.OUT SYS$OUTPUT $ RUN PSC$LIB:LBENCH 11.6 Using PSC library programs: A) Compile this program, link it with CHRPAK, and run it: PROGRAM TEST CHARACTER STRING*30 STRING='A man, a plan, a canal - Panama!' WRITE(*,'(1X,A30)')STRING CALL CHRREV(STRING,0) WRITE(*,'(1X,A30)')STRING STOP END B) Take a look at what's in the compiled CHRPAK library: On UNICOS or ULTRIX, use the "ar" command to get a list of what's in the library file "/usr/local/lib/libchrpak.a": ar t /usr/local/lib/libchrpak.a On VMS, use the command "LIBRARY/LIST PSC$LIB:CHRPAK.OLB" command to get a list of what's in the CHRPAK library. 11.7 Using mathematical libraries This exercise will help you get a feeling for the strengths and personalities of each of the PSC's mathematical libraries. For this exercise, we suggest you compare the libraries BCSLIB, IMSL, NAG and SLATEC. You don't have to answer the questions below, but at least write down any comments suggested by the questions. You are a researcher with a set of 11 pairs of X, Y data values representing the value of a function at the points 0, 1, 2, ... 10. You need a subroutine that will interpolate this function so that you can request interpolated values at, say 3.7 or 9.6. A) For each library, does it take more than a minute to find the name of a subroutine to do this? (Use the online documentation or the documentation programs). HOW FAST DID I FIND THE SUBROUTINE? BCSLIB __________________________________________________ IMSL __________________________________________________ NAG __________________________________________________ SLATEC __________________________________________________ B) Assuming that you found a routine to do the job, glance over the documentation briefly. How many of the arguments do you think you understand? How many are confusing? Were there any arguments where you weren't sure if they were input or output? Were there any arguments whose type wasn't clear (REAL or INTEGER or COMPLEX or ...)? HOW EASY WAS THE DOCUMENTATION TO UNDERSTAND? BCSLIB __________________________________________________ IMSL __________________________________________________ NAG __________________________________________________ SLATEC __________________________________________________ C) Prepare a simple program to test the routines you found. Use as data the values X(I)=I, and Y(I)=X(I)**2 for I=0 to 10. Request that the program return the interpolated value of Y at X=2.5, which should be 6.25 if you are using quadratic or cubic interpolation. How hard was it to prepare this routine for each library? If you alter the data so that X(1)=X(2), this should cause an error. Does the program complain? Is the error message understandable? HOW HARD WAS IT TO WRITE A SIMPLE CALLING PROGRAM? BCSLIB __________________________________________________ IMSL __________________________________________________ NAG __________________________________________________ SLATEC __________________________________________________ 12.0 Pittsburgh Supercomputing Center Software List The following is an alphabetical list of software at the Pittsburgh Supercomputing Center. Many items are available on more than one machine. The machine abbreviations include: CM2 Thinking Machines Incorporated parallel Connection Machine 2. ULTRIX Digital Equipment Corporation UNIX computers. UNICOS Cray Research YMP 8-32 vector supercomputer. VMS Digital Equipment Corporation VAX/VMS computers. Name CM2/ULTRIX/UNICOS/VMS ABAQUS (.../....../UNICOS/...) Finite element program. AFS (CM2/ULTRIX/....../...) Andrew File System. ALISP (.../....../UNICOS/VMS) LISP subset used by P3D. AMBER (.../....../UNICOS/VMS) Molecular modelling. AMOS (.../....../UNICOS/VMS) Bessel functions. AMOSLIB (.../....../UNICOS/VMS) Special functions. AMPAC (.../....../UNICOS/...) Quantum chemistry. AMPS (.../....../....../VMS) Multiple protein alignment. ANDREW (.../....../UNICOS/VMS) Communication protocol. ANIMATOR (.../ULTRIX/UNICOS/VMS) Animation script writer. ANIMATION (.../....../....../VMS) PSC animation facility. ANSYS (.../....../UNICOS/...) Finite element program. APML (.../....../UNICOS/...) High precision arithmetic. APSTAT (.../....../....../...) Statistics algorithms. ARRAYS (.../....../....../...) Use of arrays in FORTRAN. ASSIGN (.../....../UNICOS/VMS) Alter characteristics of FORTRAN files. ATH (.../....../....../VMS) PSC disk authorization utility. AUTO (.../....../UNICOS/VMS) Parameterized ODE solver. AUTOTASK (.../....../UNICOS/...) Cray automatic multitasking. BAILEY (.../ULTRIX/UNICOS/VMS) High performance FFT routines. BANDIT (.../....../UNICOS/VMS) Banded matrix utilities. BCFS (.../....../UNICOS/...) Enhanced CFS script. BCSLIB (.../....../UNICOS/...) Boeing mathematical library. BCSLIBEXT (.../....../UNICOS/...) BCSLIB external storage library. BDMG (.../....../UNICOS/VMS) Boundary value multigrid. BENCHLIB (.../....../UNICOS/...) Cray utility library. BENCHM (.../....../UNICOS/...) FORTRAN DO loop benchmark. BIHAR (.../....../UNICOS/VMS) Biharmonic equation. BISON (CM2/ULTRIX/....../VMS) General purpose parser generator. BITNET (.../....../....../VMS) Mail and communications network. BIVAR (.../ULTRIX/UNICOS/VMS) Interpolation of scattered Z(X,Y) data. BLAS (.../ULTRIX/UNICOS/VMS) Basic Linear Algebra Subprograms. BORMAT (.../ULTRIX/UNICOS/VMS) Border banded matrix solver. BOUNDS (.../....../UNICOS/VMS) Out-of-bounds data debugging. BROOKHAVEN (.../....../....../VMS) Brookhaven Protein Database. BSMP (.../....../UNICOS/VMS) Banks Sparse Matrix Program. BUGS (.../....../UNICOS/VMS) Bugs reported to the PSC. BULLETIN (.../....../....../VMS) VMS bulletin board program. BVPSOL (.../ULTRIX/UNICOS/VMS) Boundary Value Problem solver. C (CM2/ULTRIX/UNICOS/VMS) C programming language. CADPAC (.../....../UNICOS/...) Ab initio molecular orbital analysis. CAL (.../....../UNICOS/...) Cray assembly language. CALMATH (.../....../UNICOS/...) CAL mathematical library. CASCADE (.../....../UNICOS/VMS) System analysis and design. CDBX (.../....../UNICOS/...) Cray debugger. CDECL (.../....../UNICOS/...) C declaration interpreter. CFS (.../....../UNICOS/VMS) Common File System archiver. CGLIB (.../....../UNICOS/VMS) Computational Geometry Library. CGM (.../ULTRIX/UNICOS/VMS) Computer Graphics Metafile standard. CHARGES (CM2/ULTRIX/UNICOS/VMS) PSC service charges. CHARMM (.../....../UNICOS/...) Quantum chemistry package. CHELP (.../....../UNICOS/...) Ab initio wave function analysis. CHRPAK (.../ULTRIX/UNICOS/VMS) FORTRAN CHARACTER manipulation. CLEAN77 (.../ULTRIX/UNICOS/VMS) FORTRAN program reformatter. CLUSTER (.../....../....../VMS) Cytometric cluster analysis. CMF_UTILITY (CM2/....../....../...) CM FORTRAN utility library. CM2 (CM2/....../....../...) Description of Connection Machine. CMLIB (.../....../UNICOS/VMS) NIST core mathematical library. CMNQS (CM2/....../....../...) CM2 batch queueing system. CMSSL (CM2/....../....../...) CM2 Scientific Software Library. CM_TIMER (CM2/....../....../...) CM2 timing routines. CODEBOOK (.../....../UNICOS/...) Creates DISSPLA calling programs. COLNEW (.../....../UNICOS/VMS) Collocation PDE solver. COMPAR (.../....../UNICOS/VMS) Geometric comparison of coordinate data. COMPRESS (CM2/ULTRIX/UNICOS/VMS) File compression. CONDENSE (.../....../....../VMS) Sequence file condenser. CONSENSUS (.../....../UNICOS/...) Analyze unaligned DNA. CONSORT (.../....../....../VMS) Flow cytometric data acquisition system. CONVERT (.../....../UNICOS/...) Cray to VAX/IEEE data format converter. CPLUSPLUS (CM2/ULTRIX/UNICOS/VMS) GNU and AT&T C++ compilers. CRAYARCH (.../....../UNICOS/...) Cray architecture issues. CSORT (.../....../UNICOS/...) Cray sort package. CUGDUS (.../ULTRIX/....../VMS) Cray User Group Directory User Software. CYCLE (.../ULTRIX/UNICOS/VMS) Cyclic reduction tridiagonal solver. D2S (.../ULTRIX/UNICOS/...) Double/single precision file converter. DASSL (.../ULTRIX/UNICOS/VMS) Differential/algebraic system solver. DEBUG (.../....../UNICOS/VMS) Cray and VMS debuggers. DECNET (.../....../....../VMS) Mail and communications network. DEDCPU (.../....../UNICOS/...) Dedicate CPU's for multitasking. DHSC (CM2/....../UNICOS/...) Distributed High Speed Computing library. DI3000 (.../....../UNICOS/VMS) Graphics package. DIERCKX (.../....../UNICOS/VMS) Smooth spline data interpolation. DISCOVER (.../....../UNICOS/...) Molecular mechanics and dynamics. DISSPLA (.../....../UNICOS/...) Graphics package, version 11. DISTAN (.../....../UNICOS/VMS) Chemistry package data conversion. DOCUMENTS (CM2/ULTRIX/UNICOS/VMS) Description of PSC documents. DOCVIEW (.../....../UNICOS/...) Search and display Cray manuals. DRAW (.../....../....../VMS) Graphics for biomedical software. DRAWCGM (.../ULTRIX/UNICOS/VMS) PSC CGM graphics package. DRAWP3D (.../ULTRIX/UNICOS/VMS) PSC 3D graphics library. DRIV (.../ULTRIX/UNICOS/VMS) Real or complex ODE solver. DSK (.../....../....../VMS) PSC disk authorization utility. DVERK (.../....../UNICOS/VMS) Runge-Kutta ODE solver. DYNA2D (.../....../UNICOS/VMS) 2D finite elements structure code. DYNA3D (.../....../UNICOS/VMS) 3D finite elements structure code. ECD (.../....../....../VMS) Escherichia Coli Database. ECMFFT (.../....../UNICOS/...) Temperton FFT routines. ED (CM2/ULTRIX/UNICOS/...) Unix line editor. EDA (.../....../UNICOS/VMS) Exploratory Data Analysis. EDT (.../....../....../VMS) VMS line and screen editor. EFUN (.../ULTRIX/UNICOS/VMS) Elementary function evaluation. EISPACK (.../ULTRIX/UNICOS/VMS) Eigenvalue package. EISPACKC (.../....../UNICOS/VMS) Complex version of portion of EISPACK. ELEFUNT (.../....../UNICOS/VMS) Elementary function tests. ELIB (.../ULTRIX/....../VMS) Electronic software library. ELLPACK (.../....../UNICOS/VMS) Elliptic PDE package. EMACS (CM2/ULTRIX/UNICOS/VMS) GNU EMACS editor. EMAIL (CM2/ULTRIX/UNICOS/VMS) Electronic MAIL. EMBL (.../....../....../VMS) European Molecular Biology Lab database. ENZYME (.../....../....../VMS) Enzyme database. ETAPE (.../....../....../VMS) Tape reading program. EVE (.../....../....../VMS) VMS screen editor. EXAMPLES (CM2/ULTRIX/UNICOS/VMS) Describes the PSC EXAMPLES library. F2C (.../ULTRIX/UNICOS/...) FORTRAN to C converter. FACET (.../....../....../VMS) Calculates view factors for TOPAZ2D. FFTPACK (.../ULTRIX/UNICOS/VMS) Swarztrauber FFT package, version 4.1. FFTPACKT (.../ULTRIX/UNICOS/VMS) Temperton FFT package. FIBERDRAW (.../....../....../VMS) Immersed elastic fiber graphics. FIDAP (.../....../UNICOS/...) Finite element fluids code. FILEPOLICY (CM2/ULTRIX/UNICOS/VMS) PSC file storage policy. FINDER (.../....../....../VMS) Search for patterns in file. FISHPACK (.../ULTRIX/UNICOS/VMS) Poisson equation solver, version 3.2. FITPACK (.../....../UNICOS/VMS) Interpolation by splines under tension. FLOW3D (.../....../UNICOS/...) 3D fluid code FLOW3DALCOA (.../....../UNICOS/...) FLOW3D version for use by ALCOA only. FLOWTRACE (.../....../UNICOS/...) Cray run time flow of execution tracer. FN (.../....../UNICOS/VMS) Fullerton special function library. FORCHEK (.../ULTRIX/UNICOS/VMS) Fortran program checker. FORGE (.../....../UNICOS/VMS) PSR vectorization aid. FORTOOLS (.../....../....../VMS) Fortran Tools. FORTRAN (CM2/ULTRIX/UNICOS/VMS) FORTRAN Programming language. FRED (.../....../....../VMS) Friendly editor. FREDMAIL (.../ULTRIX/....../VMS) Free Educational Mail network. FSPLIT (CM2/ULTRIX/UNICOS/VMS) FORTRAN file splitter. FTP (CM2/ULTRIX/UNICOS/VMS) File transfer protocol. FTREF (.../....../UNICOS/...) Cray FORTRAN program analysis utility. FUNPACK (.../....../UNICOS/VMS) Special functions package. GAMESS (.../....../UNICOS/...) Molecular modeling package. GAMS (.../....../UNICOS/...) General Algebraic Modeling System. GAUSSIAN (.../....../UNICOS/...) Quantum Chemistry package. GBSOL (.../....../UNICOS/VMS) Banded Gauss solver, external storage. GCC (.../ULTRIX/....../VMS) GNU C compiler. GCG (.../....../....../VMS) Nucleic acid analysis programs. GDOC (.../ULTRIX/....../...) PSC X Window-based documentation system. GENBANK (.../ULTRIX/....../VMS) Genetic sequence database. GLOSSARY (CM2/ULTRIX/UNICOS/VMS) Glossary of linear algebra terms. GMAIL (.../....../....../VMS) General mailer program. GPLOT (.../ULTRIX/UNICOS/VMS) PSC CGM file display program. GPLOTM (.../ULTRIX/UNICOS/...) MOTIF based version of GPLOT. GPLOTXV (.../ULTRIX/UNICOS/...) XView based version of GPLOT. GPRLSA (.../....../UNICOS/...) X-ray crystallography program. GQOPT (.../ULTRIX/UNICOS/VMS) General optimization package. GRAPHICS (CM2/ULTRIX/UNICOS/VMS) General graphics topic. GRAPHX (.../....../UNICOS/VMS) Molecular modeling graphics. GROMOS (.../....../UNICOS/VMS) Molecular mechanics package. GTEX (.../ULTRIX/....../VMS) Merge CGM graphics and TEX text. GUIDE (CM2/ULTRIX/UNICOS/VMS) Beginning User's Guide to the PSC. GXX (.../....../....../VMS) GNU C++ compiler. HARWELL (.../....../UNICOS/VMS) Harwell mathematical library. HBSMC (.../....../UNICOS/VMS) Harwell/Boeing sparse matrix collection. HELPER (.../....../....../VMS) PSC remote job entry facility. HIFORTRAN (CM2/ULTRIX/UNICOS/VMS) High School introduction to FORTRAN. HIPPI_LOCK (.../....../UNICOS/...) Reserve high speed data channel. HKSCAT (.../....../UNICOS/...) Konnert-Hendrickson protein analysis. HPM (.../....../UNICOS/...) Cray hardware performance monitor. HSSXEV (.../....../UNICOS/VMS) Eigenvalues of matrix, external storage. IB_TO_GB (.../....../....../VMS) IBI Pustell to Genbank format converter. IEEE (CM2/ULTRIX/....../...) IEEE binary floating point standard. IMAGETOOL (.../ULTRIX/UNICOS/VMS) NCSA raster image routines. IMSLDOC (.../....../UNICOS/VMS) IMSL interactive documentation facility. IMSL (.../....../UNICOS/VMS) IMSL mathematical library, version 11. IMTOOLS (.../ULTRIX/....../...) SDSC image manipulation tools. INGRID (.../....../UNICOS/VMS) Finite element mesh creation. INLINE (.../....../UNICOS/...) Compiler inline code expansion. INSITE (.../ULTRIX/....../...) Chaotic ODE simulation and analysis. INTLIB (.../....../UNICOS/VMS) Integration routines. IO (.../....../UNICOS/VMS) Input/output and file issues. ITPACK (.../ULTRIX/UNICOS/VMS) Iterative equation solver, version V2D. JOURNAL (CM2/ULTRIX/UNICOS/VMS) Journal of software news. KERMIT (.../ULTRIX/UNICOS/VMS) Interactive and file transfer program. KIVA (.../....../UNICOS/...) Engine modelling, version 2. LAPACK (.../ULTRIX/UNICOS/VMS) Linear algebra/eigenvalues. LASO (.../ULTRIX/UNICOS/VMS) Lanczos eigenvalue package. LBENCH (.../ULTRIX/UNICOS/VMS) LINPACK benchmark. LBENCHC (.../ULTRIX/UNICOS/VMS) C version of LINPACK benchmark. LINES (.../....../UNICOS/VMS) Count lines in file. LINPACK (.../ULTRIX/UNICOS/VMS) Linear algebra package. LIVERMORE (.../ULTRIX/UNICOS/VMS) Livermore loops benchmark. LLSQ (.../....../UNICOS/VMS) Least squares package. LOCLIB (.../....../....../...) NCAR local library. LOOPMARK (.../....../UNICOS/...) Mark vectorized loops in FORTRAN source. LOPSI (.../ULTRIX/UNICOS/VMS) Nonsymmetric sparse matrix eigenvalues. LSE (.../....../....../VMS) Language sensitive editor, PSC extensions. LSEDIT (.../....../....../VMS) Language sensitive editor, standard VMS. LSQR (.../....../UNICOS/VMS) Sparse least squares solver. LUSP (.../....../UNICOS/VMS) Linear equation solver. LVR (.../....../....../...) Sony LVR - videotape transfer. MACGPLOT (.../....../....../...) Macintosh version of GPLOT. MACHAR (.../ULTRIX/UNICOS/VMS) Dynamic computation of machine constants. MACHINE (.../ULTRIX/UNICOS/VMS) Table lookup of machine constants. MACROTASK (.../....../UNICOS/...) Cray macrotasking. MAKSEQ (.../....../....../VMS) Interface to sequence analysis. MAN (CM2/ULTRIX/UNICOS/VMS) UNICOS manual pages, interactive help. MAPLE (.../ULTRIX/....../VMS) Symbolic mathematics. MARCHP3D (.../....../UNICOS/VMS) P3D level surfaces of 3D data. MATHLIB (.../....../UNICOS/VMS) General mathematical library. MATLAB (.../....../UNICOS/...) Interactive matrix calculator. MATMUL (.../ULTRIX/UNICOS/VMS) Matrix multiplication benchmark. MAXSEGS (CM2/....../UNICOS/...) Optimal sequence alignment program. MAZE (.../....../....../VMS) Input generator for DYNA2D/NIKE2D. MDPP (.../....../....../VMS) Micrographic data processing program. MFFT (.../ULTRIX/UNICOS/VMS) FFT, external storage. MICROTASK (.../....../UNICOS/...) Cray microtasking. MINPACK (.../ULTRIX/UNICOS/VMS) Minimization package. MIXED (CM2/ULTRIX/UNICOS/VMS) Description of mixed language programming. MODRFM (.../....../....../VMS) Modify file header for network transfer. MOPAC (.../....../UNICOS/...) Molecular modeling package. MOVIE (.../....../UNICOS/VMS) BYU graphics package. MOVIETOP3D (.../....../UNICOS/VMS) MOVIE.BYU to P3D conversion. MP (.../....../UNICOS/VMS) Multiple precision package. MSA (.../....../UNICOS/...) Multiple sequence alignment. MSC (.../....../UNICOS/VMS) Multiple sequence comparison. MUDPACK (.../....../UNICOS/...) 2D/3D multigrid methods for PDE's. MULFOLD (.../....../UNICOS/...) Nucleic acid structure prediction. MUS (.../....../UNICOS/VMS) Multiple shooting, boundary value problem NAG (.../....../UNICOS/VMS) Mathematical library. NAPACK (.../ULTRIX/UNICOS/VMS) Numerical analysis package. NAQ (.../....../....../VMS) Nucleic Acid Query system from NBRF. NAVIEW (.../....../....../VMS) RNAFOLD graphics. NBRF (.../....../....../VMS) Protein and nucleic acid databases. NCARDSL (.../ULTRIX/....../VMS) NCAR software distribution. NCARGKS (.../....../UNICOS/VMS) NCAR GKS graphics package. NEKTON (.../ULTRIX/UNICOS/...) 3D fluid flow program. NETCDF (.../ULTRIX/UNICOS/VMS) Network Common Data Format. NETLIB (.../ULTRIX/....../VMS) Software distribution network. NEWSLETTER (.../ULTRIX/UNICOS/VMS) PSC newsletter articles online. NEWUSER_FORM (.../....../....../...) Form to add a new user to account. NIKE2D (.../....../UNICOS/VMS) 2D finite element dynamics program. NIKE3D (.../....../UNICOS/VMS) 3D finite element dynamics program. NISTGAMS (.../....../....../...) NIST Guide to Available Math Software. NISTLIB (.../ULTRIX/....../VMS) Software distribution network. NL2SOL (.../....../UNICOS/VMS) Nonlinear least squares solvers. NMS (.../....../UNICOS/VMS) Numerical methods software. NODE (.../....../....../VMS) PSC utility for DECNET file transfer. NQS (.../....../UNICOS/VMS) Cray batch queue system. NSF_FORM (.../....../....../...) NSF Supercomputing resources application. NSPCG (.../ULTRIX/UNICOS/VMS) Preconditioned conjugate gradient. NWGAP (.../....../UNICOS/...) Global sequence alignment program ODE (.../....../UNICOS/VMS) Shampine and Gordon nonstiff ODE solver. ODEPACK (.../ULTRIX/UNICOS/VMS) Gear stiff ODE solvers. ODRPACK (.../ULTRIX/UNICOS/VMS) Weighted distance regression. ODRPACKX (.../ULTRIX/UNICOS/VMS) Experimental version of ODRPACK. OPTIMIZE (.../....../UNICOS/...) An overview of Cray YMP optimization. ORDER_FORM (.../....../....../...) Cray Research manual order form. ORION (.../....../....../VMS) 2D finite element graphics. P3D (.../ULTRIX/UNICOS/VMS) 3D graphics format and utilities. PAD (.../....../UNICOS/...) File padding utility. PAL2RGB (.../ULTRIX/....../...) TIF to TIFF graphics file conversion. PASCAL (.../....../UNICOS/VMS) PASCAL programming language. PCHIP (.../....../UNICOS/VMS) Piecewise cubic Hermite interpolation. PDBMODEL (.../....../UNICOS/VMS) 3D molecular graphics using P3D datafiles. PDECOL (.../....../UNICOS/VMS) Collocation PDE solver. PDEONE (.../....../UNICOS/VMS) 1D PDE solver. PERFECT (.../....../UNICOS/...) Benchmarking suite. PERFORMANCE (.../....../UNICOS/VMS) User program performance monitors. PERFTRACE (.../....../UNICOS/...) Cray program performance by subroutine. PICKEMBL (.../....../....../VMS) Pick entries from EMBL file. PICKGEN (.../....../....../VMS) Pick entries from GenBank database. PITCON (.../ULTRIX/UNICOS/VMS) Parameterized nonlinear equation solver. PLTMG (.../....../UNICOS/VMS) Piecewise linear triangle multigrid. PLT2 (.../....../....../VMS) RNAFOLD graphics. PNM (.../ULTRIX/....../...) Portable anymap graphics format. PNMTOCGM (.../ULTRIX/....../...) Portable anymap to CGM conversion. POLYHEDRA (.../....../....../...) Polyhedra database. PROCSTAT (.../....../UNICOS/...) Cray I/O and Memory report for a process. PROF (.../....../UNICOS/...) Cray program performance profiler. PROFILE (.../....../UNICOS/...) Sequence profile analysis. PROSITE (.../....../....../VMS) Protein site database. PROTECTION (CM2/ULTRIX/UNICOS/VMS) File protection methods. PROTIN (.../....../UNICOS/...) Analyze atomic coordinates of protein. PSCNEWS_FORM (.../....../....../...) PSC NEWS subscription form. PSCSUB (.../ULTRIX/UNICOS/...) ULTRIX-Cray remote job submission. PSQ (.../....../....../VMS) Protein Sequence Query from NBRF. PSR (.../....../UNICOS/...) Pacific-Sierra Research benchmarks. QUADPACK (.../ULTRIX/UNICOS/VMS) Integration or quadrature routines. QUEUES (.../....../UNICOS/VMS) Description of PSC batch job queues. RANFOLD (.../....../UNICOS/...) Predict RNA secondary structure. RANPACK (.../ULTRIX/UNICOS/VMS) Random number generators. REBASE (.../....../....../VMS) Restriction enzyme database. RECIPES (.../ULTRIX/UNICOS/VMS) Numerical Recipes in FORTRAN. RECIPESC (.../....../UNICOS/VMS) Numerical Recipes in C. REDUCE (.../....../UNICOS/VMS) Symbolic mathematics package. REQUESTAPE (.../ULTRIX/UNICOS/VMS) Request a tape for animations. RKF45 (.../....../UNICOS/VMS) Runge-Kutta ODE solver. RLE (.../ULTRIX/....../...) Utah run length encoded graphics. RLECAT (.../ULTRIX/....../...) RLE file concatenation. RLETOCGM (.../ULTRIX/....../...) RLE to CGM conversion. RNAFOLD (.../....../UNICOS/...) Predict nucleic acid structure. SCILIB (.../ULTRIX/UNICOS/VMS) Cray built-in scientific library. SCOUNT (.../....../UNICOS/VMS) Run time statement execution counter. SCRIBE (.../....../....../VMS) Document preparation program. SECOND (.../ULTRIX/UNICOS/VMS) Cray timing routine. SEGLDR (.../....../UNICOS/...) Object code loader. SEQ_FILE (.../....../UNICOS/VMS) Format of sequence files. SETUP (.../....../UNICOS/VMS) PSC setup program. SGML (.../....../....../...) Markup language used for documentation. SLALOM (.../....../UNICOS/...) One minute benchmark. SLAP (.../ULTRIX/UNICOS/VMS) Sparse linear algebra package. SLATEC (.../ULTRIX/UNICOS/VMS) SLATEC library, version 3.1. SLATECDOC (.../....../UNICOS/VMS) SLATEC library documentation program. SLICEWISE (CM2/....../....../...) CM2 slicewise compiling option. SLIDEMAKING (.../ULTRIX/UNICOS/VMS) PSC color slide creation service. SMONGO (.../ULTRIX/UNICOS/VMS) Interactive CGM graphics package. SN (.../....../UNICOS/...) Alignment of pairs of nucleic acids. SORT (.../ULTRIX/UNICOS/VMS) System sort routines. SOURCE (.../....../UNICOS/VMS) PSC source code library. SP (.../....../UNICOS/ ) Compute alignment of pairs of proteins. SPARBLAS (.../....../UNICOS/VMS) Sparse basic linear algebra routines. SPARSE (.../....../UNICOS/VMS) Sparse matrix solver, written in C. SPARSKIT (.../ULTRIX/UNICOS/VMS) Sparse matrix utilities. SPARSPAK (.../ULTRIX/UNICOS/VMS) Waterloo sparse matrix package. SPECFUN (.../....../UNICOS/VMS) Portable special functions, version 2.5. SPICE (.../....../UNICOS/VMS) Circuit analysis. SPIDER (.../....../....../VMS) Biomedical imaging program. SPLICE (.../....../....../VMS) Circuit analysis. SPLPAK (.../....../UNICOS/VMS) Cubic spline interpolation package. SPR (.../ULTRIX/UNICOS/VMS) System problem report form writer. SPSS (.../....../UNICOS/...) Statistical Package for Social Sciences. SSDLIN (.../....../UNICOS/VMS) External storage linear equation solvers. ST (.../....../UNICOS/...) Alignment of translated nucleotides. STARPAC (.../....../UNICOS/VMS) Statistics library, version 2.08. STATLIB (.../....../UNICOS/VMS) Statistical software library distribution. STEAM (.../ULTRIX/UNICOS/VMS) Steam tables. STRIPPER (.../ULTRIX/UNICOS/VMS) File stripper. STROUD (.../....../UNICOS/VMS) Multiple integrals on unusual domains. SUBSET (.../ULTRIX/UNICOS/VMS) Combinatorial mathematics package. SURVEY_FORM (.../....../....../...) PSC user survey form. SWEDEN (.../....../UNICOS/...) Molecular modeling program suite. SWISS (.../....../....../VMS) Swiss protein data base. TAIL (CM2/ULTRIX/UNICOS/VMS) Print last few lines of a file. TAPES (.../....../UNICOS/VMS) Use of tapes at PSC. TAR2VMS (.../....../....../VMS) UNIX TAR to VMS file converter. TAURUS (.../....../UNICOS/VMS) Graphics package for finite element codes. TECO (.../....../....../VMS) Editor. TELNET (CM2/ULTRIX/UNICOS/VMS) Interactive communications protocol. TESTMAT (.../ULTRIX/UNICOS/VMS) Test matrices. TESTNLS (.../....../UNICOS/VMS) Test nonlinear least squares problems. TESTNON (.../....../UNICOS/VMS) Test nonlinear equations problems. TESTUCON (.../....../UNICOS/VMS) Test unconstrained optimization. TESTVECTOR (.../....../UNICOS/...) 100 tests of FORTRAN vectorization. TEX (.../ULTRIX/....../VMS) Text formatter. TEXTMAKER (.../....../....../VMS) Make text screens for animations. TIFF (.../ULTRIX/....../...) Tagged Image file format. TIFFTORLE (.../ULTRIX/....../...) TIFF to RLE graphics file conversion. TITLEMAKER (.../....../....../VMS) Make title screens for animations. TLS (.../....../UNICOS/VMS) Total least squares problems. TOEPLITZ (.../....../UNICOS/VMS) Toeplitz matrix package. TOKENS (.../....../....../VMS) FORTRAN variable usage identification. TOMS (.../....../UNICOS/VMS) ACM TOMS algorithms. TOOLPACK (.../....../....../VMS) FORTRAN TOOLPACK, utilities. TOPAZ2D (.../....../UNICOS/VMS) 2D heat transfer. TOPAZ3D (.../....../UNICOS/VMS) 3D heat transfer. TRACE_SNAPS (.../....../UNICOS/...) Animation utility. TRAINING (.../....../....../...) PSC workshops and classes. UDAILY (.../....../UNICOS/...) UNICOS charge report. UDATA (.../....../....../VMS) UNICOS charge report. UNCMIN (.../ULTRIX/UNICOS/VMS) Unconstrained minimization routines. UNICOS (.../....../UNICOS/...) Guide to Cray UNICOS operating system. UUENCODE (CM2/....../UNICOS/VMS) Unix binary-file mail encoding utility. V77 (.../....../....../VMS) Utility for cleaning up FORTRAN programs. VCFT (.../....../UNICOS/...) Vectorized Fourier and Hartley transforms. VE1 (.../....../UNICOS/VMS) Volterra Integral Equation solver. VECTORIZE (.../....../UNICOS/...) Examples of Cray vectorization. VFFTPK (.../ULTRIX/UNICOS/VMS) Vectorized version of FFTPACK. VMS (.../....../....../VMS) Guide to VMS operating system. VMS2TAR (.../....../....../VMS) VMS to UNIX TAR conversion. WATCH (.../....../UNICOS/...) PSC software usage monitoring program. XPLOR (.../....../UNICOS/...) Biomedical modeling program. XRFORM (.../....../....../VMS) X-ray program input formatter. XTRACT (.../....../UNICOS/VMS) Extract lines from a file. Y12M (.../....../UNICOS/VMS) Sparse matrix solver by Zlatev. YJANUS (.../....../....../VMS) PSC remote job submission utility. YSMP (.../ULTRIX/UNICOS/VMS) Yale sparse matrix package. YSUB (.../....../....../VMS) VAX-Cray station job submission utility. ZERO (.../ULTRIX/UNICOS/VMS) Find roots of functions or polynomials.