~ubuntu-branches/ubuntu/utopic/nwchem/utopic

« back to all changes in this revision

Viewing changes to src/lapack/single/ilaslr.f

  • Committer: Package Import Robot
  • Author(s): Michael Banck, Daniel Leidert, Andreas Tille, Michael Banck
  • Date: 2013-07-04 12:14:55 UTC
  • mfrom: (1.1.2)
  • Revision ID: package-import@ubuntu.com-20130704121455-5tvsx2qabor3nrui
Tags: 6.3-1
* New upstream release.
* Fixes anisotropic properties (Closes: #696361).
* New features include:
  + Multi-reference coupled cluster (MRCC) approaches
  + Hybrid DFT calculations with short-range HF 
  + New density-functionals including Minnesota (M08, M11) and HSE hybrid
    functionals
  + X-ray absorption spectroscopy (XAS) with TDDFT
  + Analytical gradients for the COSMO solvation model
  + Transition densities from TDDFT 
  + DFT+U and Electron-Transfer (ET) methods for plane wave calculations
  + Exploitation of space group symmetry in plane wave geometry optimizations
  + Local density of states (LDOS) collective variable added to Metadynamics
  + Various new XC functionals added for plane wave calculations, including
    hybrid and range-corrected ones
  + Electric field gradients with relativistic corrections 
  + Nudged Elastic Band optimization method
  + Updated basis sets and ECPs 

[ Daniel Leidert ]
* debian/watch: Fixed.

[ Andreas Tille ]
* debian/upstream: References

[ Michael Banck ]
* debian/upstream (Name): New field.
* debian/patches/02_makefile_flags.patch: Refreshed.
* debian/patches/06_statfs_kfreebsd.patch: Likewise.
* debian/patches/07_ga_target_force_linux.patch: Likewise.
* debian/patches/05_avoid_inline_assembler.patch: Removed, no longer needed.
* debian/patches/09_backported_6.1.1_fixes.patch: Likewise.
* debian/control (Build-Depends): Added gfortran-4.7 and gcc-4.7.
* debian/patches/10_force_gcc-4.7.patch: New patch, explicitly sets
  gfortran-4.7 and gcc-4.7, fixes test suite hang with gcc-4.8 (Closes:
  #701328, #713262).
* debian/testsuite: Added tests for COSMO analytical gradients and MRCC.
* debian/rules (MRCC_METHODS): New variable, required to enable MRCC methods.

Show diffs side-by-side

added added

removed removed

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