[ISOLDE] Handling Lys-Asp iso-peptide bonds and D-amino acids

Addressing this to Tristan, in all likelihood. Is there a way of parameterising KD isopeptide bonds and D-amino acids? Perhaps a secret three letter code I can rename the residues to make them play nice? Unfortunately, I'm trying to model a peptide that has both of these exotic elements. Cheers, Yang

Addendum: Identified the letter code for the D-residue, leaving only the isopeptide bond to address.

Hi Yang, I'm glad you sorted out the D-amino acid situation (for the record, the standard PDB 3-letter codes for D amino acids are "D{first two letters of standard residue code}"). I haven't had much reason to work with these in the past, but trying it now with an example (9f01... it's amazing how much the cartoon for a D-protein sets off my "uncanny valley" vibes) once you have them named correctly things *mostly* work, but right now D-disulfides do not. Will have to think about the best strategy for that. Regarding the Lys-Asp isopeptide... adding support for new user-defined residue-residue bonds is something I haven't had the chance to do (partly because of the vagaries of life/career, and partly because I've been watching the development of new force field approaches that would - once mature - remove the need for explicit residue templates entirely). Eric had this well worked out as an automated process in Chimera (in essence the workflow involves creating a model small molecule covering the two linked residues plus some caps to replace the residues up and down the chain, parameterising that using ANTECHAMBER, then applying the parameters back to the original residues in your model). Question for Eric: does the Chimera version write out any AMBER parameter files (i.e. .mol2/.frcmod) that could be used to make the corresponding OpenMM parameter files? Best, Tristan On Sun, Mar 30, 2025 at 12:31 PM Yang Lee via ChimeraX-users < chimerax-users@cgl.ucsf.edu> wrote:
Addendum: Identified the letter code for the D-residue, leaving only the isopeptide bond to address. _______________________________________________ ChimeraX-users mailing list -- chimerax-users@cgl.ucsf.edu To unsubscribe send an email to chimerax-users-leave@cgl.ucsf.edu Archives: https://mail.cgl.ucsf.edu/mailman/archives/list/chimerax-users@cgl.ucsf.edu/
-- Altos Labs UK Limited | England | Company reg 13484917 Registered address: 3rd Floor 1 Ashley Road, Altrincham, Cheshire, United Kingdom, WA14 2DT

Well, ChimeraX does more or less the exact same thing as Chimera — cuts out a “stable” region bonded to the residue of interest and sends that to Antechamber. If you call chimerax.add_charge.charge.nonstd_charge() directly, you can specify a “temp_dir” parameter and if you do then that directory will still exist afterward, along with its input and output files. Antechamber’s Mol2 output (ante.out.mol2) has GAFF types and partial charges. The nonstd_charge() does an additional step of taking any non-zero net charge on the part of the stable region outside the actual residue of interest and smearing it equally across the residue’s atoms, so that the residue winds up having the requested formal charge. If you cared, you’d have to do that part yourself. —Eric
On Apr 3, 2025, at 2:12 AM, Tristan Croll <tcroll@altoslabs.com> wrote:
Hi Yang,
I'm glad you sorted out the D-amino acid situation (for the record, the standard PDB 3-letter codes for D amino acids are "D{first two letters of standard residue code}"). I haven't had much reason to work with these in the past, but trying it now with an example (9f01... it's amazing how much the cartoon for a D-protein sets off my "uncanny valley" vibes) once you have them named correctly things mostly work, but right now D-disulfides do not. Will have to think about the best strategy for that.
Regarding the Lys-Asp isopeptide... adding support for new user-defined residue-residue bonds is something I haven't had the chance to do (partly because of the vagaries of life/career, and partly because I've been watching the development of new force field approaches that would - once mature - remove the need for explicit residue templates entirely). Eric had this well worked out as an automated process in Chimera (in essence the workflow involves creating a model small molecule covering the two linked residues plus some caps to replace the residues up and down the chain, parameterising that using ANTECHAMBER, then applying the parameters back to the original residues in your model). Question for Eric: does the Chimera version write out any AMBER parameter files (i.e. .mol2/.frcmod) that could be used to make the corresponding OpenMM parameter files?
Best, Tristan
On Sun, Mar 30, 2025 at 12:31 PM Yang Lee via ChimeraX-users <chimerax-users@cgl.ucsf.edu <mailto:chimerax-users@cgl.ucsf.edu>> wrote:
Addendum: Identified the letter code for the D-residue, leaving only the isopeptide bond to address. _______________________________________________ ChimeraX-users mailing list -- chimerax-users@cgl.ucsf.edu <mailto:chimerax-users@cgl.ucsf.edu> To unsubscribe send an email to chimerax-users-leave@cgl.ucsf.edu <mailto:chimerax-users-leave@cgl.ucsf.edu> Archives: https://mail.cgl.ucsf.edu/mailman/archives/list/chimerax-users@cgl.ucsf.edu/
Altos Labs UK Limited | England | Company reg 13484917 Registered address: 3rd Floor 1 Ashley Road, Altrincham, Cheshire, United Kingdom, WA14 2DT

Hi Tristan and Eric, From hopelessness, I find myself newly heartened! I tried but failed to find mention of this isopeptide bond treatment in the original Chimera mailing list archives. Is the procedure mentioned here already part of the Add Charge menu function or a lower level function I can adapt? Also, is it something that can be easily jerry-rigged into ISOLDE's minimisation perhaps with a code change? Cheers, Yang

Hi Yang, I'm not certain what parameters exactly you need, but you can get ChimeraX to give you partial charges and GAFF atom types for the isopeptide-bonded residues. First you would give the residues non-standard names so that ChimeraX doesn't just look up the parameters in a table, e.g.: setattr residue1 r name XXY setattr residue2 r name XXZ The you just run Add Charge on your structure. You can write out the GAFF types and partial charges using Mol2 format, e.g.: save ~/parameterized.mol2 gaff true --Eric
On Apr 9, 2025, at 7:19 AM, Yang Lee via ChimeraX-users <chimerax-users@cgl.ucsf.edu> wrote:
Hi Tristan and Eric,
From hopelessness, I find myself newly heartened!
I tried but failed to find mention of this isopeptide bond treatment in the original Chimera mailing list archives. Is the procedure mentioned here already part of the Add Charge menu function or a lower level function I can adapt? Also, is it something that can be easily jerry-rigged into ISOLDE's minimisation perhaps with a code change?
Cheers, Yang _______________________________________________ ChimeraX-users mailing list -- chimerax-users@cgl.ucsf.edu To unsubscribe send an email to chimerax-users-leave@cgl.ucsf.edu Archives: https://mail.cgl.ucsf.edu/mailman/archives/list/chimerax-users@cgl.ucsf.edu/

Thanks Eric! I was about to say that (plus a blank .frcmod file) is all you'd need for a case like this (where the residue:residue linkage is a simple, well-parameterised amide bond) - but that would run into the issue that the standard AMBER forcefield doesn't include any parameters for (standard atom):(GAFF atom) combinations so it'd fail on the protein backbone. I'm totally swamped at the moment so won't be able to experiment myself for a while, but Yang: if you want to try it out what *should* work is to use your favourite text editor to manually replace all the GAFF atom types with the corresponding protein ones (you can find a table of GAFF atom types at https://emleddin.github.io/comp-chem-website/AMBERguide-AMBER-atom-types.htm... and standard types at https://www.uoxray.uoregon.edu/local/manuals/biosym/discovery/General/Forcef... - use the all-atom carbons in the latter). To convert to the format needed by ISOLDE, you'll need to first save each residue in isolation (which - Eric, correct me if I'm wrong - will require you to first split the structure using e.g. "split #1 atoms :XXY atoms :XXZ", followed by "save XXY.mol2 #1.1 gaff t; save XXZ.mol2 #1.2 gaff t") then create a couple of dummy .frcmod files (XXY.frcmod and XXZ.frcmod) in the same directory as the .mol2 files. I'm not sure of the minimal contents of a .frcmod, but you could start with the attached and see how that goes. To actually make the conversion, start ISOLDE, then, in the top ChimeraX menu, choose ISOLDE/Prep/Convert AMBER Files. If all goes well, that should create a .xml file for each .mol2/.frcmod pair it finds in the current working directory. In terms of converting over from GAFF to standard AMBER atom names, you can choose to do that either in the .mol2 or in the .xml files (personal preference, but I'd probably choose the latter since it doesn't have the fiddly layout requirements of .mol2). Good luck... while I'd love to provide something *much* neater than this, at the moment I truly don't know when I'll find the necessary time. Best, Tristan On Wed, Apr 9, 2025 at 8:04 PM Eric Pettersen via ChimeraX-users < chimerax-users@cgl.ucsf.edu> wrote:
Hi Yang, I'm not certain what parameters exactly you need, but you can get ChimeraX to give you partial charges and GAFF atom types for the isopeptide-bonded residues. First you would give the residues non-standard names so that ChimeraX doesn't just look up the parameters in a table, *e.g.*:
setattr *residue1* r name XXY setattr *residue2* r name XXZ
The you just run Add Charge on your structure. You can write out the GAFF types and partial charges using Mol2 format, *e.g.*:
save ~/parameterized.mol2 gaff true
--Eric
On Apr 9, 2025, at 7:19 AM, Yang Lee via ChimeraX-users < chimerax-users@cgl.ucsf.edu> wrote:
Hi Tristan and Eric,
From hopelessness, I find myself newly heartened!
I tried but failed to find mention of this isopeptide bond treatment in the original Chimera mailing list archives. Is the procedure mentioned here already part of the Add Charge menu function or a lower level function I can adapt? Also, is it something that can be easily jerry-rigged into ISOLDE's minimisation perhaps with a code change?
Cheers, Yang _______________________________________________ ChimeraX-users mailing list -- chimerax-users@cgl.ucsf.edu To unsubscribe send an email to chimerax-users-leave@cgl.ucsf.edu Archives: https://mail.cgl.ucsf.edu/mailman/archives/list/chimerax-users@cgl.ucsf.edu/
_______________________________________________ ChimeraX-users mailing list -- chimerax-users@cgl.ucsf.edu To unsubscribe send an email to chimerax-users-leave@cgl.ucsf.edu Archives: https://mail.cgl.ucsf.edu/mailman/archives/list/chimerax-users@cgl.ucsf.edu/
-- Altos Labs UK Limited | England | Company reg 13484917 Registered address: 3rd Floor 1 Ashley Road, Altrincham, Cheshire, United Kingdom, WA14 2DT

Hi Tristan and Eric, Thank you both for the extensive write-ups. Indeed, I shall try to follow along your suggestions and tinker on. No worries about official support on this edge case. I can well appreciate the demands of work/life. Many thanks for the invaluable assistance! Cheers, Yang

On Apr 10, 2025, at 4:38 AM, Tristan Croll <tcroll@altoslabs.com> wrote:
To convert to the format needed by ISOLDE, you'll need to first save each residue in isolation (which - Eric, correct me if I'm wrong - will require you to first split the structure using e.g. "split #1 atoms :XXY atoms :XXZ", followed by "save XXY.mol2 #1.1 gaff t; save XXZ.mol2 #1.2 gaff t”)
It’s easier than that. Add “atoms :XXY” to one save command and “atoms :XXZ” to the other. —Eric

Hi Tristan and Eric, Having put up fires that needed putting out and I finally had time to pick this up again. I'm happy to report that instructions worked as written! The combination of gaff-type .mol2 files and empty .frcmod files was sufficient for the FFXML file conversion. And the isopeptide bond geometry looks correct in simulation. Cheers for the help, both! Ta, Yang

Addendum: some odd mainchain behaviour as a result of the residue not being recognised as a regular peptide, but nothing a few restraints can't shoehorn and keep under control. In particular, secondary structure restraints still seem to hold.

Glad to hear it’s (mostly) working! This is where replacing the GAFF atom types with the equivalent AMBER protein atom types would help (see my earlier email). AMBER has no built-in parameters for (GAFF atom)-(non-GAFF atom) bonds, so the backbone connections to neighboring residues will be unrestrained. On Fri, 18 Apr 2025 at 11:38, Yang Lee via ChimeraX-users < chimerax-users@cgl.ucsf.edu> wrote:
Addendum: some odd mainchain behaviour as a result of the residue not being recognised as a regular peptide, but nothing a few restraints can't shoehorn and keep under control. In particular, secondary structure restraints still seem to hold. _______________________________________________ ChimeraX-users mailing list -- chimerax-users@cgl.ucsf.edu To unsubscribe send an email to chimerax-users-leave@cgl.ucsf.edu Archives: https://mail.cgl.ucsf.edu/mailman/archives/list/chimerax-users@cgl.ucsf.edu/
-- Altos Labs UK Limited | England | Company reg 13484917 Registered address: 3rd Floor 1 Ashley Road, Altrincham, Cheshire, United Kingdom, WA14 2DT

Ah, of course, I get it now! Apologies for the slow uptake. I'll poke at the conversion next. Cheers, Yang

Hi Tristan, Just an update. After some poking around, mostly with the .xml file as previously suggested, I struggled to get the residue parameter files to load. The errors indicated a failure to recognise atom types like "h" (for amide hydrogens) and "ct" (for C-alphas), perhaps suggesting that it was still expecting GAFF-type nomenclature. I noted that the two standard AMBER types that it took umbrage with do not exist in the GAFF list. I wonder if an appropriate .frcmod upstream would have changed the outcome somewhat. Will continue poking around a bit on Monday. Cheers, Yang

Hi Yang, AMBER protein atom types are upper case, whereas GAFF types are lower case. So the AMBER atom type for C-alphas (sp3 aliphatic C) is “CT” and for amide hydrogens (H bonded to nitrogen atoms) is “H”. Such as: ambermini-share-amber-dat-leap-parm-parm99.dat at master · choderalab-ambermini <https://github.com/choderalab/ambermini/blob/master/share/amber/dat/leap/par...> —Eric
On Apr 19, 2025, at 3:44 PM, Yang Lee via ChimeraX-users <chimerax-users@cgl.ucsf.edu> wrote:
Hi Tristan,
Just an update. After some poking around, mostly with the .xml file as previously suggested, I struggled to get the residue parameter files to load. The errors indicated a failure to recognise atom types like "h" (for amide hydrogens) and "ct" (for C-alphas), perhaps suggesting that it was still expecting GAFF-type nomenclature. I noted that the two standard AMBER types that it took umbrage with do not exist in the GAFF list.
I wonder if an appropriate .frcmod upstream would have changed the outcome somewhat. Will continue poking around a bit on Monday.
Cheers, Yang _______________________________________________ ChimeraX-users mailing list -- chimerax-users@cgl.ucsf.edu To unsubscribe send an email to chimerax-users-leave@cgl.ucsf.edu Archives: https://mail.cgl.ucsf.edu/mailman/archives/list/chimerax-users@cgl.ucsf.edu/

Hi Eric, Thank you for that. Tristan kindly sorted it out offline and, as a bonus, I've been helpfully educated on the case-sensitivity of the nomenclature as well. All is well and we have a happy isopeptide bond. Much thanks to yourself and Tristan! Cheers, Yang
participants (3)
-
Eric Pettersen
-
Tristan Croll
-
Yang Lee