Cookies help us deliver our services. By using our services, you agree to our use of cookies. More information

Changes

From CCP4 wiki

Coot

2,786 bytes added, 08:26, 21 January 2010
add 2 Q/A from mailinglist; put Coot devel Q into Q/A section
Alternatively, if you use gnome or xfce4, you can open the theme manager and just make it open the downloaded Glossy_P tarball, and it should add this as a theme.
=How can I get involved with Coot development?Assorted questions and answers (from the mailinglist)=
Join It should be noted that the [[Coot Janitors]] project. This is a project to get new people involved in improving Coot, by acting as a clearing house for simple tasks which need doing, answers ("A") are from Paul Emsley himself (and providing documentation for doing themwere maybe slightly edited).
=Assorted questions =Coot development== Q: How can I get involved with Coot development? A: Join the [[Coot Janitors]] project. This is a project to get new people involved in improving Coot, by acting as a clearing house for simple tasks which need doing, and answers (from the mailinglist)=providing documentation for doing them.
It should be noted that the answers ("A") are from Paul Emsley himself (and were maybe slightly edited).
==NCS edits==
A: For the record, you can't refine symmetry-related disulfides in Coot (as of Nov 3, 2009).
 
==Macros in COOT==
 
Q: How to use macros in COOT? Do they need to be written in Python or another language that I had not heard of before? Where can I find a low level description of how to write macros with some examples (I know nothing about Python, except that it is fashionable)?
 
A: The other language is a form of Lisp, called [http://en.wikipedia.org/wiki/Scheme_(programming_language) Scheme]. You can learn about programming python in many ways of course (not least the [http://docs.python.org/tutorial/ python tutorial], which is what I read first). The coot python extensions are described in the documentation. There is a standard trivial formatting change that has to be made to get the syntax right for python, see "Python Scripting" [[http://www.ysbl.york.ac.uk/~lohkamp/coot/wincoot-faq.html|here]]. There is a growing collection of coot scripts in this Wiki article.
 
==LSQ superpositions==
 
Q: Do an LSQ superposition using specified residues in multiple chains (superposing one oligomer on another).
 
A: Something like this then?
 
clear_lsq_matches()
# specs for reference then moving
add_lsq_match(20, 90, "A", 20, 90, "A", 1)
add_lsq_match(20, 90, "B", 20, 90, "B", 1)
add_lsq_match(15, 75, "D", 15, 75, "D", 1)
apply_lsq_matches(1, 2)
 
which presumes that the reference molecule is in 1 and the moving molecule 2.
 
Q: How to do a LSQ superposition of a homologous structure onto my working structure using ± N residues about the current position, where N is a variable (not essential, could be fixed) and the current position is the last residue that I clicked on.
 
A: That is more involved - and more useful because it can be dynamic. Something like the following perhaps (in Scheme, just for amusement (not tested)). You will need to set imol-ref, perhaps by reading in the reference pdb, as demonstrated below. The function is bound to Shift-Y.
 
(define dynamic-lsq-range-extent 2) ;; ± 2 residues either side of centre residue
(define imol-ref (read-pdb "reference.pdb"))
;; convert between the input reference chain id and the chain id of
;; the moving molecule that corresponds to that chain
;;
(define (mov-match-chain ref-chain-id)
ref-chain-id)
(define (dynamic-lsq-match)
;; get the current residue and use that to make residue ranges for
;; an LSQ fit
;;
(using-active-atom
(clear-lsq-matches)
(add-lsq-match (- aa-res-no dynamic-lsq-range-extent)
(+ aa-res-no dynamic-lsq-range-extent)
aa-chain-id
(- aa-res-no dynamic-lsq-range-extent)
(+ aa-res-no dynamic-lsq-range-extent)
(mov-match-chain aa-chain-id)
1)
(apply-lsq-matches aa-imol imol-ref)))
(add-key-binding "Dynamic LSQ overlay" "Y" dynamic-lsq-match)
1,247
edits

Navigation menu