On 18/07/2022 07:59, Cryo EM wrote:
Hi all,
I am working on a pdb of RNA where I intend to change the modified
nucleotides to their parent unmodified original residues. For example,
PSU to U, 1MG to G and so on.
I was wondering if there is a better way to do that by either manually
editing the pdb or changing them manually in coot one by one (in Edit:
Replace residues)?
Sounds hideous. That's what the API is for.
(define imol (read-pdb "rna.pdb"))
(let ((mutation-list (list ;; chain-id res-no new/standard-type
(list "A" 1 "A")
(list "A" 2 "C")
(list "A" 3 "G")))) ;; mutate to U seems broken
(for-each (lambda (m)
(let ((chain-id (list-ref m 0))
(res-no (list-ref m 1))
(new-type (list-ref m 2)))
(mutate-by-overlap imol chain-id res-no new-type)))
mutation-list))
You could do something similar in Python.
Despite changing the residues by latter way, there is an error while
running servalcat refinement. (attached).
Because of a naive implementation of is-nucleotide? Coot fails to detect
that the modified nucleotide is a nucleotide and so doesn't delete OP3
for you.
From coot-utils.scm:
(if (is-nucleotide? imol chain-id-in resno)
(if (residue-exists? imol chain-id-in (- resno 1) "")
(delete-atom imol-ligand "A" 1 "" " OP3" "")))
You know the residues that need to be replaced, so just loop over them
and call delete-atom for the "OP3".
Paul.
########################################################################
To unsubscribe from the CCP4BB list, click the following link:
https://www.jiscmail.ac.uk/cgi-bin/WA-JISC.exe?SUBED1=CCP4BB&A=1
This message was issued to members of www.jiscmail.ac.uk/CCP4BB, a mailing list
hosted by www.jiscmail.ac.uk, terms & conditions are available at
https://www.jiscmail.ac.uk/policyandsecurity/