- substitution of deferred dimensions (*) with actual dimensions .

This will remove compilation problems with some version of gfortran compiler


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5338 c92efa57-630b-4861-b058-cf58834340f0
This commit is contained in:
cavazzon 2008-12-22 16:29:13 +00:00
parent b0c3d52138
commit 0ffcb6898b
4 changed files with 25 additions and 25 deletions

View File

@ -930,7 +930,7 @@
!
lambdap(:,:,iss) = 0.0d0
!
CALL cyc2blk_redist( nss, fmat0(1,1,iss), nrlx, lambda_dist, nlam, descla(1,iss) )
CALL cyc2blk_redist( nss, fmat0(1,1,iss), nrlx, SIZE(fmat0,2), lambda_dist, nlam, nlam, descla(1,iss) )
!
! Perform lambdap = lambda * fmat0
!

View File

@ -629,7 +629,7 @@
!
ALLOCATE( epsi0( nrl, nss ), zaux( nrl, nss ) )
CALL blk2cyc_redist( nss, epsi0, nrl, psihpsi(1,1,is), SIZE(psihpsi,1), descla(1,is) )
CALL blk2cyc_redist( nss, epsi0, nrl, nss, psihpsi(1,1,is), SIZE(psihpsi,1), SIZE(psihpsi,2), descla(1,is) )
CALL pdspev_drv( 'V', epsi0, nrl, dval, zaux, nrl, nrl, nss, np_rot, me_rot, comm_rot )
!

View File

@ -2597,7 +2597,7 @@ END SUBROUTINE
!
!
SUBROUTINE cyc2blk_redist( n, a, lda, b, ldb, desc )
SUBROUTINE cyc2blk_redist( n, a, lda, nca, b, ldb, ncb, desc )
!
! Parallel square matrix redistribution.
! A (input) is cyclically distributed by rows across processors
@ -2610,9 +2610,9 @@ SUBROUTINE cyc2blk_redist( n, a, lda, b, ldb, desc )
IMPLICIT NONE
!
INTEGER, INTENT(IN) :: n
INTEGER, INTENT(IN) :: lda, ldb
REAL(DP) :: a(lda,*), b(ldb,*)
INTEGER :: desc(*)
INTEGER, INTENT(IN) :: lda, nca, ldb, ncb
REAL(DP) :: a( lda, nca ), b( ldb, ncb )
INTEGER :: desc( descla_siz_ )
!
#if defined (__MPI)
!
@ -2739,7 +2739,7 @@ CONTAINS
IF( j > SIZE(sndbuf,2) ) CALL errore( msg, ' j > SIZE(sndbuf,2) ', ip+1 )
IF( il > SIZE(sndbuf,1) ) CALL errore( msg, ' il > SIZE(sndbuf,1) ', ip+1 )
IF( ( ii - 1 )/nproc + 1 < 1 ) CALL errore( msg, ' ( ii - 1 )/nproc + 1 < 1 ', ip+1 )
IF( ( ii - 1 )/nproc + 1 > SIZE(a,1) ) CALL errore( msg, ' ( ii - 1 )/nproc + 1 > SIZE(a,1) ', ip+1 )
IF( ( ii - 1 )/nproc + 1 > lda ) CALL errore( msg, ' ( ii - 1 )/nproc + 1 > SIZE(a,1) ', ip+1 )
IF( jj < 1 ) CALL errore( msg, ' jj < 1 ', ip+1 )
IF( jj > n ) CALL errore( msg, ' jj > n ', ip+1 )
RETURN
@ -2757,7 +2757,7 @@ CONTAINS
END SUBROUTINE cyc2blk_redist
SUBROUTINE cyc2blk_zredist( n, a, lda, b, ldb, desc )
SUBROUTINE cyc2blk_zredist( n, a, lda, nca, b, ldb, ncb, desc )
!
! Parallel square matrix redistribution.
! A (input) is cyclically distributed by rows across processors
@ -2770,9 +2770,9 @@ SUBROUTINE cyc2blk_zredist( n, a, lda, b, ldb, desc )
IMPLICIT NONE
!
INTEGER, INTENT(IN) :: n
INTEGER, INTENT(IN) :: lda, ldb
COMPLEX(DP) :: a(lda,*), b(ldb,*)
INTEGER :: desc(*)
INTEGER, INTENT(IN) :: lda, nca, ldb, ncb
COMPLEX(DP) :: a( lda, nca ), b( ldb, ncb )
INTEGER :: desc( descla_siz_ )
!
#if defined (__MPI)
!
@ -2916,7 +2916,7 @@ END SUBROUTINE cyc2blk_zredist
SUBROUTINE blk2cyc_redist( n, a, lda, b, ldb, desc )
SUBROUTINE blk2cyc_redist( n, a, lda, nca, b, ldb, ncb, desc )
!
! Parallel square matrix redistribution.
! A (output) is cyclically distributed by rows across processors
@ -2929,9 +2929,9 @@ SUBROUTINE blk2cyc_redist( n, a, lda, b, ldb, desc )
IMPLICIT NONE
!
INTEGER, INTENT(IN) :: n
INTEGER, INTENT(IN) :: lda, ldb
REAL(DP) :: a(lda,*), b(ldb,*)
INTEGER :: desc(*)
INTEGER, INTENT(IN) :: lda, nca, ldb, ncb
REAL(DP) :: a( lda, nca ), b( ldb, ncb )
INTEGER :: desc( descla_siz_ )
!
#if defined (__MPI)
!
@ -3046,7 +3046,7 @@ SUBROUTINE blk2cyc_redist( n, a, lda, b, ldb, desc )
END SUBROUTINE blk2cyc_redist
SUBROUTINE blk2cyc_zredist( n, a, lda, b, ldb, desc )
SUBROUTINE blk2cyc_zredist( n, a, lda, nca, b, ldb, ncb, desc )
!
! Parallel square matrix redistribution.
! A (output) is cyclically distributed by rows across processors
@ -3059,9 +3059,9 @@ SUBROUTINE blk2cyc_zredist( n, a, lda, b, ldb, desc )
IMPLICIT NONE
!
INTEGER, INTENT(IN) :: n
INTEGER, INTENT(IN) :: lda, ldb
COMPLEX(DP) :: a(lda,*), b(ldb,*)
INTEGER :: desc(*)
INTEGER, INTENT(IN) :: lda, nca, ldb, ncb
COMPLEX(DP) :: a( lda, nca ), b( ldb, ncb )
INTEGER :: desc( descla_siz_ )
!
#if defined (__MPI)
!
@ -4405,12 +4405,12 @@ SUBROUTINE qe_pdsyevd( tv, n, desc, hh, ldh, e )
! Redistribute matrix "hh" into "diag",
! matrix "hh" is block distributed, matrix diag is cyclic distributed
CALL blk2cyc_redist( n, diag, nrlx, hh, ldh, desc )
CALL blk2cyc_redist( n, diag, nrlx, n, hh, ldh, ldh, desc )
!
CALL pdspev_drv( jobv, diag, nrlx, e, vv, nrlx, nrl, n, &
desc( la_npc_ ) * desc( la_npr_ ), desc( la_me_ ), desc( la_comm_ ) )
!
IF( tv ) CALL cyc2blk_redist( n, vv, nrlx, hh, ldh, desc )
IF( tv ) CALL cyc2blk_redist( n, vv, nrlx, n, hh, ldh, ldh, desc )
!
DEALLOCATE( vv )
DEALLOCATE( diag )
@ -4451,12 +4451,12 @@ SUBROUTINE qe_pzheevd( tv, n, desc, hh, ldh, e )
jobv = 'N'
IF( tv ) jobv = 'V'
CALL blk2cyc_zredist( n, diag, nrlx, hh, ldh, desc )
CALL blk2cyc_zredist( n, diag, nrlx, n, hh, ldh, ldh, desc )
!
CALL pzhpev_drv( jobv, diag, nrlx, e, vv, nrlx, nrl, n, &
desc( la_npc_ ) * desc( la_npr_ ), desc( la_me_ ), desc( la_comm_ ) )
!
if( tv ) CALL cyc2blk_zredist( n, vv, nrlx, hh, ldh, desc )
if( tv ) CALL cyc2blk_zredist( n, vv, nrlx, n, hh, ldh, ldh, desc )
!
DEALLOCATE( vv )
DEALLOCATE( diag )

View File

@ -2091,12 +2091,12 @@ SUBROUTINE pprojwave( filproj, lsym )
ALLOCATE( diag( nrlx, natomwfc ) )
ALLOCATE( vv( nrlx, natomwfc ) )
!
CALL blk2cyc_zredist( natomwfc, diag, nrlx, overlap_d, nx, desc )
CALL blk2cyc_zredist( natomwfc, diag, nrlx, natomwfc, overlap_d, nx, nx, desc )
!
CALL pzhpev_drv( 'V', diag, nrlx, e, vv, nrlx, nrl, natomwfc, &
desc( la_npc_ ) * desc( la_npr_ ), desc( la_me_ ), desc( la_comm_ ) )
!
CALL cyc2blk_zredist( natomwfc, vv, nrlx, work_d, nx, desc )
CALL cyc2blk_zredist( natomwfc, vv, nrlx, natomwfc, work_d, nx, nx, desc )
!
DEALLOCATE( vv )
DEALLOCATE( diag )