mutatingEngine module
- mutate.mutatingEngine.mutate(coords, atName, mutationList)
function that implement mutation in input proteins
- Parameters:
coords (torch.Tensor) – shape: (Batch, nAtoms, 3) coordinates of the proteins. It can be generated using the madrax.utils.parsePDB function
atName (list) – shape: list of lists A list of the atom identifier. It encodes atom type, residue type, residue position and chain as an example GLN_39_N_B_0_0 refers to an atom N in a Glutamine, in position 39 of chain B. the last two zeros are used for the mutation engine This list can be generated using the madrax.utils.parsePDB function
mutationList (list) –
shape: list of lists a list of mutations.
every entry corresponds to a protein (same order of atName and coordinates)
every element of the list corresponds to a mutant. Every mutant can have 0, 1 or more mutations
every mutation is encoded with resNumber_chain_MutattionToImplement
the residue number and chain arethe same of the ones in the PDB file
as an example, if we have 2 proteins, we want to generate two mutants of the first one only
mutationList = [ [ [“10_A_GLY”,”10_B_GLY”], [“11_B_PHE”] ], [] ]
in this case we will obtain, mutant 1 with a GLY at position 10 of both chain A and B and mutant 2 having a PHE in position 11 of chain B. No mutant are implemented for the second protein.
- Returns:
coordinates (torch.Tensor) – shape: (Batch, nAtoms, 3) updated coordinates of the atoms, which include the mutants now
info_tensors (tuple) – updated set of precalculated information tensors required by the forcefield.