Developer Reference for Intel® oneAPI Math Kernel Library for Fortran

ID 766686
Date 11/07/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

v?Round

Computes a value rounded to the nearest integer for each vector element.

Syntax

call vsround( n, a, y )

call vsroundi(n, a, inca, y, incy)

call vmsround( n, a, y, mode )

call vmsroundi(n, a, inca, y, incy, mode)

call vdround( n, a, y )

call vdroundi(n, a, inca, y, incy)

call vmdround( n, a, y, mode )

call vmdroundi(n, a, inca, y, incy, mode)

Include Files

  • mkl_vml.f90

Input Parameters

Name

Type

Description

n

INTEGER, INTENT(IN)

Specifies the number of elements to be calculated.

a

DOUBLE PRECISION for vdround, vmdround

REAL, INTENT(IN) for vsround, vmsround

DOUBLE PRECISION, INTENT(IN) for vdround, vmdround

Array that specifies the input vector a.

inca, incy

INTEGER, INTENT(IN)

Specifies increments for the elements of a and y.

mode

INTEGER(KIND=8), INTENT(IN)

Overrides global VM mode setting for this function call. See vmlSetMode for possible values and their description.

Output Parameters

Name

Type

Description

y

DOUBLE PRECISION for vdround, vmdround

REAL, INTENT(OUT) for vsround, vmsround

DOUBLE PRECISION, INTENT(OUT) for vdround, vmdround

Array that specifies the output vector y.

Description

The function computes a value rounded to the nearest integer for each vector element. Input elements that are halfway between two consecutive integers are always rounded away from zero regardless of the rounding mode.

Special Values for Real Function v?Round(x)
Argument Result Exception
+0 +0  
-0 -0  
+ +  
- -  
SNAN QNAN INVALID
QNAN QNAN