next up previous contents
Next: ATOMS Template Files Up: ATOMS 3.0 Documentation Previous: Resources and Bibliography

Subsections

   
Frequently Asked Questions

[*]
General Questions
[*]
What is ATOMS?
[*]
Who wrote ATOMS?
[*]
Why was ATOMS written?
[*]
Where do I find ATOMS?
[*]
What does ATOMS cost?
[*]
Are there other programs like ATOMS?

 [*]
Installing ATOMS
[*]
How do I install ATOMS?
[*]
How do I find and install the necessary CPAN modules?
[*]
'check-cpan' says 3.15 of 'Tk::Pod' is necessary, but I can only find 0.11.
[*]
Which CPAN modules are used by ATOMS?
[*]
Make dies trying to make the databases
[*]
The installation dies during `make install'
[*]
private-install says ``Neither PERL5LIB nor PERLLIB are set.''
[*]
I get lots of messages about failed platform tests during make test.
[*]
Is there an icon for my desktop/wharf/panel/whatever?
[*]
How do I figure out where ATOMS is installed on my computer?

 [*]
Running ATOMS
[*]
I have installed ATOMS, but running "atoms" doesn't work.
[*]
Why does ATOMS tell me "index is no longer a keyword"?
[*]
How do I make ATOMS use a language other than English?
[*]
How do I add a new language to ATOMS?
[*]
I think I found a bug in ATOMS. What should I do?
[*]
TkATOMS fails under the RedHat 5.2 Linux distribution.
[*]
I get a weird error with the "Restore" button in the Space Group Browser
[*]
TkATOMS hangs or crashes the second time I open help.
[*]
The online help does not work on Windows.
[*]
I can't see the help balloons when TkATOMS is on the right of my screen
[*]
The previous DAFS plot did not get erased in TkATOMS
[*]
I moved the MacPerl folder on my Mac and now ATOMS doesn't work.
[*]
I moved a FEFF input file from one computer to another and FEFF does not run.

 [*]
Space group symbols
[*]
I get incorrect output for my monoclinic or orthorhombic space group.
[*]
ATOMS interpreted a Hermann-Maguin symbols without spaces incorrectly.

 [*]
Output files
[*]
How do I change the format of ATOMS' output files?
[*]
How do I define new output formats for ATOMS?
[*]
How do I change the unique potentials assignment in feff.inp files?
[*]
How do I reduce the feff8 stoichiometry list by a common denominator?
[*]
How do I make ATOMS write a feff8 input file by default?
[*]
How do I make a ball-and-stick image of my crystal?

 [*]
The DAFS program
[*]
What does the DAFS program calculate?
[*]
How do I look at the complex parts of the DAFS calculation?
[*]
Why is the plot in TkATOMS so primitive?
[*]
Why do Henke and Chantler produce non-smooth output?
[*]
What platforms do the Cromer-Liberman tables work on?

   
General Questions


  What is ATOMS?

ATOMS is program for interpreting crystallographic data and writing out lists of atomic coordinates and other useful kinds of output. ATOMS is also a set of object-oriented modules useful for other crystallographic and x-ray absorption calculations. ATOMS is written in perl.


  Who wrote ATOMS?

ATOMS was written by Bruce Ravel. You can contact him by email at
ravel@phys.washington.edu. ATOMS is copyright © 1999-2001 Bruce Ravel.


  Why was ATOMS written?

Originally ATOMS was a Fortran program written to aid in the task of writing input files for Feff, a program for ab initio x-ray absorption theory. As ATOMS grew and was used for more purposes, the limitations of the original Fortran implementation became annoying to the author. Consequently, ATOMS was rewritten from scratch in Perl using object oriented methods. This resulted in a code base that is easier to maintain and extend and allowed many new features to be added to ATOMS.


  Where do I find ATOMS?

The ATOMS home page is at
http://feff.phys.washington.edu/~ravel/software/atoms.


  What does ATOMS cost?

Nothing. It's free under the terms of the Perl Artistic License. In brief, legally inaccurate terms, this means that you are free to use, modify, and redistribute ATOMS as you please, with the caveat that, if you modify the code I wrote and redistribute it, you must share your changes with me. It also means that, if you write your own code using the crystallography or x-ray absorption modules that comes with ATOMS, that code belongs to you. For more details see the Perl Artistic License at
http://feff.phys.washington.edu/~ravel/software/atoms/Artistic.txt.

If you like ATOMS, send me email telling me so. Email from users is one of the great pleasures of free software. If you are so taken by ATOMS that you want to express your gratitude in a material manner, then you may make a small donation in my name to my favorite charity, The Women's Foundation of San Francisco. The Women's Foundation serves as a voice and advocate for the needs of women and girls by providing funding and resources and is a convener of groups and individuals for dialogue and collaboration regarding economic, social, and political justice.

General operating budget
The Woman's Foundation
340 Pine Street, Suite 302
San Francisco CA 94104 USA
phone: 1-415-837-1113
fax: 1-415-837-1144
pchang@twfusa.org
http://www.twfuse.org
Many corporations make matching donations to charitable organizations.


  Are there other programs like ATOMS?

Yes there are. The program SEXIE (ftp://xena.llnl.gov/sexie/, Computer Physics Communications 67, (1992) 543-547 Bernhard Rupp, Bryan Smith and Joe Wong) was one of the original inspirations for ATOMS. The original version of ATOMS drew many ideas from SEXIE. Eventually, SEXIE itself was then modified to replicate some of the functionality of ATOMS.

There are a huge number of programs useful to the crystallographer which read crystallographic data and write out lists of atomic coordinates. If you poke around crystallography web sites, you will find many such programs.

There are at least three good reasons to use ATOMS:

1.
it is free of cost and the source code is freely available
2.
it is specifically designed to be useful to FEFF users and other absorption spectroscopists
3.
the crystallography and x-ray absorption in ATOMS is encoded in the form of reusable, object-oriented perl modules, so you can easily write new programs using them

   
Installing ATOMS


  How do I install ATOMS?

1.
Unix installation
If you have perl5 properly installed on your computer, installation is a breeze. Just download and unpack the latest distribution. In the unpacked subdirectory, do
perl Makefile.PL
make
make test
make install
That's it! If you are installing ATOMS as a normal user rather than as root, you should run the 'private-install' script that comes with ATOMS rather than doing make install. Rehash and you're good to go.
2.
Windows 9x/NT installation.
Download the latest zip file for Windows. Unpack it using WINZIP or some similar program. Then double click on the 'install.bat' icon.
3.
MacOS installation.
Download the self-extracting archive and double click on the 'MacInstall.pm' icon.


  How do I find and install the necessary CPAN modules?

The easiest thing to do is to download and install the ATOMS Bundle. It contains everything you need. There is a Bundle for Unix which installs in the standard CPAN manner. The required CPAN modules are included in the Windows and Macintosh distributions. You can also download the modules by hand. See question [*].


  'check-cpan' says 3.15 of 'Tk::Pod' is necessary, but I can only find 0.11.

Don't fret. The version number advertised by 'Tk::Pod' that 'check-cpan' reads is 3.15. The version number it is distributed under is 0.11. Isn't that annoying?


  Which CPAN modules are used by ATOMS?

These are integral parts of ATOMS:

1.
Statistics::Descriptive
2.
Chemistry::Elements
3.
File::Spec
4.
Storable
5.
Data::Dumper
These are needed by the Elam tables of absorption data:
1.
Math::Spline
2.
Math::Derivative
The Tk version of ATOMS requires:
1.
Tk
2.
Tk::File::Dialog
3.
Tk::Pod


  Make dies trying to make the databases

You have not installed the ATOMS Bundle.


  The installation dies during make install

You must be root to do make install because it tries to write to a system directory. As a normal user, use the 'private-install' script instead.

If you are root and make install fails, the look at the screen messages from the failed make install. They will be helpful to you for diagnosing the problem or when making a bug report. Also look at the output of perl -V to make sure the install directory is under one of the directories in @INC.


  'private-install' says Neither PERL5LIB nor PERLLIB are set.

When installing as a normal user, 'private-install' needs to know where to put all of the stuff that ATOMS needs. It determines this from the value of an environment variable. To let 'private-install' continue, designate a place where you want to store perl stuff. '$HOME/perl/' is a good choice. Then, if you are a bash user put these lines in your '.profile'

export PERL5LIB=$HOME/perl/
If you are a c-shell user, put these lines in your '.cshrc'
setenv PERL5LIB $HOME/perl/

Run your '.profile' or source your '.cshrc' and you are ready to install ATOMS.


  I get lots of messages about failed platform tests during make test.

Please send me a bug report. These reports are very valuable to me. Include the type of computer you are using, the version number of perl, and the file 'test1.log' which you should find in the main ATOMS after running make test. I might need to ask you for more information, which will involve about 5 minutes of work on your part.

One of the goals of ATOMS is to have it run identically on all platforms. This means that any number written to output files must be the same on all computers within 0.00001. In my experience with recent versions of ATOMS, most failed platform tests are due to differences in the that digit when comparing the output file generated during `make test' with those used in the test. Probably, ATOMS is fine even if it fails some platform tests. Be sceptical and check the output carefully, but go ahead and start using ATOMS.


  Is there an icon for my desktop/wharf/panel/whatever?

Yes there is. There is a page of icons in three sizes and five image formats on the ATOMS web page. The smallest, 16x16 pixels, is good for use in a menu. The larger sizes, 32x32 and 48x48, are good for use on the desktop. This same set of icons can be found in the 'etc/' directory of the Unix ATOMS distribution.


  How do I figure out where ATOMS is installed on my computer?

At the command line, type

perl -e 'use Xray::Xtal; print $INC{"Xray/Xtal.pm"}, $/'
Under MS Windows use a DOS window. Under Macintosh use the MacPerl ``one-liner'' option. If you have trouble, try putting the two commands in between the single apostrophes in a file and executing that file as a perl script.

   
Running ATOMS


  I have installed ATOMS, but running atoms doesn't work.

Until ATOMS 3.0 is officially released, I am calling the executable 'atoms.pl' to avoid name conflict with the Fortran version. Similarly, the dafs and Tk programs are called 'dafs.pl' and 'tkatoms.pl'.


  Why does ATOMS tell me "index" is no longer a keyword in Atoms?

The functionality of the ``index'' keyword in earlier versions of ATOMS has been moved to the atp files. If you want to turn shell indexing on or off, do so with the <itag> and <tag> tokens in the atp file. The standard 'feff.atp' file uses shell indexing. You may find it useful to keep a 'feff_noindex.atp' (or some such) in your '~/.atoms' directory.


  How do I make ATOMS use a language other than English?

ATOMS reads runtime configuration data from a system file and from a personal file called 'atomsrc' which it looks for in the '~/.atoms/' directory. One of the variables that can be set is $atoms_language. Set this to your choice of language. If the language data in ATOMS has been translated into your language choice, then that will be used. If not, then ATOMS will default back to English.


  How do I add a new language to ATOMS?

Language data does not magically appear. (Darn!) I am happy to ship any set of language data with ATOMS for which I am given a translation. If your language is not included in ATOMS, that means the translation has not yet been made. If you volunteer to make a translation, I will be grateful forever. Contact me for details.


  I think I found a bug in ATOMS. What should I do?

Check out the questions in this FAQ. If your bug is not one of those, then submit a bug report to me at ravel@phys.washington.edu. A good bug report consists of some or all of the following information:

1.
The version of ATOMS you are running.
2.
The kind of computer you are using and the version of perl you are running. Running perl with its ``-v'' switch will tell you the version number. If the problem is with a program written with perl/Tk, the Tk version number is helpful also. You can find this out by typing
perl -e 'use Tk; print $Tk::VERSION,$/'
at the command line.
3.
The input data that caused the problem.
4.
The literature reference for your input data.
5.
Any screen messages generated by your ATOMS run. Please copy these exactly as they appear rather than trying to paraphrase. Running 'atoms.pl' or 'tkatoms.pl' with the ``-v'' switch also gives information which will be useful to me.
6.
The incorrect output file - assuming that the bug did not preclude your output file from being written.
7.
If the FEFF input file written by ATOMS fails to run FEFF correctly, capture any screen messages written by FEFF. Make sure to tell me what version of FEFF you are running.
This URL (http://freshmeat.net/news/2000/02/26/951627540.html) points to an article entitled How to Report Bugs Effectively by Simon Tatham. It provides an excellent overview of how and why to write a bug report.


  TkATOMS fails under the RedHat 5.2 Linux distribution.

The perl distributed with RH 5.2 is severely broken. The only really good solution is to download the source code for perl from CPAN and compile up a new version. Don't fret, compiling perl is easy, although a bit time consuming. Just follow the installation instructions that come with the source code distribution.


  I get a weird error with the Restore button in the Space Group Browser

This error probably says something like

     Global symbol "$Restore the initial symbol: pm3m"
     requires explicit package name at
     /usr/lib/perl5/5.00502/i586-linux/Tk/Balloon.pm line 331.
I am aware of this, but don't know what causes it. It is probably a bug in the Tk help balloon code.


  TkATOMS hangs or crashes the second time I open help.

This was a problem in earlier versions of TkATOMS, but I think that it no longer happens. Please let me know if it happens to you. And please read FAQ #[*].


  The online help does not work on Windows.

Nope. It sure doesn't. This whole feature is disabled on Windows in ATOMS 3.0beta1 due to a bug in the Windows version of Tk.


  I can't see the help balloons when TkATOMS is on the right of my screen.

By default Tk's help balloons fall down and to the right of the widget they are attached to. It is a short coming of the help balloon code that this is also the only behavior. I suppose one solution is to always have TkATOMS on the left side of the screen, but that is surely not the answer you are looking for. In the 'etc/' directory of the ATOMS distribution is a file called 'patch.balloon'. This is a patch against the balloon code in the perl installation. Applying this patch requires that you have root access. The balloon code is the file 'Balloon.pm' which can be found in the place where Tk was installed on your computer. If you have the patch program on your computer, you can apply the patch by moving it to the same directory as 'Balloon.pm' and doing

patch < patch.balloon
This patch prevents the balloon from displaying off screen. However, it is an incomplete solution. The little arrow in the corner of the balloon identifying the widget that the balloon is attached to will likely be in the wrong place. At least you can read the balloon!


  The previous DAFS plot did not get erased in TkATOMS

This is a bug that happens when you double click the ``Run DAFS'' button and have bad luck. It should happen very rarely. Unfortunately, without my rewriting a significant portion of TkATOMS, the only solution is to kill TkATOMS and re-launch it.


  I moved the MacPerl folder on my Mac and now ATOMS doesn't work.

Probably you moved the folder while MacPerl was running. Quit MacPerl completely then try double clicking on the 'atoms.pl' icon again.


  I moved a FEFF input file from one computer to another and FEFF does not run.

Unix, Microsoft, and Apple use different conventions for denoting the end of line in a text file. You must take care to transfer ATOMS' output files between platforms as ASCII files. Using ftp, be sure to specify ASCII transfer. Using a removable disk (floppy, Zip, whatever) or network file sharing, be sure to transform the text file after transferring it.

   
Space Group Symbols


  I get incorrect output for my monoclinic or orthorhombic space group.

Monoclinic space groups have an inherent ambiguity regarding their setting in three dimensional space. There are 6 possible orientations of the unique and secondary axes. In the case of monoclinic and orthorhombic groups, the symbols corresponding to different settings are different from one another. The most likely cause of your problem is that you used a symbol that is correct for your group but incorrect for the setting. See Section [*] and Appendix [*].


  ATOMS interpreted a Hermann-Maguin symbols without spaces incorrectly.

If you use 1935 symbols for certain tetragonal and cubic groups, the space inserting algorithm will fail. For example, if you use the symbol p422, ATOMS assumes you mean p 4 2 2 using the modern notation, rather than p 42 2 in the 1935 notation. To resolve this ambiguity, use spaces.

The space groups for which the 1935 notation sans spaces will fail are:

      number    1935 symbol      modern symbol
        89        p 4 2            p 4 2 2
        90        p 4 21           p 4 21 2
        93        p 42 2           p 42 2 2
        95        p 43 2           p 43 2 2
        97        i 4 2            i 4 2 2
        98        i 4 21           i 4 21 2
       207        p 4 3            p 4 3 2
       211        f 4 3            f 4 3 2
       214        i 4 3            i 4 3 2


  I got a strange result for SiO2 or GeO2.

This is a very common question. One reference on the structure of these two materials uses an odd setting, thus requiring clever use of the shift keyword. See Section [*] for a complete explanation of the solution.

   
Output Files


  How do I change the format of ATOMS' output files?

The output files are formatted using template files found in the 'atp/' directory underneath the installation location of ATOMS. The syntax and use of the template files (atp files) is discussed in the atp document which comes in various formats with ATOMS. To change the format of an output file, either edit the atp files which come with ATOMS or make a copy of the atp file in '~/.atoms/' and alter it as desired. On a Mac or Windows 9x, the altered atp file should be placed in the 'atp' folder in the ATOMS installation folder.


  How do I define new output formats for ATOMS?

Make a new atp file according to your specifications and place it in '~/.atoms/'. On a Mac or Windows 9x, the new atp file should be placed in the 'atp' folder in the ATOMS installation folder.


  How do I change the unique potentials assignment in feff.inp files?

There are three schemes for assigning unique potentials. They are assignment by atomic species, by user-supplied tag, or by crystallographic site. Change the value of the :ipots argument to the <potentials> token in 'feff.atp' to be one of species, tags, or sites. I welcome suggestions for new assignment schemes.


  How do I reduce the FEFF8 stoichiometry list by a common denominator?

Change the :gcd argument of the <potentials> token in 'feff8.atp' from 0 to 1.


  How do I make ATOMS write a FEFF8 input file by default?

If you set the variable $prefer_feff_eight to 1 in the 'atomsrc' file, then the feff8 input file becomes the default output. This means that 'atoms.pl' will write a FEFF8 input file when no file type is specified and that TkATOMS starts up with the FEFF8 output option selected.


  How do I make a ball-and-stick image of my crystal?

Some day I may write such a thing for ATOMS. For now, you will have to use one of ATOMS' output files with you favorite ball-and-stick plotter. ATOMS supports two common ball-and-stick file formats and you can create a suitable atp file for your favorite format.

   
The DAFS Program


  What does the DAFS program calculate?

It calculates a crude approximation of a DAFS scan. Specifically it computes the energy dependent structure factor using tables of f0, f', and f". However, it does not include solid state effects, so includes none of the fine structure. It does, however, give you a sense of the relative magnitude of the reflection and of the cusp as well as which direction the cusp points. It should not be misconstrued as an analytical tool.


  How do I look at the complex parts of the DAFS calculation?

The 'dafs.atp' file that comes with ATOMS writes out energy versus amplitude squared. The amplitude, phase, real, and imaginary parts of the complex DAFS function are available using the <a>, <p>, <r>, and <i> tokens in the dafs list. Either edit the 'dafs.atp' file or make a new one which includes the columns that you want to look at.


  Why is the plot in TkATOMS so primitive?

The canvas in the DAFS notecard in TkATOMS is only meant to be a snapshot of the calculation. As such it is a very simple plot. You can save the data and plot it using your favorite plotter. See Section [*].


  Why do Henke and Chantler produce non-smooth output?

These two data resources are interpolated from a rather sparse grid. Following Chantler's suggestion of semi-log interpolation of f' results in a function that is discontinuous in first derivative at each actual grid point. A future improvement might be to do some sort of spline interpolation, but a much bettr solution would be to convince Henke and Chantler to release their codes on a more appropriate grid near the edge energies. If possible, use the Cromer-Liberman tables instead.


  What platforms do the Cromer-Liberman tables work on?

Currently, they only work on Linux and Irix. There is no a priori reason they cannot be made to work on other platforms, but so far that's it.


next up previous contents
Next: ATOMS Template Files Up: ATOMS 3.0 Documentation Previous: Resources and Bibliography

2001-01-14