From: Stephen M. Dutz (smdutz_at_csupomona.edu)
Date: Sun Dec 09 2007 - 19:05:37 CST

Hi all,

 

I'm trying to combine protein and lipid pdb files while removing
overlapping lipids, for use in GROMACS. I have done this before with
two psf files and two pdb files for NAMD, and it was quite easy. Seeing
as how the two pdb files I have are written with the GROMOS force field
in mind, I don't want to generate psf files for them and go about it in
the usual way. I thought it would be easy enough to write a brief
script to do this. I assigned a segment ID of "L" for all lipid as
seen in the excerpt of the pdb below.

 

ATOM 608 C49 POP X 1 20.230 25.390 22.750 1.00 1.00
L

ATOM 609 C50 POP X 1 19.730 26.230 23.930 1.00 1.00
L

ATOM 610 CA1 POP X 1 31.330 41.330 16.650 1.00 1.00
L

ATOM 611 CA2 POP X 1 32.390 42.010 17.530 1.00 1.00
L

ATOM 612 C1 POP X 2 25.240 7.880 6.390 1.00 1.00
L

ATOM 613 C2 POP X 2 24.090 9.870 5.900 1.00 1.00
L

ATOM 614 C3 POP X 2 23.500 8.730 7.980 1.00 1.00
L

ATOM 615 N4 POP X 2 23.960 8.580 6.590 1.00 1.00
L

 

I then wrote the following code which calls the combined protein and
lipid file popc_cff.pdb

 

package require psfgen

 

#load combined file into vmd and psfgen

resetpsf

coordpdb popc_cff.pdb

mol load pdb popc_cff.pdb

 

# select and delete lipids that overlap protein:

# any atom within 0.8A of protein

set sellip [atomselect top "resname POP and within 0.8 of protein"]

 

#delete these residues

foreach segid [$sellip get segid] resid [$sellip get resid] {

        delatom $segid $resid

}

 

#write pdb

writepdb popc_cff_mem.pdb

 

quit

 

However it continually outputs the following error:

 

Warning: failed to set coordinate for atom C40 POP:97 L

no segment L

 

It seems that although the script pulls the segid "L", when it goes to
use this with the delatom command it does not recognize a segment L. Is
this problem occurring because I am not using any psf files? Any help
would be much appreciated.

 

Thanks in advance,

 

Steve