Editing pdb file for a multimer
I plan to model a homomultimer by modeling separately each chain and then combining the results. To this concern, are python scripts available for (a) inserting the chain label at position 22 (which was not inserted the way I did), (b) renumbering the atom serial number, TER inclusive? I understand I have to learn seriously how to program with python. Thanks francesco pietra
Francesco Pietra wrote: > I plan to model a homomultimer by modeling separately each chain and > then combining the results.
Sure, you could do that - or alternatively, Modeller is quite capable of building multimer models from multimer templates (http://salilab.org/modeller/9v4/manual/node28.html).
> To this concern, are python scripts > available for (a) inserting the chain label at position 22 (which was > not inserted the way I did)
By default, Modeller generates single chain models with no chain ID, and multichain models with IDs A, B, C etc. But it is simple to change this behavior. Either use rename_segments (http://salilab.org/modeller/9v4/manual/node177.html) or assign chain IDs directly (http://salilab.org/modeller/9v4/manual/node307.html). You can do this in several ways: 1. Read in an existing PDB, assign chain IDs, then write it out (as in the examples above). 2. Override automodel.user_after_single_model(), and set the chain IDs there, immediately before each generated model is written to disk. 3. Override automodel.special_patches(), and set the chain IDs in there. This will have a similar effect to (2), except that the rename is done before any restraints are generated, so if you are adding user-defined restraints, those will need to use your new chain IDs to refer to the atoms.
> (b) renumbering the atom serial number, > TER inclusive?
Modeller always sets the atom serial numbers starting from 1, so there is no way to change that. I'm guessing you want to do this in order to combine multiple single-chain PDBs into one. But that's straightforward - just concatenate the single-chain PDBs, with a TER record in between; most programs won't care that the serial numbers or chain IDs are duplicated. But if they do, just read that concatenated file back into Modeller using complete_pdb(), then write it out again with model.write(). This will automatically reassign the atom serial numbers and chain IDs for you.
Ben Webb, Modeller Caretaker
participants (2)
-
Francesco Pietra
-
Modeller Caretaker