[Wien] spaghetti for monoclinic CXZ
Arai Masao
arai.masao at nims.go.jp
Tue Mar 1 05:55:12 CET 2005
On 2005/02/28, at 18:15, Arai Masao wrote:
> Dear all,
>
> I tried base-centered (CXZ) monoclinic lattice by WIEN2k.
> When I plotted band structure with spaghetti, lengths of symmetric
> lines were calculated incorrectly.
> It seems that special treatment for CXZ monoclinic is necessary in
> SRC_spaghetti/cartco.f.
>
> If I add following code between hexagonal and triclinic case in
> SRC_spaghetti/cartco.f,
> the CXZ monoclinic lattice seems to be treated correctly.
I am sorry. yesterday's e-mail has a typo.
The following is a corrected version.
------< from here >----
else if ( (lattice(1:3) .eq. 'CXZ') .and. &
(abs(gamma-90.0) .gt. 0.0001) ) then
!.....CXZ MONOCLINIC CASE
SINAB=SIN(gamma*PI/180.0D0)
COSAB=COS(gamma*PI/180.0D0)
pia = 2.d0*pi/a
pib = 2.d0*pi/b
pic = 2.d0*pi/c
BR2(1,1)= pia/SINAB
BR2(1,2)= -pib*COSAB/SINAB
BR2(1,3)= pia/SINAB
BR2(2,1)= 0.0
BR2(2,2)= pib*1.0D+0
BR2(2,3)= 0.0
BR2(3,1)=-pic*1.0D+0
BR2(3,2)= 0.0
BR2(3,3)= pic*1.0D+0
write(6,*) 'lattice-type with monoclinic CXZ assumed'
write(6,'(3f10.5)') br2
do j=1,nv
v1=v(1,j)
v2=v(2,j)
v3=v(3,j)
v(1,j)=BR2(1,1)*v1+BR2(1,2)*v2+BR2(1,3)*v3
v(2,j)=BR2(2,1)*v1+BR2(2,2)*v2+BR2(2,3)*v3
v(3,j)=BR2(3,1)*v1+BR2(3,2)*v2+BR2(3,3)*v3
enddo
----< end >----
In yesterday's mail, "pib = 2.d0*pi/b" was mistyped as "pib =
2.d0*pi/c".
Best regards.
--
Masao ARAI
National Institute for Materials Science (NIMS)
Computational Materials Science Center
First-Principles Simulation Group (II)
mail: arai.masao at nims.go.jp
More information about the Wien
mailing list