From: David Alejandro Rincón Daza (darincond_at_unal.edu.co)
Date: Wed Jun 03 2020 - 16:43:26 CDT

Hi Josh,
Thank you for your reply, it worked!!!
But, a last issue has arisen. When I compare the new pdb with the initial
pdb, the last pdb differs in one atom. Looking at verbose output of the
psfgen execution, I found that the missing atom is due to:

*psfgen) reading coordinates from pdb file MCC_ORI_protein.pdb for segment
PROTpsfgen) Warning: failed to set coordinate for atom HD2 ASP:134 PROT*

   - *What do you recommend me to do in this last case?*

The last version of the pgn file is:

*package require psfgen topology
top_all36_prot_MOD_SEA_PROP_PATCH.rtfsegment PROT {pdb MCC_ORI_protein.pdb}
coordpdb MCC_ORI_protein.pdb PROT segment PROP {pdb MCC_ORI_sub.pdbfirst
nonelast none}coordpdb MCC_ORI_sub.pdb PROPsegment XWAT {pdb
MCC_ORI_water.pdb}coordpdb MCC_ORI_water.pdb XWATsegment SOLV {pdb
MCC_ORI_solvent.pdbfirst nonelast none}coordpdb MCC_ORI_solvent.pdb
SOLVpatch DISU PROT:22 PROT:64patch DISU PROT:216 PROT:258patch DISU
PROT:293 PROT:311regenerate angles dihedralsguesscoordwritepdb
MCC_ORI_mod_all36.pdb writepsf MCC_ORI_mod_all36.psf*

Thank you so much,
David

El mié., 3 jun. 2020 a las 16:13, Josh Vermaas (<joshua.vermaas_at_gmail.com>)
escribió:

> Hi David,
> Your psfgen script doesn't itself add the patches that make the disulfide
> bond. How are you making your disulfide? Are you even making your disulfide
> in the PSF being generated? Load your psf file first rather than the pdb
> for visualization purposes so VMD doesn't try autoguessing the bond
> structure. Autopsf uses a distance heuristic to guess where disulfides go,
> but you can't depend on that if you are making your own psf from a psfgen
> script. In the psfgen user guide (
> https://www.ks.uiuc.edu/Research/vmd/plugins/psfgen/ug.pdf), they have
> some examples from BPTI where they also need to make disulfides, and those
> commands look like: "patch DISU BPTI:5 BPTI:55".
>
> For you, you'd need the following lines in your psfgen script (before
> regenerate angles dihedrals) based on your description of the chemistry:
>
> patch DISU PROT:22 PROT:64
> patch DISU PROT:216 PROT:258
> patch DISU PROT:293 PROT:311
>
> What these patches do is add/delete atoms and add/delete bonds based on
> the PRES definition in the topology file. For disulfide bond formation, it
> takes two resids as input, deletes their hydrogens, and bonds together the
> sulfurs. psfgen then knows that these hydrogens shouldn't exist.
> -Josh
>
> On Wed, Jun 3, 2020 at 2:11 PM David Alejandro Rincón Daza <
> darincond_at_unal.edu.co> wrote:
>
>> Hi Josh,
>> Thank you for your reply. I had applied your suggestions and it almost
>> worked
>> completely.
>> The new results show that it passed from adding 24 new atoms to add 6 new
>> atoms. Punctually, psfgen added hydrogens to sulfur atoms. The error is
>> that those sulfur atoms belong to a disulfide bond. Thus, the sulfur atom
>> has ended with three bonds, one to the amino acid, two to the disulfide
>> bond and last one to the new bond with the new hydrogen atom. What I am
>> obtaining is:
>>
>>
>>
>>
>>
>>
>>
>> *ATOM 301 HG1 CYS 22 -18.307 7.017 -9.107 0.00 0.00
>> PROT ATOM 898 HG1 CYS 64 -16.442 5.402 -9.030 0.00 0.00
>> PROT ATOM 3165 HG1 CYS 216 14.401 0.247 -14.391 0.00 0.00
>> PROT ATOM 3286 HE2 HSP 224 3.262 2.192 2.404 0.00
>> 0.00 PROT ATOM 3772 HG1 CYS 258 14.360 -0.426 -15.863
>> 0.00 0.00 PROT ATOM 4258 HG1 CYS 293 -6.605 -6.668
>> 22.828 0.00 0.00 PROT ATOM 4542 HG1 CYS 311 -8.297
>> -5.168 20.924 0.00 0.00 PROT *
>>
>> CYS 22 is bonded by disulfide bond to CYS 64, and CYS 216 to CYS 258 and
>> CYS 293 to CYS 311.
>>
>>
>> - *How can I avoid to psfgen add hydrogen atoms to sulfur atoms in
>> disulfide bonds?*
>>
>>
>> Thanks in advance,
>> David
>>
>>
>>
>>
>>
>> El mié., 3 jun. 2020 a las 11:32, Josh Vermaas (<joshua.vermaas_at_gmail.com>)
>> escribió:
>>
>>> You will want those atoms, since they are the hydrogens attached to the
>>> residues. Visualize the psf/pdb pair in VMD. You'll see lots of long bonds
>>> to the origin for these unplaced hydrogens. What I think is going on is
>>> that psfgen isn't generating angles and dihedral information, so it then
>>> has nothing to guess atomic coordinates from. Before your
>>> guesscoord command, add "regenerate angles dihedrals". Then you'll find
>>> that psfgen will be able to guess where the atoms should go. The other
>>> thing you should consider is adding "first none ; last none" to the
>>> non-protein components, so that psfgen doesn't try adding the default NTER
>>> CTER patches to these residues. See below for these suggestions.
>>>
>>> -Josh
>>>
>>> *package require psfgen*
>>>
>>> *topology top_all27_prot_lipid_withSEA_TOL_TI_test2_02_link.rtf*
>>>
>>>
>>> *segment PROT {pdb MCC_ORI_protein.pdb}*
>>>
>>> *coordpdb MCC_ORI_protein.pdb PROT*
>>>
>>> *segment PROP {*
>>>
>>> *pdb MCC_ORI_sub.pdb*
>>>
>>> *first none*
>>>
>>> *last none*
>>>
>>> *}*
>>>
>>> *coordpdb MCC_ORI_sub.pdb PROP*
>>>
>>> *segment XWAT {pdb MCC_ORI_water.pdb}*
>>>
>>> *coordpdb MCC_ORI_water.pdb XWAT*
>>>
>>> *segment SOLV {*
>>>
>>> *pdb MCC_ORI_solvent.pdb*
>>>
>>> *first none*
>>>
>>> *last none*
>>>
>>> *}*
>>>
>>> *coordpdb MCC_ORI_solvent.pdb SOLV*
>>>
>>> *regenerate angles dihedrals*
>>>
>>>
>>> *guessscoord*
>>>
>>>
>>> *writepdb MCC_ORI_mod.pdb*
>>>
>>> *writepsf MCC_ORI_mod.psf*
>>>
>>> On Tue, Jun 2, 2020 at 4:38 PM David Alejandro Rincón Daza <
>>> darincond_at_unal.edu.co> wrote:
>>>
>>>> Hi, I am trying to build a PSF file. The commands that I am using are:
>>>>
>>>> in VMD -> Extension -> Tk console
>>>>
>>>> *set MCC_ORI [atomselect top protein]*
>>>>
>>>> * $MCC_ORI writepdb MCC_ORI_protein.pdb*
>>>>
>>>>
>>>> * set MCC_ORI [atomselect top "resname TOL"]*
>>>>
>>>> * $MCC_ORI writepdb MCC_ORI_solvent.pdb*
>>>>
>>>>
>>>> * set MCC_ORI [atomselect top water]*
>>>>
>>>> * $MCC_ORI writepdb MCC_ORI_water.pdb*
>>>>
>>>>
>>>> * set MCC_ORI [atomselect top "resname SUB"]*
>>>>
>>>> * $MCC_ORI writepdb MCC_ORI_sub.pdb*
>>>>
>>>> Then, I create a png file:
>>>>
>>>> *package require psfgen*
>>>>
>>>> * topology top_all27_prot_lipid_withSEA_TOL_TI_test2_02_link.rtf*
>>>>
>>>>
>>>> * segment PROT {pdb MCC_ORI_protein.pdb}*
>>>>
>>>> *coordpdb MCC_ORI_protein.pdb PROT*
>>>>
>>>> * segment PROP {pdb MCC_ORI_sub.pdb}*
>>>>
>>>> * coordpdb MCC_ORI_sub.pdb PROP*
>>>>
>>>> * segment XWAT {pdb MCC_ORI_water.pdb}*
>>>>
>>>> *coordpdb MCC_ORI_water.pdb XWAT*
>>>>
>>>> * segment SOLV {pdb MCC_ORI_solvent.pdb}*
>>>>
>>>> * coordpdb MCC_ORI_solvent.pdb SOLV*
>>>>
>>>>
>>>>
>>>> *guessscoord*
>>>>
>>>>
>>>> * writepdb MCC_ORI_mod.pdb*
>>>>
>>>> * writepsf MCC_ORI_mod.psf *
>>>>
>>>> and I get this info at the end of the process:
>>>>
>>>>
>>>>
>>>>
>>>> *psfgen) Info: guessing coordinates for 24 atoms (9
>>>> non-hydrogen)psfgen) Warning: failed to guess coordinates for 17
>>>> atomspsfgen) Info: writing pdb file MCC_ORI_mod_all36.pdbpsfgen) Info:
>>>> Atoms with guessed coordinates will have occupancy of 0.0.*
>>>>
>>>> When I do awk to the new pdb file:
>>>>
>>>> *awk '$9=="-1.00"' a*
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> *ATOM 301 HG1 CYS 22 0.000 0.000 0.000 -1.00 0.00
>>>> PROT ATOM 898 HG1 CYS 64 0.000 0.000 0.000 -1.00 0.00
>>>> PROT ATOM 3165 HG1 CYS 216 0.000 0.000 0.000 -1.00 0.00
>>>> PROT ATOM 3286 HE2 HSP 224 0.000 0.000 0.000 -1.00
>>>> 0.00 PROT ATOM 3772 HG1 CYS 258 0.000 0.000 0.000
>>>> -1.00 0.00 PROT ATOM 4258 HG1 CYS 293 0.000 0.000
>>>> 0.000 -1.00 0.00 PROT ATOM 4542 HG1 CYS 311 0.000 0.000
>>>> 0.000 -1.00 0.00 PROT ATOM 4627 N SUB 1 0.000
>>>> 0.000 0.000 -1.00 0.00 PROP ATOM 4628 HT1 SUB 1 0.000
>>>> 0.000 0.000 -1.00 0.00 PROP ATOM 4629 HT2 SUB 1
>>>> 0.000 0.000 0.000 -1.00 0.00 PROP ATOM 4630 HT3 SUB 1
>>>> 0.000 0.000 0.000 -1.00 0.00 PROP ATOM 4631 CA SUB 1
>>>> 0.000 0.000 0.000 -1.00 0.00 PROP ATOM 4632 HA SUB 1
>>>> 0.000 0.000 0.000 -1.00 0.00 PROP ATOM 4633 C SUB
>>>> 1 0.000 0.000 0.000 -1.00 0.00 PROP ATOM 4634 OT1 SUB
>>>> 1 0.000 0.000 0.000 -1.00 0.00 PROP ATOM 4635 OT2
>>>> SUB 1 0.000 0.000 0.000 -1.00 0.00 PROP ATOM 5528 N
>>>> TOL 1 0.000 0.000 0.000 -1.00 0.00 SOLV ATOM 5529
>>>> HT1 TOL 1 0.000 0.000 0.000 -1.00 0.00 SOLV ATOM
>>>> 5530 HT2 TOL 1 0.000 0.000 0.000 -1.00 0.00 SOLV ATOM
>>>> 5531 HT3 TOL 1 0.000 0.000 0.000 -1.00 0.00 SOLV
>>>> ATOM 5544 HA TOL 1 0.000 0.000 0.000 -1.00 0.00
>>>> SOLV ATOM 21808 C TOL 1086 0.000 0.000 0.000 -1.00 0.00
>>>> SOLV ATOM 21809 OT1 TOL 1086 0.000 0.000 0.000 -1.00 0.00
>>>> SOLV ATOM 21810 OT2 TOL 1086 0.000 0.000 0.000 -1.00
>>>> 0.00 SOLV *
>>>>
>>>> I obtain 24 atoms with the same coordinates. Moreover, this new pdb
>>>> file is 24 atoms larger than the original pdb.
>>>>
>>>> Questions:
>>>>
>>>> *How can I avoid that?*
>>>> *How can I remove them?*
>>>> *Is it useful to rename those atoms as DUM?*
>>>>
>>>> Looking forward
>>>> Thanks in advance
>>>>
>>>>
>>>>
>>>>