IBM Books

Engineering and Scientific Subroutine Library for AIX Version 3 Release 3: Guide and Reference


Contents

  • About This Book
  • How to Use This Book
  • How to Find a Subroutine Description
  • Where to Find Related Publications
  • How to Look Up a Bibliography Reference
  • Special Terms
  • Short and Long Precision
  • Subroutines and Subprograms
  • How to Interpret the Subroutine Names with a Prefix Underscore
  • Abbreviated Names
  • Fonts
  • Special Notations and Conventions
  • Scalar Data
  • Vectors
  • Matrices
  • Sequences
  • Arrays
  • Special Characters, Symbols, Expressions, and Abbreviations
  • How to Interpret the Subroutine Descriptions
  • Description
  • Syntax
  • On Entry
  • On Return
  • Notes
  • Function
  • Special Usage
  • Error Conditions
  • Examples
  • What's New for ESSL for AIX
  • |What's New for ESSL Version 3 Release 3
  • Changes for ESSL Version 3 Release 2
  • Changes for ESSL Version 3 Release 1.2
  • Changes for ESSL Version 3 Release 1.1
  • Changes for ESSL Version 3
  • Future Migration
  • In Brief--What's Provided in ESSL for AIX

  • Part 1. Guide Information

  • Chapter 1. Introduction and Requirements
  • Overview of ESSL
  • Performance and Functional Capability
  • Usability
  • The Variety of Mathematical Functions
  • ESSL--Processing Capabilities
  • Accuracy of the Computations
  • High Performance of ESSL
  • The Fortran Language Interface to the Subroutines
  • Software and Hardware Products That Can Be Used with ESSL
  • For ESSL--Hardware
  • ESSL--Operating Systems
  • ESSL--Software Products
  • Installation and Customization Products
  • Software Products for Displaying ESSL Online Information
  • ESSL Internet Resources
  • Obtaining Documentation
  • Accessing ESSL's Product Home Pages
  • Getting on the ESSL Mailing List
  • List of ESSL Subroutines
  • Linear Algebra Subprograms
  • Matrix Operations
  • Linear Algebraic Equations
  • Eigensystem Analysis
  • Fourier Transforms, Convolutions and Correlations, and Related Computations
  • Sorting and Searching
  • Interpolation
  • Numerical Quadrature
  • Random Number Generation
  • Utilities
  • Chapter 2. Planning Your Program
  • Selecting an ESSL Subroutine
  • Which ESSL Library Do You Want to Use?
  • What Type of Data Are You Processing in Your Program?
  • How Is Your Data Structured? And What Storage Technique Are You Using?
  • What about Performance and Accuracy?
  • Avoiding Conflicts with Internal ESSL Routine Names That are Exported
  • Setting Up Your Data
  • How Do You Set Up Your Scalar Data?
  • How Do You Set Up Your Arrays?
  • How Should Your Array Data Be Aligned?
  • What Storage Mode Should You Use for Your Data?
  • How Do You Convert from One Storage Mode to Another?
  • Setting Up Your ESSL Calling Sequences
  • What Is an Input-Output Argument?
  • What Are the General Rules to Follow when Specifying Data for the Arguments?
  • What Happens When a Value of 0 Is Specified for N?
  • How Do You Specify the Beginning of the Data Structure in the ESSL Calling Sequence?
  • Using Auxiliary Storage in ESSL
  • Dynamic Allocation of Auxiliary Storage
  • Setting Up Auxiliary Storage When Dynamic Allocation Is Not Used
  • Who Do You Want to Calculate the Size? You or ESSL?
  • How Do You Calculate the Size Using the Formulas?
  • How Do You Get ESSL to Calculate the Size Using ESSL Error Handling?
  • Providing a Correct Transform Length to ESSL
  • What ESSL Subroutines Require Transform Lengths?
  • Who Do You Want to Calculate the Length? You or ESSL?
  • How Do You Calculate the Length Using the Table or Formula?
  • How Do You Get ESSL to Calculate the Length Using ESSL Error Handling?
  • Getting the Best Accuracy
  • What Precisions Do ESSL Subroutines Operate On?
  • How does the Nature of the ESSL Computation Affect Accuracy?
  • What Data Type Standards Are Used by ESSL, and What Exceptions Should You Know About?
  • How is Underflow Handled?
  • Where Can You Find More Information on Accuracy?
  • Getting the Best Performance
  • What General Coding Techniques Can You Use to Improve Performance?
  • Where Can You Find More Information on Performance?
  • Dealing with Errors when Using ESSL
  • What Can You Do about Program Exceptions?
  • What Can You Do about ESSL Input-Argument Errors?
  • What Can You Do about ESSL Computational Errors?
  • What Can You Do about ESSL Resource Errors?
  • What Can You Do about ESSL Attention Messages?
  • How Do You Control Error Handling by Setting Values in the ESSL Error Option Table?
  • How does Error Handling Work in a Threaded Environment?
  • Where Can You Find More Information on Errors?
  • Chapter 3. Setting Up Your Data Structures
  • Concepts
  • Vectors
  • Transpose of a Vector
  • Conjugate Transpose of a Vector
  • In Storage
  • How Stride Is Used for Vectors
  • Sparse Vector
  • Matrices
  • Transpose of a Matrix
  • Conjugate Transpose of a Matrix
  • In Storage
  • How Leading Dimension Is Used for Matrices
  • Symmetric Matrix
  • Positive Definite or Negative Definite Symmetric Matrix
  • Symmetric Indefinite Matrix
  • Complex Hermitian Matrix
  • Positive Definite or Negative Definite Complex Hermitian Matrix
  • Positive Definite or Negative Definite Symmetric Toeplitz Matrix
  • Positive Definite or Negative Definite Complex Hermitian Toeplitz Matrix
  • Triangular Matrix
  • General Band Matrix
  • Symmetric Band Matrix
  • Positive Definite Symmetric Band Matrix
  • Complex Hermitian Band Matrix
  • Triangular Band Matrix
  • General Tridiagonal Matrix
  • Symmetric Tridiagonal Matrix
  • Positive Definite Symmetric Tridiagonal Matrix
  • Sparse Matrix
  • Sequences
  • Real and Complex Elements in Storage
  • One-Dimensional Sequences
  • Two-Dimensional Sequences
  • Three-Dimensional Sequences
  • How Stride Is Used for Three-Dimensional Sequences
  • Chapter 4. Coding Your Program
  • Fortran Programs
  • Calling ESSL Subroutines and Functions in Fortran
  • Setting Up a User-Supplied Subroutine for ESSL in Fortran
  • Setting Up Scalar Data in Fortran
  • Setting Up Arrays in Fortran
  • Creating Multiple Threads and Calling ESSL from Your Fortran Program
  • Handling Errors in Your Fortran Program
  • Example of Handling Errors in a Multithreaded Application Program
  • C Programs
  • Calling ESSL Subroutines and Functions in C
  • Passing Arguments in C
  • Setting Up a User-Supplied Subroutine for ESSL in C
  • Setting Up Scalar Data in C
  • |Setting Up Complex Data Types in C
  • |Using Logical Data in C
  • Setting Up Arrays in C
  • Creating Multiple Threads and Calling ESSL from Your C Program
  • Handling Errors in Your C Program
  • C++ Programs
  • Calling ESSL Subroutines and Functions in C++
  • Passing Arguments in C++
  • Setting Up a User-Supplied Subroutine for ESSL in C++
  • Setting Up Scalar Data in C++
  • |Selecting the <complex> or <complex.h> Header File
  • |Setting Up Short-Precision Complex Data Types If You Are Using the IBM Open Class Complex Mathematics Library in C++
  • |Using Logical Data in C++
  • Setting Up Arrays in C++
  • Creating Multiple Threads and Calling ESSL from Your C++ Program
  • Handling Errors in Your C++ Program
  • |Chapter 5. Processing Your Program
  • |Dynamic Linking Versus Static Linking
  • |Fortran Program Procedures
  • |C Program Procedures
  • |C++ Program Procedures
  • Chapter 6. Migrating Your Programs
  • |Migrating ESSL Version 3 Programs to Version 3 Release 3
  • |ESSL Subroutines
  • Migrating ESSL Version 3 Programs to Version 3 Release 2
  • ESSL Subroutines
  • Migrating ESSL Version 3 Programs to Version 3 Release 1.2
  • ESSL Subroutines
  • Migrating ESSL Version 3 Programs to Version 3 Release 1.1
  • ESSL Subroutines
  • Migrating ESSL Version 2 Programs to Version 3
  • ESSL Subroutines
  • ESSL Messages
  • Planning for Future Migration
  • |Migrating between IBM e(logo)server pSeries and RS/6000 Processors
  • Auxiliary Storage
  • Bitwise-Identical Results
  • Migrating from Other Libraries to ESSL
  • Migrating from ESSL/370
  • Migrating from Another IBM Subroutine Library
  • Migrating from LAPACK
  • Migrating from a Non-IBM Subroutine Library
  • Chapter 7. Handling Problems
  • Where to Find More Information About Errors
  • Getting Help from IBM Support
  • National Language Support
  • Dealing with Errors
  • Program Exceptions
  • ESSL Input-Argument Error Messages
  • ESSL Computational Error Messages
  • ESSL Resource Error Messages
  • ESSL Informational and Attention Messages
  • Miscellaneous Error Messages
  • Messages
  • Message Conventions
  • Input-Argument Error Messages(2001-2099)
  • Computational Error Messages(2100-2199)
  • Input-Argument Error Messages(2200-2299)
  • Resource Error Messages(2400-2499)
  • Informational and Attention Error Messages(2600-2699)
  • Miscellaneous Error Messages(2700-2799)

  • Part 2. Reference Information

  • Chapter 8. Linear Algebra Subprograms
  • Overview of the Linear Algebra Subprograms
  • Vector-Scalar Linear Algebra Subprograms
  • Sparse Vector-Scalar Linear Algebra Subprograms
  • Matrix-Vector Linear Algebra Subprograms
  • Sparse Matrix-Vector Linear Algebra Subprograms
  • Use Considerations
  • Performance and Accuracy Considerations
  • Vector-Scalar Subprograms
  • ISAMAX, IDAMAX, ICAMAX, and IZAMAX--Position of the First or Last Occurrence of the Vector Element Having the Largest Magnitude
  • ISAMIN and IDAMIN--Position of the First or Last Occurrence of the Vector Element Having Minimum Absolute Value
  • ISMAX and IDMAX--Position of the First or Last Occurrence of the Vector Element Having the Maximum Value
  • ISMIN and IDMIN--Position of the First or Last Occurrence of the Vector Element Having Minimum Value
  • SASUM, DASUM, SCASUM, and DZASUM--Sum of the Magnitudes of the Elements in a Vector
  • SAXPY, DAXPY, CAXPY, and ZAXPY--Multiply a Vector X by a Scalar, Add to a Vector Y, and Store in the Vector Y
  • SCOPY, DCOPY, CCOPY, and ZCOPY--Copy a Vector
  • SDOT, DDOT, CDOTU, ZDOTU, CDOTC, and ZDOTC--Dot Product of Two Vectors
  • SNAXPY and DNAXPY--Compute SAXPY or DAXPY N Times
  • SNDOT and DNDOT--Compute Special Dot Products N Times
  • SNRM2, DNRM2, SCNRM2, and DZNRM2--Euclidean Length of a Vector with Scaling of Input to Avoid Destructive Underflow and Overflow
  • SNORM2, DNORM2, CNORM2, and ZNORM2--Euclidean Length of a Vector with No Scaling of Input
  • SROTG, DROTG, CROTG, and ZROTG--Construct a Givens Plane Rotation
  • SROT, DROT, CROT, ZROT, CSROT, and ZDROT--Apply a Plane Rotation
  • SSCAL, DSCAL, CSCAL, ZSCAL, CSSCAL, and ZDSCAL--Multiply a Vector X by a Scalar and Store in the Vector X
  • SSWAP, DSWAP, CSWAP, and ZSWAP--Interchange the Elements of Two Vectors
  • SVEA, DVEA, CVEA, and ZVEA--Add a Vector X to a Vector Y and Store in a Vector Z
  • SVES, DVES, CVES, and ZVES--Subtract a Vector Y from a Vector X and Store in a Vector Z
  • SVEM, DVEM, CVEM, and ZVEM--Multiply a Vector X by a Vector Y and Store in a Vector Z
  • SYAX, DYAX, CYAX, ZYAX, CSYAX, and ZDYAX--Multiply a Vector X by a Scalar and Store in a Vector Y
  • SZAXPY, DZAXPY, CZAXPY, and ZZAXPY--Multiply a Vector X by a Scalar, Add to a Vector Y, and Store in a Vector Z
  • Sparse Vector-Scalar Subprograms
  • SSCTR, DSCTR, CSCTR, ZSCTR--Scatter the Elements of a Sparse Vector X in Compressed-Vector Storage Mode into Specified Elements of a Sparse Vector Y in Full-Vector Storage Mode
  • SGTHR, DGTHR, CGTHR, and ZGTHR--Gather Specified Elements of a Sparse Vector Y in Full-Vector Storage Mode into a Sparse Vector X in Compressed-Vector Storage Mode
  • SGTHRZ, DGTHRZ, CGTHRZ, and ZGTHRZ--Gather Specified Elements of a Sparse Vector Y in Full-Vector Mode into a Sparse Vector X in Compressed-Vector Mode, and Zero the Same Specified Elements of Y
  • SAXPYI, DAXPYI, CAXPYI, and ZAXPYI--Multiply a Sparse Vector X in Compressed-Vector Storage Mode by a Scalar, Add to a Sparse Vector Y in Full-Vector Storage Mode, and Store in the Vector Y
  • SDOTI, DDOTI, CDOTUI, ZDOTUI, CDOTCI, and ZDOTCI--Dot Product of a Sparse Vector X in Compressed-Vector Storage Mode and a Sparse Vector Y in Full-Vector Storage Mode
  • Matrix-Vector Subprograms
  • SGEMV, DGEMV, CGEMV, ZGEMV, SGEMX, DGEMX, SGEMTX, and DGEMTX--Matrix-Vector Product for a General Matrix, Its Transpose, or Its Conjugate Transpose
  • SGER, DGER, CGERU, ZGERU, CGERC, and ZGERC--Rank-One Update of a General Matrix
  • SSPMV, DSPMV, CHPMV, ZHPMV, SSYMV, DSYMV, CHEMV, ZHEMV, SSLMX, and DSLMX--Matrix-Vector Product for a Real Symmetric or Complex Hermitian Matrix
  • SSPR, DSPR, CHPR, ZHPR, SSYR, DSYR, CHER, ZHER, SSLR1, and DSLR1 --Rank-One Update of a Real Symmetric or Complex Hermitian Matrix
  • SSPR2, DSPR2, CHPR2, ZHPR2, SSYR2, DSYR2, CHER2, ZHER2, SSLR2, and DSLR2--Rank-Two Update of a Real Symmetric or Complex Hermitian Matrix
  • SGBMV, DGBMV, CGBMV, and ZGBMV--Matrix-Vector Product for a General Band Matrix, Its Transpose, or Its Conjugate Transpose
  • SSBMV, DSBMV, CHBMV, and ZHBMV--Matrix-Vector Product for a Real Symmetric or Complex Hermitian Band Matrix
  • STRMV, DTRMV, CTRMV, ZTRMV, STPMV, DTPMV, CTPMV, and ZTPMV--Matrix-Vector Product for a Triangular Matrix, Its Transpose, or Its Conjugate Transpose
  • STBMV, DTBMV, CTBMV, and ZTBMV--Matrix-Vector Product for a Triangular Band Matrix, Its Transpose, or Its Conjugate Transpose
  • Sparse Matrix-Vector Subprograms
  • DSMMX--Matrix-Vector Product for a Sparse Matrix in Compressed-Matrix Storage Mode
  • DSMTM--Transpose a Sparse Matrix in Compressed-Matrix Storage Mode
  • DSDMX--Matrix-Vector Product for a Sparse Matrix or Its Transpose in Compressed-Diagonal Storage Mode
  • Chapter 9. Matrix Operations
  • Overview of the Matrix Operation Subroutines
  • Use Considerations
  • Specifying Normal, Transposed, or Conjugate Transposed Input Matrices
  • Transposing or Conjugate Transposing:
  • Performance and Accuracy Considerations
  • In General
  • For Large Matrices
  • For Combined Operations
  • Matrix Operation Subroutines
  • SGEADD, DGEADD, CGEADD, and ZGEADD--Matrix Addition for General Matrices or Their Transposes
  • SGESUB, DGESUB, CGESUB, and ZGESUB--Matrix Subtraction for General Matrices or Their Transposes
  • SGEMUL, DGEMUL, CGEMUL, and ZGEMUL--Matrix Multiplication for General Matrices, Their Transposes, or Conjugate Transposes
  • SGEMMS, DGEMMS, CGEMMS, and ZGEMMS--Matrix Multiplication for General Matrices, Their Transposes, or Conjugate Transposes Using Winograd's Variation of Strassen's Algorithm
  • SGEMM, DGEMM, CGEMM, and ZGEMM--Combined Matrix Multiplication and Addition for General Matrices, Their Transposes, or Conjugate Transposes
  • SSYMM, DSYMM, CSYMM, ZSYMM, CHEMM, and ZHEMM--Matrix-Matrix Product Where One Matrix is Real or Complex Symmetric or Complex Hermitian
  • STRMM, DTRMM, CTRMM, and ZTRMM--Triangular Matrix-Matrix Product
  • SSYRK, DSYRK, CSYRK, ZSYRK, CHERK, and ZHERK--Rank-K Update of a Real or Complex Symmetric or a Complex Hermitian Matrix
  • SSYR2K, DSYR2K, CSYR2K, ZSYR2K, CHER2K, and ZHER2K--Rank-2K Update of a Real or Complex Symmetric or a Complex Hermitian Matrix
  • SGETMI, DGETMI, CGETMI, and ZGETMI--General Matrix Transpose (In-Place)
  • SGETMO, DGETMO, CGETMO, and ZGETMO--General Matrix Transpose (Out-of-Place)
  • Chapter 10. Linear Algebraic Equations
  • Overview of the Linear Algebraic Equation Subroutines
  • Dense Linear Algebraic Equation Subroutines
  • Banded Linear Algebraic Equation Subroutines
  • Sparse Linear Algebraic Equation Subroutines
  • Linear Least Squares Subroutines
  • Dense and Banded Linear Algebraic Equation Considerations
  • Use Considerations
  • Performance and Accuracy Considerations
  • Sparse Matrix Direct Solver Considerations
  • Use Considerations
  • Performance and Accuracy Considerations
  • Sparse Matrix Skyline Solver Considerations
  • Use Considerations
  • Performance and Accuracy Considerations
  • Sparse Matrix Iterative Solver Considerations
  • Use Considerations
  • Performance and Accuracy Considerations
  • Linear Least Squares Considerations
  • Use Considerations
  • Performance and Accuracy Considerations
  • Dense Linear Algebraic Equation Subroutines
  • SGEF, DGEF, CGEF, and ZGEF--General Matrix Factorization
  • SGES, DGES, CGES, and ZGES--General Matrix, Its Transpose, or Its Conjugate Transpose Solve
  • SGESM, DGESM, CGESM, and ZGESM--General Matrix, Its Transpose, or Its Conjugate Transpose Multiple Right-Hand Side Solve
  • SGETRF, DGETRF, CGETRF and ZGETRF--General Matrix Factorization
  • SGETRS, DGETRS, CGETRS, and ZGETRS--General Matrix Multiple Right-Hand Side Solve
  • SGEFCD and DGEFCD--General Matrix Factorization, Condition Number Reciprocal, and Determinant
  • SPPF, DPPF, SPOF, DPOF, CPOF, ZPOF, SPOTRF, DPOTRF, CPOTRF, and ZPOTRF--Positive Definite Real Symmetric or Complex Hermitian Matrix Factorization
  • SPPS and DPPS--Positive Definite Real Symmetric Matrix Solve
  • SPOSM, DPOSM, CPOSM, ZPOSM, SPOTRS, DPOTRS, CPOTRS, and ZPOTRS--Positive Definite Real Symmetric or Complex Hermitian Matrix Multiple Right-Hand Side Solve
  • SPPFCD, DPPFCD, SPOFCD, and DPOFCD--Positive Definite Real Symmetric Matrix Factorization, Condition Number Reciprocal, and Determinant
  • DBSSV--Symmetric Indefinite Matrix Factorization and Multiple Right-Hand Side Solve
  • DBSTRF--Symmetric Indefinite Matrix Factorization
  • DBSTRS--Symmetric Indefinite Matrix Multiple Right-Hand Side Solve
  • SGEICD, DGEICD, SGETRI and DGETRI--General Matrix Inverse
  • SPPICD, DPPICD, SPOICD, DPOICD, SPOTRI and DPOTRI--Positive Definite Real Symmetric Matrix Inverse
  • STRSV, DTRSV, CTRSV, ZTRSV, STPSV, DTPSV, CTPSV, and ZTPSV--Solution of a Triangular System of Equations with a Single Right-Hand Side
  • STRSM, DTRSM, CTRSM, and ZTRSM--Solution of Triangular Systems of Equations with Multiple Right-Hand Sides
  • STRI, DTRI, STPI, DTPI, STRTRI, DTRTRI, STPTRI, and DTPTRI--Triangular Matrix Inverse
  • Banded Linear Algebraic Equation Subroutines
  • SGBF and DGBF--General Band Matrix Factorization
  • SGBS and DGBS--General Band Matrix Solve
  • SPBF, DPBF, SPBCHF, and DPBCHF--Positive Definite Symmetric Band Matrix Factorization
  • SPBS, DPBS, SPBCHS, and DPBCHS--Positive Definite Symmetric Band Matrix Solve
  • SGTF and DGTF--General Tridiagonal Matrix Factorization
  • SGTS and DGTS--General Tridiagonal Matrix Solve
  • SGTNP, DGTNP, CGTNP, and ZGTNP--General Tridiagonal Matrix Combined Factorization and Solve with No Pivoting
  • SGTNPF, DGTNPF, CGTNPF, and ZGTNPF--General Tridiagonal Matrix Factorization with No Pivoting
  • SGTNPS, DGTNPS, CGTNPS, and ZGTNPS--General Tridiagonal Matrix Solve with No Pivoting
  • SPTF and DPTF--Positive Definite Symmetric Tridiagonal Matrix Factorization
  • SPTS and DPTS--Positive Definite Symmetric Tridiagonal Matrix Solve
  • STBSV, DTBSV, CTBSV, and ZTBSV--Triangular Band Equation Solve
  • Sparse Linear Algebraic Equation Subroutines
  • DGSF--General Sparse Matrix Factorization Using Storage by Indices, Rows, or Columns
  • DGSS--General Sparse Matrix or Its Transpose Solve Using Storage by Indices, Rows, or Columns
  • DGKFS--General Sparse Matrix or Its Transpose Factorization, Determinant, and Solve Using Skyline Storage Mode
  • DSKFS--Symmetric Sparse Matrix Factorization, Determinant, and Solve Using Skyline Storage Mode
  • DSRIS--Iterative Linear System Solver for a General or Symmetric Sparse Matrix Stored by Rows
  • DSMCG--Sparse Positive Definite or Negative Definite Symmetric Matrix Iterative Solve Using Compressed-Matrix Storage Mode
  • DSDCG--Sparse Positive Definite or Negative Definite Symmetric Matrix Iterative Solve Using Compressed-Diagonal Storage Mode
  • DSMGCG--General Sparse Matrix Iterative Solve Using Compressed-Matrix Storage Mode
  • DSDGCG--General Sparse Matrix Iterative Solve Using Compressed-Diagonal Storage Mode
  • Linear Least Squares Subroutines
  • SGESVF and DGESVF--Singular Value Decomposition for a General Matrix
  • SGESVS and DGESVS--Linear Least Squares Solution for a General Matrix Using the Singular Value Decomposition
  • DGEQRF--General Matrix QR Factorization
  • |DGELS--Linear Least Squares Solution for a General Matrix
  • SGELLS and DGELLS--Linear Least Squares Solution for a General Matrix with Column Pivoting
  • Chapter 11. Eigensystem Analysis
  • Overview of the Eigensystem Analysis Subroutines
  • Performance and Accuracy Considerations
  • Eigensystem Analysis Subroutines
  • SGEEV, DGEEV, CGEEV, and ZGEEV--Eigenvalues and, Optionally, All or Selected Eigenvectors of a General Matrix
  • SSPEV, DSPEV, CHPEV, and ZHPEV--Eigenvalues and, Optionally, the Eigenvectors of a Real Symmetric Matrix or a Complex Hermitian Matrix
  • SSPSV, DSPSV, CHPSV, and ZHPSV--Extreme Eigenvalues and, Optionally, the Eigenvectors of a Real Symmetric Matrix or a Complex Hermitian Matrix
  • SGEGV and DGEGV--Eigenvalues and, Optionally, the Eigenvectors of a Generalized Real Eigensystem, Az=wBz, where A and B Are Real General Matrices
  • SSYGV and DSYGV--Eigenvalues and, Optionally, the Eigenvectors of a Generalized Real Symmetric Eigensystem, Az=wBz, where A Is Real Symmetric and B Is Real Symmetric Positive Definite
  • Chapter 12. Fourier Transforms, Convolutions and Correlations, and Related Computations
  • Overview of the Signal Processing Subroutines
  • Fourier Transforms Subroutines
  • Convolution and Correlation Subroutines
  • Related-Computation Subroutines
  • Fourier Transforms, Convolutions, and Correlations Considerations
  • Use Considerations
  • Initializing Auxiliary Working Storage
  • Determining the Amount of Auxiliary Working Storage That You Need
  • Performance and Accuracy Considerations
  • When Running on the Workstation Processors
  • Defining Arrays
  • Fourier Transform Considerations
  • How the Fourier Transform Subroutines Achieve High Performance
  • Convolution and Correlation Considerations
  • Related Computation Considerations
  • Accuracy Considerations
  • Fourier Transform Subroutines
  • SCFT and DCFT--Complex Fourier Transform
  • SRCFT and DRCFT--Real-to-Complex Fourier Transform
  • SCRFT and DCRFT--Complex-to-Real Fourier Transform
  • SCOSF and DCOSF--Cosine Transform
  • SSINF and DSINF--Sine Transform
  • SCFT2 and DCFT2--Complex Fourier Transform in Two Dimensions
  • SRCFT2 and DRCFT2--Real-to-Complex Fourier Transform in Two Dimensions
  • SCRFT2 and DCRFT2--Complex-to-Real Fourier Transform in Two Dimensions
  • SCFT3 and DCFT3--Complex Fourier Transform in Three Dimensions
  • SRCFT3 and DRCFT3--Real-to-Complex Fourier Transform in Three Dimensions
  • SCRFT3 and DCRFT3--Complex-to-Real Fourier Transform in Three Dimensions
  • Convolution and Correlation Subroutines
  • SCON and SCOR--Convolution or Correlation of One Sequence with One or More Sequences
  • SCOND and SCORD--Convolution or Correlation of One Sequence with Another Sequence Using a Direct Method
  • SCONF and SCORF--Convolution or Correlation of One Sequence with One or More Sequences Using the Mixed-Radix Fourier Method
  • SDCON, DDCON, SDCOR, and DDCOR--Convolution or Correlation with Decimated Output Using a Direct Method
  • SACOR--Autocorrelation of One or More Sequences
  • SACORF--Autocorrelation of One or More Sequences Using the Mixed-Radix Fourier Method
  • Related-Computation Subroutines
  • SPOLY and DPOLY--Polynomial Evaluation
  • SIZC and DIZC--I-th Zero Crossing
  • STREC and DTREC--Time-Varying Recursive Filter
  • SQINT and DQINT--Quadratic Interpolation
  • SWLEV, DWLEV, CWLEV, and ZWLEV--Wiener-Levinson Filter Coefficients
  • Chapter 13. Sorting and Searching
  • Overview of the Sorting and Searching Subroutines
  • Use Considerations
  • Performance and Accuracy Considerations
  • Sorting and Searching Subroutines
  • ISORT, SSORT, and DSORT--Sort the Elements of a Sequence
  • ISORTX, SSORTX, and DSORTX--Sort the Elements of a Sequence and Note the Original Element Positions
  • ISORTS, SSORTS, and DSORTS--Sort the Elements of a Sequence Using a Stable Sort and Note the Original Element Positions
  • IBSRCH, SBSRCH, and DBSRCH--Binary Search for Elements of a Sequence X in a Sorted Sequence Y
  • ISSRCH, SSSRCH, and DSSRCH--Sequential Search for Elements of a Sequence X in the Sequence Y
  • Chapter 14. Interpolation
  • Overview of the Interpolation Subroutines
  • Use Considerations
  • Performance and Accuracy Considerations
  • Interpolation Subroutines
  • SPINT and DPINT--Polynomial Interpolation
  • STPINT and DTPINT--Local Polynomial Interpolation
  • SCSINT and DCSINT--Cubic Spline Interpolation
  • SCSIN2 and DCSIN2--Two-Dimensional Cubic Spline Interpolation
  • Chapter 15. Numerical Quadrature
  • Overview of the Numerical Quadrature Subroutines
  • Use Considerations
  • Choosing the Method
  • Performance and Accuracy Considerations
  • Programming Considerations for the SUBF Subroutine
  • Designing SUBF
  • Coding and Setting Up SUBF in Your Program
  • Numerical Quadrature Subroutines
  • SPTNQ and DPTNQ--Numerical Quadrature Performed on a Set of Points
  • SGLNQ and DGLNQ--Numerical Quadrature Performed on a Function Using Gauss-Legendre Quadrature
  • SGLNQ2 and DGLNQ2--Numerical Quadrature Performed on a Function Over a Rectangle Using Two-Dimensional Gauss-Legendre Quadrature
  • SGLGQ and DGLGQ--Numerical Quadrature Performed on a Function Using Gauss-Laguerre Quadrature
  • SGRAQ and DGRAQ--Numerical Quadrature Performed on a Function Using Gauss-Rational Quadrature
  • SGHMQ and DGHMQ--Numerical Quadrature Performed on a Function Using Gauss-Hermite Quadrature
  • Chapter 16. Random Number Generation
  • Overview of the Random Number Generation Subroutines
  • Use Considerations
  • Random Number Generation Subroutines
  • SURAND and DURAND--Generate a Vector of Uniformly Distributed Random Numbers
  • SNRAND and DNRAND--Generate a Vector of Normally Distributed Random Numbers
  • SURXOR and DURXOR--Generate a Vector of Long Period Uniformly Distributed Random Numbers
  • Chapter 17. Utilities
  • Overview of the Utility Subroutines
  • Use Considerations
  • Determining the Level of ESSL Installed
  • Finding the Optimal Stride(s) for Your Fourier Transforms
  • Converting Sparse Matrix Storage
  • Utility Subroutines
  • EINFO--ESSL Error Information-Handler Subroutine
  • ERRSAV--ESSL ERRSAV Subroutine for ESSL
  • ERRSET--ESSL ERRSET Subroutine for ESSL
  • ERRSTR--ESSL ERRSTR Subroutine for ESSL
  • IESSL--Determine the Level of ESSL Installed
  • STRIDE--Determine the Stride Value for Optimal Performance in Specified Fourier Transform Subroutines
  • DSRSM--Convert a Sparse Matrix from Storage-by-Rows to Compressed-Matrix Storage Mode
  • DGKTRN--For a General Sparse Matrix, Convert Between Diagonal-Out and Profile-In Skyline Storage Mode
  • DSKTRN--For a Symmetric Sparse Matrix, Convert Between Diagonal-Out and Profile-In Skyline Storage Mode

  • Part 3. Appendixes

  • Appendix A. Basic Linear Algebra Subprograms (BLAS)
  • Level 1 BLAS
  • Level 2 BLAS
  • Level 3 BLAS
  • Appendix B. LAPACK
  • LAPACK
  • Notices
  • Trademarks
  • Software Update Protocol
  • Programming Interfaces
  • Glossary

  • Bibliography
  • References
  • ESSL Publications
  • Evaluation and Planning
  • Installation
  • Application Programming
  • Related Publications
  • AIX
  • XL Fortran
  • PL/I
  • IBM 3838 Array Processor
  • Index

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