[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[ccp4bb]: Ann: Computational Crystallography Toolbox (cctbx) version 1.0
*** For details on how to be removed from this list visit the ***
*** CCP4 home page http://www.ccp4.ac.uk ***
The Computational Crystallography Initiative has released the
Computational Crystallography Toolbox (cctbx) version 1.0:
http://cctbx.sourceforge.net/
The cctbx is a reusable scientific software library for
- the development of crystallographic structure
determination programs.
- the integration of existing crystallographic
programs through helper scripts.
- hands-on teaching crystallographic concepts.
The cctbx is designed with an open and flexible
architecture to promote extendability and easy
incorporation into other software environments. The
package is organized as a set of ISO C++ classes with
Python (http://www.python.org/) bindings. This organization
combines the computational efficiency of a strongly typed
compiled language with the convenience and flexibility of a
dynamically typed scripting language in a strikingly
uniform and very maintainable way.
Most notable differences to cctbx release 0_9_9:
More examples:
http://cci.lbl.gov/servers/
fast-track build system further simplified:
- Automatic adjustment to the Python version that is used
to invoke the fast_track.py script.
- The Boost.Python library is built inside the cctbx build
tree (but the distributions are still cleanly separated).
Only one namespace: cctbx
All classes and sub-namespaces are now in the namespace cctbx.
Same classes renamed.
Most notably, SgOps is now SpaceGroup.
New toolboxes:
ADP (anisotropic displacement parameters) Toolbox
Fast Fourier Transform toolbox
Structure Factor Toolbox
New sgtbx classes (among others):
cctbx::sgtbx::Brick
Parallelepiped that contains an asymmetric unit
and is optimized for memory allocation.
cctbx::Miller::AsymIndex
Support for tabulated contiguous asymmetric units
(thanks to Kevin Cowtan) in addition to the
sorting based selection of symmetry-unique indices.
This replaces the old MasterIndex class.
cctbx::sgtbx::MillerIndexGenerator
Fast and convenient generation of Miller indices with
very small memory usage (based on tabulated contiguous
asymmetric units).
cctbx::Miller::IndexTableLayoutAdaptor
Support for common layouts of tables of asymmetric
Miller indices (AnomalousLayout, HermitianLayout,
FplusFminusLayout).
cctbx::sgtbx::StructureSeminvariant
Structure seminvariant (s.s.) vectors and moduli are a
description of "permissible" or "allowed" origin
shifts.
cctbx::sgtbx::SiteSymmetry
Robust algorithm for the determination of site-symmetries
of sites on special positions.
cctbx::sgtbx::WyckoffTable
This class represents the information for all Wyckoff
positions for a given space group.
Default constructors for all classes.
This enables universal use of the cctbx classes in try-catch
constructs such as:
some_class some_object;
try {
some_object = some_class(arguments);
}
catch {
// set some_object to some other value
// or throw another exception
}
// use some_object
It is a disadvantage the some default constructed objects
may now be used even though their state is meaningless
(similar to using an int that was declared but not defined).
A mechanism that could prevent this without a runtime penalty
is unfortunately not known to me (rwgk).
__________________________________________________
Do You Yahoo!?
Yahoo! GeoCities - quick and easy web site hosting, just $8.95/month.
http://geocities.yahoo.com/ps/info1