228 COMPLEX FUNCTION clatm3( M, N, I, J, ISUB, JSUB, KL, KU, IDIST,
229 $ iseed, d, igrade, dl, dr, ipvtng, iwork,
239 INTEGER i, idist, igrade, ipvtng, isub, j, jsub, kl,
246 INTEGER iseed( 4 ), iwork( * )
247 COMPLEX d( * ), dl( * ), dr( * )
255 parameter( zero = 0.0e0 )
257 parameter( czero = ( 0.0e0, 0.0e0 ) )
284 IF( i.LT.1 .OR. i.GT.m .OR. j.LT.1 .OR. j.GT.n )
THEN
293 IF( ipvtng.EQ.0 )
THEN
296 ELSE IF( ipvtng.EQ.1 )
THEN
299 ELSE IF( ipvtng.EQ.2 )
THEN
302 ELSE IF( ipvtng.EQ.3 )
THEN
309 IF( jsub.GT.isub+ku .OR. jsub.LT.isub-kl )
THEN
316 IF( sparse.GT.zero )
THEN
317 IF(
slaran( iseed ).LT.sparse )
THEN
328 ctemp =
clarnd( idist, iseed )
330 IF( igrade.EQ.1 )
THEN
331 ctemp = ctemp*dl( i )
332 ELSE IF( igrade.EQ.2 )
THEN
333 ctemp = ctemp*dr( j )
334 ELSE IF( igrade.EQ.3 )
THEN
335 ctemp = ctemp*dl( i )*dr( j )
336 ELSE IF( igrade.EQ.4 .AND. i.NE.j )
THEN
337 ctemp = ctemp*dl( i ) / dl( j )
338 ELSE IF( igrade.EQ.5 )
THEN
339 ctemp = ctemp*dl( i )*conjg( dl( j ) )
340 ELSE IF( igrade.EQ.6 )
THEN
341 ctemp = ctemp*dl( i )*dl( j )