You are here

Protocol for adding/mutating non-canonical AA

3 posts / 0 new
Last post
Protocol for adding/mutating non-canonical AA

Hi all,

I have been trying for some time to implement non-canonical AAs into PyRosetta. I have the params file for the residue but when it is passed on via the -extra_res_fa , pyrosetta still won't recognize it. Next to pyrosetta being able to read this AA in a pdb, I also want to mutate (canonical) AA into modified AAs (say hydroxyl group into acrylate). The mutate_residue only takes one character as an argument that corresponds to the canonical AAs, whilst a three letter argument would be preferred. 

I have also thought about writing a patch for side-chain modifications but it is still unclear to me how I would be able to use this patch to mutate AAs in the sequence.

Does anyone have a solid protocol for incorporating non-canonical AAs and/or mutations involving non-canonical AAs?

Any help is appreciated, thanks!

Post Situation: 
Thu, 2021-03-25 08:14

Make sure there's no name collision between the three-letter code that you've assigned for your noncanonical and any of the existing noncanonicals in the database.  If you named your noncanonical XYZ, try:

grep "NAME XYZ" Rosetta/main/database/chemical/residue_type_sets/fa_standard/residue_types/* -r
grep "IO_STRING XYZ" Rosetta/main/database/chemical/residue_type_sets/fa_standard/residue_types/* -r

To mutate, use the MutateResidueMover, which takes a full residue type name.  Make sure that your noncanonical has the properties PROTEIN ALPHA_AA, as well as one of L_AA or ACHIRAL_BACKBONE.  (Note that Rosetta automatically generates D-amino acid equivalents of all L-amino acids, so if you want the D-amino acid, prepend "D" to the name when using the MutateResidueMover.  So "DXYZ" instead of "XYZ".)

Mon, 2021-03-29 10:39

Also, make sure that your starting pose is an all-atom pose, and not a centroid model.

Mon, 2021-03-29 10:39