[gmx-users] REMD demuxing

Nikos Sgourakis sgourn at rpi.edu
Sun Jan 7 17:58:21 CET 2007


Hello,
Instead of using system calls, you may also use the pymacs python 
interface by Daniel Seelinger:
http://www.mpibpc.mpg.de/groups/grubmueller/start/people/dseelig/pymacs.html
You can access all information in an xtc file in an object-oriented manner.
Nikos


Andrea C. Vaiana wrote:
> Hello everyone,
> I'm trying to find a better way of demuxing REMD runs, I wrote a 
> python script to do this but it is very slow because it relies on 
> system calls to trjconv in order to read/write frames. I checked the 
> documentation and mailing lists, it seems that this should be possible 
> using "trjcat -demux...". I've tried this and reached similar problems 
> (seemingly unresolved...) as Merc Martens in july. I've attached the 
> last mail from that thread at the bottom of this email.
>
> I have an remd.xvg file that looks like this:
>
> 0.000000   0   1   2   3   4   5   6   7   8   9   10   11   12   13   
> 15   14   16   17  ....
> 0.187500   0   1   2   3   4   5   6   7   8   9   10   11   12   13   
> 15   14   16   17
> 0.375000   0   1   2   3   5   4   6   7   8   9   10   11   12   13   
> 15   14   16   17
> 0.562500   0   1   2   3   5   4   6   7   8   9   10   11   12   13   
> 15   14   16   17
> 0.750000   0   1   2   3   5   4   6   7   8   9   10   11   12   13   
> 15   14   16   17
> 0.937500   0   1   2   3   5   4   6   7   8   9   10   11   12   13   
> 16   14   15   17
> .
> .
> .
>
>
>
> When I run:
> trjcat -dt 0.75 -f  run3.0.xtc ... run3.47.xtc -o  run3.U.0.xtc ... 
> run3.U.47.xtc   -demux remd.xvg
>
> NOTE: I dump to the xtc file every 0.75ps but I'm using an xvg file 
> (created from my log file) with all the replica exchanges i.e., every 
> 0.1875ps. Would this cause problems?
>
> I get 48 identical xtc files named: run3.U.0.xtc #run3.U0.xtc.1# ... 
> #run3.U0.xtc.47#
> each of these is very small (219 K wheras my trajectories are 10 M).
>
> a gmxdump on one of these produces:
>
> run3.U.0.xtc frame 0:
>   natoms=         0  step=         0  time=         0  prec=2.8026e-45
>   box (3x3):
>      box[    0]={ 5.65765e+00,  0.00000e+00,  0.00000e+00}
>      box[    1]={ 0.00000e+00,  5.44156e+00,  0.00000e+00}
>      box[    2]={ 0.00000e+00,  0.00000e+00,  5.42684e+00}
> not available: x
> run3.U.0.xtc frame 1:
>   natoms=         0  step=       500  time=      0.75  prec=2.8026e-45
>   box (3x3):
>      box[    0]={ 5.65765e+00,  0.00000e+00,  0.00000e+00}
>      box[    1]={ 0.00000e+00,  5.44156e+00,  0.00000e+00}
>      box[    2]={ 0.00000e+00,  0.00000e+00,  5.42684e+00}
> not available: x
> run3.U.0.xtc frame 2:
>   natoms=         0  step=      1000  time=       1.5  prec=2.8026e-45
>   box (3x3):
>      box[    0]={ 5.65765e+00,  0.00000e+00,  0.00000e+00}
>      box[    1]={ 0.00000e+00,  5.44156e+00,  0.00000e+00}
>      box[    2]={ 0.00000e+00,  0.00000e+00,  5.42684e+00}
> not available: x
> .
> .
> .
>
> Does anyone know what's wrong?
> Alternatively: does anyone have a fast python routine for 
> reading/writing xtc frames?
>
>
> thanks for any help.
>
> Andrea
>
>> merc mertens
>> Mon, 17 Jul 2006 09:20:41 -0700
>>
>> hello,
>>
>> i am still trying to figure out how demultiplexing with trjcat 
>> (version 3.3.1) works.
>> i produced 3 trajectories, each containing only one frame:
>> e.g.
>>
>> traj0.xtc frame 0:
>>    natoms=     14670  step=       500  time=         1  prec=      1000
>>    box (3x3):
>>       box[    0]={ 8.47401e+00,  0.00000e+00,  0.00000e+00}
>>       box[    1]={ 0.00000e+00,  4.98164e+00,  0.00000e+00}
>>       box[    2]={ 0.00000e+00,  0.00000e+00,  3.48938e+00}
>>    x (14670x3):
>>       x[    0]={ 1.95100e+00,  2.11100e+00,  3.09600e+00}
>>       x[    1]={ 1.95000e+00,  2.14800e+00,  3.19000e+00}
>>       x[    2]={ 1.88400e+00,  2.15100e+00,  3.03200e+00}
>>       x[    3]={ 1.94800e+00,  2.01100e+00,  3.11200e+00}
>> ...
>>
>> traj1.xtc and traj2.xtc look the same (apart from containing 
>> different coordinates).
>>
>> remd.xvg for -demux contains only one line:
>>
>> "1 2 1 0"
>>
>> using those files with:
>> trjcat -f traj0.xtc traj1.xtc traj2.xtc -demux remd.xvg
>>
>> produces: trajout.xtc
>>
>> trajout.xtc frame 0:
>>    natoms=         0  step=       500  time=         1  prec=  -1.99104
>>    box (3x3):
>>       box[    0]={ 8.48018e+00,  0.00000e+00,  0.00000e+00}
>>       box[    1]={ 0.00000e+00,  4.98527e+00,  0.00000e+00}
>>       box[    2]={ 0.00000e+00,  0.00000e+00,  3.49192e+00}
>> not available: x
>>
>> so, even if there are definitely coordinates in the trajectory and 
>> there can not be a mistake in the frame number, since there is only 
>> one, it seems strange to me, that trjcat does not output anything but 
>> the box to the *xtc file. further, the statement "not available: x" 
>> seems curious to me.
>> thanks for any help,
>> merc
>>
>>
>>
>>
>>
>>
>>
>>   
>


-- 
___________________________
Nikolaos G. Sgourakis, MSc
Center for Biotechnology and Interdisciplinary studies
Troy, NY 12180
www.rpi.edu/~sgourn





More information about the gromacs.org_gmx-users mailing list