3D Visualization System VENUS

An earlier Web page giving enthusiastic publicity to VICS and VEND in Japanese is here. It is now obsolete but a valuable record of their development.


  1. Introduction
  2. Components of VENUS
  3. 3D visualization programs, VICS and VEND
  4. Structural data files for VICS
  5. 3D data files for VEND
  6. File converters
  7. Graphic data files output by VICS and VEND
  8. Super-fast program, PRIMA, for MEM analysis
  9. ALBA for the MEP method
  10. Version history
  11. Archive files
  12. VENUS license agreement
  13. A Web site that serves for 3D visualization from files created with SCAT
  14. Announcements
  15. Acknowledgments
  16. HOME

1. Introduction

Though several good structure-drawing programs are available, no cross-platform free software is obtainable. As such, I realized a new mini-project to develop a premier system VENUS (Visualization of Electron/NUclear densities and Structures) with Ruben A. Dilanian. We designed, from the ground up, programs taking full advantage of the OpenGL technology. VENUS bears the bell in three-dimensional (3D) visualization, rendering, and manipulation of crystal structures and electron/nuclear densities determined not only by X-ray/neutron diffraction but by electronic-structure calculations with Gaussian, GAMESS, SCAT, WIEN2k, VASP (or MedeA including VASP as its component), and ABINIT. It also lets you visualize electrostatic potentials and wave functions calculated with Gaussian, GAMESS, SCAT, and ABINIT.

Furthermore, VENUS includes two programs for the Maximum-Entropy Method (MEM). They allow us to determine electron/nuclear densities and Patterson functions, which are readily displayed in three dimensions as described above.

We currently offer VENUS free of charge to each individual. However, VENUS is copyrighted with its source code not open to the public; we wish to control the development and future of the VENUS system by ourselves.

2. Components of VENUS

The VENUS package contains five independent applications:

That is, VICS and VEND visualize crystal structures and electron/nuclear densities, respectively. VICS delivers a feature to input/output standard input files, *.ins, of RIETAN-FP while VEND can input 3D density files, *.pri, created by PRIMA.

Koichi Momma has integrated VICS and VEND into a single application VESTA, adopting a cross-platform application framework wxWidgets and adding many new features. The processing speed, scalability, and quality of 3D images in VESTA have been considerably improved in comparison with VICS and VEND. Please use VESTA in place of VICS and VESTA. VESTA is separately distributed at JP-Mineral, where detailed information about VESTA is also obtainable.

PRIMA is a MEM analysis program to calculate electron densities from X-ray diffraction data and nuclear densities from neutron diffraction data. It was designed with MEM-based Pattern Fitting (MPF) in mind, as can be inferred from its name. ALBA is a program for the Maximum-Entropy Patterson (MEP) method, whereby Patterson functions in the unit cell can be determined from observed integrated intensities.

3. 3D visualization programs, VICS and VEND

VICS and VEND have been written in ANSI C for cross-platform portability, which allows us to port them from Microsoft Windows (hereafter abbreviated to Windows) to UNIX/Linux including Mac OS X.

With VICS, crystal structures are represented with ball-and-stick, space-filling, polyhedral, wireframe, stick, dot-surface, and thermal-ellipsoid models. Ball-and-stick and stick models may be enclosed in dot surface spheres with van der Waals radii. You will recognize that VICS is capable of representing anisotropic thermal motion better than ORTEP-III, which has no 3D-graphic capability.

Boundaries for drawing structures are specified in sophisticated ways similar to convoluting sphere and reiterative convoluting sphere in ORTEP-III.

Selection of objects (atoms, bonds, and coordination polyhedra) makes it possible to obtain fractional coordinates, translation vectors, equivalent positions, interatomic distances, bond angles, torsion angles, and information on coordination polyhedra (volumes, quadratic elongations, bond angle variances, and bond valence sums of central metals). Arrows indicating magnetic moments and positional shifts may be added to any selected atoms.

With VEND, electron/nuclear densities as well as wave functions and electrostatic potentials obtained by molecular-orbital methods are visualized as isosurfaces, bird's-eye views, and two-dimensional maps. Translucent isosurfaces and/or slices can overlap a ball-and-stick/stick model created by VICS.

Objects are rotated, expanded, shrunken, and translated fast in three dimensions, particularly in the presence of video cards accelerating the OpenGL API, e.g., those powered by the GeForce and RADEON graphic processing units (GPUs). Four different modes of rotating objects are supported: drag, push, click, and rotate automatically. In addition to crystallographic and electronic-state studies and education, we will take pleasure in manipulating 3D objects on personal computers. The development of VENUS was motivated by a desire to present the poor with the advanced graphic software. Neither graphics workstations nor commercial programs are now necessary for 3D visualization!

4. Structural data files for VICS

VICS can input and/or output files with the following formats:

  1. Original format of VICS (input & output)
  2. American Mineralogist Crystal Structure Database
  3. Chem3D
  4. CIF (Crystallographic Information File; input & output)
  5. CrystalMaker text file
  7. CSSR (Crystal Structure Search and Retrieval)
  9. GAMESS input and 3D surface data files output by MacMolPlt
  10. Gaussian Cube format
  11. ICSD (Inorganic Crystal Structure Database)
  12. MDL Molfile
  13. MINCRYST (Crystallographic Database for Minerals)
  14. MOLDA
  15. PDB (Protein Data Bank; input & output)
  16. User input file, *.ins, of RIETAN-FP (input & output)
  17. VASP
  18. WIEN2k struct
  19. XCrySDen XSF format
  20. XMol XYZ (input & output)
  21. asse
  22. F01 for SCAT and C04D for contrd

The feature of outputting *.ins allows us to read in crystal data files of various formats with VICS, simulate powder diffraction patterns, and carry out subsequent Rietveld refinements with RIETAN-FP. Heavy users of RIETAN will be very happy to input and output *.ins. After releasing VENUS, such a 3D visualization software package will be regarded as an indispensable tool for those who utilize a Rietveld-analysis program like RIETAN-FP. We must understand structural details not two-dimensionally but three-dimensionally!

5. 3D data files for VEND

VEND can input/output files storing 3D mesh data recorded with a variety of formats listed below.

  1. Electron/nuclear-density files with the PRIMA format (binary).
  2. Electron/nuclear-density files with the MEED format (text).
  3. Patterson-function files output by ALBA for the MEP method.
  4. Electron-density, electrostatic-potential, and wave function files with the Gaussian Cube format
  5. 3D surface data files obtained by MacMolPlt from GAMESS log files
  6. Electron-density, electrostatic-potential, and wave function files obtained with contrd from files F09 and F39 output by SCAT
  7. Electron-density and electrostatic-potential files output by VASP
  8. VEND 3D data files storing g(r), nu(r), he(r), Laplacian of electron densities, etc.
  9. Electron-density files obtained with WIEN2k plus wien2venus.py
  10. Electron-density, electrostatic-potential, and wave function files with the XSF format of XCrySDen
  11. Files storing energy eigenvalues resulting from band-structure calculations with, e.g., WIEN2k

6. File converters

6.1 Alchemy

A file converter, Alchemy, for PRIMA was developed by Yukihiko Kawamura and Fujio Izumi. The Windows version of Alchemy, Alchemy.exe, is contained in folder 'Programs' as part of the VENUS system. For political and technical reasons, only a minor feature to convert a MEM data set binary file, *.fos, output by RIETAN-FP into a MEM data set text file, *.mem, is currently opened to the public by giving two examples, fap and garnet, in Examples.zip; refer to Readme_Alchemy.txt in folder 'Alchemy' before using Alchemy.exe. The resulting file, *.mem, can be analyzed with PRIMA.exe to give a feedback data file, *.fba, and a 3D densities file, *.pri or *.den.

The Mac OS X version of Alchemy is also distributed; go to Subsection 11.3 to get it.

6.2 contrd and makec04d

Masataka Mizuno of Osaka University kindly wrote a Fortran program, contrd, to convert binary files, F09 and F39, output by SCAT for the DV-Xα method; method into text files storing 3D data. It is contained in an archive file, dvxa_v1_0*.zip, together with makec04d to create a template file of an input file, C04d, for contrd.

The two programs, contrd and makec04d, can be conveniently launched from an assistance environment for the DV-Xα method. It consists of many Hidemaru macros, helping us to launch a series of programs for DV-Xα molecular-orbital calculations and 3D visualization with VESTA. Its GUI enables us to utilize pulldown and pop-up menus, buttons, and shortcut keys. Note that this environment must be used in combination with the latest versions of dvscat programs and a molecular-orbital calculation system, eduDV, for education.

To download the archive file of the above assistance environment, go to 11.1.2.

6.3 wien2venus.py

With a script

coded in Python by Masao Arai of NIMS, 3D electron densities calculated with WIEN2k are convertible into a text file, which is in turn input by VEND to display electron-density distribution in three dimensions.

6.4 Cut3D

Binary files output by ABINIT can be converted into text files having the XCrySDen format with a utility program Cut3d included in the archive file of ABINIT.

6.5 ELEN

ELEN is a utility to convert 3D electron densities into electronic-energy densities and Laplacians. It converts *.pri, *.den, *.cube, or *.rho into *.led, *.kef, *.ped, and *.ted; refer to VEND:Appendix A (ID = 6) and Subsection 3.3 in the review article described in Subsection 14.2. ELEN has already been completed. It is practically included in the new-generation visualization system VESTA.

7. Graphic data files output by VICS and VEND

7.1 Graphic data formats

Graphic data files of the following popular formats can be exported with user-desired resolutions:

  1. BMP
  2. EPS (pixel data)
  3. EPS (vector data)
  4. JPEG
  5. JPEG 2000
  6. PPM
  7. RAW
  8. RGB (SGI)
  9. TGA
  10. TIFF

The features to export EPS (Encapsulated PostScript) and JPEG 2000 files are particularly attractive and useful. Users of TeX will be overjoyed at pasting EPS files directly in documents. JPEG 2000 enables reversible compression where the file size decreases to ca. 15 % in comparison with BMP files. JPEG 2000 files are convertible into files of other formats while changing image sizes and resolutions using GraphicConverter for Mac OS and IrfanView and Paint Shop Pro for Windows. The rich may prefer Adobe Photoshop CS2 to free software or shareware.

Bear in mind that video cards accelerating the OpenGL API speed up saving graphic data files.

7.2 Gallery

Please browse some JPEG files converted from high-quality TIFF files exported by VICS and VEND.

  1. Ball & stick model of double carbon nanotubes (99 KB)
  2. Coordination polyhedra in YBa2Cu4O8 (237 KB)
  3. Thermal ellipsoids in YBa2Cu3O7 with Cu-O bonds and the translucent (101) plane (97 KB)
  4. SiO4 tetrahedra in an SiO2 melt (Calculated with MXDORTO. 167 KB)
  5. Co sites with arrows denoting magnetic moments in CoAl2O4 (151 KB)
  6. Electron-density image and a wave function of a Ti6C cluster (calculated with SCAT; PDF: 1.7 MB)
  7. Isosurfaces (3/Å3) for YBa2Cu3O7 with (100), (001), and CuO2 planes showing electron-density distribution (106 KB)
  8. Isosurfaces (0.7/Å3) for MgB2 with the z = 1/2 plane illustrating electron-density distribution (124 KB)
  9. Isosurfaces (1/Å3) for electron densities determined by MPF from synchrotron X-ray powder diffraction data of anthraquinone (174 KB)

At my request, Masao Arai kindly calculated the 3D electron densities in the second and third files outputted by VEND, using WIEN2k.

8. Super-fast program, PRIMA, for MEM analysis

8.1 Improvements in PRIMA

The award-winning technology of MPF is an alternative to a traditional approach, i.e., Rietveld analysis, to structure refinement from powder diffraction data. Crystal structures are represented not with structure parameters in Rietveld analysis but with electron/nuclear densities in MPF. A fast MEM analysis program is desired in MPF where MEM analysis and whole-pattern fitting are alternately iterated until convergence.

Till lately, we had been utilizing MEED for the MEM analysis of structure factors obtained experimentally from X-ray and neutron diffraction data. After making every effort to speed up MEM analysis, we at last completed our own Fortran 90 program PRIMA, the state of the art in MEM analysis. MEED is now obsolete because of its serious bug and sluggish speed.

PRIMA has been written from the ground up in Fortran 90, which enables us to create storage for allocatable arrays dynamically. It is thoroughly optimized for personal computers equipped with Intel Pentium 4 processors and operated with Windows. Nonlinear single-pixel approximation (never use this for a small number of reflections), full use of space-group symmetry, and adjustment of Lagrangian multipliers further accelerate MEM analysis. PRIMA is applicable to MEM analysis from neutron diffraction data of compounds containing elements whose coherent-scattering lengths are negative, e.g., H, Li, Ti, and Mn.

8.2 How to use PRIMA in combination with RIETAN-FP and VEND

PRIMA makes it easier to modify a structural model in the course of Rietveld analysis. In a user input file, *.ins, set NMODE at 0 and NMEM at 1, and input various parameters for MEM analysis. Run RIETAN-FP to create a MEM data set file, *.fos. Fo(Rietveld) data in this file are analyzed by PRIMA, which creates a 3D density file, *.pri, and a feedback data file, *.fba, storing Fc(MEM)'s. VEND serves to input *.pri to visualize 3D electron/nuclear-density distribution. Your structural model is rebuild after close checking of the density image, if necessary (so-called MEM/Rietveld method). Thus, PRIMA is now regarded as a must-have item for Rietveld analysis on PCs.

The MEM/Rietveld method is a halfway approach to determination of electron/nuclear densities from X-ray/neutron powder diffraction data because the Fo(Rietveld)'s are more or less biased toward the structural model in the Rietveld analysis. For this purpose, MPF is far superior to the MEM/Rietveld method.

Nothing is so difficult as MPF. At first, whole-pattern fitting (w.p.f.) is carried out from the Fc(MEM) data in *.fba. Simply set NMODE at 2 and NMEM at 1 in *.ins, and then run RIETAN-FP. Note that all the structure parameters in *.ins must have been updated on the analysis of X-ray diffraction data because contributions of anomalous scattering to structure factors are calculated from them. Of course, we should change the ID(I)'s of the structure parameters into zero and comment out linear constraints, if any. On repartition of observed diffraction intensities after the w.p.f., structural information contained in (nearly) isolated reflections effectively reduces the bias toward the structural model in the Rietveld analysis. Fo(w.p.f.) data in the resultant binary file, *.fos, or a text file, *.mem, converted from it are analyzed by PRIMA to get *.fba as well as a 3D densities file, *.pri (binary file) or *.den (text file).

In such a way, w.p.f. and MEM analysis are alternately repeated until R factors (usually Rwp) in the former no longer decrease (REMEDY cycles). The bias to the structural model reduces with increasing number of cycles. Throughout the REMEDY cycles, the total number of electrons (X-ray diffraction) or the total coherent-scattering lengths (neutron diffraction) in the unit cell is fixed at that obtained from the chemical formula and Z. Thus, electron/nuclear-density distribution affording the best fit to the observed diffraction pattern can be determined by MPF.

Refer to a PDF file, PRIMA.pdf, entitled "Super-fast Program, PRIMA, for the Maximum-Entropy Method" to learn further details in PRIMA.

9. ALBA for the MEP method

ALBA is a Fortran 90 program for the MEP analysis of observed integrated intensities (1) estimated by the Le Bail method from powder diffraction data and (2) determined from single-crystal diffraction data. The name of the program originates from the most significant feature of the program; that is, MEP analysis is carried out After Le Bail Analysis.

Only a program for MEP analysis from integrated intensities obtained by the Pawley method has hitherto been developed by David of RAL. No MEP analysis program has yet been distributed on the Web. Therefore, we built a powerful MEM engine into ALBA, making alterations to that of PRIMA. Thus, ultra-fast MEP analysis is possible with ALBA.

Integrated intensities of overlapped reflections in powder diffraction data are, more or less, improved by the sophisticated MEP method, which is favorable for ab initio structure analysis from powder diffraction data.

ALBA is used in combination with a multi-purpose pattern-fitting system RIETAN-FP or EXPO for ab initio structure analysis from powder diffraction data by a direct method.

ALBA outputs a binary file, *.pri, storing 3D Patterson functions, which are, in turn, visualized with VEND, as described in Section 5. The resulting 3D images in the unit cell serve for construction of an initial structural model by the heavy-atom method.

Most Rietveld-analysis programs incorporate the feature of Le Bail analysis because of the ease with which it can be implemented in this type of software. ALBA allows us to improve integrated intensities obtained with them for overlapped reflections, adding value to them.

10. Version history

Changes in VICS, VEND, PRIMA, and ALBA since October in 2003 are listed in separate Web pages:

10.1 VICS

10.2 VEND

10.3 PRIMA

10.4 ALBA

11. Archive files

It should be pointed out that the latest versions of RIETAN, VESTA, PRIMA, ALBA, Alchemy, and the assistance environment for the DV-Xα method should always be used on the combined use of them; compatibility with older versions is never considered in RIETAN and VENUS. You may encounter unforeseen trouble on the mixed use of new and old versions.

As described in Section 2,

is now available for download from JP-Mineral.

11.1 Windows version

11.1.1 VENUS system

PRIMA and ALBA for Windows are included in Windows_versions.zip distributed at another Web page named "Distribution Files for the RIETAN-VENUS Package."

As described above, VESTA for Windows is distributed at JP-Mineral.; its use is highly recommended at present.

11.1.2 The assistance environment for the DV-Xα method

The assistance environment for the DV-Xα method is distributed as an archive file with the zip format. To download it, position the pointer over the following file name:

Then, right-click the link (file name) to display a pop-up menu and choose "Save Target As..." or a corresponding item (depending on your browser). Drag and drop the downloaded file, DV-Xa.zip, onto the icon of an archiver. After decompressing DV-Xa.zip, read Readme_DV.pdf at first.

11.2 Mac OS X version

PRIMA and ALBA for Mac OS X are included in Intel_Mac_versions.dmg distributed at another Web page named "Distribution Files for the RIETAN-VENUS Package."

VESTA for Mac OS X is distributed at JP-Mineral.

12. VENUS license agreement

In what follows, "VENUS" means a software package consisting of VICS + VEND + VESTA + PRIMA + ALBA + Alchemy.

The latest license agreement described below takes priority over any previous descriptions in user's manuals and so on. Term 12.1 should always be obeyed whatever program you may use.

Part of these terms may be changed without any prior announcement.

12.1 Use in commercial software

A contract must be settled to include (part of) VENUS in commercial software or to sell commercial software containing a graphical user interface for (part of) VENUS.

12.2 VESTA

Images produced by VESTA may be included in original and review articles provided that the following article is quoted:

12.3 PRIMA

Whenever original results acquired with PRIMA are published in journals, proceedings, facility reports, etc. or reported in meetings with abstracts, the program name PRIMA should explicitly be credited. Furthermore, cite the following review article:

Only giving credit to PRIMA is good enough in the cases of abstracts, short reports, and so forth with limited spaces.

12.4 ALBA

Whenever original results acquired with ALBA are published in journals, proceedings, facility reports, etc. or reported in meetings with abstracts, the program name ALBA should explicitly be credited. Furthermore, cite the following reference:

12.5 Alchemy

Those who are willing to use Alchemy for MEM analysis from TOF neutron powder diffraction data measured with multi-detector banks should come into contact with F. Izumi. In addition, cite the following reference when publishing results obtained with this feature of Alchemy:

This is the world's first paper reporting the MEM analysis of TOF neutron powder diffraction data.

12.6 Warning

VENUS may still contain a fair number of bugs. VENUS is distributed in the hope that it will be useful and reliable. It is, however, provided "as is'' without any warranty. Technical service concerning it is not free.

13. A Web site that serves for 3D visualization from files created with SCAT

Genta Sakane of Okayama University of Science provides us with detailed information about the combined use of SCAT and VENUS:

In the fourth Web page, files F01, F09, F39, and C04D can be downloaded to visualize results of electronic-structure calculations in three dimensions.

14. Announcements

14.1 A guide to full utilization of RIETAN: 3D visualization of electron- and nuclear-density distribution

Visualization of electron/nuclear densities from X-ray/neutron powder diffraction data with VENUS is described in detail in the following review article:

Take notice that results of benchmark tests listed in Table 1 in this article are now obsolete; those obtained with the latest version of PRIMA is presented in 10.2.

14.2 VENUS system for three-dimensional visualization of crystal structures and electronic states

A review article entitled as above was published in April in 2005:

At first, most parts of this Web page were translated into Japanese, and many new descriptions were added together with references.

14.3 VENUS: a 3D visualization system for crystal structures and electron/nuclear densities

A review article entitled as above was published in December in 2005:

14.4 Three-dimensional visualization of nuclear densities by MEM analysis from time-of-flight neutron powder diffraction data

We published a paper on Alchemy:

In this work, we established a method for determining the three-dimensional distribution of nuclear densities from time-of-flight (TOF) neutron powder diffraction data measured with multiple detector banks. At first, the observed crystal-structure factors, Fo(h), and standard deviations of |Fo(h)|'s estimated after Rietveld analysis using GSAS are output in text files, *.mem, with a file converter, Alchemy. After combining reflection data, hkl, Fo(h), σ(|Fo(h)|), in the *.mem files, so as to minimize the extinction effect in reflections with large interplanar spacings, they are analyzed by a maximum-entropy method program, PRIMA, to determine the nuclear densities in the unit cell. The resulting nuclear-density distribution is visualized in three dimensions with VEND. Such a procedure enabled us to visualize nuclear densities in Ni from TOF neutron powder diffraction data.

15. Acknowledgments

I wish to thank Ruben A. Dilanian for his dedication to a great deal of programming. At my requests, Masao Arai and Masataka Mizuno kindly coded wien2venus.py and contrd, respectively. Hiroshi Ohki and Koichi Momma helped us improve VENUS. The VENUS project was financially supported by the R&D of New Superconducting Materials of NIMS and the Precursory Research for Embryonic Science and Technology of JST.