The Elk Code
 
Loading...
Searching...
No Matches
symvec.f90
Go to the documentation of this file.
1
2! Copyright (C) 2017 J. K. Dewhurst, S. Sharma and E. K. U. Gross.
3! This file is distributed under the terms of the GNU General Public License.
4! See the file COPYING for license details.
5
6subroutine symvec(vc)
7use modmain
8implicit none
9! arguments
10real(8), intent(inout) :: vc(3)
11! local variables
12integer isym,lspl
13real(8) vs(3),v(3),t1
14! make symmetric average
15vs(1:3)=0.d0
16do isym=1,nsymcrys
17 lspl=lsplsymc(isym)
18 call r3mv(symlatc(:,:,lspl),vc,v)
19 vs(1:3)=vs(1:3)+v(1:3)
20end do
21! normalise
22t1=1.d0/dble(nsymcrys)
23vc(1:3)=t1*vs(1:3)
24end subroutine
25
real(8), dimension(3, 3, 48) symlatc
Definition modmain.f90:350
integer nsymcrys
Definition modmain.f90:358
integer, dimension(maxsymcrys) lsplsymc
Definition modmain.f90:364
pure subroutine r3mv(a, x, y)
Definition r3mv.f90:10
subroutine symvec(vc)
Definition symvec.f90:7