From: Vermaas, Josh (vermaasj_at_msu.edu)
Date: Wed Mar 27 2024 - 09:51:49 CDT

Hi Kyle,

Since until you patch the residues, the atom names probably won’t match what they should. The thing that is unintuitive about psfgen is that you need to hold two things in your head: 1.) The literal topology and identity of the atoms, and 2) The coordinates. The topology (how the atoms are bonded) and identity (atomtypes, masses, charges) all end up in the psf, and as the name suggests, this is what psfgen actually cares the most about. It is good practice to make sure that the topology is correct before setting coordinates, since PDB generation (the coordinates) is done by psfgen sort of as an afterthought. What psfgen does to set coordinates is it reads in the input pdb, and takes coordinates from atoms that have the same name, resid, and segname in the input, and assigns them to the output structure psfgen has in its memory. So if you coordpdb *before* patching, psfgen will dutifully assign all the atoms it knows about from the input structure (normal protein backbone, most of the sidechain). But since it hasn’t been patched yet, psfgen doesn’t know about the extra ester-specific atoms, which are only added after patching. If you patch after the coordpdb, psfgen will make those atoms exist, but they won’t have coordinates assigned, so the default is the origin.

-Josh

From: Kyle Billings <krb_at_udel.edu>
Date: Tuesday, March 26, 2024 at 4:18 PM
To: "Vermaas, Josh" <vermaasj_at_msu.edu>
Subject: Re: vmd-l: Atoms poorly guessed after applying a patch in Psfgen

Thanks Josh,

I must have not copied those lines into the intal post, but i am curious why you patched the residues before getting the coordinates of the molecule?

Thanks for the help ,
Kyle

On Mon, Mar 25, 2024 at 4:01 PM Josh Vermaas <vermaasj_at_msu.edu<mailto:vermaasj_at_msu.edu>> wrote:
Hi Kyle,

Where is the patch being applied? I don't see it in the script snippets. Based on the topology file you sent, I'd expect a patch command to be issued before you try to guess the coordinates. Patches get applied after segments. So your innermost loop would look something like this:

segment PRO$i {
                pdb parts/fixed_${i}.pdb
}
#Apply the patch.
patch EETY PRO$i:77 PRO$I:78
# coord pdb
coordpdb parts/fixed_${i}.pdb PRO$i
regenerate angles dihedrals

-Josh

On 3/25/24 1:28 PM, Kyle Billings wrote:
Hello Users,

  I am working on creating a psf/pdb using Psfgen to model an ester between the Gly77-Tyr78 of KcsA (PDB:4MSW). I found parameters to modify the ester linkage published from Li. et. al (https://urldefense.com/v3/__https://doi.org/10.1073/pnas.1706983114__;!!DZ3fjg!5QafLCRB184Y-SWvRb9YMTwfV6kWm_PpKzLORLribKBgfB12Od25CORM2S8GjWiiZzJ6qkwFzSvDuh-cy2Q$ <https://urldefense.com/v3/__https:/doi.org/10.1073/pnas.1706983114__;!!DZ3fjg!7NANVEnRX4o-lm715IR1fjoNBdHcy2zDmDRJcMQkTp89tzO1zO6hT5uQmDGsXeAEciouaoaTomL06g$>) and the file should be attached to this post. When applying the patch, the positions ester oxygen and the alpha carbon hydrogen atom of Tyr78 fail to be set. I was wondering if there is a flaw in my methodology that I am not seeing? I am sorry for the length of this message in advance.

 The current method is to convert manually the TYF 78 to TYR 78, because 4MSW already has the ester in the structure. This is to comply atom naming from the patch for each monomer of 4MSW.
-----------------------------------------------------------------------------------------------
for {set i 0} { $i < 4 } { incr i } {
        puts $i
        # load the ##_*.pdb
        mol load pdb 4MSW/${i}_4msw.pdb2.pdb
# # select the atoms that we need to make
        [atomselect top "resname TYF and name C1 " ] set name C
        [atomselect top "resname TYF and name O1" ] set name O
        [atomselect top "resname TYF and name N" ] set type NH1
        [atomselect top "resname TYF and name C2" ] set name CA
        [atomselect top "resname TYF and name C3 " ] set name CB
        [atomselect top "resname TYF and name C4 " ] set name CG
        [atomselect top "resname TYF and name C5 " ] set name CD1
        [atomselect top "resname TYF and name C6 " ] set name CE1
        [atomselect top "resname TYF and name C7 " ] set name CZ
        [atomselect top "resname TYF and name C8 " ] set name CE2
        [atomselect top "resname TYF and name C9 " ] set name CD2
        [atomselect top "resname TYF and name O3"] set name OH
        [atomselect top "resname TYF "] set resname TYR
        [atomselect top "not (resname HOH TIP3 OH2 SOL DGA K)" ] writepdb parts/TEMP_fixed_${i}.pdb
}
-----------------------------------------------------------------------------------------------

  From there we can the newly made monomer pdb's to build the psf. I apply the pdbalias as stated in the Membrane Proteins Tutorial (Advanced), and load in the CHARMM36 topologies. After the adding the additional topology for the amide to ester mutation I build the psf/pdb a follows.
-----------------------------------------------------------------------------------------------
topology toppar/toppar_all36_amide_to_ester.str

foreach i {0 1 2 3} {
        # make the segment
        segment PRO$i {
                pdb parts/fixed_${i}.pdb
        }
        # coord pdb
        coordpdb parts/fixed_${i}.pdb PRO$i
        regenerate angles dihedrals
}
regenerate angles dihedrals
writepdb KcsA_ester.pdb
writepsf KcsA_ester.psf
-----------------------------------------------------------------------------------------------

  The resulting pdb has both the OE atom and the HA atom of the Tyr78-Gly77 ester are failed to be guessed. My current solution to fix the atoms OE position it so move the atom using scripting is to move that atom to the crystal structure atom position. I am worried that this is will induce artifacts however. My only other thought is build a separate top file for TYF residue in 4MSW from the protein topology/parameters and the top of the patch. Any advice is welcome, and thanks for your time.

Kyle
Post Doc. at University of Delaware

--
Josh Vermaas
vermaasj_at_msu.edu<mailto:vermaasj_at_msu.edu>
Assistant Professor, Plant Research Laboratory and Biochemistry and Molecular Biology
Michigan State University
vermaaslab.github.io<https://urldefense.com/v3/__http:/vermaaslab.github.io__;!!HXCxUKc!xBR4rlbRRKLv7IGpl3aRcYp3lEhYG9UXX6NNX4FXRM7XOKT5pBke-dN3LGpQ75NJ4VNpEu7-c0c$>