Utilities

SCALAPACK UTILITIES

ROUTINE DESCRIPTION
SCALAPACK_SETUP This routine sets up a processor grid and calculates default values for various entities to be used in mapping a global array to the processor grid.
SCALAPACK_GETDIM This routine calculates the row and column dimensions of a local distributed array based on the size of the array to be distributed and the row and column blocking factors to be used.
SCALAPACK_READ Reads matrix data from a file and transmits it into the two-dimensional block-cyclic form.
SCALAPACK_WRITE Writes the matrix data to a file.
SCALAPACK_MAP This routine maps array data from a global array to local arrays in the two-dimensional block-cyclic form required by ScaLAPACK routines.
SCALAPACK_UNMAP This routine unmaps array data from local distributed arrays to a global array. The data in the local arrays must have been stored in the two-dimensional block-cyclic form required by ScaLAPACK routines.
SCALAPACK_EXIT This routine exits ScaLAPACK mode for the IMSL Library routines. All processors in the BLACS context call the routine.
 

PRINT

ROUTINE DESCRIPTION
ERROR_POST Prints error messages.
SHOW Prints rank-1 or rank-2 arrays of numbers in a readable format.
WRRRN Prints a real rectangular matrix with integer row and column labels.
WRRRL Prints a real rectangular matrix with a given format and labels.
WRIRN Prints an integer rectangular matrix with integer row and column labels.
WRIRL Prints an integer rectangular matrix with a given format and labels.
WRCRN Prints a complex rectangular matrix with integer row and column labels.
WRCRL Prints a complex rectangular matrix with a given format and labels.
WROPT Sets or Retrieves an option for printing a matrix.
PGOPT Sets or Retrieves page width and length for printing.
 

PREMUTE

ROUTINE DESCRIPTION
PERMU Rearranges the elements of an array as specified by a permutation.
PERMA Permutes the rows or columns of a matrix.
 

SORT

ROUTINE DESCRIPTION
SORT_REAL Sorts a rank-1 array of real numbers x so the y results are algebraically nondecreasing, y1 ≤ y2 ≤ … yn .
SVRGN Sorts a real array by algebraically increasing value.
SVRGP Sorts a real array by algebraically increasing value and returns the permutation that rearranges the array.
SVIGN Sorts an integer array by algebraically increasing value.
SVIGP Sorts an integer array by algebraically increasing value and returns the permutation that rearranges the array.
SVRBN Sorts a real array by nondecreasing absolute value.
SVRBP Sorts a real array by nondecreasing absolute value and returns the permutation that rearranges the array.
SVIBN Sorts an integer array by nondecreasing absolute value.
SVIBP Sorts an integer array by nondecreasing absolute value and returns the permutation that rearranges the array.
 

SEARCH

ROUTINE DESCRIPTION
SRCH Searches a sorted vector for a given scalar and returns its index.
ISRCH Searches a sorted integer vector for a given integer and returns its index.
SSRCH Searches a character vector, sorted in ascending ASCII order, for a given string and returns its index.
 

CHARACTER STRING MANIPULATION

ROUTINE DESCRIPTION
ACHAR Returns a character given its ASCII value.
IACHAR Returns the integer ASCII value of a character argument.
ICASE Returns the ASCII value of a character converted to uppercase.
IICSR Compares two character strings using the ASCII collating sequence but without regard to case.
IIDEX Determines the position in a string at which a given character sequence begins without regard to case.
CVTSI Converts a character string containing an integer number into the corresponding integer form.
 

TIME, DATE AND VERSION

ROUTINE DESCRIPTION
CPSEC Returns CPU time used in seconds.
TIMDY Gets time of day.
TDATE Gets today's date.
NDAYS Computes the number of days from January 1, 1900, to the given date.
NDYIN Gives the date corresponding to the number of days since January 1, 1900.
IDYWK Computes the day of the week for a given date.
VERML Obtains IMSL MATH LIBRARY-related version, system and serial numbers.
 

RANDOM NUMBER GENERATION

ROUTINE DESCRIPTION
RAND_GEN Generates a rank-1 array of random numbers.
RNGET Retrieves the current value of the seed used in the IMSL random number generators.
RNSET Initializes a random seed for use in the IMSL random number generators.
RNOPT Selects the uniform (0, 1) multiplicative congruential pseudorandom number generator.
RNIN32 Initializes the 32-bit Mersenne Twister generator using an array.
RNGE32 Retrieves the current table used in the 32-bit Mersenne Twister generator.
RNSE32 Sets the current table used in the 32-bit Mersenne Twister generator.
RNIN64 Initializes the 64-bit Mersenne Twister generator using an array.
RNGE64 Retrieves the current table used in the 64-bit Mersenne Twister generator.
RNSE64 Sets the current table used in the 64-bit Mersenne Twister generator.
RNUNF Generates a pseudorandom number from a uniform (0, 1) distribution.
RNUN Generates pseudorandom numbers from a uniform (0, 1) distribution.
 

LOW DISCREPANCY SEQUENCES

ROUTINE DESCRIPTION
FAURE_INIT Generates pseudorandom numbers from a uniform (0, 1) distribution.
FAURE_FREE Frees the structure containing information about the Faure sequence.
FAURE_NEXT Computes a shuffled Faure sequence.
 

OPTIONS MANAGER

ROUTINE DESCRIPTION
IUMAG This routine handles MATH LIBRARY and STAT LIBRARY type INTEGER options.
UMAG Gets and puts type REAL options.
SUMAG This routine handles MATH LIBRARY and STAT LIBRARY type SINGLE PRECISION options.
DUMAG This routine handles MATH LIBRARY and STAT LIBRARY type DOUBLE PRECISION options.
 

LINE PRINTER GRAPHICS

ROUTINE DESCRIPTION
PLOTP Prints a plot of up to 10 sets of points.
 

MISCELLANEOUS

ROUTINE DESCRIPTION
PRIME Decomposes an integer into its prime factors.
CONST Returns the value of various mathematical and physical constants.
CUNIT Converts X in units XUNITS to Y in units YUNITS.
HYPOT Computesa2 + b2 without underflow or overflow.
MP_SETUP Initializes or finalizes MPI.