NAG FL Interface
f06erf (ddoti)

1 Purpose

f06erf computes the scalar product of a sparse real vector, stored in compressed form, with a real vector.

2 Specification

Fortran Interface
Function f06erf ( nz, x, indx, y)
Real (Kind=nag_wp) :: f06erf
Integer, Intent (In) :: nz, indx(*)
Real (Kind=nag_wp), Intent (In) :: x(*), y(*)
C Header Interface
#include <nag.h>
double  f06erf_ (const Integer *nz, const double x[], const Integer indx[], const double y[])
The routine may be called by the names f06erf, nagf_blas_ddoti or its BLAS name ddoti.

3 Description

f06erf returns, via the function name, the value of the scalar product
xTy = x1 × yindx1 + x2 × yindy2 + + xnz × yindxnz  
where x is a sparse real vector, stored in compressed form and y is a real vector in full storage format.

4 References

Dodson D S, Grimes R G and Lewis J G (1991) Sparse extensions to the Fortran basic linear algebra subprograms ACM Trans. Math. Software 17 253–263

5 Arguments

1: nz Integer Input
On entry: the number of nonzeros in the sparse vector x.
2: x* Real (Kind=nag_wp) array Input
Note: the dimension of the array x must be at least max1,nz .
On entry: the nonzero elements of the sparse vector x.
3: indx* Integer array Input
Note: the dimension of the array indx must be at least max1,nz .
On entry: indxi must contain the index of xi in the sparse vector x, for i=1,2,,nz.
4: y* Real (Kind=nag_wp) array Input
Note: the dimension of the array y must be at least maxkindxk .
On entry: the vector y. Only elements corresponding to indices in indx are accessed.

6 Error Indicators and Warnings

None.

7 Accuracy

Not applicable.

8 Parallelism and Performance

f06erf is not threaded in any implementation.

9 Further Comments

None.

10 Example

None.