p?scal
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(
by the scalar x
)a
: sub(x) = a*sub(x),
where if , and if .
sub(
denotes x
)X
(ix
, jx
:jx
+n
-1)incx
=m_x
X
(ix
: ix
+n
-1, jx
)incx
= 1Input Parameters
- n
- (global) The length of distributed vectorsub(,x)n≥0.
- a
- (global) andpcsscalSpecifies the scalara.
- x
- (local)Array, size(.jx-1)*m_x+ix+(n-1)*abs(incx))This array contains the entries of the distributed vectorsub(.x)
- ix,jx
- (global) The row and column indices in the distributed matrixXindicating the first row and the first column of the submatrixsub(, respectively.X)
- descx
- (global and local) array of dimension 9. The array descriptor of the distributed matrixX.
- incx
- (global) Specifies the increment for the elements ofsub(. Only two values are supported, namely 1 andx)m_x.incxmust not be zero.
Output Parameters
- x
- Overwritten by the updated distributed vectorsub(x)