117 SUBROUTINE dlaptm( N, NRHS, ALPHA, D, E, X, LDX, BETA, B, LDB )
125 INTEGER ldb, ldx, n, nrhs
126 DOUBLE PRECISION alpha, beta
129 DOUBLE PRECISION b( ldb, * ), d( * ), e( * ), x( ldx, * )
135 DOUBLE PRECISION one, zero
136 parameter( one = 1.0d+0, zero = 0.0d+0 )
148 IF( beta.EQ.zero )
THEN
154 ELSE IF( beta.EQ.-one )
THEN
157 b( i, j ) = -b( i, j )
162 IF( alpha.EQ.one )
THEN
168 b( 1, j ) = b( 1, j ) + d( 1 )*x( 1, j )
170 b( 1, j ) = b( 1, j ) + d( 1 )*x( 1, j ) +
172 b( n, j ) = b( n, j ) + e( n-1 )*x( n-1, j ) +
175 b( i, j ) = b( i, j ) + e( i-1 )*x( i-1, j ) +
176 $ d( i )*x( i, j ) + e( i )*x( i+1, j )
180 ELSE IF( alpha.EQ.-one )
THEN
186 b( 1, j ) = b( 1, j ) - d( 1 )*x( 1, j )
188 b( 1, j ) = b( 1, j ) - d( 1 )*x( 1, j ) -
190 b( n, j ) = b( n, j ) - e( n-1 )*x( n-1, j ) -
193 b( i, j ) = b( i, j ) - e( i-1 )*x( i-1, j ) -
194 $ d( i )*x( i, j ) - e( i )*x( i+1, j )