1 integer function idamin(n,dx,incx) 2* 3* $Id$ 4* 5c 6c finds the index of element having min. absolute value. 7C Trivial modification of BLAS idamax routine! 8c 9 double precision dx(*),dmin 10 integer i,incx,ix,n 11c 12 idamin = 0 13 if( n.lt.1 .or. incx.le.0 ) return 14 idamin = 1 15 if(n.eq.1)return 16 if(incx.eq.1)go to 20 17c 18c code for increment not equal to 1 19c 20 ix = 1 21 dmin = dabs(dx(1)) 22 ix = ix + incx 23 do 10 i = 2,n 24 if(dabs(dx(ix)).ge.dmin) go to 5 25 idamin = i 26 dmin = dabs(dx(ix)) 27 5 ix = ix + incx 28 10 continue 29 return 30c 31c code for increment equal to 1 32c 33 20 dmin = dabs(dx(1)) 34 do 30 i = 2,n 35 if(dabs(dx(i)).ge.dmin) go to 30 36 idamin = i 37 dmin = dabs(dx(i)) 38 30 continue 39 return 40 end 41