## psb_min -- Global minimum

    call psb_min(icontxt, dat, root)

This subroutine implements a minimum value reduction operation based on the underlying communication library.

Type:
  Synchronous.
On Entry
icontxt
  the communication context identifying the virtual parallel machine.
  Scope: global.
  Type: required.
  Intent: in.
  Specified as: an integer variable.
dat
  The local contribution to the global minimum.
  Scope: local.
  Type: required.
  Intent: inout.
  Specified as: an integer or real variable, which may be a scalar, or a rank 1 or 2 array. Type, kind, rank and size must agree on all processes.
root
  Process to hold the final value, or to make it available on all processes.
  Scope: global.
  Type: optional.
  Intent: in.
  Specified as: an integer value , default -1.

On Return
dat
  On destination process(es), the result of the minimum operation.
  Scope: global.
  Type: required.
  Intent: inout.
  Specified as: an integer or real variable, which may be a scalar, or a rank 1 or 2 array.
  Type, kind, rank and size must agree on all processes.

Notes

1. The `dat` argument is both input and output, and its value may be changed even on processes different from the final result destination.
2. The `dat` argument may also be a long integer scalar.