Developer Reference for Intel® oneAPI Math Kernel Library for C
p?scal
Computes a product of a distributed vector by a scalar.
Syntax
void psscal ( const MKL_INT*n , const float*a , float*x , const MKL_INT*ix , const MKL_INT*jx , const MKL_INT*descx , const MKL_INT*incx );
void pdscal ( const MKL_INT*n , const double*a , double*x , const MKL_INT*ix , const MKL_INT*jx , const MKL_INT*descx , const MKL_INT*incx );
void pcscal ( const MKL_INT*n , const MKL_Complex8*a , MKL_Complex8*x , const MKL_INT*ix , const MKL_INT*jx , const MKL_INT*descx , const MKL_INT*incx );
void pzscal ( const MKL_INT*n , const MKL_Complex16*a , MKL_Complex16*x , const MKL_INT*ix , const MKL_INT*jx , const MKL_INT*descx , const MKL_INT*incx );
void pcsscal ( const MKL_INT*n , const float*a , MKL_Complex8*x , const MKL_INT*ix , const MKL_INT*jx , const MKL_INT*descx , const MKL_INT*incx );
void pzdscal ( const MKL_INT*n , const double*a , MKL_Complex16*x , const MKL_INT*ix , const MKL_INT*jx , const MKL_INT*descx , const MKL_INT*incx );
Include Files
mkl_pblas.h
Description
The p?scal routines multiplies a n -element distributed vector sub(x) by the scalar a : sub( x ) = a *sub( x ),
where sub(x) denotes X(ix, jx:jx+n-1) if incx=m_x , and X(ix: ix+n-1, jx) if incx= 1 .
Input Parameters
n
(global) The length of distributed vector sub(x) , n ≥ 0.
a
(global) and pcsscal
DOUBLE PRECISION for pdscal and pzdscal COMPLEX for pcscal DOUBLE COMPLEX for pzscal Specifies the scalar a .
x
(local)
DOUBLE PRECISION for pdscal COMPLEX for pcscal and pcsscal DOUBLE COMPLEX for pzscal and pzdscal Array, size (jx-1)*m_x + ix+(n-1)*abs(incx)) . This array contains the entries of the distributed vector sub(x) .
ix , jx
(global) The row and column indices in the distributed matrix X indicating the first row and the first column of the submatrix sub(X) , respectively.
descx
(global and local) array of dimension 9. The array descriptor of the distributed matrix X .
incx
(global) Specifies the increment for the elements of sub(x) . Only two values are supported, namely 1 and m_x . incx must not be zero.
Output Parameters
- x
-
Overwritten by the updated distributed vector sub(x)