Télécharger iladlc.eso

Retour à la liste

Numérotation des lignes :

  1. C ILADLC SOURCE BP208322 15/10/13 21:16:06 8670
  2. *> \brief \b ILADLC scans a matrix for its last non-zero column.
  3. *
  4. * =========== DOCUMENTATION ===========
  5. *
  6. * Online html documentation available at
  7. * http://www.netlib.org/lapack/explore-html/
  8. *
  9. *> \htmlonly
  10. *> Download ILADLC + dependencies
  11. *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/iladlc.f">
  12. *> [TGZ]</a>
  13. *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/iladlc.f">
  14. *> [ZIP]</a>
  15. *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/iladlc.f">
  16. *> [TXT]</a>
  17. *> \endhtmlonly
  18. *
  19. * Definition:
  20. * ===========
  21. *
  22. * INTEGER FUNCTION ILADLC( M, N, A, LDA )
  23. *
  24. * .. Scalar Arguments ..
  25. * INTEGER M, N, LDA
  26. * ..
  27. * .. Array Arguments ..
  28. * REAL*8 A( LDA, * )
  29. * ..
  30. *
  31. *
  32. *> \par Purpose:
  33. * =============
  34. *>
  35. *> \verbatim
  36. *>
  37. *> ILADLC scans A for its last non-zero column.
  38. *> \endverbatim
  39. *
  40. * Arguments:
  41. * ==========
  42. *
  43. *> \param[in] M
  44. *> \verbatim
  45. *> M is INTEGER
  46. *> The number of rows of the matrix A.
  47. *> \endverbatim
  48. *>
  49. *> \param[in] N
  50. *> \verbatim
  51. *> N is INTEGER
  52. *> The number of columns of the matrix A.
  53. *> \endverbatim
  54. *>
  55. *> \param[in] A
  56. *> \verbatim
  57. *> A is DOUBLE PRECISION array, dimension (LDA,N)
  58. *> The m by n matrix A.
  59. *> \endverbatim
  60. *>
  61. *> \param[in] LDA
  62. *> \verbatim
  63. *> LDA is INTEGER
  64. *> The leading dimension of the array A. LDA >= max(1,M).
  65. *> \endverbatim
  66. *
  67. * Authors:
  68. * ========
  69. *
  70. *> \author Univ. of Tennessee
  71. *> \author Univ. of California Berkeley
  72. *> \author Univ. of Colorado Denver
  73. *> \author NAG Ltd.
  74. *
  75. *> \date September 2012
  76. *
  77. *> \ingroup auxOTHERauxiliary
  78. *
  79. * =====================================================================
  80. INTEGER FUNCTION ILADLC( M, N, A, LDA )
  81. *
  82. * -- LAPACK auxiliary routine (version 3.4.2) --
  83. * -- LAPACK is a software package provided by Univ. of Tennessee, --
  84. * -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
  85. * September 2012
  86. *
  87. * .. Scalar Arguments ..
  88. INTEGER M, N, LDA
  89. * ..
  90. * .. Array Arguments ..
  91. REAL*8 A( LDA, * )
  92. * ..
  93. *
  94. * =====================================================================
  95. *
  96. * .. Parameters ..
  97. REAL*8 ZERO
  98. PARAMETER ( ZERO = 0.0D+0 )
  99. * ..
  100. * .. Local Scalars ..
  101. INTEGER I
  102. * ..
  103. * .. Executable Statements ..
  104. *
  105. * Quick test for the common case where one corner is non-zero.
  106. IF( N.EQ.0 ) THEN
  107. ILADLC = N
  108. ELSE IF( A(1, N).NE.ZERO .OR. A(M, N).NE.ZERO ) THEN
  109. ILADLC = N
  110. ELSE
  111. * Now scan each column from the end, returning with the first non-zero.
  112. DO ILADLC = N, 1, -1
  113. DO I = 1, M
  114. IF( A(I, ILADLC).NE.ZERO ) RETURN
  115. END DO
  116. END DO
  117. END IF
  118. RETURN
  119. END
  120.  
  121.  

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