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/

Reply via email to