IBM User's Guide, Thirteenth Edition

5 Software on CMS

Software available under CMS includes text editors and formatters, general programming languages, applications software, and utility commands written by UTCC.

Text editors and formatters, word processors


Xedit is the CMS editor. This editor is used to create, modify and manipulate CMS disk files. Online help is available, as well as UTCC documentation and IBM manuals. See section 4.7 for a short discussion of Xedit and references to documentation.


WordPerfect on CMS is a mainframe version of the popular word processing package for personal computers. To begin WordPerfect on CMS type WP or WP filename. The CMS WordPerfect screen display includes a list of PF key assignments at the bottom of the screen.


"CMS WordPerfect," U01-0617, discusses the features and peculiarities of WordPerfect on CMS and is available through PRTDOC.

"Transferring WordPerfect Files Between Systems," U01-0623, available through PRTDOC, can assist users who use WordPerfect on more than one computer (CMS, VAX/VMS, Macintosh, IBM PC).

WordPerfect Corp.'s manual is available in Remotes 1, 2 and 8 and on reserve at Hodges Library.


SCRIPT is an IBM text formatting language with advanced features such as automatic generation of a table of contents and index, multi-column page layout, footnotes, boxes, automatic hyphenation and spelling verification. U01-0547, "Introduction to SCRIPT," is available through PRTDOC. A UTCC videotaped short course, "Introduction to SCRIPT/VS," is available in Audiovisual Services at the Hodges Library during regular library hours. Printed course materials to accompany this video course can be obtained at 200 Stokely Management Center.


The following manuals are on reserve in Hodges Library:

SH35-0069, Document Composition Facility: SCRIPT/VS Text Programmer's Guide
SH35-0070, Document Composition Facility: SCRIPT/VS Language Reference

Generalized Markup Language (GML)

The Generalized Markup Language (GML) is a language for document description. GML provides the syntax and usage rules for the development of a personalized vocabulary of "tags" for describing the parts of a document. An implementation of GML tags written in the SCRIPT/VS formatting macro language is provided as an example with the Documentation Composition Facility. In order to process a file containing tags from the starter set, use the SCRIPT command as follows:

SCRIPT filename ([options] PROFILE(DSMPROF3)

where the filetype is assumed to be SCRIPT. The PROFILE option specifies that the system file which contains the starter set definition be used in the processing of the specified file.


For a description of the starter set and the formatting results that SCRIPT/VS will produce when its tags are used, see the following IBM publications, which are on reserve in Hodges Library:

SH20-9186, Document Composition Facility: Generalized Markup Language: Starter Set User's Guide SH20-9187, Document Composition Facility: Generalized Markup Language: Starter Set Reference

General programming languages

This section describes the programming languages that are available on CMS. Instructions for using specific languages follow this introduction. Generally, however, these steps must be taken in developing a program on CMS:

1) Prepare the source file with the XEDIT text editor. The file may have any valid filename, but the filetype should be the name of the programming language in which the program is written.

2) Compile the source program. See the appropriate section on the language of interest for details. The compiler produces two files with the same filename as the source file but with different filetypes. One is an object program with a filetype of TEXT. The other is a listing file, with filetype LISTING, which contains the source program listing along with error messages, if any, and compilation statistics. Development of the source program should continue until recompilation produces no error messages.

3) Issue any FILEDEF commands needed to associate the file identifiers within the program to the physical CMS files. (NOTE: With the exception of the VMSHR1 disk pack, access to MVS disk data sets from CMS is not provided. See section 4.24.3 for information about VMSHR1.) For more help on the FILEDEF command, enter


4) Access the appropriate subroutine library(ies) by issuing the GETLIBS command with the appropriate options. The libraries of the following products running on CMS can be accessed with the GETLIBS command, in addition to user load libraries and/or text libraries:


For more information about the GETLIBS command, enter the CMS command HELP GETLIBS.

5) Provided no errors exist, the LOAD and START commands are issued to load the object code into virtual storage and begin execution as follows:

LOAD filename (CLEAR [options]

It is recommended that CLEAR be included in the options, as shown in the example above, so that main memory is cleared before the program is loaded. More information on the LOAD and START commands can be obtained by entering the commands:


As an alternative to the START command, the GENMOD command can be used to create a MODULE file which can subsequently be executed without first issuing the LOAD command. For more help on the GENMOD command, enter


IBM Vector Facility Simulator

The IBM Vector Facility Simulator lets you execute programs on CMS which contain machine instructions for the IBM 3090 Vector Facility. When you run a vector program under the simulator, you get the same computational results you would get if you ran your program on the IBM 3090 Vector Facility. You also receive information about vector instructions in error that would cause an interrupt when executed on the vector processor, access to vector registers, and useful statistics about the vector portion of your program. The command VSIM invokes the Vector Facility Simulator, which functions as a transparent addition to your VM/CMS userid. Optional parameters to the VSIM command give you additional control of the simulation. The Vector Facility Simulator should only be used for program development and testing. Programs which are ready for production should be executed on MVS using the IBM 3090 Vector Facility hardware. The Vector Facility Simulator can collect execution-time statistics about the vector machine instructions present in your program. This information helps you performance-tune your programs which use the IBM 3090 Vector Facility. Note that the collection of statistics increases the CPU time requirements of the Vector Facility Simulator. For example, to use the simulator with VS FORTRAN, follow these steps:

1. Compile your program using the vector option:

FORTVS2 filename (VECTOR

2. Invoke the vector simulator specifying a report:


where CLEAR and CLRSTAT clear the registers and reset the statistics, and STAT turns on the collection of vector instruction statistics.

3. Load and execute the compiled FORTRAN vectorized code:


4. To access the vector statistics collected by the simulator, issue the command


which creates a disk file called VECTOR STAT A containing the statistics. Then use the CMS commands XEDIT, TYPE, or PRINT to display the file.

5. To end the Vector Facility Simulator function, issue the command

VSIM DROP An online help file may be viewed by entering HELP VSIM.

IBM Assembler H

An assembler is provided on CMS for those programmers who code in assembler language. If an assembler routine uses any of the CMS macros or OS macros that CMS supports or simulates, they must be made available through the GLOBAL command. The following GLOBAL command is suggested as a general-use form for all assemblies:


The libraries made available by this command contain all public macros in the VM system. To assemble the source program, enter the following command:

HASM filename (options

where, by default, the filetype is assumed to be ASSEMBLE. For a complete list of options, enter



SC26-4036, Assembler H Version 2 Programming Guide , located in Remote 28 (Physics)
GC26-4037, Assembler H Version 2 Language Reference , located in Remotes 1, 2, 8, 17 and 28

IBM C/370

The IBM C/370 programming language permits a programmer to deal with machine-level entities at a low level of control, while providing the high level of control and data structures associated with modern structured programming languages. Its key features are its small size relative to other languages, fast execution speed, flexibility in building applications, and the ease in which code can be transported from one computing environment to another. The C compilers on CMS and on MVS are compatible, and source programs or object modules developed on one system may be used on the other system. To compile a C program on CMS, enter the command

CC filename

Then, to load and execute the program, enter the following CMS commands:

LOAD filename (CLEAR
Type HELP CC for a detailed description of the CC command and compiler options and examples of loading and executing C programs.


The following manuals are located at Remotes 1, 2 and 8.

SC09-1264, IBM C/370 User's Guide
SC09-1308, Systems Application Architecture: Common Programming Interface, C Reference Level 2

INSPECT C/370 debugger

INSPECT is a testing and program analysis aid that helps the programmer examine, monitor, and control execution of programs written in C/370 or PL/I. INSPECT is available on CMS in interactive line mode, on MVS in batch mode, and also on MVS under TSO/ISPF in full-screen mode.

The following reference manuals are available at Remotes 1 and 8 and in Ayres Room 101.

SC26-4528, INSPECT for C/370 and PL/I: Using INSPECT Under MVS
SC26-4529, INSPECT for C/370 and PL/I: Using INSPECT Under CMS


COBOL (COmmon Business Oriented Language) is used primarily for commercial data processing. COBOL provides a standard method for expressing solutions to data processing problems involving large files which are updated continuously or periodically and involve large volumes of input and output. UTCC currently runs VS COBOL II, a COBOL compiler, library and interactive debug program product of IBM, on the CMS operating system. This is the same version of COBOL that is run on MVS. The CMS version of the VS COBOL II compiler is invoked with the COBOL2 command, which has the following syntax:

COBOL2 filename (options

The filetype of the source program must be COBOL. For a list of available options and their defaults, enter


All default options are the same as for the MVS version of this compiler. The execution-time subroutines required by the compiled COBOL program are accessed by issuing the GLOBAL command:



The following manuals are located in Remote 8 and on reserve in Hodges Library.

VS COBOL II Application Programming Guide
VS COBOL II Application Programming Language Reference


EASYTRIEVE is an information retrieval and data management system available on CMS. The EASYTRIEVE program library is accessed by entering the following command:


A file definition statement (FILEDEF) must be issued for the file SYSIN, the input file for the EASYTRIEVE program. SYSIN can be defined either as a disk file or the terminal. Any other input or output files to be used by the program must also be defined, except for the output file SYSPRINT, which defaults to the CMS file FILE SYSPRINT A1. The EASYT90 command is then issued to execute the program. The EASYTRIEVE Interactive Prompting Facility (IPF) is designed to help non-programming personnel generate, debug, and execute an EASYTRIEVE program. IPF can also be used as an educational tool for users learning EASYTRIEVE. The EZTIPF command is used to initiate EASYTRIEVE/IPF. For more information on this command, enter



The following manual is located in Remote 8 and on reserve in Hodges Library.

EASYTRIEVE Reference Manual

Also available is a UTCC videotaped short course, "EASYTRIEVE," available in Audiovisual Services at the Hodges Library during regular library hours. Printed course materials to accompany this video course can be obtained at 200 Stokely Management Center.


VS FORTRAN, Version 2, available on CMS is the same version as is currently installed on the MVS operating system. It is a composite package consisting of the VS FORTRAN Compiler, Library, and Interactive Debug. The VS FORTRAN compiler is invoked on CMS by entering:

FORTVS2 filename (options

If the filetype is not FORTRAN, then the filetype must be entered also. For a complete list of compiler options and other information, type HELP FORTVS2. It should be pointed out that VS FORTRAN Version 2, has the capability of making use of the Vector Facility on the IBM 3090 computer, which at UTCC runs under the MVS/ESA operating system only. On CMS, the execution of VS FORTRAN is limited to scalar mode. However, the compiler on CMS is capable of producing both scalar and vector object code. The Vector Facility Simulator (VSIM) software available on the IBM 3081 can be used under CMS to simulate the IBM 3090 Vector Facility. Thus, for purposes of program development, FORTRAN users can build and debug their source programs on CMS and, if the Vector Facility is needed, submit the program to the MVS/ESA operating system for execution using the RJE command. The VS FORTRAN compiler includes an inter-compilation analyzer (ICA) feature which can detect incompatibilities between the main program and the and functions. The messages identifying the discrepancies are written to the LISTING file. To use the ICA compiler option for a single source code file, enter

FORTVS2 filename (ICA

For multiple source code files, enter

FORTVS2 filename (ICA(UPDATE(anyname)
FORTVS2 filename (ICA(USE(anyname)

The intercompilation analysis file has the filename specified in the USE or UPDATE suboption "anyname"; the filetype is ICAFILE. For more information about intercompilation analysis, see chapter 14 of VS FORTRAN Version 2 Programming Guide , SC26-4222. VS FORTRAN has two modes of execution on CMS: link mode and load mode. If you want library routines included within your executable module, choose link mode. If you want library routines loaded during execution of the program, choose load mode. Load mode reduces the time required to create an executable module and reduces the auxiliary storage space required. The choice is made when the GETLIBS command is issued to make the appropriate library routines available as follows:

For load mode:

For link mode: GETLIBS FORTVS2 (LINK

For more information about the GETLIBS command, enter HELP GETLIBS. Three predefined files are provided and recognized by CMS when referred to in FORTRAN input/output statements with the appropriate unit number. Unit 5 can be used to read data from the terminal, while unit 6 can be used to write data to the terminal. Unit 7 can be used to write data to the user's virtual card punch. These defaults can be changed and other unit numbers defined with the FILEDEF command.

VS FORTRAN Interactive Debugger

The VS FORTRAN Interactive Debugger available on CMS is a flexible tool for monitoring the execution of VS FORTRAN programs. It allows a user to set breakpoints, display and modify data values, trace execution, and monitor data changes. The Interactive Debugger permits debugging of optimized code, with restrictions. Whenever a program unit has been compiled with an optimization level other than 0, the debugger will issue a warning message indicating that results of debugging may be affected by optimization.

Note : VS FORTRAN programs to be used with the Interactive Debugger must be compiled with the SDUMP compiler option, which is the default on CMS. On MVS, the UTCC cataloged procedure for the VS FORTRAN compiler specifies FORTOPT=NOSDUMP. CMS users who execute OS compiled load modules on VMSHR1 must recompile these programs using FORTOPT=SDUMP. To invoke the debugger: The following UTCC EXEC will allocate required libraries and files for loading and executing a compiled VS FORTRAN program and invoke the VS FORTRAN Interactive Debug.

FORTDBUG filename

where "filename" refers to the file "filename TEXT" produced by the VS FORTRAN compiler. Internally, the FORTDBUG EXEC issues the following commands:

LOAD filename (CLEAR
START * DEBUG (options

The debug environment will then prompt you with FORTIAD to which you may issue debug commands. Online help information is provided for all debug commands and functions. By entering HELP to the FORTIAD prompt, you are presented with the first of a set of screens containing HELP information. The help facility that is available within the debug environment may also be consulted at the CMS level by entering the CMS command HELP AFF. Type HELP FORTDBUG for more information on using the FORTDBUG command. For information on VS FORTRAN and its use in the MVS batch environment, see section 13.6.


The following manuals are on reserve in Hodges Library, as well as in the manual racks at the remotes listed in parentheses.

GC26-4219, VS FORTRAN Version 2 General Information
SC26-4221, VS FORTRAN Version 2 Language and Library Reference (Remotes 1, 2, 8, 17 and 28)
SC26-4222, VS FORTRAN Version 2 Programming Guide (Remotes 1, 2, 8, 17 and 28)
SC26-4223, VS FORTRAN Version 2 Interactive Debug Guide and Reference (Remote 1)

FORTRAN Translation Tool

The IBM FORTRAN Translation Tool is a program that assists in converting FORTRAN source code written for Digital Equipment Corporation (DEC) and Control Data Corporation (CDC) computers to acceptable input statements for the IBM VS FORTRAN Compiler. The converted code conforms to the ANSI X3.9-1978 language level known as FORTRAN 77.

Input requirements
Input source to the translator must be error-free in its native dialect. Debugging statements should be removed in advance, as they cannot be recognized by the translator and will become comment statements. The source code must be fixed format with a record length of 80 or 132, unblocked, or VAX TAB format and may be in uppercase and lowercase ASCII or EBCDIC. The minimum virtual storage area required to execute the translator program is two megabytes. See the IBM FORTRAN Translation Tool Program Description/Operation Manual , in the manual racks at Remotes 1 and 8, for a list of other translator limitations.

Execution on CMS
The commands to operate the translator on CMS are contained in the FORTXLAT EXEC. To execute the translator on any FORTRAN program, enter the following command (where fn is the filename of the input FORTRAN source file). The filetype must be FORTRAN.


The translated output file will be named "fn NEWFORT". The output file "fn TRANPRNT" contains comments describing modifications to the original source code and messages denoting questionable or untranslatable statements. A sample batch FORTRAN source file (SAMPLES FORTRAN) containing CDC and DEC source statements is available on CMS for testing the translator. To run the sample program, type the following command.


Type HELP FORTXLAT for more information on running the FORTRAN Translation Tool EXEC.

Executing translated programs
Translated programs can normally be executed after compilation and linkage with the VS FORTRAN compiler and subroutine libraries. If the translated program contains calls to the translator-supplied execution-time routines, they must be made available to the translated FORTRAN program (see page 211 of the manual). On CMS, these routines are in the FORTXLAT TXTLIB library and may be made available by entering the following command before loading and running the program.


VS Pascal

Pascal is a high-level programming language designed for teaching structured computer programming, a top-down, modular approach to program development. Its objective is to emphasize the importance of well-thought-out program design that, in turn, makes programs less complex and easier to understand, debug, and maintain. VS Pascal, an IBM product, is available on both CMS and MVS. To compile a VS Pascal source program, issue the VSPASCAL command as follows:

VSPASCAL filename (options

where the filetype is assumed to be PASCAL. Accessing the VS Pascal subroutine library on CMS and running the program are accomplished by issuing the PASCRUN command:

PASCRUN filename options / Type HELP VSPASCAL on CMS for a description of the VSPASCAL compiler command syntax along with definitions of compiler options and examples of executing VS Pascal programs. For information about PASCRUN, type HELP PASCRUN.


The following manuals are available at Remotes 1 and 8 and in 101 Ayres Hall.

SC26-4319, VS Pascal Application Programming Guide
SC26-4320, VS Pascal Language Reference

PL/I Optimizing Compiler

The PL/I Optimizing Compiler on CMS is essentially the same as the batch version presently running under MVS. To access the PL/I subroutine library enter the following command:

GETLIBS PLI To compile the PL/I source program, use the PLIOPT command which has the following syntax:

PLIOPT filename (options

where the filetype is assumed to be PLIOPT. A help file is available by typing



The following manuals are on reserve in Hodges Library.

SC26-4307, OS PL/I Version 2 Programming Guide
SC26-4308, OS PL/I Version 2 Programming: Language Reference

INSPECT PL/I debugger

INSPECT is a testing and program analysis aid that helps the programmer examine, monitor, and control execution of programs written in C/370 or PL/I. INSPECT is available on CMS in interactive line mode, on MVS in batch mode, and also on MVS under TSO/ISPF in full-screen mode.

The following reference manuals are available at Remotes 1 and 8 and in Ayres Room 101.

SC26-4528, INSPECT for C/370 and PL/I: Using INSPECT Under MVS
SC26-4529, INSPECT for C/370 and PL/I: Using INSPECT Under CMS


SyncSort is a sort/merge program available under CMS. A sort is the ordering of a data set of unspecified sequence into specific sequential form. A merge is used to combine files that are already individually in sorted sequence into one output file. Up to nine files can be sorted and merged at one time, and a number of different devices can be used for input, output, and work files. SyncSort on CMS can be accessed either by invocation from an executing program or with the SSORT command. For more information on the SSORT command, enter HELP SSORT. For a menu of SyncSort commands and keywords for which help is available, enter HELP SYNCSORT MENU.


SyncSort CMS Programmer's Guide , on reserve in Hodges Library
SyncSort Programmer's Guide , at Remote 8

Statistical and mathematical software on CMS

Biomedical Computer Programs, P Series (BMDP)

BMDP is a set of programs for statistical analysis using a common control language for data input, transformations, and analyses. BMDP is available on both CMS and MVS. BMDP is invoked on CMS by entering the command BMDP, using the following syntax:

BMDP filename (PROG BMDPxx options ...

where the routine "BMDPxx" named in the PROG option must be specified using either the full name of the routine (e.g., BMDP1D) or an abbreviated form consisting of the last two or three letters of the name (e.g., P1D or 1D). For additional information on the format of the BMDP command and other options which may be used, enter


or see the BMDP Statistical Software Manual , Volumes 1 and 2, available at the UTK Book and Supply Store and in the manual racks at Remotes 8 and 17.


EISPACK is a collection of FORTRAN subroutines that compute the eigenvalues and eigenvectors of nine classes of matrices. The package can determine the eigensystem of complex general, complex Hermitian, real general, real symmetric, real symmetric band, real symmetric tridiagonal, special real tridiagonal, generalized real, and generalized real symmetric matrices. In addition, there are two routines which use the singular value decomposition to solve certain least squares problems. EISPACK was developed at the National Energy Software Center, Argonne National Laboratory.


An online help file is available on CMS by entering HELP EISPACK.

"EISPACK Description," U01-0413, is available through PRTDOC.

Matrix Eigensystem Routines - EISPACK Guide , by B. T. Smith and others, Springer-Verlag, 175 Fifth Avenue, New York, NY 10010. This guide is located in Remote 2 (108 Estabrook Hall).

EISPACK - A Package for Solving Matrix Eigenvalue Problems , by J. J. Dongarra. This reference describes the use of EISPACK and changes made to the package for the current release, and is available from the UTCC receptionist, 200 SMC.

Engineering and Scientific Subroutine Library (ESSL)

ESSL provides a high-performance set of mathematical subroutines for use by VS FORTRAN application programmers. ESSL functions are suitable for many types of engineering and scientific applications. Examples of some of these applications are structural analysis, computational fluid dynamics, dynamic systems simulation, seismic data analysis, reservoir modeling, and nuclear engineering. ESSL includes subroutines for linear algebra problems, matrix operations, eigensystem analysis, signal processing, interpolation, numerical quadrature, random number generation, and sorting and searching. Most subroutines are available in single and double real precision. ESSL also provides a group of subroutines tailored for parallel processing and a set of general-purpose subroutines. Some routines are available in integer and single and double complex precision. ESSL on CMS is the same as the ESSL installed on the MVS/ESA operating system. Both the scalar and vector versions are available on CMS. The scalar library version (ESVSLIB) is the default; if the vector version is desired (ESVVLIB), use the VECTOR option of the GETLIBS command. An example is given below. Note: Vector execution is available only on the IBM 3090; a vector simulator is available on CMS.

How to access ESSL subroutines

To access the ESSL subroutines and the appropriate VS FORTRAN libraries, enter one of the following GETLIBS commands.

For load mode execution: GETLIBS FORTVS2 ESSL

For link mode execution: GETLIBS FORTVS2 ESSL (LINK

To use the vector version: GETLIBS FORTVS2 ESSL (VECTOR

Intercompilation Analysis (ICA) file ESSL provides an ICA file to allow compile-time diagnosis of inconsistencies or errors in call statements to ESSL routines. The ESSL ICA file named ESVICA must be part of the ICA option at compilation, as follows:

FORTVS2 filename (ICA(USE(ESVICA)) [other options]


SC23-0184, Engineering and Scientific Subroutine Library Guide and Reference , available at Remotes 1, 2, 8 and 28 and on reserve at Hodges Library
SC23-0410, Engineering and Scientific Subroutine Library Reference Summary , a pocket-size manual available from IBM that is convenient for looking up the calling arguments of subroutines

The IMSL Library

The IMSL Library on CMS is the same library that is available on MVS. However, only the scalar version is available on CMS, while only the vector version is on MVS. For more extensive general information about IMSL, see section 16.3.3. For a complete list and description of the subprograms available in the IMSL library, consult the manuals listed below under Documentation.

How to use IMSL subprograms on CMS The IMSL library is designed and supported exclusively for the FORTRAN 77 compilers, such as the VS FORTRAN compilers on CMS and MVS. The IMSL libraries (IMSLLIB1 and IMSLLIB2), as well as the appropriate VS FORTRAN text libraries, are made available by entering the CMS command GETLIBS, as follows:

For load mode execution: GETLIBS FORTVS2 IMSL

For link mode execution: GETLIBS FORTVS2 IMSL (LINK To use the IMSL subprograms, write a FORTRAN 77 program to call the desired subprogram(s), using the calling sequence(s) given in the library documentation listed below. Compile the program using the VS FORTRAN compiler. Link and load your program with the IMSL library. Execute the program and (if desired) create a permanent executable program. For more information about using VS FORTRAN on CMS, see section 5.2.6; for general information about using programming languages on CMS, see section 5.2. To view the online help file for the IMSL Library, type HELP IMSL.

The IMSL Interactive Documentation Facility (IDF) The IMSL Interactive Documentation Facility is an online help system designed by IMSL to help users identify the routines they need and to assist them in using those routines. It provides access to most of the information in the IMSL user's manuals. The IMSL IDF can help you identify the best routine for your program by providing information via associated keywords, a series of questions about your problem, or the GAMS classification. The following information is available for each routine:

` purpose of the routine
` keywords associated
` calling sequences
` description of arguments
` remarks regarding usage

` GAMS classification ` revision date ` location in user's manual ` example program

Both a menu interface and command interface are available. The first screen of the menu contains the following options:

` search for routines
` general information

` customize the user interface ` transfer to the command interface

The command interface provides additional capabilities that are not available in the menu interface. From the command interface you can create a history file, review the results of previous searches, and search for routines by keyword. To access the IMSL IDF enter the command:


To exit IMSLIDF, enter QUIT. For more information about the IDF choose "General Information" from the first menu or type HELP IMSLIDF.

IMSL Documentation

The following manuals are located at Remotes 1, 2 and 8 and are on reserve in Hodges Library:

MATH/LIBRARY User's Manual the general applied mathematics subprograms STAT/LIBRARY User's Manual Volumes 1-3, documents the statistical subprograms SFUN/LIBRARY User's Manual the special functions

The manuals may be ordered from IMSL, Sales Division, P.O. Box 4605, Texas 77210-4605.

LINPACK library

The mathematics package LINPACK is a collection of FORTRAN subroutines that analyze and solve systems of simultaneous linear algebraic equations. The LINPACK library of subroutines is also available on the UTCC VAX/VMS and IBM/MVS systems. LINPACK can handle full matrices of an order less than a few hundred and band matrices of an order less than several thousand. LINPACK does not have subroutines for general sparse matrices or for iterative methods for large problems. The LINPACK library routines can handle the following matrix data types: REAL, DOUBLE PRECISION, COMPLEX, and COMPLEX*16. To access the LINPACK online help facility on VM/CMS, enter the command HELP LINPACK.


U01-0531, "LINPACK," is available through PRTDOC.

The LINPACK User's Guide by J. J. Dongarra and others, is available at Remotes 2 and 8 and on reserve in Hodges Library. This manual may also be ordered from the Society for Industrial and Applied Mathematics (SIAM), 33 South 17th Street, Philadelphia, PA 19103.


LISREL 7, used in the analysis of linear structural relationships, is accessed from within SPSS.


The following manual is on reserve at Hodges Library:

SPSS LISREL 7 and PRELIS User's Guide and Reference


MINPACK is a package of FORTRAN subprograms for the numerical solution of systems of nonlinear equations and nonlinear least squares problems. Both single and double precision versions of the MINPACK library are installed on CMS; they are the same as the MINPACK subprograms on the MVS operating system.


Online help is available by entering the CMS command HELP MINPACK.

"MINPACK," U01-0605, is available through PRTDOC.

The following manuals are available at Remotes 1, 2 and 8 and on reserve in the Hodges Library.

User Guide for MINPACK-1 by Jorge J. Moore and others
Documentation for MINPACK--Single Precision Version by Burton S. Garbow and others


The Mathematical Programming System Extended (MPSX/370) is an IBM program which solves linear programming problems. Users supply MPSX with (1) the proposed solution strategy via the MPSX control language and (2) an input data description which specifies information concerning the objective function and constraints.


An online help file may be accessed by entering HELP MPSX.

The following manuals have been placed at the locations listed in parentheses; "Reserve" means on reserve at Hodges Library. Except for Interface to OSL , the manual titles begin with ;.us IBM Mathematical Programming System Extended (MPSX/370)

SH19-6552, User's Guide (Remote 8)
SH19-6553, Program Reference Manual (Remote 8)
SH19-6554, Messages and Codes (Remote 8)
SH19-6555, Operations Guide (Remote 8)
SH19-6586, Getting Started (Remote 8)
SH19-6723, Interface to Optimization Subroutine Library: Guide and Reference (Reserve)

NAG (Numerical Algorithms Group)

The NAG FORTRAN Library contains numerical analysis and statistical routines for use with VS FORTRAN programs. The NAG Library on CMS is the same as the one on MVS/ESA, except that only the scalar version is available on CMS.

Important note: The IBM implementation of the NAG Library is a double precision version; variables described as real in the NAG Library manuals must be declared as REAL*8.

Using the NAG Library on CMS The NAG Library can be accessed through calls within a VS FORTRAN program. To access the NAG Library, enter the GETLIBS command as follows before linking the VS FORTRAN program:

For load mode: GETLIBS FORTVS2 NAG


Documentation An interactive online help program is available on CMS by typing NAGHELP. The most important parts of the specifications of all NAG FORTRAN routines are available in this online help facility. The NAG FORTRAN Introductory Guide , which contains basic information on the NAG routines, is located in Remotes 1, 2 and 8. The complete NAG Library manual set is in the Reserve Section of the Hodges Library and can be checked out for three days by anyone with library privileges. The IBM User's Note contains IBM-specific information and is, therefore, essential reading. The User's Note is available for reference online on CMS by typing HELP NAGSUN for the scalar version or HELP NAGVUN for the vector version. The User's Note can also be found at the beginning of the ;.us NAG FORTRAN Introductory Guide and in Volume 1 of the NAG Library manual set.

Optimization Subroutine Library (OSL)

The IBM Optimization Subroutine Library (OSL) is a collection of high-performance mathematical subroutines for use by application programs that solve optimization problems. OSL subroutines can be called from FORTRAN, PL/I, and C/370 programs on CMS to find the solution to several types of mathematical programming problems using linear, mixed-integer, and quadratic programming methods. Additionally, OSL accepts MPS format models as input and can write output in MPS format for use with MPSX.

How to use OSL subroutines on CMS To access OSL enter the CMS command GETLIBS, specifying the language(s) of your program along with OSL, before linking your program. For example, if your program is written in FORTRAN, enter one of the commands below.

For load mode execution:
For link mode execution:

Enter the CMS command HELP GETLIBS for more information on the GETLIBS command.


Online help is available by entering the CMS command HELP OSL.

The following manual is on reserve at Hodges Library:

SC23-0519, Optimization Subroutine Library: Guide and Reference


SAS is an all-purpose system used for data analysis. The base SAS System includes information storage and retrieval, data modification and programming, report writing, statistical analysis, and file handling. SAS reads data values in virtually any form and organizes the values into a SAS data set. A complete set of SAS statements and functions is available for modifying data. The software includes tools for editing, subsetting, concatenating, merging, and updating data sets. The data can be analyzed statistically and used to produce reports. The statistical analysis procedures range from simple descriptive statistics to complex multivariate techniques. Reports can be printed using preformatted designs or other forms. Sas Language and Procedures: Usage , on reserve in Hodges Library, contains highlights of SAS capabilities. The CMS command SAS , entered after the Ready prompt, will access SAS interactively. This system includes a full-screen editor. SAS programs can be written, submitted, recalled, debugged, and then saved to a file without leaving SAS. To exit from SAS, enter BYE on the command line. If your SAS program (with a file type of SAS) and data are in a single CMS file, the statement below will execute the program and place the output in a file named "filename SASLOG" for the SAS log and "filename LISTING" for the SAS listing:

SAS filename

If your data is in a CMS file separate from the program, the following SAS statement is required within the program:

INFILE 'filename filetype A' MISSOVER;

To run in CMS batch mode, use the following command:


For more information about VMBATCH on CMS, see section 4.22. Several related SAS programs are available in addition to the basic SAS program. A list of those at UTCC is given below.

SAS/AF Provides a full-screen, interactive applications facility for creating a user-friendly front end to business or information-processing applications SAS/ACCESS Provides an interface to the SQL/DS database SAS/ASSIST Provides a menu system that enables the use of SAS without knowing its programming language SAS/CBT Provides computer-based training for SAS SAS/ETS Provides expanded tools for econometrics and time series analysis SAS/FSP Provides interactive, menu-driven facilities for data entry, editing, retrieval of SAS files, mail-merge, and letter writing SAS/GRAPH Provides presentation graphics. More about SAS/GRAPH in section 5.6.2. SAS/IML Provides an interactive matrix language SAS/OR Provides decision support tools for operations research and project management; available on the MVS system

Help There are extensive help files within SAS. Type HELP on the command line within interactive SAS to get into the help environment. Short courses about SAS are offered by UTCC each academic term. See section for information about obtaining the current short course schedule. Several videotapes about SAS are available in the Audiovisual Department of Hodges Library. Printed materials to accompany some of the videotapes are available from the UTCC receptionist at 200 Stokely Management Center (phone 974-6831). A SAS computer-based training program is available on CMS. This online tutorial is aimed at beginners but is also useful for other SAS users who want to brush up on their skills. Each section presents a lesson on some aspect of how to use SAS. "SAS Computer Based Training," U01-0596, available through the PRTDOC facility, contains instructions for getting started.


The following manuals have been placed at the locations listed in parentheses; "Reserve" means on reserve at Hodges Library. In addition, the Master Index to SAS System Documentation is located in Remotes 2, 8 and 17, and Vet Med.

SAS/ACCESS Interface to SQL-DS: Usage and Reference (Remote 8)
SAS/AF Software: Usage and Reference (Reserve)
SAS Applications Guide (Reserve)
SAS Companion for the CMS Environment (Reserve, Remotes 2, 8 and 17, Human Ecology, Vet Med)
SAS Companion for the MVS Environment (Remotes 2, 8 and 17, Human Ecology, Vet Med)
SAS Data Library Series: D-101 World Map Data Sets (Reserve)
SAS Data Library Series: D-102 1970 SMSA Census Tracts (Reserve)
SAS Data Library Series: D-103 Zip Code/County Conversion Data Set (Reserve)
SAS Data Library Series: D-104 Map Data Sets, European and Pacific Countries (Reserve)
SAS/ETS User's Guide (Econometrics and Time Series) (Reserve, Remote 8)
SAS for Linear Models (Reserve)
SAS/FSP Software: Usage and Reference (Reserve)
SAS/GRAPH Software: Introduction (Reserve)
SAS/GRAPH Software: Reference , Volumes 1 and 2 (Reserve, Remote 1 Graphics Lab, Remotes 8 and 17)
SAS Guide to Macro Processing (Reserve)
SAS Guide to Problem Solving and Error Messages (Reserve)
SAS Guide to the SQL Procedure: Usage and Reference (Reserve, Remote 8)
SAS/IML Software: Usage and Reference (Remote 8)
SAS/IML User's Guide (Reserve)
SAS Language and Procedures: Usage (Reserve)
SAS Language: Reference (Reserve, Remotes 2, 8 and 17, Human Ecology, Vet Med)
SAS/OR User's Guide (Reserve, Remote 8)
SAS Procedures Guide (Reserve, Remotes 2, 8 and 17, Human Ecology, Vet Med)
SAS Screen Control Language: Reference (Reserve)
SAS SHARE User's Guide (Reserve)
SAS/STAT User's Guide, Volumes 1 and 2 (Reserve, Remotes 2, 8 and 17, Human Ecology, Vet Med)
SAS System for Forecasting Time Series (Reserve)
SAS System for Regression (Reserve)


SAS/GRAPH is a set of SAS procedures that produce graphical output for display on a graphics device (plotter or graphics terminal). SAS/GRAPH is discussed in section 5.6.2, under the heading "Graphics software on CMS."


SASBMDP combines two major statistical programs, SAS and BMDP. Running BMDP programs from within SAS programs enables users to employ the powerful data manipulation capabilities of SAS to "massage" their data before sending it to BMDP. For more information, see the SAS Companion for the CMS Environment , on reserve in Hodges Library.


SPSS, the Statistical Package for the Social Sciences, is available both on CMS and on MVS. SPSS is a comprehensive system of procedures for managing, analyzing, and displaying data. Statistical capabilities range from simple listings and descriptive statistics to a wide variety of multivariate analyses. The syntax of the SPSS command on CMS is:

SPSS filename filetype (options

The default filetype is SPSS. Default options are DISK (to write the display file to disk with a filetype of LISTING) and TERM (to write only error messages, warnings, and notes to the terminal). To see other options, type HELP SPSS.


U01-0548, "Introduction to SPSS," is available through PRTDOC.

The following manuals are on reserve in Hodges Library:

SPSS Advanced Statistics User's Guide
SPSS Base System User's Guide
SPSS Reference Guide (also at Remotes 8 and 17, Human Ecology)

Engineering and scientific software


ANSYS is a general-purpose finite-element modeling program. ANSYS supports the Tektronix 4207 terminals available in the graphics lab at Remote 1 (414 Ferris Hall). Graphics hardcopy output from ANSYS is available from the Tektronix-attached ink-jet printers. For online help, enter HELP ANSYS44; see also the extended help file (PF1, ALL) and the related help file (PF11). Also available is "ANSYS on CMS," U01-0625, available through PRTDOC.


The following manuals are on reserve in Hodges Library:

Getting Started with ANSYS
ANSYS User's Manual, Volumes I and II
ANSYS Stress Analysis Primer
ANSYS Thermal Analysis Primer
General Index to ANSYS Documentation

Dynamic Simulation Language/VS

The IBM program Dynamic Simulation Language/VS (DSL/VS) is a programming language suited primarily for simulation of engineering and scientific problems of a continuous nature. It is based on VS FORTRAN, hence the name DSL/VS. Because it facilitates the solution of ordinary differential equations that frequently are functions of time, DSL/VS is particularly useful for transient analysis of dynamic systems. DSL/VS is not restricted to continuous simulations. It can accurately expected events and detect unexpected discrete events. DSL/VS also contains some "Monte Carlo" simulation capabilities that enable the program to solve many combined continuous/discrete system problems.

DSL/VS highlights

` DSL/VS provides numerous function blocks, procedures, and macros that allow you to represent commonly encountered system elements with single code statements.

` Nine integration methods are provided, including a self-starting fifth-order Runge-Kutta routine used by default and two methods for stiff systems. In addition to the regular (scalar) integrator, DSL/VS provides array (vector) integrators, saturating integrators, and associated transfer functions.

` Since dynamic systems are often modeled and studied in the frequency domain, DSL/VS contains special features that facilitate frequency response analysis.

` Unconstrained optimization may be performed in the DSL/VS environment to help automate the process of finding the best answer to a given problem in the minimum time.

` Graphic output is obtained with a post processor. Video monitors and may be used to produce line and point plots of many types.

Executing DSL/VS

DSL/VS may be executed interactively on CMS or in batch using the VMBATCH system (see section 4.22). Before using DSL/VS, the DSLINIT command must be issued. DSLINIT links and accesses the DSL/VS minidisk, verifies the availability of the VS FORTRAN subset library, and resets the number of "loader tables" required by the graphics post-processor. Four steps are required for complete execution of a DSL/VS program. These steps and functions are shown in order below.

Step Function DSLT file-spec Translation DSLC Compilation DSLG Load and simulation GRAFAEL Graphics post-processing File-spec is the file name, file type, and file mode of the DSL problem file. The file mode defaults to "A" if omitted. These commands may be executed separately, or the DSL command will execute the first three steps in the order listed. The fourth command may be executed as an option to the DSL command with

DSL file-spec (Grafael

Type HELP DSL for an expanded summary of the DSL command. Information for a specific command may be obtained by entering a question mark after the command. Example: DSLT ?

DSL creates a number of files on your minidisk. The command DSLERASE will erase all DSL files except those associated with the graphics post-processor. The command DSLERASE ALL will erase all DSL files except for the original problem input. An alternate, easier method of running DSL is to use the EZDSL command. The format for this command is:

EZDSL fn ft fm ( [graph]

If no filetype and filemode are specified, they will default to DSL and A, respectively. The ("graph" option will execute the graphics post processor, GRAFAEL. No output to the screen except for graphics will be generated. All output will be found in a file named "fn LISTING." If the graph option is not specified, two files, "fn DSLPLOT" and "fn DSLPLTC," will be saved for later use by EZGRAF. Using the graph option may also create a "fn TABLE" file and/or a "fn GRAPH" file. The command

EZGRAF fn ( [erase]

will run the graphics post processor, GRAFAEL using the two files created from EZDSL. Including the erase option will delete the "fn DSLPLOT" and "fn DSLPLTC" files after running GRAFAEL. Enter HELP EZDSL or HELP EZGRAF for further information on these commands.


The following manuals are available at Remote 1 and on reserve at Hodges Library.

SH20-6287, Dynamic Simulation Language/VS Program Description/Operations Manual
SH20-6288, Dynamic Simulation Language/VS Language Reference Manual

Graphics software on CMS

GDDM (Graphical Data Display Manager)

Three GDDM programs are available on CMS:


All of these subroutine libraries may be called from the FORTRAN, PL/I, COBOL, and System/370 Assembler languages. GDDM/Base is a library of general-purpose graphics subroutines that can produce graphics on IBM devices. GDDM/Base supports IBM 3x79G terminals, 328x and 38xx printers, and 737x plotters. Note: To produce graphics on these devices, they must have the proper hardware features and microcode. GDDM-PFG (Presentation Graphics Feature) builds upon GDDM/Base and adds a library of higher-level graphics subroutines for producing business-type charts. GDDM-PGF also includes the Interactive Chart Utility (ICU). The ICU lets you create business charts without programming. GDDM-GKS (Graphics Kernel System) also builds upon GDDM/Base and implements the Graphics Kernel System.


SAS/GRAPH is a set of SAS procedures designed to display data in a wide variety of graphic formats through the use of menus or commands. The types of graphics available include bar, line, and pie charts, as well as contours, 3-D surfaces and maps of the entire world or portions thereof. Extensive font options are available. SAS/GRAPH output can be displayed on any of the graphics devices on campus that are accessible from CMS; a partial list of available devices appears below. Output also can be plotted on the CalComp 1051 plotter from MVS (see section 9.5). There is no default value for the DEVICE option on CMS. Ordinarily, the device should be specified in a GOPTIONS statement. If you do not specify a device, SAS will prompt you for a device type when the first graphics procedure runs. For a complete listing of devices that are supported by SAS, see SAS/GRAPH Software , Volume 1, or enter HELP GRAPHICS on the SAS command line. The following is a list of devices that are most commonly found at UTK:

DEVICE=VT240      Digital Equipment Corp. VT240 terminal
DEVICE=VT340      Digital Equipment Corp. VT340 terminal
DEVICE=TEK4010    Tektronix 4010 graphics terminal
DEVICE=TEK4014    Tektronix 4014 graphics terminal
DEVICE=TEK4105    Tektronix 4105 color graphics terminal
DEVICE=TEK4207    Tektronix 4207 color graphics terminal
DEVICE=PS300      PostScript for output to Imagen printer

SAS/GRAPH output to the Imagen printer

SAS/GRAPH information and presentation graphics can be sent to the Imagen printer from CMS using a PostScript driver. Although SAS commands are not case sensitive, in the following example capital letters indicate a portion of the command string that must be entered exactly as shown; lower case letters indicate a value to be supplied by the user. Any SAS grahpics procedure can be substituted for PROC GTESTIT. The filename entered at FILENAME and GSFNAME must be the same. Run the following SAS program on CMS to produce SAS/GRAPH output on the Imagen printer.

[or any other graphics procedure]

The filetype of LISTPS tells the Imagen printer that the output file contains PostScript commands. The output file can also be printed on the Imagen printer with the CMS command:



For online help, enter HELP UTCC SAS, or within SAS enter HELP.

A large number of map data sets are available for use with PROC GMAP. They are described in "SAS/GRAPH Map Data Sets," U01-0540, available through PRTDOC.

The following manuals have been placed at the locations listed in parentheses; "Reserve" means on reserve at Hodges Library.

SAS/GRAPH Software: Introduction (Reserve)
SAS/GRAPH Software: Reference , Volumes 1 and 2 (Reserve, Remote 1 Graphics Lab, Remotes 8 and 17)

Expert systems shells

IBM's Expert System Environment (ESE)

ESE consists of two complementary programs, Expert System Development Environment and Expert System Consultation Environment. The first is used to build knowledge bases and the second is used to consult those knowledge bases. Some of the major features of ESE are described below.

Major ESE features

` Incremental compilation of rules, parameters, and control blocks as they are entered into the knowledge base, reducing the amount of space required for their storage and improving processing performance
` Extensive certainty-processing capabilities, including facilities for processing fuzzy logic
` Both forward and backward chaining inferencing methods, with high-level user control
` Focus Control Blocks (FCBs) that provide a means of dividing complex problems into small subproblems to make maintenance and control easier
` An external data interface and user-written routines to access existing databases; these user routines can also execute and transfer data to other applications in the CMS or TSO environments.
` An explanation facility to inquire into why a certain piece of information is requested or how a certain parameter has come to have its current value
` The facility to build customized displays different from the default display screens provided with the product
` A built-in editor that provides semantic and syntactic checking while knowledge bases are being interactively constructed
` An extensive set of debugging tools
` Interfaces to external procedures written in the COBOL, PL/I, VS Pascal, System/370 Assembler, VS FORTRAN, and REXX programming languages
` Functions that can access SQL/DS databases

Accessing ESE

To run IBM ESE, you may require more disk space than you currently have. To invoke the Expert System Development Environment, log on to CMS and enter the commands:


For help in using the ESE package, contact your UTCC consultant.


An online help file may be accessed by entering the CMS command HELP ESE. The manuals listed below are available from IBM. Those marked with an asterisk are on reserve in Hodges Library.

*SC38-7004, ESE Reference Manual
SC38-7005, Expert System Consultation Environment User's Guide
*SC38-7006, Expert System Development Environment User's Guide
SC38-7007, ESE Reference Card

Database management software


The IBM relational database program called Structured Query Language/Data System (SQL/DS) is used primarily for teaching and research. The Interactive SQL component (ISQL) allows the user to interactively query the database. External routines allow the database to be queried from programs written in COBOL, PL/I, VS FORTRAN, System/370 Assembler and SAS. SQL/DS uses the relational model for data storage and the Structured Query Language for database inquiries. With SQL/DS, data is stored in tables composed of rows and columns, much like it might be recorded on a sheet of paper. The database is then queried by selecting columns from tables where a row selection criterion is true. The query results can be ordered by values in one of the result columns. SQL/DS allows the queries to be stored and reused to save keystrokes. Users who wish to store and retrieve their own private data will need to have a DBSPACE assigned to their CMS userid; these users should call their consultants at 974-6831 to request that this be done. All of a user's private data is stored in the DBSPACE and is managed by the SQL database service userid. Additional disk space on the CMS account is not needed. To use ISQL, log on to CMS, then enter the following command:


Online help is available. Enter the CMS command HELP SQL or, after accessing SQL, enter the command HELP CONTENTS.


The following documents are available through PRTDOC:

U01-0604, "Structured Query Language"
U01-0608, "SQL Database Services Utility"
U01-0609, "Advanced Techniques in SQL"

The following SQL/DS manuals are available from IBM; those marked with an asterisk can be found in Remote 8.

SH09-8017, Database Planning and Administration
*SH09-8019, Application Programming for VM/SP and VM/XA System Product
*SH09-8047, Interactive SQL User's Guide for VM/SP and VM/XA System Product
SH09-8048, Terminal User's Reference
SH09-8052, Messages and Codes


Several related SAS programs can be used as database management and application development tools. These tools can be combined to create a complete system that allows you to enter, update, delete, or report on data. SAS/AF provides a full-screen, interactive application facility for creating a user-friendly front end to business or information-processing applications. Once the applications have been written with SAS/AF, you do not need to know the SAS language to run the SAS programs. SAS/FSP provides interactive, menu-driven facilities for data entry, editing, retrieval of SAS files, mail-merge and letter writing. SAS/FSP applications can be designed so that some types of errors can be avoided during data entry and editing. For instance, you can set minimum and maximum values for a field, require that a value be entered into a field, or automatically capitalize values entered into fields. SAS/ACCESS provides an interface between the SAS system and the SQL/DS database. With this product you can access SQL/DS tables from within SAS, extract data from an SQL/DS table and place in a SAS data file, use SAS to load data into an SQL/DS table, and use SAS (SAS/FSP) to update data in an SQL/DS table. To use SAS/ACCESS you must be authorized to use SQL/DS (see section 5.8.1 about SQL/DS). For more information about SAS, see section 5.4.11.


The following manuals have been placed at the locations listed in parentheses; "Reserve" means on reserve in Hodges Library.

SAS/AF Software: Usage and Reference (Reserve)
SAS/FSP Software: Usage and Reference (Reserve)
SAS/ACCESS Interface to SQL/DS: Usage and Reference (Remote 8)

[ Top of Page | Previous Page | Next Page | Table of Contents ]