NAG CL Interfacef16elc (dsum)

Settings help

CL Name Style:

1Purpose

f16elc sums the elements of a real vector.

2Specification

 #include
 double f16elc (Integer n, const double x[], Integer incx, NagError *fail)
The function may be called by the names: f16elc, nag_blast_dsum or nag_dsum.

3Description

f16elc returns the sum
 $x1 + x2 + ⋯ + xn$
of the elements of an $n$-element real vector $x$.
If ${\mathbf{n}}=0$ on entry, f16elc returns the value $0$.

4References

Basic Linear Algebra Subprograms Technical (BLAST) Forum (2001) Basic Linear Algebra Subprograms Technical (BLAST) Forum Standard University of Tennessee, Knoxville, Tennessee https://www.netlib.org/blas/blast-forum/blas-report.pdf

5Arguments

1: $\mathbf{n}$Integer Input
On entry: $n$, the number of elements in $x$.
Constraint: ${\mathbf{n}}\ge 0$.
2: $\mathbf{x}\left[\mathit{dim}\right]$const double Input
Note: the dimension, dim, of the array x must be at least $\mathrm{max}\phantom{\rule{0.125em}{0ex}}\left(1,1+\left({\mathbf{n}}-1\right)×|{\mathbf{incx}}|\right)$.
On entry: the $n$-element vector $x$.
If ${\mathbf{incx}}>0$, ${x}_{\mathit{i}}$ must be stored in ${\mathbf{x}}\left[\left(\mathit{i}-1\right)×{\mathbf{incx}}\right]$, for $\mathit{i}=1,2,\dots ,{\mathbf{n}}$.
If ${\mathbf{incx}}<0$, ${x}_{\mathit{i}}$ must be stored in ${\mathbf{x}}\left[\left({\mathbf{n}}-\mathit{i}\right)×|{\mathbf{incx}}|\right]$, for $\mathit{i}=1,2,\dots ,{\mathbf{n}}$.
Intermediate elements of x are not referenced. If ${\mathbf{n}}=0$, x is not referenced and may be NULL.
3: $\mathbf{incx}$Integer Input
On entry: the increment in the subscripts of x between successive elements of $x$.
Constraint: ${\mathbf{incx}}\ne 0$.
4: $\mathbf{fail}$NagError * Input/Output
The NAG error argument (see Section 7 in the Introduction to the NAG Library CL Interface).

6Error Indicators and Warnings

NE_ALLOC_FAIL
Dynamic memory allocation failed.
See Section 3.1.2 in the Introduction to the NAG Library CL Interface for further information.
On entry, argument $⟨\mathit{\text{value}}⟩$ had an illegal value.
NE_INT
On entry, ${\mathbf{incx}}=⟨\mathit{\text{value}}⟩$.
Constraint: ${\mathbf{incx}}\ne 0$.
On entry, ${\mathbf{n}}=⟨\mathit{\text{value}}⟩$.
Constraint: ${\mathbf{n}}\ge 0$.
NE_NO_LICENCE
Your licence key may have expired or may not have been installed correctly.
See Section 8 in the Introduction to the NAG Library CL Interface for further information.

7Accuracy

The BLAS standard requires accurate implementations which avoid unnecessary over/underflow (see Section 2.7 of Basic Linear Algebra Subprograms Technical (BLAST) Forum (2001)).

8Parallelism and Performance

f16elc is not threaded in any implementation.

None.

10Example

This example computes the sum of the elements of
 $x = (1.1,10.2,11.5,-2.7,9.2) T .$

10.1Program Text

Program Text (f16elce.c)

10.2Program Data

Program Data (f16elce.d)

10.3Program Results

Program Results (f16elce.r)