STYLE: Remove trailing whitespace in Fortran files
[platform/upstream/lapack.git] / SRC / zla_wwaddw.f
1 *> \brief \b ZLA_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 ZLA_WWADDW + dependencies
10 *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/zla_wwaddw.f">
11 *> [TGZ]</a>
12 *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/zla_wwaddw.f">
13 *> [ZIP]</a>
14 *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/zla_wwaddw.f">
15 *> [TXT]</a>
16 *> \endhtmlonly
17 *
18 *  Definition:
19 *  ===========
20 *
21 *       SUBROUTINE ZLA_WWADDW( N, X, Y, W )
22 *
23 *       .. Scalar Arguments ..
24 *       INTEGER            N
25 *       ..
26 *       .. Array Arguments ..
27 *       COMPLEX*16         X( * ), Y( * ), W( * )
28 *       ..
29 *
30 *
31 *> \par Purpose:
32 *  =============
33 *>
34 *> \verbatim
35 *>
36 *>    ZLA_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 COMPLEX*16 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 COMPLEX*16 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 COMPLEX*16 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 September 2012
78 *
79 *> \ingroup complex16OTHERcomputational
80 *
81 *  =====================================================================
82       SUBROUTINE ZLA_WWADDW( N, X, Y, W )
83 *
84 *  -- LAPACK computational routine (version 3.4.2) --
85 *  -- LAPACK is a software package provided by Univ. of Tennessee,    --
86 *  -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
87 *     September 2012
88 *
89 *     .. Scalar Arguments ..
90       INTEGER            N
91 *     ..
92 *     .. Array Arguments ..
93       COMPLEX*16         X( * ), Y( * ), W( * )
94 *     ..
95 *
96 *  =====================================================================
97 *
98 *     .. Local Scalars ..
99       COMPLEX*16         S
100       INTEGER            I
101 *     ..
102 *     .. Executable Statements ..
103       DO 10 I = 1, N
104         S = X(I) + W(I)
105         S = (S + S) - S
106         Y(I) = ((X(I) - S) + W(I)) + Y(I)
107         X(I) = S
108    10 CONTINUE
109       RETURN
110       END