Télécharger idamax.eso

Retour à la liste

Numérotation des lignes :

  1. C IDAMAX SOURCE CB215821 16/04/21 21:17:04 8920
  2. integer function idamax(n,dx,incx)
  3. c
  4. c finds the index of element having max. absolute value.
  5. c jack dongarra, linpack, 3/11/78.
  6. c modified to correct problem with negative increment, 8/21/90.
  7. c
  8. REAL*8 dx(1),dmax
  9. integer i,incx,ix,n
  10. c
  11. idamax = 0
  12. if( n .lt. 1 ) return
  13. idamax = 1
  14. if(n.eq.1)return
  15. if(incx.eq.1)go to 20
  16. c
  17. c code for increment not equal to 1
  18. c
  19. ix = 1
  20. if(incx.lt.0)ix = (-n+1)*incx + 1
  21. dmax = ABS(dx(ix))
  22. ix = ix + incx
  23. do 10 i = 2,n
  24. if(ABS(dx(ix)).le.dmax) go to 5
  25. idamax = i
  26. dmax = ABS(dx(ix))
  27. 5 ix = ix + incx
  28. 10 continue
  29. return
  30. c
  31. c code for increment equal to 1
  32. c
  33. 20 dmax = ABS(dx(1))
  34. do 30 i = 2,n
  35. if(ABS(dx(i)).le.dmax) go to 30
  36. idamax = i
  37. dmax = ABS(dx(i))
  38. 30 continue
  39. return
  40. end
  41.  
  42.  
  43.  
  44.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales