[CPMD-list] Initial velocities
Nikos Doltsinis
Nikos.Doltsinis at theochem.ruhr-uni-bochum.de
Fri Nov 29 15:56:47 CET 2002
Dear Carina,
we have had the same problem; there seems to be a bug in the code. I have
therefore attached a modified routine which should read your velocities
correctly.
Regards,
Nikos
On Fri, 29 Nov 2002, Carina Bäcktorp wrote:
> Dear all,
>
> I am trying to use the keyword: VELOCITIES ... END VELOCITIES
> in a MD simulation.
>
> I get the following error message:
>
> *****************************************************
> VELOCITINP: ERROR WHILE READING ON UNIT 5
>
>
> PROGRAM STOPS IN SUBROUTINE VELOCITINP|
>
> ****************************************************
>
>
> What do I do wrong?
> My input looks like:
>
> **********************************************
> &CPMD
> MOLECULAR DYNAMICS
> RESTART WAVEFUNCTION COORDINATES LATEST
> TEMPERATURE
> 273.0
> MAXSTEP
> 2800
> TIMESTEP
> 3.0
> EMASS
> 550.0
> TRAJECTORY SAMPLE
> 10
>
>
> &END
>
> &SYSTEM
> ANGSTROM
> SYMMETRY
> 0
> CELL
> 9.8652 1.0 1.0 0 0 0
> CUTOFF
> 70.0
> &END
> &ATOMS
> ISOTOPE
> 1.0
> 16.0
>
> *H_MT_PBE KLEINMAN-BYLANDER
> LMAX=S
> 10
> -0.699 2.995 7.668
> -2.111 3.813 7.644
> -0.706 -1.522 7.768
> -2.119 -0.704 7.743
> 0.125 1.587 9.292
> -0.341 0.741 7.976
> 3.211 0.73 7.736
> 1.799 1.549 7.711
> 1.059 1.634 11.397
> -0.354 2.452 11.372
>
>
> *O_MT_PBE KLEINMAN-BYLANDER
> LMAX=P
> 5
> -1.167 3.806 7.314
> -1.174 -0.713 7.414
> 0.129 1.565 8.292
> 2.743 1.541 7.382
> 0.118 1.628 11.059
>
> VELOCITIES
>
> 2
> 1 1 0.00010069488574 -0.00105659282185 0.0000172369
> 2 1 -0.00052673503042 -0.00018396347289 0.0009625564
>
> END VELOCITIES
>
> &END
>
> &DFT
> NEWCODE
> FUNCTIONAL PBE
> &END
>
> *****************************************************
>
> Can anyone help me out?
>
> best regards
> Carina
>
>
>
>
> --
> Carina Bäcktorp, Ph. D.
> Göteborg University
> Department of Chemistry
> Physical Chemistry
> Kemiv. 10
> SE 412 96 Göteborg
> Sweden
>
> Phone + 46 31 7722817
>
>
>
> _______________________________________________
> CPMD-list mailing list
> CPMD-list at cpmd.org
> http://www.cpmd.org/mailman/listinfo/cpmd-list
>
----------------------------------------------------
Dr. Nikos L. Doltsinis
Lehrstuhl fuer Theoretische Chemie
Ruhr-Universitaet Bochum
D-44780 Bochum, Germany
Tel. ++49 234 3226749
Fax ++49 234 3214045
Nikos.Doltsinis at theochem.ruhr-uni-bochum.de
www.theochem.ruhr-uni-bochum.de/~nikos.doltsinis
----------------------------------------------------
-------------- next part --------------
C ==================================================================
SUBROUTINE VELOCITINP(IUNIT)
C ==--------------------------------------------------------------==
C == READS VELOCITIES INPUT FOR INITIAL STEP (Section &ATOMS) ==
C ==--------------------------------------------------------------==
C == ==
C == VELOCITIES ==
C == nvel ==
C == is ia vx vy vz ==
C == .... ==
C == END VELOCITIES ==
C ==--------------------------------------------------------------==
IMPLICIT NONE
INCLUDE 'system.h'
INCLUDE 'ions.inc'
INCLUDE 'coor.inc'
CHARACTER LINE*80
INTEGER IUNIT
DIMENSION LVELINI(0:NAX,NSX)
C Local variables
INTEGER LVEL, ININ,IOUT,NVEL,I,J,IA,IS
LOGICAL ERREAD
C ==--------------------------------------------------------------==
10 CONTINUE
C--------Initialisation and test for 'END VELOCITIES'-------------------
READ(IUNIT,ERR=20,END=20,FMT='(A)') LINE
IF(INDEX(LINE,'END').NE.0 .AND. INDEX(LINE,'VELOC').NE.0)
& GOTO 30
CALL READSI(LINE,1,IOUT,NVEL,ERREAD)
IF(ERREAD) GOTO 20
ININ=IOUT
CALL READSI(LINE,ININ,IOUT,LVEL,ERREAD)
IF(ERREAD) THEN
GOTO 40
ELSE
GOTO 20
ENDIF
40 CONTINUE
C--------read velocities and test for valid species and atom number-----
DO I=1,NVEL
READ(IUNIT,ERR=20,END=20,FMT=*) IS, IA, (VELP(J,IA,IS),J=1,3)
IF(IS.LE.0.OR.IS.GT.NSX)
& CALL STOPGM('VELOCITINP', 'BAD NUMBER OF ATOM SPECIES')
IF(IA.LE.0.OR.IA.GT.NA(IS))
& CALL STOPGM('VELOCITINP', 'BAD NUMBER OF ATOMS')
LVELINI(0,IS)=.TRUE.
LVELINI(IA,IS)=.TRUE.
ENDDO
GOTO 10
30 CONTINUE
C ==--------------------------------------------------------------==
RETURN
20 CONTINUE
WRITE(*,*) ' VELOCITINP: ERROR WHILE READING ON UNIT ',IUNIT
CALL STOPGM('VELOCITINP',' ')
END
C ==================================================================
More information about the CPMD-list
mailing list