FOX/ObjCryst++
1.10.X (development)
|
This project is still in active development, even if I left the Lab of Crystallography in Geneva to the ESRF. If you encounter some problem with the library, please contact me at vince and I'll try to help. fn@u sers. sour cefor ge.n et
Also note that if you want to develop something using ObjCryst++, I recommend to contact me so that I can help you and avoid possible conflicts. There are numerous things I want to implement, so an incompatibility is always possible when I had something...
Yuu should also subscribe to the mailing-lists at: http://sourceforge.net/mail/?group_id=27546 and most especially the "objcryst-devel" and "objcryst-announce".
You can download the ObjCryst library from the ObjCryst project page on SourceForge, or from the mirrors:
You will need to download the ObjCryst tar.bz2 (.zip for windows), as well as the 'external libraries' tar.gz (.zip) archives (the latter include libraries which are used by this project: currently atominfo,sglite and newmat). Simply uncompress both archives in the same directory. This will create the atominfo, sglite and newmat directories, as well as the ObjCryst directory. This documentation is in ObjCryst/doc/html/
If you want to use the Graphical Interface part of the library (wxCryst), e.g. if you want to compile Fox, you will also need to download wxWindows from http://www.wxwindows.org. Depending on your OS, you will need wxGTK-2.2.7 (for Linux), or wxMSW-2.2.7 (for Windows).
The cutting-edge version of the library can always be obtained through its CVS repository. Under linux, to download the first time the ObjCryst++ directory, first login in the CVS repository (give a blank password when asked) and then download the ObjCryst source:
once you have done this once, you can update to the current version by typing:
(with a blank password) at the root of the ObjCryst directory.
For further questions about cvs (doing this under windows, etc...): http://www.cvshome.org/
To use the graphical part of ObjCryst++ (wxCryst), you must first compile wxWindows. To do this under Linux, in the wxWindows directory:
(this will take some time)
Under windows, follow the compile instruction for Borland C++ 5.5 in the wxWindows documentation, and make sure you (i) activate opengl support and (ii) deactivate debug-context in setup.h. You can leave all other options at default values.
There is a short example in the ObjCryst/example/pbso4 directory.
(use wxCryst=0 if you do not want the Graphical interface, and debug=1 for faster compiling and debugging messages. Not that anytime you change one of these options, you need to clean up all directories: type "make -f gnu.mak clean" at the root of the ObjCryst directory)
That should compile all necessary libraries and programs. You can try the different example programs, running on PbSO4, on neutron and X-Ray powder diffraction, as well as X-Ray single crystal (in fact, extracted intensities)
On a 500 Mhz linux box, pbso4-xray2 (using only the first 80 reflections and no dynamical occupancy correction), 50000 trials are done in less than 30 s (for 5 independent atoms, each with 4 symetrics (not counting the center of symmetry): that's 80*50000*5*4/27.2 = 2.9 10^6 reflection.atom per second). For pbso4-xray and pbso4-neutron, it takes 2 to 3 more time, using only the first 90 degrees of the powder pattern (about 80 reflections again), because a full powder spectrum is generated (applying profiles is slow), and dynamical occupancy correction is used to take special positions into account (computing distances takes a lot of time). On the final structure output, note that the population consists of two factor, the first (1.0 here) is the 'real' occupancy of the site, and the second is the dynamical correction due to the fact that several identical atoms overlap (For PbSo4, all atoms should be at 0.5 dyn corr).
To compile Fox, simply go to the ObjCryst/wxCryst directory and do:
For both, you will of course need to have compiled wxWindows beforehand.