1
SUBROUTINE md_init(iseed,ntype,ncons,ntcons,consatm,nbond,ntbond,
2
$ bondatm,nshel,ntshel,shelatm,lveloc,ewald1)
14
integer ncons,ntcons,consatm
15
integer nbond,ntbond,bondatm
16
integer nshel,ntshel,shelatm
22
dimension consatm(mxcons,2),bondatm(mxbond,2),shelatm(mxshel,2)
24
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
26
call tool_randm(iseed,x)
27
call tool_invrt(latt,rlatt,det)
28
call tool_volme(latt,vol)
29
call tool_rebox(natms,mxatms,latt,rlatt,ccc)
31
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
34
c Self-interaction energy
35
call ewald_self(ewald1)
36
write(*,*) "ewald self",ewald1
38
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
41
call list_excld(ntype)
43
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
45
! Create constraints list
46
call list_const(ncons,ntcons,consatm)
48
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
51
call list_bonds(nbond,ntbond,bondatm)
53
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
56
call list_shell(nshel,ntshel,shelatm)
58
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
60
! Temperature parameters
61
degfree=dble(3*(natms-ntshel)-3-ntcons)
62
targetke=degfree*temp*boltzmann*0.5
64
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
66
! Initial random velocities
67
if(.not.lveloc)call init_velo(iseed)
69
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!