The Elk Code
writefsm.f90
Go to the documentation of this file.
1 
2 ! Copyright (C) 2007 J. K. Dewhurst, S. Sharma and C. Ambrosch-Draxl.
3 ! This file is distributed under the terms of the GNU General Public License.
4 ! See the file COPYING for license details.
5 
6 subroutine writefsm(fnum)
7 use modmain
8 implicit none
9 ! arguments
10 integer, intent(in) :: fnum
11 ! local variables
12 integer is,ia,ias
13 write(fnum,*)
14 if (any(abs(fsmtype) == [1,3,4,6])) then
15  write(fnum,'("FSM global effective field",T30,": ",3G18.10)') bfsmc(1:ndmag)
16 end if
17 if (any(abs(fsmtype) == [2,3,5,6])) then
18  write(fnum,'("FSM local muffin-tin effective fields :")')
19  do is=1,nspecies
20  write(fnum,'(" species : ",I4," (",A,")")') is,trim(spsymb(is))
21  do ia=1,natoms(is)
22  ias=idxas(ia,is)
23  write(fnum,'(" atom ",I4,T30,": ",3G18.10)') ia,bfsmcmt(1:ndmag,ias)
24  end do
25  end do
26 end if
27 end subroutine
28 
integer, dimension(maxatoms, maxspecies) idxas
Definition: modmain.f90:42
integer ndmag
Definition: modmain.f90:238
real(8), dimension(3) bfsmc
Definition: modmain.f90:257
subroutine writefsm(fnum)
Definition: writefsm.f90:7
integer, dimension(maxspecies) natoms
Definition: modmain.f90:36
real(8), dimension(:,:), allocatable bfsmcmt
Definition: modmain.f90:263
integer nspecies
Definition: modmain.f90:34
character(64), dimension(maxspecies) spsymb
Definition: modmain.f90:78
integer fsmtype
Definition: modmain.f90:251