|
| 1 | +*> \brief \b DCOMBSSQ adds two scaled sum of squares quantities. |
| 2 | +* |
| 3 | +* =========== DOCUMENTATION =========== |
| 4 | +* |
| 5 | +* Online html documentation available at |
| 6 | +* http://www.netlib.org/lapack/explore-html/ |
| 7 | +* |
| 8 | +* |
| 9 | +* Definition: |
| 10 | +* =========== |
| 11 | +* |
| 12 | +* SUBROUTINE DCOMBSSQ( V1, V2 ) |
| 13 | +* |
| 14 | +* .. Array Arguments .. |
| 15 | +* DOUBLE PRECISION V1( 2 ), V2( 2 ) |
| 16 | +* .. |
| 17 | +* |
| 18 | +* |
| 19 | +*> \par Purpose: |
| 20 | +* ============= |
| 21 | +*> |
| 22 | +*> \verbatim |
| 23 | +*> |
| 24 | +*> DCOMBSSQ adds two scaled sum of squares quantities, V1 := V1 + V2. |
| 25 | +*> That is, |
| 26 | +*> |
| 27 | +*> V1_scale**2 * V1_sumsq := V1_scale**2 * V1_sumsq |
| 28 | +*> + V2_scale**2 * V2_sumsq |
| 29 | +*> \endverbatim |
| 30 | +* |
| 31 | +* Arguments: |
| 32 | +* ========== |
| 33 | +* |
| 34 | +*> \param[in,out] V1 |
| 35 | +*> \verbatim |
| 36 | +*> V1 is DOUBLE PRECISION array, dimension (2). |
| 37 | +*> The first scaled sum. |
| 38 | +*> V1(1) = V1_scale, V1(2) = V1_sumsq. |
| 39 | +*> \endverbatim |
| 40 | +*> |
| 41 | +*> \param[in] V2 |
| 42 | +*> \verbatim |
| 43 | +*> V2 is DOUBLE PRECISION array, dimension (2). |
| 44 | +*> The second scaled sum. |
| 45 | +*> V2(1) = V2_scale, V2(2) = V2_sumsq. |
| 46 | +*> \endverbatim |
| 47 | +* |
| 48 | +* Authors: |
| 49 | +* ======== |
| 50 | +* |
| 51 | +*> \author Univ. of Tennessee |
| 52 | +*> \author Univ. of California Berkeley |
| 53 | +*> \author Univ. of Colorado Denver |
| 54 | +*> \author NAG Ltd. |
| 55 | +* |
| 56 | +*> \date November 2018 |
| 57 | +* |
| 58 | +*> \ingroup OTHERauxiliary |
| 59 | +* |
| 60 | +* ===================================================================== |
| 61 | + SUBROUTINE DCOMBSSQ( V1, V2 ) |
| 62 | +* |
| 63 | +* -- LAPACK auxiliary routine (version 3.7.0) -- |
| 64 | +* -- LAPACK is a software package provided by Univ. of Tennessee, -- |
| 65 | +* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- |
| 66 | +* November 2018 |
| 67 | +* |
| 68 | +* .. Array Arguments .. |
| 69 | + DOUBLE PRECISION V1( 2 ), V2( 2 ) |
| 70 | +* .. |
| 71 | +* |
| 72 | +* ===================================================================== |
| 73 | +* |
| 74 | +* .. Parameters .. |
| 75 | + DOUBLE PRECISION ZERO |
| 76 | + PARAMETER ( ZERO = 0.0D+0 ) |
| 77 | +* .. |
| 78 | +* .. Executable Statements .. |
| 79 | +* |
| 80 | + IF( V1( 1 ).GE.V2( 1 ) ) THEN |
| 81 | + IF( V1( 1 ).NE.ZERO ) THEN |
| 82 | + V1( 2 ) = V1( 2 ) + ( V2( 1 ) / V1( 1 ) )**2 * V2( 2 ) |
| 83 | + ELSE |
| 84 | + V1( 2 ) = V1( 2 ) + V2( 2 ) |
| 85 | + END IF |
| 86 | + ELSE |
| 87 | + V1( 2 ) = V2( 2 ) + ( V1( 1 ) / V2( 1 ) )**2 * V1( 2 ) |
| 88 | + V1( 1 ) = V2( 1 ) |
| 89 | + END IF |
| 90 | + RETURN |
| 91 | +* |
| 92 | +* End of DCOMBSSQ |
| 93 | +* |
| 94 | + END |
0 commit comments