/[lmdze]/trunk/filtrez/eigen_sort.f
ViewVC logotype

Diff of /trunk/filtrez/eigen_sort.f

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

trunk/libf/filtrez/eigen_sort.f revision 3 by guez, Wed Feb 27 13:16:39 2008 UTC trunk/filtrez/eigen_sort.f90 revision 81 by guez, Wed Mar 5 14:38:41 2014 UTC
# Line 1  Line 1 
 !  
 ! $Header: /home/cvsroot/LMDZ4/libf/filtrez/eigen_sort.F,v 1.1.1.1 2004/05/19 12:53:09 lmdzadmin Exp $  
 !  
           SUBROUTINE eigen_sort(d,v,n,np)  
           INTEGER n,np  
           REAL d(np),v(np,np)  
           INTEGER i,j,k  
           REAL p  
1    
2         DO i=1,n-1  ! $Header: /home/cvsroot/LMDZ4/libf/filtrez/eigen_sort.F,v 1.1.1.1 2004/05/19
3            k=i  ! 12:53:09 lmdzadmin Exp $
           p=d(i)  
         DO j=i+1,n  
            IF(d(j).ge.p) THEN  
             k=j  
             p=d(j)  
            ENDIF  
         ENDDO  
             
         IF(k.ne.i) THEN  
           d(k)=d(i)  
           d(i)=p  
          DO j=1,n  
           p=v(j,i)  
           v(j,i)=v(j,k)  
           v(j,k)=p  
          ENDDO  
         ENDIF  
        ENDDO  
4    
5          RETURN  SUBROUTINE eigen_sort(d, v, n, np)
6          END    INTEGER n, np
7      REAL d(np), v(np, np)
8      INTEGER i, j, k
9      REAL p
10    
11      DO i = 1, n - 1
12        k = i
13        p = d(i)
14        DO j = i + 1, n
15          IF (d(j)>=p) THEN
16            k = j
17            p = d(j)
18          END IF
19        END DO
20    
21        IF (k/=i) THEN
22          d(k) = d(i)
23          d(i) = p
24          DO j = 1, n
25            p = v(j, i)
26            v(j, i) = v(j, k)
27            v(j, k) = p
28          END DO
29        END IF
30      END DO
31    
32      RETURN
33    END SUBROUTINE eigen_sort

Legend:
Removed from v.3  
changed lines
  Added in v.81

  ViewVC Help
Powered by ViewVC 1.1.21