2
c $Id: tool_invrt.f,v 1.1 2008-10-01 22:32:32 marat Exp $
5
SUBROUTINE tool_invrt(latt,rlatt,det)
11
dimension latt(3,3),rlatt(3,3)
13
rlatt(1,1)=latt(2,2)*latt(3,3)-latt(3,2)*latt(2,3)
14
rlatt(2,1)=latt(3,1)*latt(2,3)-latt(2,1)*latt(3,3)
15
rlatt(3,1)=latt(2,1)*latt(3,2)-latt(3,1)*latt(2,2)
16
rlatt(1,2)=latt(3,2)*latt(1,3)-latt(1,2)*latt(3,3)
17
rlatt(2,2)=latt(1,1)*latt(3,3)-latt(3,1)*latt(1,3)
18
rlatt(3,2)=latt(3,1)*latt(1,2)-latt(1,1)*latt(3,2)
19
rlatt(1,3)=latt(1,2)*latt(2,3)-latt(2,2)*latt(1,3)
20
rlatt(2,3)=latt(2,1)*latt(1,3)-latt(1,1)*latt(2,3)
21
rlatt(3,3)=latt(1,1)*latt(2,2)-latt(2,1)*latt(1,2)
23
det=latt(1,1)*rlatt(1,1)+latt(1,2)*rlatt(2,1)+latt(1,3)*rlatt(3,1)
24
if(abs(det).gt.0.d0)det=1.d0/det
26
rlatt(1,1)=det*rlatt(1,1)
27
rlatt(2,1)=det*rlatt(2,1)
28
rlatt(3,1)=det*rlatt(3,1)
29
rlatt(1,2)=det*rlatt(1,2)
30
rlatt(2,2)=det*rlatt(2,2)
31
rlatt(3,2)=det*rlatt(3,2)
32
rlatt(1,3)=det*rlatt(1,3)
33
rlatt(2,3)=det*rlatt(2,3)
34
rlatt(3,3)=det*rlatt(3,3)