Guide and Reference
The Engineering and Scientific Subroutine Library (ESSL) for AIX is a set
of high-performance mathematical subroutines. ESSL is provided as four
run-time libraries, running on RS/6000* POWER*,
PowerPC*, and POWER2* processors. ESSL can be used with
Fortran, C, C++, and Programming Language/I (PL/I) programs operating under
the AIX operating system.
This book is a guide and reference manual for using ESSL in doing
application programming. It includes:
- An overview of ESSL and guidance information for designing, coding, and
processing your program, as well as migrating existing programs, and
diagnosing problems
- Reference information for coding each ESSL calling sequence
This book is written for a wide class of ESSL users: scientists,
mathematicians, engineers, statisticians, computer scientists, and system
programmers. It assumes a basic knowledge of mathematics in the areas of ESSL
computation. It also assumes that users are familiar with Fortran, C, C++, and
PL/I programming.
Front Matter consists of the Table of Contents, Special Notices,
and Preface. Use these to find or interpret information in the book.
Part 1. "Guide Information" provides guidance
information for using ESSL. It covers the user-oriented tasks of learning,
designing, coding, migrating, processing, and diagnosing. Use the following
chapters when performing any of these tasks:
- Chapter 1, "Learning about ESSL" gives an introduction
to ESSL, providing highlights and general information. Read this chapter first
to determine the aspects of ESSL you want to use.
- Chapter 2, "Designing Your Program" provides
ESSL-specific information that helps you design your program. Read this
chapter before designing your program.
- Chapter 3, "Setting Up Your Data Structures" describes
all types of data structures, such as vectors, matrices, and sequences. Use
this information when designing and coding your program.
- Chapter 4, "Coding Your Program" tells you how to code
your scalar and array data, how to code calls to ESSL in Fortran, C, C++, and
PL/I programs, and how to do the coding necessary to handle errors. Use this
information when coding your program.
- Chapter 5, "Processing Your Program" describes how to
process your program under your particular operating system on your hardware.
Use this information after you have coded your program and are ready to run
it.
- Chapter 6, "Migrating Your Programs" explains all
aspects of migration to ESSL, to this version of ESSL, to different
processors, and to future releases and future processors. Read this chapter
before starting to design your program.
- Chapter 7, "Handling Problems" provides diagnostic
procedures for analyzing all ESSL problems. When you encounter a problem, use
the symptom indexes at the beginning of this chapter to guide you to the
appropriate diagnostic procedure.
Part 2. "Reference Information" provides reference
information you need to code the ESSL calling sequences. It covers each of the
mathematical areas of ESSL, and the utility subroutines. Each chapter begins
with an introduction, followed by the subroutine descriptions. Each
introduction applies to all the subroutines in that chapter and is especially
important in planning your use of the subroutines and avoiding problems. To
understand the information in the subroutine descriptions, see "How to Interpret the Subroutine Descriptions". Use the appropriate chapter when coding your program:
- Chapter 8, "Linear Algebra Subprograms"
- Chapter 9, "Matrix Operations"
- Chapter 10, "Linear Algebraic Equations"
- Chapter 11, "Eigensystem Analysis"
- Chapter 12, "Fourier Transforms, Convolutions and Correlations,
and Related Computations"
- Chapter 13, "Sorting and Searching"
- Chapter 14, "Interpolation"
- Chapter 15, "Numerical Quadrature"
- Chapter 16, "Random Number Generation"
- Chapter 17, "Utilities"
Appendix A. Basic Linear Algebra Subprograms provides a list of
the Level 1, 2, and 3 Basic Linear Algebra Subprograms (BLAS) included in
ESSL.
Appendix B. LAPACK provides a list of the LAPACK subroutines
included in ESSL.
Glossary contains definitions of terms used in this book.
Bibliography provides information about publications related to
ESSL. Use it when you need more information than this book provides.
[ Top of Page | Previous Page | Next Page | Table of Contents | Index ]