hide long namesshow long names
hide short namesshow short names
Integer type:  int32  int64  nag_int  show int32  show int32  show int64  show int64  show nag_int  show nag_int

PDF version (NAG web site, 64-bit version, 64-bit version)
Chapter Contents
Chapter Introduction
NAG Toolbox

NAG Toolbox: nag_blast_daxpby (f16ec)

Purpose

nag_blast_daxpby (f16ec) computes the sum of two scaled vectors, for real vectors and scalars.

Syntax

[y] = f16ec(n, alpha, x, incx, beta, y, incy)
[y] = nag_blast_daxpby(n, alpha, x, incx, beta, y, incy)

Description

nag_blast_daxpby (f16ec) performs the operation
yα x + β y
yα x+β y
where xx and yy are nn-element real vectors, and αα and ββ real scalars. If nn is less than or equal to zero, or if αα is equal to zero and ββ is equal to 11, this function returns immediately.

References

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

Parameters

Compulsory Input Parameters

1:     n – int64int32nag_int scalar
nn, the number of elements in xx and yy.
2:     alpha – double scalar
The scalar αα.
3:     x(1 + (n1) × |incx|1+(n-1)×|incx|) – double array
The nn-element vector xx.
If incx > 0incx>0, xixi must be stored in x(1 + (i1) × incx)x1+(i-1)×incx, for i = 1,2,,ni=1,2,,n.
If incx < 0incx<0, xixi must be stored in x(1(ni) × incx)x1-(n-i)×incx, for i = 1,2,,ni=1,2,,n.
Intermediate elements of x are not referenced.
4:     incx – int64int32nag_int scalar
The increment in the subscripts of x between successive elements of xx.
Constraint: incx0incx0.
5:     beta – double scalar
The scalar ββ.
6:     y(1 + (n1) × |incy|1+(n-1)×|incy|) – double array
The nn-element vector yy.
If incy > 0incy>0, yiyi must be stored in y(1 + (i1) × incy)y1+(i-1)×incy, for i = 1,2,,ni=1,2,,n.
If incy < 0incy<0, yiyi must be stored in y(1(ni) × incy)y1-(n-i)×incy, for i = 1,2,,ni=1,2,,n.
Intermediate elements of y are not referenced.
7:     incy – int64int32nag_int scalar
The increment in the subscripts of y between successive elements of yy.
Constraint: incy0incy0.

Optional Input Parameters

None.

Input Parameters Omitted from the MATLAB Interface

None.

Output Parameters

1:     y(1 + (n1) × |incy|1+(n-1)×|incy|) – double array
The updated vector yy stored in the array elements used to supply the original vector yy.
Intermediate elements of y are unchanged.

Error Indicators and Warnings

  ifail = ifail=
Constraint: incx0incx0.
Constraint: incy0incy0.
Constraint: n0n0.

Accuracy

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

Further Comments

None.

Example

function nag_blast_daxpby_example
n = int64(5);
alpha = 3;
x = [-4; 2.1; 3.7; 4.5; -6];
incx = int64(1);
beta = -1;
y = [-3; -2.4; 6.4; -5; -5.1];
incy = int64(1);
[y] = nag_blast_daxpby(n, alpha, x, incx, beta, y, incy)
 

y =

   -9.0000
    8.7000
    4.7000
   18.5000
  -12.9000


function f16ec_example
n = int64(5);
alpha = 3;
x = [-4; 2.1; 3.7; 4.5; -6];
incx = int64(1);
beta = -1;
y = [-3; -2.4; 6.4; -5; -5.1];
incy = int64(1);
[y] = f16ec(n, alpha, x, incx, beta, y, incy)
 

y =

   -9.0000
    8.7000
    4.7000
   18.5000
  -12.9000



PDF version (NAG web site, 64-bit version, 64-bit version)
Chapter Contents
Chapter Introduction
NAG Toolbox

© The Numerical Algorithms Group Ltd, Oxford, UK. 2009–2013