HP MLIB User's Guide Vol. 2 7th Ed.

Chapter 12 VMATH 793
Overview
12 VMATH
Overview
VMATH, a component of HP MLIB, is a library of vector math routines
corresponding to many of the widely used scalar math routines available with
C, C++, and Fortran90. For example, the VMATH Fortran call vsexp(n, a, y),
where a and y are arrays of at least n real elements, computes the vector of
elements y(i)=exp(a(i)), for i=1 through n.
VMATH is intended for computationally intensive mathematical applications
amenable to a vector programming style.
VMATH provides all of the vector math and pack/unpack (gather/scatter)
interfaces and some of the service interfaces available in Intel’s MKL Version
7.0 Vector Math Library (VML). This functionality includes unit stride, single-
and double-precision versions of the following:
Arithmetic : Inv, Div
Exponential : Exp
Logarithmic : Ln, Log10
Trigonometric : Sin, Cos, SinCos, Tan, Asin, Acos, Atan, Atan2
Hyperbolic : Sinh, Cosh, Tanh, Asinh, Acosh, Atanh
Power : Pow, Powx, Sqrt, Cbrt, InvSqrt, InvCbrt
Error : Erf, Erfc
These routines come with both Fortran and C interfaces.
VMATH also provides the vector math interfaces in Compaq’s Extended Math
Library (CXML): vexp, vlog, vsin, vcos, vsqrt, vrecip, vcos_sin. These are double
precision routines that support variable strides. Their interfaces are designed
for Fortran but callable from C as well.
VMATH provides two libraries: VMATH, whose interface uses 4-byte integers,
and VMATH8, whose interface uses 8-byte integers and is otherwise equivalent
to VMATH. For details, refer to the VMATH8 sections of the subprogram
specifications that follow.