home *** CD-ROM | disk | FTP | other *** search
- SBMV(3F) Last changed: 11-2-98
-
-
- NNAAMMEE
- SSSSBBMMVV, DDSSBBMMVV - Multiplies a real vector by a real symmetric band
- matrix
-
- SSYYNNOOPPSSIISS
- Real
-
- CCAALLLL SSSSBBMMVV ((_u_p_l_o,, _n,, _k,, _a_l_p_h_a,, _a,, _l_d_a,, _x,, _i_n_c_x,, _b_e_t_a,, _y,, _i_n_c_y))
-
- Double precision
-
- CCAALLLL DDSSBBMMVV ((_u_p_l_o,, _n,, _k,, _a_l_p_h_a,, _a,, _l_d_a,, _x,, _i_n_c_x,, _b_e_t_a,, _y,, _i_n_c_y))
-
- IIMMPPLLEEMMEENNTTAATTIIOONN
- IRIX systems
-
- DDEESSCCRRIIPPTTIIOONN
- These routines perform the following matrix-vector operation:
-
- _y <- _a_l_p_h_a _A_x + _b_e_t_a _y
-
- where _a_l_p_h_a and _b_e_t_a are scalars, _x and _y are _n-element vectors, and _A
- is an _n-by-_n symmetric band matrix.
-
- This routine has the following arguments:
-
- _u_p_l_o Character*1. (input)
- Specifies whether the upper or lower triangular part of band
- matrix _A is supplied, as follows:
-
- _u_p_l_o= 'U' or 'u': the upper triangular part of _A is being
- supplied.
- _u_p_l_o= 'L' or 'l': the lower triangular part of _A is being
- supplied.
-
- _n Integer. (input)
- Specifies the order of matrix _A. _n >= 0.
-
- _k Integer. (input)
- Specifies the number of superdiagonals of matrix _A. _k >= 0.
-
- _a_l_p_h_a Scalar alpha. (input)
- SSSSBBMMVV: Real.
- DDSSBBMMVV: Double precision.
-
- _a Array of dimension (_l_d_a,_n). (input)
- SSSSBBMMVV: Real array.
- DDSSBBMMVV: Double precision array.
-
- Before entry with _u_p_l_o = 'U' or 'u', the leading (_k+1)-by-_n
- part of array _a must contain the upper triangular band part
- of the symmetric matrix, supplied column-by-column, with the
- leading diagonal of the matrix in row (_k+1) of the array,
- the first superdiagonal starting at position 2 in row _k, and
- so on. The top left _k-by-_k triangle of array _a is not
- referenced.
-
- Before entry with _u_p_l_o = 'L' or 'l', the leading (_k+1)-by-_n
- part of array _a must contain the lower triangular band part
- of the symmetric matrix, supplied column-by-column, with the
- leading diagonal of the matrix in row 1 of the array, the
- first subdiagonal starting at position 1 in row 2, and so
- on. The bottom right _k-by-_k triangle of array _a is not
- referenced.
-
- See the NOTES section for examples of Fortran code that
- transfer upper and lower parts of symmetric band matrices
- from conventional full matrix storage to band storage.
-
- _l_d_a Integer. (input)
- Specifies the first dimension of _a as declared in the
- calling program.
- _l_d_a >= (_k+1).
-
- _x Real array of dimension 1+(_n-1) * |_i_n_c_x|. (input)
- SSSSBBMMVV: Real array.
- DDSSBBMMVV: Double precision array.
- Contains vector _x.
-
- _i_n_c_x Integer. (input)
- Specifies the increment for the elements of _x. _i_n_c_x must
- not be 0.
-
- _b_e_t_a Scalar beta. (input)
- SSSSBBMMVV: Real.
- DDSSBBMMVV: Double precision.
-
- _y Array of dimension 1+(_n-1) * |_i_n_c_y|. (input and output)
- SSSSBBMMVV: Real array.
- DDSSBBMMVV: Double precision array.
- Contains vector _y. On exit, the updated vector overwrites
- array _y.
-
- _i_n_c_y Integer. (input)
- Specifies the increment for the elements of _y. _i_n_c_y must
- not be 0.
-
- NNOOTTEESS
- The following program segment transfers the upper triangular part of a
- symmetric band matrix from conventional full matrix storage to band
- storage:
-
- DO 20, J = 1, N
- M = K + 1 - J
- DO 10, I = MAX( 1, J - K ), J
- A( M + I, J ) = MATRIX( I, J )
- 10 CONTINUE
- 20 CONTINUE
-
- The following program segment transfers the lower triangular part of a
- symmetric band matrix from conventional full matrix storage to band
- storage:
-
- DO 20, J = 1, N
- M = 1 - J
- DO 10, I = J, MIN( N, J + K )
- A( M + I, J ) = MATRIX( I, J )
- 10 CONTINUE
- 20 CONTINUE
-
- SSSSBBMMVV/DDSSBBMMVV is a Level 2 Basic Linear Algebra Subprogram (Level 2
- BLAS).
-
- When working backward (_i_n_c_x < 0 or _i_n_c_y < 0), this routine starts at
- the end of the vector and moves backward, as follows:
-
- _x(1-_i_n_c_x * (_n-1)), _x(1-_i_n_c_x * (_n-2)) , ..., _x(1)
-
- _y(1-_i_n_c_y * (_n-1)), _y(1-_i_n_c_y * (_n-2)) , ..., _y(1)
-
- SSEEEE AALLSSOO
- HHBBMMVV(3F)
-
- This man page is available only online.
-