<div dir="ltr">Hi Steve<br><br>I have just checked in a tool called dumpdcd.f90 which you can find now in the cp2k/tools folder of the current CP2K trunk version. It should allow the dump of DCD files generated by CP2K. It provides also some other useful functionality. After compiling it using e.g.<br><br>gfortran -o dumdcd.exe dumpdcd.f90<br><br>dumpdcd.exe -h<br><br>prints a help menu. The flags -i and -d provide a more detail dump. For atomic labels you have to supply an XYZ template file.<br><br>Matthias<br><br>On Wednesday, 20 May 2015 10:34:18 UTC+2, Steve S  wrote:<blockquote class="gmail_quote" style="margin: 0;margin-left: 0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;">Hello
<br>
<br>I'm trying read dcd files written by cp2k. I have a reader which works
<br>for dcd files written by lammps, but now I'm struggling with the cp2k
<br>dcd header. In particular, I don't seem to be able to read the number of
<br>steps from the header. The file src/motion_utils.F in version 2.6.1 has
<br>
<br>    WRITE (UNIT=traj_unit) id_dcd,0,it,iskip,0,0,0,0,0,0,<wbr>REAL(dtime,KIND=sp),&
<br>                           1,0,0,0,0,0,0,0,0,24
<br>    [....]
<br>    WRITE (UNIT=traj_unit) 2,remark1,remark2
<br>    WRITE (UNIT=traj_unit) nat
<br>
<br>I assume from the surrounding code that `it` is the number of steps.
<br>So, with something like
<br>
<br>    integer :: it, natoms, dummyi, ntitle, iskip, i, unt
<br>    real :: timestep
<br>    character(len=4) :: id_dcd
<br>    character(len=80) :: remark1, remark2
<br>    open(unt, ...) 
<br>    read(unt) id_dcd, dummyi, it, iskip, (dummyi, i=1,6), &
<br>              timestep, (dummyi, i=1,10)
<br>    read(unt) ntitle, remark1, remark2
<br>    read(unt) natoms
<br>
<br>the number of steps `it` is always 0, while `natoms` etc are read
<br>correctly.
<br>
<br>Also, one of the dcd format specifications found in the documentation of
<br>VMD's dcdplugin [1] suggests that the step variable is the first integer
<br>written after `id_dcd`, whereas cp2k writes a zero first, and then the
<br>steps. Is this another flavor of the dcd format? If so, is there a
<br>specification? My Fortran is somewhat rusty so there may be something
<br>obvious which I have overlooked.
<br>
<br>Another related question. Lammps writes the cell information as double
<br>precision, but the coordinates as real. How does cp2k do that? If you
<br>have pointers to the relevant documentation, that would help me a lot.
<br>Thank you very much.
<br>
<br>best,
<br>Steve
<br>
<br>[1] <a href="http://www.ks.uiuc.edu/Research/vmd/plugins/molfile/dcdplugin.html" target="_blank" rel="nofollow" onmousedown="this.href='http://www.google.com/url?q\75http%3A%2F%2Fwww.ks.uiuc.edu%2FResearch%2Fvmd%2Fplugins%2Fmolfile%2Fdcdplugin.html\46sa\75D\46sntz\0751\46usg\75AFQjCNFkuOdQXZRCZeWn-VmLktqkuRTifQ';return true;" onclick="this.href='http://www.google.com/url?q\75http%3A%2F%2Fwww.ks.uiuc.edu%2FResearch%2Fvmd%2Fplugins%2Fmolfile%2Fdcdplugin.html\46sa\75D\46sntz\0751\46usg\75AFQjCNFkuOdQXZRCZeWn-VmLktqkuRTifQ';return true;">http://www.ks.uiuc.edu/<wbr>Research/vmd/plugins/molfile/<wbr>dcdplugin.html</a>
<br>
<br>-- 
<br>Steve Schmerler
<br>Institut für Theoretische Physik
<br>TU Freiberg, Germany
<br></blockquote></div>