The Coot FAQ

Table of Contents

Next: , Up: (dir)   [Contents]

The Coot FAQ


Next: , Previous: Top, Up: Top   [Contents]

1 Citing Coot

The reference for Coot has been published: You can use this BibTeX database entry (which can be imported into EndNote)... format as you please:

@Article{emsley2010:coot,
  author =    {Paul Emsley and Bernhard Lohkamp and William G. Scott and Kevin Cowtan},
  title =     {Features and Development of Coot},
  journal =   {Acta Crystallographica Section D - Biological Crystallography},
  year =      2010,
  volume =    66,
  pages  =    486-501
}

The Coot paper has published in the proceedings of the 2009 CCP4 Study Weekend.

You can download the 2010 paper here:

For the sake of completeness, you can download the old 2004 paper here:


Next: , Previous: Citing, Up: Top   [Contents]

2 Building and Installing


Next: , Up: Building and Installing   [Contents]

2.1 I have Mac OS X. How do I get coot?

See Bill Scott’s Coot Page:


Next: , Previous: I have Mac OS X. How do I get coot?, Up: Building and Installing   [Contents]

2.2 How do I make the binary release work?

Download the appropriate tar file for you system. Untar it. Add the bin directory (the one that contains coot and coot-real) to your path and you are ready to go... You should not need to edit or use the setup/coot* files.


Next: , Previous: How do I make the binary release work?, Up: Building and Installing   [Contents]

2.3 Which binary tar file shall I use?

Download the appropriate tar file for you system. Untar it. Add the bin directory (the one that contains coot and coot-real) to your path and you are ready to go... You should not need to edit or use the setup/coot* files


Next: , Up: Which binary tar file shall I use?   [Contents]

2.3.1 Coot on 64-bit RHEL 6

Robert Dagil found that if he used the Coot binary-Linux-x86_64-centos-5-python-gtk2, then he could get Coot to start if he added the following links to in the lib directory of the coot binary distro.

ln -s libldap-2.2.so.7 -> /usr/lib64/libldap-2.4.so.2

ln -s libssl.so.4 -> /usr/lib64/libssl.so.1.0.0

ln -s libcrypto.so.4 -> /usr/lib64/libcrypto.so.1.0.0


Next: , Previous: Coot on 64-bit RHEL 6, Up: Which binary tar file shall I use?   [Contents]

2.3.2 Additional Note for SuSE 9.1

Michael Latchem reports that coot-0.0.20-binary-Linux-Fedora-Core-1.tar.gz works with SuSE 9.1 if one makes the following link first:

$ ln -s /usr/lib/libpt_linux_x86_r.so.1.6.5 $COOT_PREFIX/lib/libpt.so.1.5.0


Next: , Previous: Additional Note for SuSE 9.1, Up: Which binary tar file shall I use?   [Contents]

2.3.3 Additional Note for SuSE 9.3

Christophe Briand reports that Coot version 0.1 runs on Suse 9.3, using the Redhat 8 binary after making the following link

$ ln -s /usr/lib/libImlib2.so.1.1.1 /usr/lib/libImlib.so.11

I presume that this would also work:

$ ln -s /usr/lib/libImlib2.so.1.1.1 $COOT_PREFIX/lib/libImlib.so.11


Previous: Additional Note for SuSE 9.3, Up: Which binary tar file shall I use?   [Contents]

2.3.4 Additional Note for SuSE 10.1

You need to install the imlib-1.9.14-215 rpm

ln -s /opt/gnome/lib64/libImlib.so.1.9.14 $COOT_PREFIX/lib/libImlib.so.11

or (depending on your architecture):

ln -s /opt/gnome/lib/libImlib.so.1.9.14 $COOT_PREFIX/lib/libImlib.so.11


Next: , Previous: Which binary tar file shall I use?, Up: Building and Installing   [Contents]

2.4 What are the md5sums?

The md5sum is a means to determine if the file was corrupted during transfer. Run md5sum on the downloaded tar file and compare the result to the md5sum file on the server. If the results are the same, then the tar file is uncorrupted (or more strictly speaking: is corrupted in the same way as the file on the server).


Next: , Previous: What are the md5sums?, Up: Building and Installing   [Contents]

2.5 I get a libpt error when I try to start coot on Fedora Core 2

$ coot
coot: error while loading shared libraries: libpt.so.1.6.5: cannot
open shared object file: No such file or directory

You need to install pwlib:

pwlib-1.6.5-1


Next: , Previous: I get a libpt error when I try to start coot on Fedora Core 2, Up: Building and Installing   [Contents]

2.6 I get a tiff error when I try to start coot on Mac OS X

$ coot
dyld: coot version mismatch for library: /sw/lib/libtiff.3.dylib (compatibility 
version of user: 3.6.0 greater than library's version: 3.5.0)

This is because you have the default fink (stable). Coot is part of unstable fink so you need to enable the unstable branch (see Bill Scott’s page (above)).


Next: , Previous: I get a tiff error when I try to start coot on Mac OS X, Up: Building and Installing   [Contents]

2.7 I get a jpeg error when I try to start coot 0.1.2 on my Intel Mac

dyld: Symbol not found: __cg_jpeg_resync_to_restart
Referenced from: /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/ImageIO
  Expected in: /Users/xxx/coot-0.1.2_bin/lib/libjpeg.62.dylib

Atsushi Nakagawa says that this can be fixed by replacing xxx/Darwin-chihiro.chem.york.ac.uk-pre-release/lib/libjpeg.dylib with /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/libJPEG.dylib

Or read the advice in $COOT_PREFIX/bin/coot about Intel Mac usage.


Next: , Previous: I get a jpeg error when I try to start coot 0.1.2 on my Intel Mac, Up: Building and Installing   [Contents]

2.8 I get a glut error when I try to start coot on Fedora Core 3

./coot: error while loading shared libraries: libglut.so.3: cannot open shared
object file: No such file or directory

You need to install these rpms:

freeglut-2.2.0-14
freeglut-devel-2.2.0-14

Next: , Previous: I get a glut error when I try to start coot on Fedora Core 3, Up: Building and Installing   [Contents]

2.9 When I start Coot it crashes after load "hello.scm"

I don’t know why it crashes. To work around, comment out (with a semicolon) "hello.scm" in the $COOT_PREFIX/share/coot/scheme/coot.scm file.


Next: , Previous: When I start Coot it crashes after load "hello.scm", Up: Building and Installing   [Contents]

2.10 How do I compile coot and its dependencies?

It’s somewhat involved, but hopefully straightforward if you follow the autobuilder:

http://coot.googlecode.com/svn/trunk/build-it-gtk2-simple

Coot requires mmdb, clipper, glut, gtk, gtkglext. gtkglext requires GTK+ and OpenGL. gtk requires glib. clipper requires fftw, mccp4 and mmdb. Optionally you can enhance coot using gtk-canvas, libSSM, guile/guile-gtk/guile-gui/guile-www or python (the support for python is not so advanced).

These issues are sorted out in the autobuilder. Just download it, change a few parameters to fit your personal system at the top and execute it.


Previous: How do I compile coot and its dependencies?, Up: Building and Installing   [Contents]

2.11 How do I report a bug?

For general background on what a software developer wants to see (and not see) in a bug report:

http://www.chiark.greenend.org.uk/~sgtatham/bugs.html

For the case of Coot, I would also like to know the exact binary you are using

coot --version-full

and the operating system on which you are running it.

Also, the last several lines of the console output is often useful.


Next: , Previous: Building and Installing, Up: Top   [Contents]

3 Configuration Problems


Next: , Up: Configuration Problems   [Contents]

3.1 I get a strange message when I use coot-scheme files

You mean this one?

load "coot-gui.scm"
(Error in proc: misc-error  args:  (#f ~A ~S (no code for module (gtk gdk)) #f))

You need to install guile-gtk. Here is the source, but your distribution may have rpms or debs.

http://www.mirrorservice.org/sites/ftp.gnu.org/gnu/guile-gtk/guile-gtk-0.41.tar.gz


Next: , Previous: I get a strange message when I use coot-scheme files, Up: Configuration Problems   [Contents]

3.2 I get bizarre connectivity and other weirdness on reading files

You mean something like this?

http://www.biop.ox.ac.uk/coot/doc/ugly.png

You have a non-default language. setenv LANG C (or LANG=C if you prefer) before starting coot. This has recently been added to the setup files in the source code (it is not in version 0.0).

The problem may also be due to LC_ALL. So, if the above doesn’t work try also:

$ setenv LC_ALL C


Previous: I get bizarre connectivity and other weirdness on reading files, Up: Configuration Problems   [Contents]

3.3 On my Mac the menu fonts are too big - how can I make them smaller?

Edit /Library/Coot/etc/gtk-2.0/gtkrc and set

gtk-font-name = "Sans 9"


Next: , Previous: Configuration Problems, Up: Top   [Contents]

4 Using Coot


Next: , Up: Using Coot   [Contents]

4.1 How does it look when Coot starts properly?

Like this:

http://www.ysbl.york.ac.uk/%7Eemsley/coot/coot-startup.log

Things to look out for: Error reading all scm files, error reading Refmac dictionary files, error reading colours.def, error reading syminfo.lib, error finding splash-screen image, error reading cootrc file, error finding reference structures (e.g. from COOT_REF_STUCTS). So, if you get error messages or warning when coot start, you can expect it to be other than fully functional.


Next: , Previous: How does it look when Coot starts properly?, Up: Using Coot   [Contents]

4.2 I get funny messages when starting Coot - should I worry?

e.g.

Gtk-WARNING **: Unable to locate loadable module in module_path: "libbluecurve.so"

No, don’t worry - Gtk just can’t find a theme. Things will look a bit different to how they otherwise might, but everything will still work.


Next: , Previous: I get funny messages when starting Coot - should I worry?, Up: Using Coot   [Contents]

4.3 I get funny messages when finishing Coot - should I worry?

These messages:

Some deprecated features have been used.  Set the environment
variable GUILE_WARN_DEPRECATED to "detailed" and rerun the
program to get more information.  Set it to "no" to suppress
this message.

ObjectCache: Leaked 0002 refs to P 2ac 2ab
ObjectCache: Leaked 0002 refs to P 2ac 2ab Nuvw = ( 108, 132,  64)}

are nothing to worry about.  I will clean them up one day (for release
0.7, I hope).

Next: , Previous: I get funny messages when finishing Coot - should I worry?, Up: Using Coot   [Contents]

4.4 On Fedora systems how do I make the window focus more useful?

The default window focusing (using Metacity I believe) is a PITA when using Coot. Try this:

Hat -> Preferences -> Windows -> Select windows when the mouse moves over them: check that box.

Hat --> Preferences -> Windows -> To move a window, press and hold this key then grab the window:

Change from

Control

to Alt or Super


Next: , Previous: On Fedora systems how do I make the window focus more useful?, Up: Using Coot   [Contents]

4.5 On Mac OSX how do I make the window focus more useful?

The default window focusing with the Aqua window manager is a PITA when using Coot. Try typing in a terminal this to set "Focus Follows Mouse":

$ defaults write com.apple.x11 wm_ffm true

On a more modern version of Mac OS X (10.5+), that might be:

$ defaults write org.x.X11 wm_ffm true

(thanks to William Scott for pointing that out).

You might need to restart X11 to activate this setting.


Next: , Previous: On Mac OSX how do I make the window focus more useful?, Up: Using Coot   [Contents]

4.6 On a Mac OSX laptop how do I work without a mouse?

You can use this setting:

X11 -> Preferences -> Emulate 3 Button mouse

It will simulate the pressing of middle and right mouse when you use it in conjunction with Option and Apple keys.


Next: , Previous: On a Mac OSX laptop how do I work without a mouse?, Up: Using Coot   [Contents]

4.7 How do I change the contour level without a scroll-wheel mouse?

Keyboard + and -.


Next: , Previous: How do I change the contour level without a scroll-wheel mouse?, Up: Using Coot   [Contents]

4.8 "Unmodelled Blobs" takes me to space - why?

One problem could be that the symmetry and cell of the map does not match the symmetry and cell of the related protein.

Or perhaps it’s because Coot does not use the "viewing" contour level to generate blob map point clusters, i.e. it could be using a contour level much below what you are looking at. Coot positions the view at the centre of a blob. If the blob consists of an "arc" of points (as is often the case) the centre of the blob will not be in the blob.


Next: , Previous: "Unmodelled Blobs" takes me to space - why?, Up: Using Coot   [Contents]

4.9 Where has my screen text (or labels) gone?

"I can’t see the contour level at the top of the screen or and the atom labels are faint or non-existant."

This seems like a graphics driver bug, or a hardware problem. If you turn the screenbackground white you might be able to see the text.

If you bring the atom to the centre of the screen, the atom label becomes more readable.


Next: , Previous: Where has my screen text (or labels) gone?, Up: Using Coot   [Contents]

4.10 How can I speed up moving betwee residues using “Space”?

Edit -> Preferences -> Smooth Recentering -> Number of Steps -> 10


Next: , Previous: How can I speed up moving betwee residues using ``Space''?, Up: Using Coot   [Contents]

4.11 How do I make the dialogs be in the right place?

"I’m bored of moving the dialogs around every coot session. How do I make coot know where I want them?

You can use the "Position Dialogs" function in the Extensions -> Settings menu.

For a more manual way, try

http://www.ysbl.york.ac.uk/%7Eemsley/coot/position-dialogs.txt.


Next: , Previous: How do I make the dialogs be in the right place?, Up: Using Coot   [Contents]

4.12 Does it work in hardware stereo?

It works in quad buffered stereo mode ("stereo-in-a-window"). You will need a recent version and either use the Draw -> Stereo dialog or pass the argument --stereo.


Next: , Previous: Does it work in hardware stereo?, Up: Using Coot   [Contents]

4.13 Does Coot work in side-by-side stereo mode?

Yes.


Next: , Previous: Does Coot work in side-by-side stereo mode?, Up: Using Coot   [Contents]

4.14 Does Coot work with a Zalman stereo monitor?

Yes. Remember to use the DVI cable (not VGA) [thanks Allen Sickmier].

Warren DeLano: A line width of 2 pixels wide or greater is essential for achieving a good stereo effort with electron density meshes, "wire" bonds, etc.

You can achieve this in Coot using:

(set-map-line-width 2)

You might like also to turn on antialiasing (see below).


Next: , Previous: Does Coot work with a Zalman stereo monitor?, Up: Using Coot   [Contents]

4.15 How do you make the antialiasing work better?

The build-in antialiasing in Coot is not very good - it needs to be improved.

If you have an nvidia card, you can turn on antialiasing using the environment variable __GL_FSAA_MODE. I set it to 5 for my graphics card, the best setting (in the range 1-20 or so) depends on your hardware.

Alternatively, use nvidia-settings

Antialiasing Settings -> Override Application Setting, 16x Antialiasing (on the slider)

Then restart coot.


Next: , Previous: How do you make the antialiasing work better?, Up: Using Coot   [Contents]

4.16 I have problems reading a CNS map (or mask) into Coot

  1. Don’t do it. Use CNS data instead and let Coot take care of the map generation.
  2. Kevin Cowtan:: Change the setting in CNS which controls the extent of the output map. Instead of outputting a map covering a single molecule, you need to output a map covering a whole asymmetric unit (or if you prefer a whole unit cell).

    The X-PLOR maps output by CNS are output in O mode, not Coot mode, by default. This is due to a fundamental difference in understanding what a map is between programs which work crystal space (e.g. Coot, Quanta, XtalView) and those which don’t.


Next: , Previous: I have problems reading a CNS map (or mask) into Coot, Up: Using Coot   [Contents]

4.17 What are the colours of the difference map and can I "invert" them?

Green is positive

Red is negative

To change the colour scheme (other than simply changing the map colour wheel):

(set-swap-difference-map-colours 1)


Next: , Previous: What are the colours of the difference map and can I "invert" them?, Up: Using Coot   [Contents]

4.18 How do I label an atom?


Next: , Previous: How do I label an atom?, Up: Using Coot   [Contents]

4.19 I don’t like your default REFMAC parameters. How do I change them?

There are 2 ways. Either create a file called refmac-extra params in the directory in which you started coot, e.g. "http://www.ysbl.york.ac.uk/%7Eemsley/coot/refmac-extra-params"

or

define (for example in you $HOME/.coot file) the variable refmac-extra-params, e.g.

(define refmac-extra-params (list "WEIGHT 0.1" "SOLVENT NO" "REFI BREF ISOT" "NCYCLES 6"))


Next: , Previous: I don't like your default REFMAC parameters. How do I change them?, Up: Using Coot   [Contents]

4.20 How do I put a pointer into a blob of density?

(You can then use Measures -> Pointer Distances if you wish.)


Next: , Previous: How do I put a pointer into a blob of density?, Up: Using Coot   [Contents]

4.21 How do I "grab" just one atom in Real Space Refinement/Regularization?

Cntl Left-mouse-click over an intermediate (white) atom. Drag and drop. Make sure that you have focus in the graphics window when you press Ctrl (which, in Windows, that the graphics window has a blue title bar rather than a grey one). (You need to be precise with the clicking - if the view rotates instead of the atom moving then you know that you have been insufficiently precise.)

If you don’t want regularization/refinement, use the Rotate/Translate tool and Ctrl-click the atom(s) to move them one at a time.

If you want "on the fly" regularization/refinement of fragments that include atoms that don’t move when you "drop" them you need to fix them with the Fix Atom tool before regularization/refinement.


Next: , Previous: How do I "grab" just one atom in Real Space Refinement/Regularization?, Up: Using Coot   [Contents]

4.22 My sidechains are being sucked into the density for metal - how do I stop that?

The best way to fix that is to add proper (bonding) restraints between the metal and the sidechain (type).

If those are not available, you can mask out the density of the metals.

Extensions -> Maps -> Mask Map by Atom Selection...

For example, atom selection of "//B/[CO]" will remove all the density for Cobalts in the "B" chain.

Then you will need to set the masked map as the map to be used for refinement, of course.


Next: , Previous: My sidechains are being sucked into the density for metal - how do I stop that?, Up: Using Coot   [Contents]

4.23 My Density Fit Graph bars are all red - how do I fix that?

The bar heights are set to be sensible for average resolution data on the absolute scale. If that is not the case for your data then you may well see red bars.

You can change the scale:

Extensions -> Refine… -> Set Density Fit Graph Weight…


Next: , Previous: My Density Fit Graph bars are all red - how do I fix that?, Up: Using Coot   [Contents]

4.24 How do I bind a function to a key?

Like this:

;; Bind a function to the "v" key (Shift-V would be bound to "V").
(add-key-binding "Place atom at pointer" "v" 
   (lambda ()
      (set-pointer-atom-is-dummy 1)
      (place-atom-at-pointer)))

Next: , Previous: How do I bind a function to a key?, Up: Using Coot   [Contents]

4.25 How do I force Coot to clean up all the time?

By default, Coot cleans out the coot-backup directory files older than 7 days every 7 days. If you want Coot to clean up all backup files every time it exits, add this to your ~/.coot file.

(define clear-backups-maybe (lambda () (delete-coot-backup-files 'delete) #f))


Next: , Previous: How do I force Coot to clean up all the time?, Up: Using Coot   [Contents]

4.26 I can’t mutate my broken residue

Question: I have a residue that has one or more missing mainchain atoms. I want to mutate a "fresh" residue in - but I can’t. What should I do?

Answer: If any of the CA, C or N atoms of a residue are missing then mutate can’t work (it needs these atoms to do the least-squares fit). This is what I do in such a case: first delete the residue, then add a new one with "Add Terminal Residue..." then "Mutate -> Auto Fit..." to the required type, then Refine Zone.


Next: , Previous: I can't mutate my broken residue, Up: Using Coot   [Contents]

4.27 How do I read a coordinates file with duplicate residue numbers?

Question: Coot says this when I try to read 2vqr.pdb:

INFO:: Reading coordinate file:2vqr.pdb
WARNING:: Error reading small-molecule cif "2vqr.pdb"
There was an error reading 2vqr.pdb.
ERROR 42 READ: Duplicate sequence number and insertion code.
         LINE #1119
     ATOM    445  N  BCYS A  57      35.391  28.095  68.681  0.40 16.84           N

This is a file from PDB (2vqr) and should be correct in format.

Answer: Add this to your $HOME/.coot-preferences/startup.py file:

allow_duplicate_sequence_numbers()

This is not the default because it makes coot crash elsewhere (or maybe it only used to and it’s fixed now - not sure).


Next: , Previous: How do I read a coordinates file with duplicate residue numbers?, Up: Using Coot   [Contents]

4.28 Can I make the spin mode rotate slower?

Yes, Extensions -> Settings -> Set Spin Speed.


Next: , Previous: Can I make the spin mode rotate slower?, Up: Using Coot   [Contents]

4.29 Does Coot use CONNECT records?

No.


Next: , Previous: Does Coot use CONNECT records?, Up: Using Coot   [Contents]

4.30 Does Coot use LINK records?

Yes.


Next: , Previous: Does Coot use LINK records?, Up: Using Coot   [Contents]

4.31 How do I read many PDB files on the command line?

$ coot --pdb pdb-1.pdb --pdb pdb-2.pdb --pdb pdb-3.pdb *.pdb etc.


Next: , Previous: How do I read many PDB files on the command line?, Up: Using Coot   [Contents]

4.32 How do I setup auto-completion of command line options?

For tcsh, add this to you $HOME/.tcshrc (or $HOME/.cshrc file, if that’s what you use):

set noglob
  complete coot  \
        n/--coords/f:*{.pdb,.res,.brk,.brk.gz,.ent,.ent.gz,.pdb.gz}/ \
        n/--data/f:*{.mtz,.cif,.fcf}/ \
        n/--auto/f:*.mtz/ \
        n/--script/f:*{.scm,.py}/ \
        c/--/"(data auto coords script small no-graphics no-state-script)"/
unset noglob

Next: , Previous: How do I setup auto-completion of command line options?, Up: Using Coot   [Contents]

4.33 How do 2 people use Coot with the same structure?

The issue here is the backup directory coot-backup. By default, it is created with strict permissions. I would recommend creating a directory to which you both can write and setenv COOT_BACKUP_DIR to that directory.


Next: , Previous: How do 2 people use Coot with the same structure?, Up: Using Coot   [Contents]

4.34 How do I find CIS-peptides in my structure?

Extensions -> Modelling -> Residues with CIS Peptide Bonds


Previous: How do I find CIS-peptides in my structure?, Up: Using Coot   [Contents]

4.35 How do I do a superposition on just a part of my structure?

There are a number of solutions, depending on the problem


Previous: Using Coot, Up: Top   [Contents]

5 Other Coot Information


Next: , Up: Other Coot Information   [Contents]

5.1 Coot for Microsoft Windows systems?

Bernhard Lohkamp has a web page for WinCoot http://bernhardcl.github.io/coot/.


Next: , Previous: Coot for Microsoft Windows systems?, Up: Other Coot Information   [Contents]

5.2 What database do you use for the Ramachandran plot?

Coot uses clipper’s Ramachadran data - which is the Richardson’s Top500: http://kinemage.biochem.duke.edu/databases/top500.php


Next: , Previous: What database do you use for the Ramachandran plot?, Up: Other Coot Information   [Contents]

5.3 What library do you use for the Rotamers?

The Richardsons’ (Son of Penultimate) Rotamer Library.


Next: , Previous: What library do you use for the Rotamers?, Up: Other Coot Information   [Contents]

5.4 How do I search the Manuals and the Mailing list Archive?

By using google. For example, if you wanted to make a search for Coot’s "virtual trackball", use the google search:

virtual trackball coot site:www2.mrc-lmb.cam.ac.uk


Previous: How do I search the Manuals and the Mailing list Archive?, Up: Other Coot Information   [Contents]

5.5 What do those abreviations mean?