[phenixbb] CCTBX questions
mortengroftehauge.work at gmail.com
Mon Jul 21 15:24:03 PDT 2014
Will do. Thanks Nathaniel!
On 21 July 2014 18:34, Nathaniel Echols <nechols at lbl.gov> wrote:
> On Mon, Jul 21, 2014 at 10:05 AM, Morten Grøftehauge <
> mortengroftehauge.work at gmail.com> wrote:
>> I notice that cctbx.python comes with phenix but as far as I can tell
>> from when I run it, look at imported modules with dir(), and compare to the
>> documentation on Sourceforge the version that comes with phenix is
>> abridged. And possibly not the same version as the sourceforge one but they
>> probably are the same.
> Define "abridged"? We ship the complete CCTBX with Phenix, but not all
> modules are configured - in particular the cudatbx module. Also, if you're
> using the 1.9 release, that's already nearly three months old and we've
> made a huge number of changes since then (although I think the online docs
> are now several weeks out of date).
> Will it cause any problems with Phenix if I install cctbx from sourceforge?
> The Python executables and modules will exist independently and not
> cross-import, but you should keep in mind that the program names do overlap
> significantly. However, the "phenix" command (GUI) only exists in Phenix
> itself, and all of the launchers distributed with Phenix also exist with
> the version name appended, e.g. "phenix.pdbtools_1.9-1692" will be
> available. It's possible we're making some simplistic assumptions about
> the command names being unambiguous when we're calling them as
> subprocesses, however. The safest approach is to not incorporate either
> into your environment by default, e.g. call "phenix_env.sh" or
> "setpaths.sh" (or csh equivalents) only as needed.
>> Is it unnecessary?
> It depends on what you want to do. For simple scripting, what we
> distribute with Phenix is more than adequate. If you have larger projects
> in mind - especially if you plan on distributing something - working from
> SourceForge may be preferable, especially if you need the latest updates
> (or, even better, want to contribute code back). I will also be making
> improved "cctbx-plus" builds (with various external dependencies pre-built)
> available in the very near future.
> Second question: Is there any better documentation anywhere? I found James
>> Stroud's wiki but that's mainly for structure factor manipulation.
> *deep sigh*
> Not really, the formal documentation is poor. This was less of a problem
> when most of the people using CCTBX were in the same office but it is
> growing increasingly problematic. I try to add inline documentation
> piecemeal when I get the chance but there are not a lot of practical how-to
> documents; I mostly learned by reading existing code. (And bugging Ralf,
> which is no longer an option.) I've been wanting to write a massive
> tutorial for years but the NIH doesn't pay us for this stuff, unfortunately.
> We do have some better docs for setting up the environment if you choose
> to go that route instead of using the Phenix distribution; these are mostly
> just internal right now but we could probably make them available to you.
> As far as actual functionality is concerned, my recommendations would be:
> 1. Read the old newsletter articles and related content (linked from
> 2. Look at the "examples" directory in each sub-module - these cover a lot
> of the basic use cases. (For instance,
> mmtbx/examples/simple_command_line_cc.py gives you a template for most
> programs that operate on models and maps - it encapsulates a lot of the
> setup done in phenix.refine and friends.)
> 3. Join the "cctbxbb" mailing list and ask questions there. The good news
> is that although we're pretty sluggish at writing documentation, we're much
> better at answering emails.
Morten K Grøftehauge, PhD
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the phenixbb