Intel® oneAPI Math Kernel Library Developer Reference - Fortran

v?Sin

Computes sine of vector elements.

Syntax

call vssin( n, a, y )

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

call vmssin( n, a, y, mode )

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

call vdsin( n, a, y )

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

call vmdsin( n, a, y, mode )

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

call vcsin( n, a, y )

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

call vmcsin( n, a, y, mode )

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

call vzsin( n, a, y )

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

call vmzsin( n, a, y, mode )

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

Include Files

Input Parameters

Name

Type

Description

n

INTEGER, INTENT(IN)

Specifies the number of elements to be calculated.

a

DOUBLE PRECISION for vdsin, vmdsin

COMPLEX for vcsin, vmcsin

DOUBLE PRECISION for vzsin, vmzsin

REAL, INTENT(IN) for vssin, vmssin

DOUBLE PRECISION, INTENT(IN) for vdsin, vmdsin

COMPLEX, INTENT(IN) for vcsin, vmcsin

DOUBLE PRECISION, INTENT(IN) for vzsin, vmzsin

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 vdsin, vmdsin

COMPLEX for vcsin, vmcsin

DOUBLE PRECISION for vzsin, vmzsin

REAL, INTENT(OUT) for vssin, vmssin

DOUBLE PRECISION, INTENT(OUT) for vdsin, vmdsin

COMPLEX, INTENT(OUT) for vcsin, vmcsin

DOUBLE PRECISION, INTENT(OUT) for vzsin, vmzsin

Array that specifies the output vector y.

Description

The function computes sine of vector elements.

Note that arguments abs(a[i]) ≤ 213 and abs(a[i]) ≤ 216 for single and double precisions respectively are called fast computational path. These are trigonometric function arguments for which VM provides the best possible performance. Avoid arguments that do not belong to the fast computational path in the VM High Accuracy (HA) and Low Accuracy (LA) functions. Alternatively, you can use VM Enhanced Performance (EP) functions that are fast on the entire function domain. However, these functions provide less accuracy.

Special Values for Real Function v?Sin(x)
Argument Result VM Error Status Exception
+0 +0    
-0 -0    
+ QNAN VML_STATUS_ERRDOM INVALID
- QNAN VML_STATUS_ERRDOM INVALID
QNAN QNAN    
SNAN QNAN   INVALID

Specifications for special values of the complex functions are defined according to the following formula

Sin(z) = -i*Sinh(i*z).

Optimization Notice

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804

This notice covers the following instruction sets: SSE2, SSE4.2, AVX2, AVX-512.