mirror of https://gitlab.com/QEF/q-e.git
XSpectra fixed (why does it use a different copy of read_file?), minor
cleanup git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6410 c92efa57-630b-4861-b058-cf58834340f0
This commit is contained in:
parent
0afbf24881
commit
ce2e1b655c
|
@ -203,7 +203,6 @@ summary.o \
|
|||
symme.o \
|
||||
symm_base.o \
|
||||
symmetrize_at.o \
|
||||
symv.o \
|
||||
tabd.o \
|
||||
transform_becsum_so.o \
|
||||
transform_becsum_nc.o \
|
||||
|
|
|
@ -195,8 +195,6 @@ cft3s.o : ../Modules/fft_base.o
|
|||
cft3s.o : ../Modules/fft_parallel.o
|
||||
cft3s.o : ../Modules/fft_scalar.o
|
||||
cft3s.o : ../Modules/kind.o
|
||||
checkallsym.o : ../Modules/kind.o
|
||||
checksym.o : ../Modules/kind.o
|
||||
clean_pw.o : ../Modules/atom.o
|
||||
clean_pw.o : ../Modules/control_flags.o
|
||||
clean_pw.o : ../Modules/fft_base.o
|
||||
|
@ -1439,17 +1437,10 @@ symme.o : ../Modules/mp_global.o
|
|||
symme.o : ../Modules/parallel_include.o
|
||||
symme.o : pwcom.o
|
||||
symme.o : symm_base.o
|
||||
symme_save.o : ../Modules/cell_base.o
|
||||
symme_save.o : ../Modules/constants.o
|
||||
symme_save.o : ../Modules/kind.o
|
||||
symme_save.o : ../Modules/mp_global.o
|
||||
symme_save.o : ../Modules/parallel_include.o
|
||||
symme_save.o : pwcom.o
|
||||
symmetrize_at.o : ../Modules/io_global.o
|
||||
symmetrize_at.o : ../Modules/kind.o
|
||||
symmetrize_at.o : pwcom.o
|
||||
symmetrize_at.o : symm_base.o
|
||||
symv.o : ../Modules/kind.o
|
||||
tabd.o : ../Modules/kind.o
|
||||
tabd.o : ../Modules/uspp.o
|
||||
transform_becsum_nc.o : ../Modules/ions_base.o
|
||||
|
|
65
PW/symv.f90
65
PW/symv.f90
|
@ -1,65 +0,0 @@
|
|||
!
|
||||
! Copyright (C) 2009 Quantum ESPRESSO group
|
||||
! This file is distributed under the terms of the
|
||||
! GNU General Public License. See the file `License'
|
||||
! in the root directory of the present distribution,
|
||||
! or http://www.gnu.org/copyleft/gpl.txt .
|
||||
!
|
||||
!-----------------------------------------------------------------------
|
||||
subroutine symv (vect, nsym, s, sname, t_rev, at, bg)
|
||||
!--------------------------------------------------------------------
|
||||
!
|
||||
! This routine symmetrizes a vector keeping only the component that
|
||||
! remains invariant under the symmetry operations of the crystal.
|
||||
! On input and on output vect is in cartesian coordinates.
|
||||
! The vector is supposed to be axial: inversion does not change it.
|
||||
! Time reversal changes its sign. Note that only groups compatible with
|
||||
! a finite magnetization give an nonzero output vector.
|
||||
!
|
||||
!
|
||||
USE kinds
|
||||
implicit none
|
||||
!
|
||||
! I/O variables first
|
||||
!
|
||||
integer, intent(in) :: & !
|
||||
nsym, & ! input: the number of symmetries
|
||||
t_rev(48), & ! input: the time reversal informations
|
||||
s (3, 3, 48) ! input: the rotation matrices
|
||||
real(DP), intent(in) :: at(3,3), bg(3,3)
|
||||
real(DP), intent(inout) :: vect(3) ! inp/out: the vector to rotate
|
||||
CHARACTER(LEN=45), INTENT(IN) :: sname(48) ! name of the symmetries
|
||||
!
|
||||
! the local variables
|
||||
!
|
||||
integer :: isym ! counter on symmetries
|
||||
|
||||
real(DP) :: work (3), segno
|
||||
|
||||
if (nsym.eq.1) return
|
||||
!
|
||||
! The vector is transformed in crystal axis
|
||||
!
|
||||
work(:) = vect(1)*at(1,:) + vect(2)*at(2,:) + vect(3)*at(3,:)
|
||||
vect = work
|
||||
!
|
||||
! It is symmetrized
|
||||
!
|
||||
work = 0.d0
|
||||
do isym = 1, nsym
|
||||
segno=1.0_DP
|
||||
IF (sname(isym)(1:3)=='inv') segno=-1.0_DP
|
||||
IF (t_rev(isym)==1) segno=-1.0_DP*segno
|
||||
work (:) = work (:) + segno * &
|
||||
s (:, 1, isym) * vect (1) + &
|
||||
s (:, 2, isym) * vect (2) + &
|
||||
s (:, 3, isym) * vect (3)
|
||||
enddo
|
||||
work=work/nsym
|
||||
!
|
||||
! And back in cartesian coordinates.
|
||||
!
|
||||
vect(:) = work(1) * bg(:,1) + work(2) * bg(:,2) + work(3) * bg(:,3)
|
||||
|
||||
return
|
||||
end subroutine symv
|
|
@ -150,11 +150,6 @@ SUBROUTINE read_file_xspectra(xread_wf)
|
|||
CALL poolscatter( nbnd, nkstot, et, nks, et )
|
||||
CALL poolscatter( nbnd, nkstot, wg, nks, wg )
|
||||
!
|
||||
! ... check on symmetry
|
||||
!
|
||||
IF (nat > 0) CALL checkallsym( nsym, s, nat, tau, &
|
||||
ityp, at, bg, nr1, nr2, nr3, irt, ftau, alat, omega )
|
||||
!
|
||||
! ... read pseudopotentials
|
||||
!
|
||||
CALL pw_readfile( 'pseudo', ierr )
|
||||
|
|
Loading…
Reference in New Issue