# p?labad

Returns the square root of the underflow and overflow thresholds if the exponent-range is very large.

## Syntax

call pslabad(ictxt, small, large)

call pdlabad(ictxt, small, large)

## Description

This routine takes as input the values computed by p?lamch for underflow and overflow, and returns the square root of each of these values if the log of large is sufficiently large. This subroutine is intended to identify machines with a large exponent range, such as the Crays, and redefine the underflow and overflow limits to be the square roots of the values computed by p?lamch. This subroutine is needed because p?lamch does not compensate for poor arithmetic in the upper half of the exponent range, as is found on a Cray.

In addition, this routine performs a global minimization and maximization on these values, to support heterogeneous computing networks.

## Input Parameters

ictxt

  (global) INTEGER.

  The BLACS context handle in which the computation takes place.

small

  (local).

  REAL PRECISION for pslabad.

  DOUBLE PRECISION for pdlabad.

  On entry, the underflow threshold as computed by p?lamch.

large

  (local).

  REAL PRECISION for pslabad.

  DOUBLE PRECISION for pdlabad.

  On entry, the overflow threshold as computed by p?lamch.

## Output Parameters

small

  (local).

  On exit, if log10(large) is sufficiently large, the square root of small, otherwise unchanged.

large

  (local).

  On exit, if log10(large) is sufficiently large, the square root of large, otherwise unchanged.

Parent topic: Utility Functions and Routines