1: SUBROUTINE DLARFX( SIDE, M, N, V, TAU, C, LDC, WORK )
2: IMPLICIT NONE
3: *
4: * -- LAPACK auxiliary routine (version 3.2) --
5: * -- LAPACK is a software package provided by Univ. of Tennessee, --
6: * -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
7: * November 2006
8: *
9: * .. Scalar Arguments ..
10: CHARACTER SIDE
11: INTEGER LDC, M, N
12: DOUBLE PRECISION TAU
13: * ..
14: * .. Array Arguments ..
15: DOUBLE PRECISION C( LDC, * ), V( * ), WORK( * )
16: * ..
17: *
18: * Purpose
19: * =======
20: *
21: * DLARFX applies a real elementary reflector H to a real m by n
22: * matrix C, from either the left or the right. H is represented in the
23: * form
24: *
25: * H = I - tau * v * v'
26: *
27: * where tau is a real scalar and v is a real vector.
28: *
29: * If tau = 0, then H is taken to be the unit matrix
30: *
31: * This version uses inline code if H has order < 11.
32: *
33: * Arguments
34: * =========
35: *
36: * SIDE (input) CHARACTER*1
37: * = 'L': form H * C
38: * = 'R': form C * H
39: *
40: * M (input) INTEGER
41: * The number of rows of the matrix C.
42: *
43: * N (input) INTEGER
44: * The number of columns of the matrix C.
45: *
46: * V (input) DOUBLE PRECISION array, dimension (M) if SIDE = 'L'
47: * or (N) if SIDE = 'R'
48: * The vector v in the representation of H.
49: *
50: * TAU (input) DOUBLE PRECISION
51: * The value tau in the representation of H.
52: *
53: * C (input/output) DOUBLE PRECISION array, dimension (LDC,N)
54: * On entry, the m by n matrix C.
55: * On exit, C is overwritten by the matrix H * C if SIDE = 'L',
56: * or C * H if SIDE = 'R'.
57: *
58: * LDC (input) INTEGER
59: * The leading dimension of the array C. LDA >= (1,M).
60: *
61: * WORK (workspace) DOUBLE PRECISION array, dimension
62: * (N) if SIDE = 'L'
63: * or (M) if SIDE = 'R'
64: * WORK is not referenced if H has order < 11.
65: *
66: * =====================================================================
67: *
68: * .. Parameters ..
69: DOUBLE PRECISION ZERO, ONE
70: PARAMETER ( ZERO = 0.0D+0, ONE = 1.0D+0 )
71: * ..
72: * .. Local Scalars ..
73: INTEGER J
74: DOUBLE PRECISION SUM, T1, T10, T2, T3, T4, T5, T6, T7, T8, T9,
75: $ V1, V10, V2, V3, V4, V5, V6, V7, V8, V9
76: * ..
77: * .. External Functions ..
78: LOGICAL LSAME
79: EXTERNAL LSAME
80: * ..
81: * .. External Subroutines ..
82: EXTERNAL DLARF
83: * ..
84: * .. Executable Statements ..
85: *
86: IF( TAU.EQ.ZERO )
87: $ RETURN
88: IF( LSAME( SIDE, 'L' ) ) THEN
89: *
90: * Form H * C, where H has order m.
91: *
92: GO TO ( 10, 30, 50, 70, 90, 110, 130, 150,
93: $ 170, 190 )M
94: *
95: * Code for general M
96: *
97: CALL DLARF( SIDE, M, N, V, 1, TAU, C, LDC, WORK )
98: GO TO 410
99: 10 CONTINUE
100: *
101: * Special code for 1 x 1 Householder
102: *
103: T1 = ONE - TAU*V( 1 )*V( 1 )
104: DO 20 J = 1, N
105: C( 1, J ) = T1*C( 1, J )
106: 20 CONTINUE
107: GO TO 410
108: 30 CONTINUE
109: *
110: * Special code for 2 x 2 Householder
111: *
112: V1 = V( 1 )
113: T1 = TAU*V1
114: V2 = V( 2 )
115: T2 = TAU*V2
116: DO 40 J = 1, N
117: SUM = V1*C( 1, J ) + V2*C( 2, J )
118: C( 1, J ) = C( 1, J ) - SUM*T1
119: C( 2, J ) = C( 2, J ) - SUM*T2
120: 40 CONTINUE
121: GO TO 410
122: 50 CONTINUE
123: *
124: * Special code for 3 x 3 Householder
125: *
126: V1 = V( 1 )
127: T1 = TAU*V1
128: V2 = V( 2 )
129: T2 = TAU*V2
130: V3 = V( 3 )
131: T3 = TAU*V3
132: DO 60 J = 1, N
133: SUM = V1*C( 1, J ) + V2*C( 2, J ) + V3*C( 3, J )
134: C( 1, J ) = C( 1, J ) - SUM*T1
135: C( 2, J ) = C( 2, J ) - SUM*T2
136: C( 3, J ) = C( 3, J ) - SUM*T3
137: 60 CONTINUE
138: GO TO 410
139: 70 CONTINUE
140: *
141: * Special code for 4 x 4 Householder
142: *
143: V1 = V( 1 )
144: T1 = TAU*V1
145: V2 = V( 2 )
146: T2 = TAU*V2
147: V3 = V( 3 )
148: T3 = TAU*V3
149: V4 = V( 4 )
150: T4 = TAU*V4
151: DO 80 J = 1, N
152: SUM = V1*C( 1, J ) + V2*C( 2, J ) + V3*C( 3, J ) +
153: $ V4*C( 4, J )
154: C( 1, J ) = C( 1, J ) - SUM*T1
155: C( 2, J ) = C( 2, J ) - SUM*T2
156: C( 3, J ) = C( 3, J ) - SUM*T3
157: C( 4, J ) = C( 4, J ) - SUM*T4
158: 80 CONTINUE
159: GO TO 410
160: 90 CONTINUE
161: *
162: * Special code for 5 x 5 Householder
163: *
164: V1 = V( 1 )
165: T1 = TAU*V1
166: V2 = V( 2 )
167: T2 = TAU*V2
168: V3 = V( 3 )
169: T3 = TAU*V3
170: V4 = V( 4 )
171: T4 = TAU*V4
172: V5 = V( 5 )
173: T5 = TAU*V5
174: DO 100 J = 1, N
175: SUM = V1*C( 1, J ) + V2*C( 2, J ) + V3*C( 3, J ) +
176: $ V4*C( 4, J ) + V5*C( 5, J )
177: C( 1, J ) = C( 1, J ) - SUM*T1
178: C( 2, J ) = C( 2, J ) - SUM*T2
179: C( 3, J ) = C( 3, J ) - SUM*T3
180: C( 4, J ) = C( 4, J ) - SUM*T4
181: C( 5, J ) = C( 5, J ) - SUM*T5
182: 100 CONTINUE
183: GO TO 410
184: 110 CONTINUE
185: *
186: * Special code for 6 x 6 Householder
187: *
188: V1 = V( 1 )
189: T1 = TAU*V1
190: V2 = V( 2 )
191: T2 = TAU*V2
192: V3 = V( 3 )
193: T3 = TAU*V3
194: V4 = V( 4 )
195: T4 = TAU*V4
196: V5 = V( 5 )
197: T5 = TAU*V5
198: V6 = V( 6 )
199: T6 = TAU*V6
200: DO 120 J = 1, N
201: SUM = V1*C( 1, J ) + V2*C( 2, J ) + V3*C( 3, J ) +
202: $ V4*C( 4, J ) + V5*C( 5, J ) + V6*C( 6, J )
203: C( 1, J ) = C( 1, J ) - SUM*T1
204: C( 2, J ) = C( 2, J ) - SUM*T2
205: C( 3, J ) = C( 3, J ) - SUM*T3
206: C( 4, J ) = C( 4, J ) - SUM*T4
207: C( 5, J ) = C( 5, J ) - SUM*T5
208: C( 6, J ) = C( 6, J ) - SUM*T6
209: 120 CONTINUE
210: GO TO 410
211: 130 CONTINUE
212: *
213: * Special code for 7 x 7 Householder
214: *
215: V1 = V( 1 )
216: T1 = TAU*V1
217: V2 = V( 2 )
218: T2 = TAU*V2
219: V3 = V( 3 )
220: T3 = TAU*V3
221: V4 = V( 4 )
222: T4 = TAU*V4
223: V5 = V( 5 )
224: T5 = TAU*V5
225: V6 = V( 6 )
226: T6 = TAU*V6
227: V7 = V( 7 )
228: T7 = TAU*V7
229: DO 140 J = 1, N
230: SUM = V1*C( 1, J ) + V2*C( 2, J ) + V3*C( 3, J ) +
231: $ V4*C( 4, J ) + V5*C( 5, J ) + V6*C( 6, J ) +
232: $ V7*C( 7, J )
233: C( 1, J ) = C( 1, J ) - SUM*T1
234: C( 2, J ) = C( 2, J ) - SUM*T2
235: C( 3, J ) = C( 3, J ) - SUM*T3
236: C( 4, J ) = C( 4, J ) - SUM*T4
237: C( 5, J ) = C( 5, J ) - SUM*T5
238: C( 6, J ) = C( 6, J ) - SUM*T6
239: C( 7, J ) = C( 7, J ) - SUM*T7
240: 140 CONTINUE
241: GO TO 410
242: 150 CONTINUE
243: *
244: * Special code for 8 x 8 Householder
245: *
246: V1 = V( 1 )
247: T1 = TAU*V1
248: V2 = V( 2 )
249: T2 = TAU*V2
250: V3 = V( 3 )
251: T3 = TAU*V3
252: V4 = V( 4 )
253: T4 = TAU*V4
254: V5 = V( 5 )
255: T5 = TAU*V5
256: V6 = V( 6 )
257: T6 = TAU*V6
258: V7 = V( 7 )
259: T7 = TAU*V7
260: V8 = V( 8 )
261: T8 = TAU*V8
262: DO 160 J = 1, N
263: SUM = V1*C( 1, J ) + V2*C( 2, J ) + V3*C( 3, J ) +
264: $ V4*C( 4, J ) + V5*C( 5, J ) + V6*C( 6, J ) +
265: $ V7*C( 7, J ) + V8*C( 8, J )
266: C( 1, J ) = C( 1, J ) - SUM*T1
267: C( 2, J ) = C( 2, J ) - SUM*T2
268: C( 3, J ) = C( 3, J ) - SUM*T3
269: C( 4, J ) = C( 4, J ) - SUM*T4
270: C( 5, J ) = C( 5, J ) - SUM*T5
271: C( 6, J ) = C( 6, J ) - SUM*T6
272: C( 7, J ) = C( 7, J ) - SUM*T7
273: C( 8, J ) = C( 8, J ) - SUM*T8
274: 160 CONTINUE
275: GO TO 410
276: 170 CONTINUE
277: *
278: * Special code for 9 x 9 Householder
279: *
280: V1 = V( 1 )
281: T1 = TAU*V1
282: V2 = V( 2 )
283: T2 = TAU*V2
284: V3 = V( 3 )
285: T3 = TAU*V3
286: V4 = V( 4 )
287: T4 = TAU*V4
288: V5 = V( 5 )
289: T5 = TAU*V5
290: V6 = V( 6 )
291: T6 = TAU*V6
292: V7 = V( 7 )
293: T7 = TAU*V7
294: V8 = V( 8 )
295: T8 = TAU*V8
296: V9 = V( 9 )
297: T9 = TAU*V9
298: DO 180 J = 1, N
299: SUM = V1*C( 1, J ) + V2*C( 2, J ) + V3*C( 3, J ) +
300: $ V4*C( 4, J ) + V5*C( 5, J ) + V6*C( 6, J ) +
301: $ V7*C( 7, J ) + V8*C( 8, J ) + V9*C( 9, J )
302: C( 1, J ) = C( 1, J ) - SUM*T1
303: C( 2, J ) = C( 2, J ) - SUM*T2
304: C( 3, J ) = C( 3, J ) - SUM*T3
305: C( 4, J ) = C( 4, J ) - SUM*T4
306: C( 5, J ) = C( 5, J ) - SUM*T5
307: C( 6, J ) = C( 6, J ) - SUM*T6
308: C( 7, J ) = C( 7, J ) - SUM*T7
309: C( 8, J ) = C( 8, J ) - SUM*T8
310: C( 9, J ) = C( 9, J ) - SUM*T9
311: 180 CONTINUE
312: GO TO 410
313: 190 CONTINUE
314: *
315: * Special code for 10 x 10 Householder
316: *
317: V1 = V( 1 )
318: T1 = TAU*V1
319: V2 = V( 2 )
320: T2 = TAU*V2
321: V3 = V( 3 )
322: T3 = TAU*V3
323: V4 = V( 4 )
324: T4 = TAU*V4
325: V5 = V( 5 )
326: T5 = TAU*V5
327: V6 = V( 6 )
328: T6 = TAU*V6
329: V7 = V( 7 )
330: T7 = TAU*V7
331: V8 = V( 8 )
332: T8 = TAU*V8
333: V9 = V( 9 )
334: T9 = TAU*V9
335: V10 = V( 10 )
336: T10 = TAU*V10
337: DO 200 J = 1, N
338: SUM = V1*C( 1, J ) + V2*C( 2, J ) + V3*C( 3, J ) +
339: $ V4*C( 4, J ) + V5*C( 5, J ) + V6*C( 6, J ) +
340: $ V7*C( 7, J ) + V8*C( 8, J ) + V9*C( 9, J ) +
341: $ V10*C( 10, J )
342: C( 1, J ) = C( 1, J ) - SUM*T1
343: C( 2, J ) = C( 2, J ) - SUM*T2
344: C( 3, J ) = C( 3, J ) - SUM*T3
345: C( 4, J ) = C( 4, J ) - SUM*T4
346: C( 5, J ) = C( 5, J ) - SUM*T5
347: C( 6, J ) = C( 6, J ) - SUM*T6
348: C( 7, J ) = C( 7, J ) - SUM*T7
349: C( 8, J ) = C( 8, J ) - SUM*T8
350: C( 9, J ) = C( 9, J ) - SUM*T9
351: C( 10, J ) = C( 10, J ) - SUM*T10
352: 200 CONTINUE
353: GO TO 410
354: ELSE
355: *
356: * Form C * H, where H has order n.
357: *
358: GO TO ( 210, 230, 250, 270, 290, 310, 330, 350,
359: $ 370, 390 )N
360: *
361: * Code for general N
362: *
363: CALL DLARF( SIDE, M, N, V, 1, TAU, C, LDC, WORK )
364: GO TO 410
365: 210 CONTINUE
366: *
367: * Special code for 1 x 1 Householder
368: *
369: T1 = ONE - TAU*V( 1 )*V( 1 )
370: DO 220 J = 1, M
371: C( J, 1 ) = T1*C( J, 1 )
372: 220 CONTINUE
373: GO TO 410
374: 230 CONTINUE
375: *
376: * Special code for 2 x 2 Householder
377: *
378: V1 = V( 1 )
379: T1 = TAU*V1
380: V2 = V( 2 )
381: T2 = TAU*V2
382: DO 240 J = 1, M
383: SUM = V1*C( J, 1 ) + V2*C( J, 2 )
384: C( J, 1 ) = C( J, 1 ) - SUM*T1
385: C( J, 2 ) = C( J, 2 ) - SUM*T2
386: 240 CONTINUE
387: GO TO 410
388: 250 CONTINUE
389: *
390: * Special code for 3 x 3 Householder
391: *
392: V1 = V( 1 )
393: T1 = TAU*V1
394: V2 = V( 2 )
395: T2 = TAU*V2
396: V3 = V( 3 )
397: T3 = TAU*V3
398: DO 260 J = 1, M
399: SUM = V1*C( J, 1 ) + V2*C( J, 2 ) + V3*C( J, 3 )
400: C( J, 1 ) = C( J, 1 ) - SUM*T1
401: C( J, 2 ) = C( J, 2 ) - SUM*T2
402: C( J, 3 ) = C( J, 3 ) - SUM*T3
403: 260 CONTINUE
404: GO TO 410
405: 270 CONTINUE
406: *
407: * Special code for 4 x 4 Householder
408: *
409: V1 = V( 1 )
410: T1 = TAU*V1
411: V2 = V( 2 )
412: T2 = TAU*V2
413: V3 = V( 3 )
414: T3 = TAU*V3
415: V4 = V( 4 )
416: T4 = TAU*V4
417: DO 280 J = 1, M
418: SUM = V1*C( J, 1 ) + V2*C( J, 2 ) + V3*C( J, 3 ) +
419: $ V4*C( J, 4 )
420: C( J, 1 ) = C( J, 1 ) - SUM*T1
421: C( J, 2 ) = C( J, 2 ) - SUM*T2
422: C( J, 3 ) = C( J, 3 ) - SUM*T3
423: C( J, 4 ) = C( J, 4 ) - SUM*T4
424: 280 CONTINUE
425: GO TO 410
426: 290 CONTINUE
427: *
428: * Special code for 5 x 5 Householder
429: *
430: V1 = V( 1 )
431: T1 = TAU*V1
432: V2 = V( 2 )
433: T2 = TAU*V2
434: V3 = V( 3 )
435: T3 = TAU*V3
436: V4 = V( 4 )
437: T4 = TAU*V4
438: V5 = V( 5 )
439: T5 = TAU*V5
440: DO 300 J = 1, M
441: SUM = V1*C( J, 1 ) + V2*C( J, 2 ) + V3*C( J, 3 ) +
442: $ V4*C( J, 4 ) + V5*C( J, 5 )
443: C( J, 1 ) = C( J, 1 ) - SUM*T1
444: C( J, 2 ) = C( J, 2 ) - SUM*T2
445: C( J, 3 ) = C( J, 3 ) - SUM*T3
446: C( J, 4 ) = C( J, 4 ) - SUM*T4
447: C( J, 5 ) = C( J, 5 ) - SUM*T5
448: 300 CONTINUE
449: GO TO 410
450: 310 CONTINUE
451: *
452: * Special code for 6 x 6 Householder
453: *
454: V1 = V( 1 )
455: T1 = TAU*V1
456: V2 = V( 2 )
457: T2 = TAU*V2
458: V3 = V( 3 )
459: T3 = TAU*V3
460: V4 = V( 4 )
461: T4 = TAU*V4
462: V5 = V( 5 )
463: T5 = TAU*V5
464: V6 = V( 6 )
465: T6 = TAU*V6
466: DO 320 J = 1, M
467: SUM = V1*C( J, 1 ) + V2*C( J, 2 ) + V3*C( J, 3 ) +
468: $ V4*C( J, 4 ) + V5*C( J, 5 ) + V6*C( J, 6 )
469: C( J, 1 ) = C( J, 1 ) - SUM*T1
470: C( J, 2 ) = C( J, 2 ) - SUM*T2
471: C( J, 3 ) = C( J, 3 ) - SUM*T3
472: C( J, 4 ) = C( J, 4 ) - SUM*T4
473: C( J, 5 ) = C( J, 5 ) - SUM*T5
474: C( J, 6 ) = C( J, 6 ) - SUM*T6
475: 320 CONTINUE
476: GO TO 410
477: 330 CONTINUE
478: *
479: * Special code for 7 x 7 Householder
480: *
481: V1 = V( 1 )
482: T1 = TAU*V1
483: V2 = V( 2 )
484: T2 = TAU*V2
485: V3 = V( 3 )
486: T3 = TAU*V3
487: V4 = V( 4 )
488: T4 = TAU*V4
489: V5 = V( 5 )
490: T5 = TAU*V5
491: V6 = V( 6 )
492: T6 = TAU*V6
493: V7 = V( 7 )
494: T7 = TAU*V7
495: DO 340 J = 1, M
496: SUM = V1*C( J, 1 ) + V2*C( J, 2 ) + V3*C( J, 3 ) +
497: $ V4*C( J, 4 ) + V5*C( J, 5 ) + V6*C( J, 6 ) +
498: $ V7*C( J, 7 )
499: C( J, 1 ) = C( J, 1 ) - SUM*T1
500: C( J, 2 ) = C( J, 2 ) - SUM*T2
501: C( J, 3 ) = C( J, 3 ) - SUM*T3
502: C( J, 4 ) = C( J, 4 ) - SUM*T4
503: C( J, 5 ) = C( J, 5 ) - SUM*T5
504: C( J, 6 ) = C( J, 6 ) - SUM*T6
505: C( J, 7 ) = C( J, 7 ) - SUM*T7
506: 340 CONTINUE
507: GO TO 410
508: 350 CONTINUE
509: *
510: * Special code for 8 x 8 Householder
511: *
512: V1 = V( 1 )
513: T1 = TAU*V1
514: V2 = V( 2 )
515: T2 = TAU*V2
516: V3 = V( 3 )
517: T3 = TAU*V3
518: V4 = V( 4 )
519: T4 = TAU*V4
520: V5 = V( 5 )
521: T5 = TAU*V5
522: V6 = V( 6 )
523: T6 = TAU*V6
524: V7 = V( 7 )
525: T7 = TAU*V7
526: V8 = V( 8 )
527: T8 = TAU*V8
528: DO 360 J = 1, M
529: SUM = V1*C( J, 1 ) + V2*C( J, 2 ) + V3*C( J, 3 ) +
530: $ V4*C( J, 4 ) + V5*C( J, 5 ) + V6*C( J, 6 ) +
531: $ V7*C( J, 7 ) + V8*C( J, 8 )
532: C( J, 1 ) = C( J, 1 ) - SUM*T1
533: C( J, 2 ) = C( J, 2 ) - SUM*T2
534: C( J, 3 ) = C( J, 3 ) - SUM*T3
535: C( J, 4 ) = C( J, 4 ) - SUM*T4
536: C( J, 5 ) = C( J, 5 ) - SUM*T5
537: C( J, 6 ) = C( J, 6 ) - SUM*T6
538: C( J, 7 ) = C( J, 7 ) - SUM*T7
539: C( J, 8 ) = C( J, 8 ) - SUM*T8
540: 360 CONTINUE
541: GO TO 410
542: 370 CONTINUE
543: *
544: * Special code for 9 x 9 Householder
545: *
546: V1 = V( 1 )
547: T1 = TAU*V1
548: V2 = V( 2 )
549: T2 = TAU*V2
550: V3 = V( 3 )
551: T3 = TAU*V3
552: V4 = V( 4 )
553: T4 = TAU*V4
554: V5 = V( 5 )
555: T5 = TAU*V5
556: V6 = V( 6 )
557: T6 = TAU*V6
558: V7 = V( 7 )
559: T7 = TAU*V7
560: V8 = V( 8 )
561: T8 = TAU*V8
562: V9 = V( 9 )
563: T9 = TAU*V9
564: DO 380 J = 1, M
565: SUM = V1*C( J, 1 ) + V2*C( J, 2 ) + V3*C( J, 3 ) +
566: $ V4*C( J, 4 ) + V5*C( J, 5 ) + V6*C( J, 6 ) +
567: $ V7*C( J, 7 ) + V8*C( J, 8 ) + V9*C( J, 9 )
568: C( J, 1 ) = C( J, 1 ) - SUM*T1
569: C( J, 2 ) = C( J, 2 ) - SUM*T2
570: C( J, 3 ) = C( J, 3 ) - SUM*T3
571: C( J, 4 ) = C( J, 4 ) - SUM*T4
572: C( J, 5 ) = C( J, 5 ) - SUM*T5
573: C( J, 6 ) = C( J, 6 ) - SUM*T6
574: C( J, 7 ) = C( J, 7 ) - SUM*T7
575: C( J, 8 ) = C( J, 8 ) - SUM*T8
576: C( J, 9 ) = C( J, 9 ) - SUM*T9
577: 380 CONTINUE
578: GO TO 410
579: 390 CONTINUE
580: *
581: * Special code for 10 x 10 Householder
582: *
583: V1 = V( 1 )
584: T1 = TAU*V1
585: V2 = V( 2 )
586: T2 = TAU*V2
587: V3 = V( 3 )
588: T3 = TAU*V3
589: V4 = V( 4 )
590: T4 = TAU*V4
591: V5 = V( 5 )
592: T5 = TAU*V5
593: V6 = V( 6 )
594: T6 = TAU*V6
595: V7 = V( 7 )
596: T7 = TAU*V7
597: V8 = V( 8 )
598: T8 = TAU*V8
599: V9 = V( 9 )
600: T9 = TAU*V9
601: V10 = V( 10 )
602: T10 = TAU*V10
603: DO 400 J = 1, M
604: SUM = V1*C( J, 1 ) + V2*C( J, 2 ) + V3*C( J, 3 ) +
605: $ V4*C( J, 4 ) + V5*C( J, 5 ) + V6*C( J, 6 ) +
606: $ V7*C( J, 7 ) + V8*C( J, 8 ) + V9*C( J, 9 ) +
607: $ V10*C( J, 10 )
608: C( J, 1 ) = C( J, 1 ) - SUM*T1
609: C( J, 2 ) = C( J, 2 ) - SUM*T2
610: C( J, 3 ) = C( J, 3 ) - SUM*T3
611: C( J, 4 ) = C( J, 4 ) - SUM*T4
612: C( J, 5 ) = C( J, 5 ) - SUM*T5
613: C( J, 6 ) = C( J, 6 ) - SUM*T6
614: C( J, 7 ) = C( J, 7 ) - SUM*T7
615: C( J, 8 ) = C( J, 8 ) - SUM*T8
616: C( J, 9 ) = C( J, 9 ) - SUM*T9
617: C( J, 10 ) = C( J, 10 ) - SUM*T10
618: 400 CONTINUE
619: GO TO 410
620: END IF
621: 410 CONTINUE
622: RETURN
623: *
624: * End of DLARFX
625: *
626: END
CVSweb interface <joel.bertrand@systella.fr>