Software for macromolecular model-building
Switch branches/tags
v-0.8.2 revision-count-7658 revision-count-7654 revision-count-7651 revision-count-7644 revision-count-7633 revision-count-7631 revision-count-7607 revision-count-7606 revision-count-7597 revision-count-7592 revision-count-7557 revision-count-7555 revision-count-7553 revision-count-7517 revision-count-7503 revision-count-7479 revision-count-7477 revision-count-7428 revision-count-7425 revision-count-7414 revision-count-7409 revision-count-7405 revision-count-7370 revision-count-7275 revision-count-7274 revision-count-7273 revision-count-7246 revision-count-7215 revision-count-7207 revision-count-7201 revision-count-7200 revision-count-7192 revision-count-7173 revision-count-7168 revision-count-7130 revision-count-7109 revision-count-7103 revision-count-7096 revision-count-7095 revision-count-7094 revision-count-7093 revision-count-7088 revision-count-7078 revision-count-7032 revision-count-7030 revision-count-7028 revision-count-7027 revision-count-7026 revision-count-7010 revision-count-7000 revision-count-6998 revision-count-6985 revision-count-6960 revision-count-6956 revision-count-6954 revision-count-6943 revision-count-6939 revision-count-6938 revision-count-6928 revision-count-6925 revision-count-6924 revision-count-6923 revision-count-6922 revision-count-6921 revision-count-6920 revision-count-6919 revision-count-6918 revision-count-6887 revision-count-6883 revision-count-6882 revision-count-6881 revision-count-6870 revision-count-6862 revision-count-6860 revision-count-6857 revision-count-6838 revision-count-6837 revision-count-6792 revision-count-6790 revision-count-6788 revision-count-6699 revision-count-6687 revision-count-6686 revision-count-6674 revision-count-6672 revision-count-6669 revision-count-6656 revision-count-6651 revision-count-6649 revision-count-6629 revision-count-6628 revision-count-6603 revision-count-6602 revision-count-6578 revision-count-6577 revision-count-6569 revision-count-6567 revision-count-6559 revision-count-6553
Nothing to show
Clone or download
Permalink
Failed to load latest commit information.
analysis Rework the output format from improper-dihedrals Jun 15, 2018
angles Switch argument order for skeletonize_map(). Sep 24, 2015
auxil Clear up unsigned int comparison in catcheck Aug 8, 2016
build unsigned int clean-up. Nov 19, 2015
burn-up-aside Add files for burn-up graph Dec 16, 2017
burn-up Update notes Jun 22, 2018
canyon Add copyright notices to some files Sep 1, 2016
ccp4mg-utils Division by zero protection - static analysis cleanup. Jun 9, 2015
compat More tweaking of getopt code Aug 20, 2018
coords Add pre-proline to Ramachandran Sep 26, 2018
coot-surface Coot should only make libraries with coot prefix Aug 27, 2016
coot-utils Add pre-proline to Ramachandran Sep 26, 2018
cootaneer Clear up unsigned int comparison in cootaneer Aug 5, 2016
cootilus More clean up of unsigned int comparisons in cootilus Aug 6, 2016
data Add cho-acedrg data directory Nov 16, 2017
db-main Make check updates Jul 25, 2018
density-contour Turn off "only in-cell" EM map representation Sep 25, 2018
doc Trivial: update FAQ (duplicate residue numbers) Jan 23, 2018
force-field Add some force-field testing/play code. Nov 17, 2010
geometry Convert getopt_long() to coot_getopt_long() Aug 16, 2018
goograph Add a bar in the map density histogram Jan 6, 2018
greg-tests Update tests to work with new format restraints Sep 25, 2018
high-res Catch variables by const reference cleanup May 11, 2018
ideal Remove link debugging Sep 25, 2018
lbg Fix linking of boost Sep 25, 2018
libgtkgraph Catch variables by const reference cleanup May 11, 2018
lidia-core Fix linking of boost Sep 25, 2018
ligand Convert getopt_long() to coot_getopt_long() Aug 16, 2018
macros Update Rama to Top8000 Sep 26, 2018
man Add copyright notices to some files Sep 1, 2016
mini-mol Catch variables by const reference cleanup May 11, 2018
pdb-templates Add link-by-torsion-to-NAG-core-NAG-SER.tab Jul 25, 2018
pixmaps Add pre-proline to Ramachandran Sep 26, 2018
pli Fix linking of boost Sep 25, 2018
po Stop Makefile depending on stamp-it. Stops things going into an endle… May 24, 2007
protein_db Release-0.8.7 Nov 8, 2016
pyrogen Update windows pyrogen.bat. Sep 25, 2018
python-tests Update tests to work with new format restraints Sep 25, 2018
python Fix intendation in enhanced_ligand.py. Sep 26, 2018
rama-data Convert to GPL version 3 the files that had been missed previously. Oct 7, 2009
rcrane Fix up the problem of residue info indexing in RCrane that caused it … May 15, 2018
restraints-editor Big updates to the restraints editor. Merge it into the main line. Apr 21, 2008
scheme Map properties dialog now displays the resolution Sep 25, 2018
sequence-view Remove remnants of $(INCLUDES). Mar 23, 2015
setup Make the license clearly version 3. Jun 7, 2009
skeleton Make cis-peptide markup specific model-specific Feb 8, 2018
src In rama plot, #ifdef corrections for clipper old/standard clipper Sep 26, 2018
srs-inspect Add copyright notices to some files Sep 1, 2016
surface Cleanups for surface code to use std::vector clear() when using gcc-4… Oct 4, 2017
tw INCLUDES -> AM_CPPFLAGS Feb 13, 2015
update-binary enable (python) updates (only tested for windows as yet) Jan 4, 2010
utils Fix bug in split_string() Sep 21, 2018
windows mall Windows fixes Mar 4, 2018
ABOUT-NLS Initial import to Google Code. Mar 12, 2007
AUTHORS Add internal test for ramachandran angles. Move phi_psi_t to utils. Jul 11, 2008
BUGS Various python script updates Jun 29, 2017
COPYING GPL version 3 Jul 2, 2007
ChangeLog Release 0.8.9.1 Mar 31, 2018
DONE Update TODO, Put old TODOs in DONE. Sep 24, 2008
INSTALL Update INSTALL and README Aug 12, 2016
Makefile.am Move protein-ligand code into pli directory Jul 17, 2017
NEWS Initial import to Google Code. Mar 12, 2007
README Add a trivial README Aug 16, 2016
README.md Update README.md May 28, 2018
RELEASE-NOTES Add symmetry clash check for add-linked-residue-add-cho-function Jul 29, 2018
TODO Update notes Sep 18, 2016
_config.yml Set theme jekyll-theme-slate May 28, 2018
acconfig.h Initial import to Google Code. Mar 12, 2007
autogen.sh Trivial: clean up dir-list for autogen.sh Nov 10, 2017
bldnotes Sync with Pauls master Mar 4, 2018
bldnotes-2008 split and update (bl)dnotes Jan 13, 2009
bldnotes-2009 cleanup bldnotes Apr 6, 2010
build-it Bump the clipper version in build-it Sep 26, 2018
build-it-gtk2 Adjustments in setting dist_name and dist_ver (needed for RHEL 6 (and… Jul 31, 2013
build-it-gtk2-Darwin Add the ports-based Darwin build script. First bash. Jan 7, 2012
build-it-gtk2-simple Add copyright notices to some files Sep 1, 2016
build-it-win Update Rama to Top8000 Sep 26, 2018
build-web-page-builder.scm Fix the RHEL 4 64-bit python build tag. Jan 30, 2009
clean-changes.sh Use atomic locks for atom position derivatives in refinement May 11, 2017
colours.def Initial import to Google Code. Mar 12, 2007
config.guess Modern versions of config.guess and config.sub. Sep 27, 2014
config.sub Modern versions of config.guess and config.sub. Sep 27, 2014
configure.ac Fix boost linking on Windows Sep 25, 2018
coot-gtk2-try2.glade Add try2 of the coot GTk2 glade interface. Oct 21, 2007
coot-gtk2.glade Map properties dialog now displays the resolution Sep 25, 2018
coot.appdata.xml Add a category for appdata file Mar 20, 2017
coot.desktop coot.desktop now validates Aug 6, 2016
cootrc.template fix icon sizes for toolbar preferences and other modelling toolbar (this Apr 24, 2011
copyright-disclaimer.txt Initial import to Google Code. Mar 12, 2007
count-loc Initial import to Google Code. Mar 12, 2007
cycle-page-builder.scm Add ubuntu-18.04 to the build hosts Jun 12, 2018
depcomp Initial import to Google Code. Mar 12, 2007
dnotes Trivial: update notes and comments Sep 25, 2018
dnotes-2008 The end of 2008 is when these notes stopped being updated. New notes … Jan 10, 2009
find-==-assignments.sh Fix neighbour assignment typo. Mar 24, 2015
find-in-code.sh PISTORE_DIR for pisa config file. Feb 12, 2010
fix-cif-loops.awk Add an awk script to fix up broken cif files (empty loops) (written b… Aug 4, 2010
fix-fsf-address.sh Fix up FSF address Aug 15, 2016
function-notes Initial import to Google Code. Mar 12, 2007
generate-git-revision-count-cc.sh Use wc to count revisions if git rev-list --count HEAD doesn't work Aug 26, 2015
generate-svn-revision-cc.sh Add generated coot_svn_repo_revision.py for pyrogen. Jul 21, 2014
guile.supp Fix tyos in fit-residue-range. Jun 11, 2007
happy-coot-diary.html Add merge-solvent-chains function, with GUI and test. May 6, 2009
ifdef-for-create-aboutdialog.awk Hand apply the edits to comment out the aboutdialog function when nee… Jul 30, 2008
install-sh Initial import to Google Code. Mar 12, 2007
intltool-extract.in Fix up FSF address Aug 15, 2016
intltool-merge.in Fix up FSF address Aug 15, 2016
intltool-update.in Fix up FSF address Aug 15, 2016
libtool Fix for the Display Manager scroll group. Now we don't mess with the … Feb 12, 2009
ltmain.sh-unneeded Update notes. Mar 5, 2011
make-patches Initial import to Google Code. Mar 12, 2007
make-scheme-tar Initial import to Google Code. Mar 12, 2007
mapview.glade Remove Check waters by difference map menu item from gtk1 interface. Feb 5, 2010
missing Update missing. Aug 2, 2015
mkinstalldirs Start messing with internationization. No damage yet, I think. May 3, 2007
mmdb-selection-doc Addd insertion code to screen output of SSM align. Jan 6, 2015
mtrix-to-ncs-matrix.awk Initial import to Google Code. Mar 12, 2007
my.supp Initial import to Google Code. Mar 12, 2007
process-greg-log.awk Changes from Chennia Trip: Jan 17, 2008
rel-todo Map properties dialog now displays the resolution Sep 25, 2018
rel-todo-0.6 Move out (but save) the old rel-todo. Dec 8, 2009
set-git-prompt Only call threaded update_map() code if number threads is sane Mar 21, 2017
setup-greg update setup-greg. Jul 12, 2007
standard-residues.pdb HETATM for missing atom in MSE Sep 9, 2016
syminfo.lib Update syminfo.lib. Sep 19, 2014
test-with-greg.scm More widget (interface) updates. Jul 9, 2007
update-wraps A script for updating the coot_wrap_*.ccs, because swig puts the new … Dec 5, 2007

README.md

Coot

Coot is a toolkit for Macromolecular Crystallography and model-building. Coot uses widgets (with the gui builder glade), mmdb, clipper, and OpenGL, together with a new approach to map contouring and importing/creation and other modelling and building operations.

Blog

Coot Development Blog

Redistribution

This software package (coot and its relatives) is Free Software.

This software is substantially dependent on Free and Open Source Software is distributed under the GNU General Public Licence version 3. You are able to use and redistribute this software with your software (provided you also distribute this source code).

You may find Coot distributed with CCP4 Software. Be aware that Coot is not covered under the CCP4 Software Licence, either part (i) or part (ii).

This is Free Software - anyone referring to it as "Open Source" shall be eaten by a gnu.

Prerequisites:

To build this software from scratch, you will need:

  • a C++ compiler that knows about the STL,
  • gtk+ version 2,
  • gtkglext version 1.2,
  • mmdb-2,
  • fftw-2.1.5,
  • clipper and its dependencies (its dependencies are ccp4 libs, mmdb, fftw)
  • OpenGL: (GL, glu, glut)

And optionally (coot is better if you have these):

(you can also get many of these from http://www2.mrc-lmb.cam.ac.uk/personal/pemsley/coot/dependencies)

Binaries

Binaries for Coot are availble from here:

http://www2.mrc-lmb.cam.ac.uk/Personal/pemsley/coot/binaries/

Compiling

Coot is tricky to compile by hand and has several dependencies. The build-it script (in this directory) is how I build binaries. You are encouraged to use it if you want to compile Coot.

Idea Thanks

I have a memory of a conversation with Mike Hartshorn - which planted the seed of the idea of writing a free model-building program in about 1991. It took many years for this idea to bear fruit however. [Mike went on to write AstexView more rapidly].

Many of the ideas in Coot are of course influenced by Alwyn Jones' O (and to a lesser extent Frodo). I am grateful to him also because it in the late 80s that was sitting in front of a PS300 running Frodo in York that I though "wow, this is what I want to do", without him and Frodo, I wouldn't be a crystallographer. Thanks Alwyn.

Many evening sessions with Adrian Lapthorn undoubtedly put some flesh on the bones of the ideas - certainly in those days we formed many opinions about The Right Way to do things. Some of them are now present in Coot.

Some credit for the way the interactive refinement works should go to Warren DeLano. At a CCP4 Study Weekend (2003?) he presented "sculpt" mode in PyMol. The audience (and I!) was really wowed. Until that point, I'd rejected the idea of such interactivity because it was not reproducable in the history (not easily, anyway). But then I saw Warren's demo and I thought, "we've go to have that something like that too!" It then took me a couple of days to bolt it into the existing real space refinement code. Later on I was demonstrated and impressed by PyMol's "view"s. 18 months later I added a view system to Coot.

Code Thanks...

particularly go to:

  • Kevin Cowtan for many things, including clipper, and explaining to me how it works :)
  • Eugene Krissinel for mmdb,
  • Eugene Krissinel and Kim Henrick for libssm,
  • Stuart McNicholas for MGTree code,
  • Alexi Vagin for Refmac cif dictionaries,
  • And Mr Behind-the-scenes-man (who allowed the whole thing to happen):
    Keith Wilson,

Finally, thanks to those who have emailed advice[1], the Coot testers[2] and particularly those who tried to compile the source code[3] and sent patches[4]: they suffered so that you don't have to.

Thank you all - I have very much enjoyed doing Coot.

[1] Ethan Merritt, Gerard Kleywegt, George Sheldrick

[2] Eleanor Dodson, Miguel Ortiz Lombardia, Charlie Bond, Jan Dohnalek, Garib Murshudov, Jean Wittingham, Florence Vincent, Tracy Gloucester, Constantina Fotinou, Roberto Steiner, Adrian Lapthorn, Claudia Schnick, Rosa Grenha, Ezra Peisach, Ben Luisi, Frank von Delft, Karen McLuskey, Marcin Cymborowski, Stephen Graham.

[3] William G. Scott, Bernhard Lohkamp, Alex Schuettlekopf, Luca Jovine, Bob Nolte.

[4] Ezra Peisach, Charlie Bond, Mike Hartshorn


Paul Emsley Now in Cambridge: pemsley at mrc dash lmb dot cam dot ac dot uk