NAME
     slarf - apply a real elementary reflector H to a real m by n
     matrix C, from either the left or the right
SYNOPSIS
     SUBROUTINE SLARF( SIDE, M, N, V, INCV, TAU, C, LDC, WORK )
     CHARACTER SIDE
     INTEGER INCV, LDC, M, N
     REAL TAU
     REAL C( LDC, * ), V( * ), WORK( * )
     #include <sunperf.h>
     void slarf(char side, int m, int  n,  float  *v,  int  incv,
               float tau, float *sc, int ldc) ;
PURPOSE
     SLARF applies a real elementary reflector H to a real m by n
     matrix   C,  from  either  the  left  or  the  right.  H  is
     represented in the form
           H = I - tau * v * v'
     where tau is a real scalar and v is a real vector.
     If tau = 0, then H is taken to be the unit matrix.
ARGUMENTS
     SIDE      (input) CHARACTER*1
               = 'L': form  H * C
               = 'R': form  C * H
     M         (input) INTEGER
               The number of rows of the matrix C.
     N         (input) INTEGER
               The number of columns of the matrix C.
     V         (input) REAL array, dimension
               (1 + (M-1)*abs(INCV)) if SIDE = 'L' or  (1  +  (N-
               1)*abs(INCV))  if  SIDE  = 'R' The vector v in the
               representation of H. V is not used if TAU = 0.
     INCV      (input) INTEGER
               The increment between elements of v. INCV <> 0.
     TAU       (input) REAL
               The value tau in the representation of H.
     C         (input/output) REAL array, dimension (LDC,N)
               On entry, the m by n matrix  C.   On  exit,  C  is
               overwritten  by the matrix H * C if SIDE = 'L', or
               C * H if SIDE = 'R'.
     LDC       (input) INTEGER
               The leading dimension  of  the  array  C.  LDC  >=
               max(1,M).
     WORK      (workspace) REAL array, dimension
               (N) if SIDE = 'L' or (M) if SIDE = 'R'
| Закладки на сайте Проследить за страницей | Created 1996-2025 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |