LAPACK  3.8.0
LAPACK: Linear Algebra PACKage
sla_wwaddw.f
Go to the documentation of this file.
1 *> \brief \b SLA_WWADDW adds a vector into a doubled-single vector.
2 *
3 * =========== DOCUMENTATION ===========
4 *
5 * Online html documentation available at
6 * http://www.netlib.org/lapack/explore-html/
7 *
8 *> \htmlonly
9 *> Download SLA_WWADDW + dependencies
10 *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/sla_wwaddw.f">
11 *> [TGZ]</a>
12 *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/sla_wwaddw.f">
13 *> [ZIP]</a>
14 *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/sla_wwaddw.f">
15 *> [TXT]</a>
16 *> \endhtmlonly
17 *
18 * Definition:
19 * ===========
20 *
21 * SUBROUTINE SLA_WWADDW( N, X, Y, W )
22 *
23 * .. Scalar Arguments ..
24 * INTEGER N
25 * ..
26 * .. Array Arguments ..
27 * REAL X( * ), Y( * ), W( * )
28 * ..
29 *
30 *
31 *> \par Purpose:
32 * =============
33 *>
34 *> \verbatim
35 *>
36 *> SLA_WWADDW adds a vector W into a doubled-single vector (X, Y).
37 *>
38 *> This works for all extant IBM's hex and binary floating point
39 *> arithmetics, but not for decimal.
40 *> \endverbatim
41 *
42 * Arguments:
43 * ==========
44 *
45 *> \param[in] N
46 *> \verbatim
47 *> N is INTEGER
48 *> The length of vectors X, Y, and W.
49 *> \endverbatim
50 *>
51 *> \param[in,out] X
52 *> \verbatim
53 *> X is REAL array, dimension (N)
54 *> The first part of the doubled-single accumulation vector.
55 *> \endverbatim
56 *>
57 *> \param[in,out] Y
58 *> \verbatim
59 *> Y is REAL array, dimension (N)
60 *> The second part of the doubled-single accumulation vector.
61 *> \endverbatim
62 *>
63 *> \param[in] W
64 *> \verbatim
65 *> W is REAL array, dimension (N)
66 *> The vector to be added.
67 *> \endverbatim
68 *
69 * Authors:
70 * ========
71 *
72 *> \author Univ. of Tennessee
73 *> \author Univ. of California Berkeley
74 *> \author Univ. of Colorado Denver
75 *> \author NAG Ltd.
76 *
77 *> \date December 2016
78 *
79 *> \ingroup realOTHERcomputational
80 *
81 * =====================================================================
82  SUBROUTINE sla_wwaddw( N, X, Y, W )
83 *
84 * -- LAPACK computational routine (version 3.7.0) --
85 * -- LAPACK is a software package provided by Univ. of Tennessee, --
86 * -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
87 * December 2016
88 *
89 * .. Scalar Arguments ..
90  INTEGER N
91 * ..
92 * .. Array Arguments ..
93  REAL X( * ), Y( * ), W( * )
94 * ..
95 *
96 * =====================================================================
97 *
98 * .. Local Scalars ..
99  REAL S
100  INTEGER I
101 * ..
102 * .. Executable Statements ..
103 *
104  DO 10 i = 1, n
105  s = x(i) + w(i)
106  s = (s + s) - s
107  y(i) = ((x(i) - s) + w(i)) + y(i)
108  x(i) = s
109  10 CONTINUE
110  RETURN
111  END
subroutine sla_wwaddw(N, X, Y, W)
SLA_WWADDW adds a vector into a doubled-single vector.
Definition: sla_wwaddw.f:83