********************** * SEXIE User's Guide * ********************** Bernhard Rupp Last revision : MARCH 1994 , SEXIE Version 3.0 See also SEXIE2.TXT for latest release 1) Introduction --------------- 1.1) What is SEXIE ? -------------------- SEXIE is an easy to use computer program for the calculation of coordination shells and geometries around a central atom in a crystal structure. In contrast to most crystallographic bond and distance programs it groups atom distances and angles into coordination shells and provides cartesian coordinates and other output for a series of related programs (FEFF, SCHAKAL, etc). It is designed to run on most micro- and mini- computers like IBM compatibles, DEC VAX under VMS, or UNIX machines such as SGI or SUN. SEXIE is supplemented utility programs. Currently there are several available, among them an interactive input preparation and database utility program named INSHELL, a database utility MAKEDB, a wavelength listing WAVELIST and a input preparation program for FEFF, called INFEFF. 1.2) What is the purpose of SEXIE ? ----------------------------------- Phase shifts and amplitude functions, essential for the quantitative EXAFS (Extended X-ray Absorption Fine Structure) spectral analysis of new materials, are frequently extracted from model compounds of known crystallographic structure. Although many crystallographic programs could in principle provide the necessary data, the retrieval of relevant information may be cumbersome: grouping of atom distances into coordination shells is usually not provided; no attempts are made to determine the coordination geometry; bond angles are not sorted; and the input of point symmetry generators can be elaborate and error prone, especially for space groups of high symmetry. We have designed SEXIE (Shells for EXAFS - InteractivE) to specifically satisfy the needs of the X-ray Absorption Spectroscopist by providing the shell-by-shell atomic arrangement around a central atom in a form suitable for EXAFS data interpretation and refinement. Of course, SEXIE is a complete bond distance and angle calculation program and its various listings of output data can be useful for many other applications. 1.3) What are the goodies of SEXIE ? ------------------------------------ SEXIE will be used mostly by non-crystallographers. Although structural information can be found easily in books like Wyckoff, Pearson/Villars or in the original literature, the derivation of the complete set of equipoint positions for each atom in the asymmetric unit cell from the International Tables for Crystallography can be quite elaborate. Additional documentation on the space group input is provided in SEXIE2.TXT. Specific features : ------------------- * SEXIE requires only a minimum of crystallographic input data : cell constants, the Hermann-Mauguin space group symbol, and the fractional coordinate triple of each nonequivalent atom in the asymmetric unit cell * A menu driven input preparation routine combined with a user-managable input data base of structure data for most elements and for many model compounds. The same data base is used for a X-Ray Powder Diffraction Profile package LPLOT available from the author * Automatic space group decoding and equipoint generation * Tabulated output of structure information, densities, and K, L(I,II,III) edge energies * Compact listing of coordination shells, subshells and geometries * Full listing of cartesian atom coordinates, distances and bond angles * Input preparation for the EXAFS calculation program FEFF. Additional documentation in SEXIE2.TXT 1.4) On what computers does SEXIE run ? SEXIE is written in ANSI X3.9-1978 standard FORTRAN (DOD MIL-1135 Standard). It runs on any iAPx86 based IBM compatible microcomputer under DOS (Version 3.3 and up) with 300 kB of available free memory. A math coprocessor is strongly recommended. SEXIE and can be implemented on virtually any computer and we have run it on VAX, SGI, Sun and other computers. A precompiled 32-bit DOS version is available, which needs a 386 or higher computer with coprocessor. No other executables are available for the PC. 2) Where to get SEXIE ===================== The source code must be obtained individually and a licence agreement needs to be signed either with CPC (see below) or the author to protect from unauthorized commercial distribution. You may distribute and copy the DOS executable programs freely for noncommercial purposes. The source files as well as DOS binaries can be transfered to the host computer using anonymous ftp on internet (connect to host oedipus.llnl.gov, then follow instructions in readme-files) or through : CPC (Computer Physics Communications) Program Library c/o Ms. C. Jackson Queen's University of Belfast N.Ireland An application form can be found in the back of any Computer Physics Communications issue. 3) Installation of SEXIE ======================== 3.1) Non-DOS computers ---------------------- Read the readme-files in the ftp directories. Copy the source code, compile all routines and link. Use the provided batch, script, or com-files and modify to your needs. Leave all data files and code in one directory. Don't forget to copy SEXIE.CFG. 3.2) List of Files ------------------ * SEXIE.BAT (SEXIE.COM, SHELLS-script) The batch file used to start the calculation or input preparation. * SEXIE.DBF, SEXIE.IDX, SEXIE.CFG The database file, the corresponding index file and a configuration file for all programs * INSHELL.FOR, SEXIE.FOR, INFEFF.FOR, WAVLIS.FOR, MAKEDB.FOR The source code of the main programs. All other *.FOR : Subroutines to be linked * INSHELL Input preparation program. Reads and writes data base SEXIE.DBF. Run first to generate input. * SEXIE Main program, does the calculations and prepares output. Run after INSHELL * INFEFF Creates FEFF input from coordinate file INFEFF.XYZ. Run after SEXIE only when FEFF input needed. * MAKEDB Creates a fixed record length data base file from an ASCII text file. MUST BE USED any time you edit the database file SEXIE.DBF with anything else but the SEXIE database manager, INSHELL. * WAVLIS A utility program which prints a list of K- and L- X-ray energies for all elements. * *.INP Input test files for the sample session. **************************************************************** NOTE The following files must be in one directory to ensure proper function of SEXIE: SEXIE.BAT(COM, script), SEXIE.EXE, INSHELL.EXE, SEXIE.DBF, SEXIE.IDX, SEXIE.CFG, INFEFF.EXE On the PC, README.COM or any file viewer (see batch file) **************************************************************** 4) Input/Output description =========================== 4.1) Input files ----------------- The main program reads one single input file containing a minimum of control parameters and the structure data. The input routine INSHELL (which is automatically called if no file name is specified in the command line after typing SEXIE) can be used to create an input file interactively and to add it to the data base or to extract any existing input from the data base. We highly recommend that you start the program using the batch files SEXIE.BAT (COM, SHELLS-script) which make all necessary file assignments and contol the program execution. If you enter SEXIE without a subsequent file name, the interactive input routine will be activated and you can create a datafile or search the database for suitable input data. The interactive input routine is self explaning. It is menu driven and displays additional information screens to assist you in choosing the correct parameters. If you enter SEXIE [filename], the program looks for an input file [filename].INP and starts calculation if it finds the specified input file. An input file [filename].INP must have the following format: ------------------------------------------------------------ Line 1 Title, i.e. any text (A60) ------ Example : Test case F m 3 m (CaF2) Line 2 4 control code numbers (free format, real, real, integer, ------ real) * dmax : maximum distance up to which coordination cluster will be calculated * condis : convergence distance in A~ within which atoms are considered to be within the same coordination shell. * isearc : flag for polyhedra search (1 enables) * conang : convergence angle, i.e. the angle deviation in deg within which (ñ) angles are considered to be equivalent or special angles Example : 10.00 0.010 1 0.500 Line 3 cell constants and angles (6 real numbers in free format) ------ Example : 5.4629 5.4629 5.4629 90.0000 90.0000 90.0000 Line 4 Space Group Symbol and optional space group number (A10, ------ I4). See the explanations and listings of the interactive routine for details. Example : F M 3 M 225 lines 5 Atom lines containing of element symbol, position label, ------- fractional x, y, z coordinates and a flag (1 if atom is to be used as a central atom for a shell calculation). Format (A4,A4,3F8.5,I4). Example : CA 4a 0.0000 0.0000 0.0000 1 F 8c 0.2500 0.2500 0.2500 0 For an example of a complete input file see the listing of *.INP files. 4.2) Batch commands ------------------- The batch command files are quite handy for execution of the program: they assign proper names to the input/output files, and they organize the output. The format is SEXIE . The use of a filename is optional and used only when a specific input file already exists. The file name extension .INP is assumed for input files in the SEXIE system and therefore you should not enter it on the command line. SEXIE starts the interactive routine and is used if you want to create an input file or retrieve an entry from the data base file. If you decide to keep the output from SEXIE, you will be asked for an output file name. SEXIE [filename] executes an input file named [filename].INP, the extension .INP must not be entered.The output file is saved as [filename].OUT . 4.3) Output files ----------------- Output filename [filename.OUT] has the same filename as assigned to the input file or the name you chose when saving it. Example : TEST.INP results in TEST.OUT A typical output file is produced running SEXIE in the batch mode using CUBTEST.INP as an input file (enter SEXIE TEST). The output is self explaining : Part one of the output consists of a table containing basic input information, cell constants and the real space metric tensor and the coordinate basis transformation matrix as used for the calculations. It is followed by a space group decoding part which prints out the equipoint transformation matrix and the corresponding general atom coordinates. The space group decoding is followed by a printout of unit cell information, consisting of fractional and cartesian coordinates of all atoms in the asymmetric unit cell, and some information on X-ray absorption energies, X-ray- and electron densities of the material. After the secondary input data are generated, the unit cell is expanded to a cluster of suitable size and a short table is printed of the coordination shells around the first chosen central atom. The program provides some guesses for coordination geometries; not all geometries are recognized, however. Finally, a complete table of vertex coordinates and angles is printed to the output file. As this table is usually very large, it is not displayed on the screen. If there are more central atoms chosen, the program repeats the calculation of coordination shells for each of them. For a summary of these processes see the program flow diagram, figure 1 in chapter 5. 4.4) INSHELL and the data base SEXIE.DBF ---------------------------------------- A self explaining, interactive utility program called INSHELL is included as source code and in EXE-format for the PC. This menu driven program serves two purposes: it generates input data and it manages the data base. The data base file SEXIE.DBF is always associated with its index file SEXIE.IDX. In the input preparation mode, the program helps you create a new input data set (or file) and solves several simple tasks like consistency checks of space group input and automatic coordinate transformation from rhombohedral into hexagonal obverse systems. If you make an error, a simple line editor within the program lets you change selected entries. Be careful to enter the correct format when editing the input. If you are satisfied with your input, you may add it to your data base. **************************************************************** NOTE Never try to edit the data base file SEXIE.DBF. If you do so, the record structure will be lost and the index file SEXIE.IDX will point to wrong entries. If this happens, or you somehow corrupt the data base or the index file, use the program MAKEDB to save your data base. MAKEDB reads a data base file, restores the record format (60 bytes) and creates a new index file. First, rename the corrupted data base file (e.g. to TRASH.DBF), then type MAKEDB and follow the instructions. *************************************************************** In the data base search mode, INSHELL allows you to search a data base for a given entry, to modify or create entries or to delete entries, and to pack the data base. Packing is the actual removal of an entry; until the data base is packed, a 'deleted' entry is only flagged with a minus sign in the index table SEXIE.IDX and can be restored by editing the index file (OVERWRITE the minus sign with a blank and be careful not to change the record structure of SEXIE.IDX. If that happens and the data base index becomes corrupted, run MAKEDB). 5) Practical hints for calculation of coordination shells ========================================================= SEE also SEXIE2.TXT for latest news !!!!! Although most formal errors can be avoided by using SEXIE interactive, the following explanations regarding the control parameters and generation of the atomic positions according to the space group symbol may be helpful. The SEXIE NEWSLETTER can be ftp'ed and contains useful information on new program features, updates and troubleshooting. 5.1) Definition of control parameters ------------------------------------- Control parameters (which are preset to some practical default values) can be modified to meet specific needs. You may select the largest distance (maximum shell radius, dmax) you want to consider. Usually, above 10 A~ the concept of a coordination shell looses meaning as distinguishable distances (defining a shell) begin to converge into a continuum. This is especially true for distorted cells, where you might choose a larger convergence distance (condis) in order to find the correct coordination geometry. The convergence distance is simply the 'thickness' of the shell, i.e. it allows you to define a range within which atoms are considered to belong to one and the same shell. A similar control parameter (conang) allows you to define a range for special angles. The polyhedra search is based on the occurence of special angles for regular coordination polyhedra. In distorted geometries, you have to accept a little deviation from the ideal angles (try the input for CrF3, where the program correctly finds a nearly regular octahedron in a rhombohedral cell). **************************************************************** NOTE : if you use INFEFF for FEFF input preparation, CONDIS must (sometimes referred as to CONV) be set to a low value, 0.001, for example. See SEXIE2.TXT for more. **************************************************************** 5.2) Entering structural information ------------------------------------ Your information about the structure is usually taken from a compilation of structural data (like Pearson/Villars [1] or Wyckoff [2] or from the original publications. You will find all necessary space group data in the International Tables for Crystallography (ITC) [3]. The primary information is the Space Group Symbol. SEXIE interprets the so called Hermann - Mauguin symbol. This symbol consists of a Bravais letter (P, A, B, C, R, F or I) followed by up to three point group symbols. The interactive routine first checks the space group symbol, then, if there are any inconsistencies detected, it displays information on the correct format and on allowed space group symbols. Given the space group, the program inquires the required cell dimensions for the specific system. Next, you need to provide information about the contents of the previously defined unit cell. You need to enter the fractional coordinates for each nonequivalent atom in the asymmetric unit cell. So, if an atom in an F d 3 m - structure (no. 227) is located at position 8a, its position coordinates would be 1/8, 1/8, 1/8 - and that's it - all we need to know. There is one important point to emphasize : SEXIE always uses the setting of the space groups which has the origin of the unit cell at the centre of symmetry. Some space groups, like our example F d 3 m, allow alternative settings - so please use the correct one referred to as origin at centre. **************************************************************** NOTE : SEE SEXIE2.TXT for the proper choice of space group setting (origin choice 2) **************************************************************** 5.3) Generation of equipoint positions -------------------------------------- From the above described input procedure, it should be evident that you need to enter only one index triple per nonequivalent atom in the unit cell (usually, you would use the first index triple as listed in the International Tables for the specific position). A body face cubic cell, e.g., may have an atom at 0,0,0 in space group F m 3 m (enter 0, 0, 0 for the coordinates). The main program decodes the space group symbol with respect to the point symmetry operators, applies them to this position, adds the Bravais translation vectors and so generates the position for the atoms. In our case, the point symmetry operators do not generate a new position, but the translation vector does, and we get four points. So, the multiplicity of this position is four. If we check with the Tables, we find this correct. 5.4) How to enter unknown structures ------------------------------------ There is a simple way to do this: use space group P 1 and enter every single atom in the unit cell explicitly. As an example, assume you do not find the space group of a simple bcc metal lattice. You know the cell constants (or give it an educated guess) and you know that in a bcc cell the same atom sits on the corners and in the centre of the cell. So you need to enter two atoms : the one at 0, 0, 0, and the other at 1/2, 1/2, 1/2 (you may actually enter fractionals, INSHELL converts them into decimal numbers). If you had used space group I m 3 m, you would have found the position 0, 0, 0 to be twofold (2a) as we expect from the Bravais translation vector I (1/2, 1/2, 1/2) and would not have entered the second atom. In the output listing, you will find a printout of the equipoint transformations, the fractional coordinates and some useful additional unit cell information, like X-ray density and X-ray absorption wavelengths. Cross-check these data for consistency (a density of more than 30 gcm^-3 may in most cases be considered a bad sign). **************************************************************** NOTE : You may get more that the default 20 non-equivalent atoms if using P 1 or large strutures. Recompile SEXIE after re- setting parameter IAT in all (sub)routines to a larger value. This will cost some memory, though. **************************************************************** 5.6) How to enter rhombohedral structures ----------------------------------------- INSHELL supplies a transformation routine, which converts rhombohedral settings (sometines found in older papers) into the first obverse hexagonal setting, yielding a tripled hexagonal unit cell. Both cell constants and atomic position parameters are automatically converted. It is required that you enter the rhombohedral fractional coordination triples exactly as the first listed triple in the International Tables. See also SEXIE2.TXT for further information. 6) DOS version specifics ======================== 6.1) DOS system requirements ---------------------------- SEXIE will run on virtually any IBM PC, XT, AT or PS/2 compatible computer running MS-DOS version 3.3 - 6.2 on a processor of the Intel iAPx86 family. As the program code is rather compact, you will need only a minimum of 300 kBytes of available free memory. If you do not have a hard disk, you will have to modify the installation procedure. No graphics adapter is required, but a coprocessor will reduce execution time significantly. The executable package does not include a non coprocessor version. SEXIE makes use of the DOS extendend screen and keyboard driver ANSI.SYS (which usually is loaded upon booting by the line DEVICE=ANSI.SYS in your CONFIG.SYS - file) for a call to clear the screen. The IBM standard ASCII character set should be used (character code page 437 - do not use the multilingual character sets or the screen layout will suffer). If the results are still unsatisfactory, set icomp = 'VAX' in the SEXIE.CFG file. This restricts the use of ASCII code above 127. 6.2) DOS specific installation ------------------------------ After you have installed your files with the install program by typing A:INSTALL , a test run is executed you may want to compare the output with the sample session listed in Appendix A.1. Manual installation requires copying the PC-disk(s) to your hard disk. We assume you have a hard disk C: and are logged on it (type C: ). Use manual installation only when you encounter any problems or unexpected behavior : Insert disk 1 into drive A: and type A: , then README to receive updated information. Switch back to C: and create a directory C:\SEXIE on your hard disk using the DOS command MKDIR (type MD C:\SEXIE ). Copy all files from the distribution disks or (better) their working copies, to C:\SEXIE (type COPY/V A:*.* C:\SEXIE\*.* ). Start the test by entering SEXIE CUBTEST . You should get a screen output as listed in the appendix. If you do not succeed, recheck all necessary files and make sure that you have used the batch file properly. SEXIE itself will complain about problems with associated files. If there is still unexpected behaviour, please ftp anonymous to oedipus.llnl.gov and describe the problem (write into directory /pub/your_comments) We will try to solve the problem. 7) Execution and program flow ============================== The basic program flow of the main program SEXIE is depicted in figure 1 of reference [4]. The following describes some additional characteristics of SEXIE and of the interactive input routine program INSHELL. See SEXIE2.TXT for additional information. 7.1) Interactive input routine INSHELL -------------------------------------- After loading, INSHELL searches for a configuration file SEXIE.CFG, which can be used to change some system parameters without recompiling the program. If the configuration file is not found, INSHELL resumes with its internal default parameters. You find the default settings in the beginning of the INSHELL source code. INSHELL allows you to retrieve an input data set from the data base or to generate a new input. You may add the new input data to the data base and subsequently start the coordination shell calculation. In either case, upon sucessful completion, INSHELL writes a file SEXIE.INP (which is then read by the main program SEXIE87), and returns a termination code > 1 to the operating system. The batch file SEXIE.BAT (or the file SEXIE.COM on the VAX) interprets the termination code and accordingly controls the file assignments in the process. 7.2) Main program SEXIE ----------------------- SEXIE reads a single input file SEXIE.INP. In batch mode, the batch file (or command file on the VAX) assigns the file name given in the command line and renames the default output file SEXIE.OUT accordingly. The most important parts of the output are directly written to the screen at run time. The larger supplementary vertex coordinate and angle tables are written to the output file only. After termination of the program, you are asked whether you want to view the complete output file and whether to keep it or not. The program flow is straight forward and is sketched in figure 1, ref [4]. ATOM.DAT, XYZ.DAT and INFEFF.XYZ are output files for SCHAKAL input or for INFEFF, respectively. 7.3) FEFF5 input preparation ---------------------------- The FORTRAN program INFEFF has been added to the utilities provided with SEXIE. INFEFF translates SEXIE output listings into FEFF readable input data. Based on an extended curved-wave formalism [6], the high order multiple-scattering program FEFF [5] calculates theoretical EXAFS spectra from model structures. The experimental data can be fitted against the calculated spectra and actual radial distances and occupation of nearest neighbour sites can be deduced. SEXIE outputs the absolute cartesian coordinates in A~ of atoms in the crystal lattice. If necessary, the cell origin is shifted so that the central atom rests at (0, 0, 0). Subshells, which were previously combined to enable the geometry search in SEXIE, are separated into individual shells again. FEFF reads the atomic coordinates and atom types for each shell and calculates EXAFS data with respect the X-ray ionized central atom. A maximum radial distance (or, alternatively, the number of coordination shells) to be included in the FEFF calculation is queried. Cartesian coordinates are listed under under ATOMS in the FEFF input, and crystallographically equivalent atoms are assigned a similar POTENTIAL flag that is referenced to the atomic number of the atom. Atoms of the same element, at different distances and different crystallographic symmetry, but with similar electronic environments, can also be assigned the same POTENTIAL. Such a simplification reduces FEFF runtime. In the strictest sense, (even) crystallographically equivalent atoms in different shells have a different potential due to the presence of the core hole of the X-ray ionized atom. However, the effect of the core hole can usually be ignored beyond the first shells, and crystallographic equivalence can be used to distinguish unique potentials. In the example [7] of GaAs, with gallium as the central atom, the four nearest neighbour arsenic atoms (first shell) and the twelve arsenic atoms comprising the third coordination shell are given the same POTENTIAL. It is worthwhile to use the symmetry of the crystal in this manner since the fewer POTENTIAL flags set by the user, the less runtime FEFF needs. The assignment of different potentials for crystallographically equivalent inner shell atoms is left to the discretion of the FEFF user. Other FEFF parameters are written to the input file as comments (preceded by a *) and can be edited by the user. The DEBYE card input is only applicable for a few instances when the Debye Temperature is known (for example, the Debye temeratures are given for some elements and alkali halides in "Solid State Physics" by Ashcroft and Mermin) The Debye temperature is unknown for most lattices. Often the absolute Debye-Waller factor can be calculated by the user in the Einstein, Debye or other approximation. This can be applied to the FEFF simulation by running the feff.inp once to create the necessary files and then editing the FEFF produced file "files.dat" to applying the Debye-Waller to the sig2 column. Then rerunning the feff.inp with the control card set at: CONTROL 0 0 0 1 This will produce results with the artificially applied Debye-Waller factor included. This is often useful when trying to produce realistic output for visual comparsion with data. In EXAFS studies involving single crystals or samples where the nearest neighbours have some preferred orientation, use is made of the linear polarization of the X-ray beam. Future versions of FEFF (FEFF6) will take into account the preferential direction of the outgoing excited quantum-mechanical electron wave. Input must designate this preferred direction. Further revisions will be made in the INFEFF translation program to accommodate this development. 7.4) SCHAKAL input ------------------ A simple, nice feature of SEXIE Version 3.0 is the generation of an input file for the graphic presentation program SCHAKAL which is available for a variety of operating systems [12]. Figure 2 (omitted) shows a computer drawing based on structural information decoded by SEXIE. The associated input file SCHAKAL.DAT was created appending the SEXIE output file ATOM.XYZ to CELL.DAT. 7.5) Program limits ------------------- The current program limits are set to 20 non equivalent positions (atoms) per unit cell (parameter IAT) and to a maximum of 100 coordination shells per central atom (parameter ISH). The latter is already sufficiently large, but you may want to increase IAT if you have to calculate complex structures. You can change the limits by modifying the parameter statements in the source code of SEXIE. Each additional nonequivalent atom per unit cell requires about 10 Kb of memory. 8) Acknowledgments ================== All routines used in the SEXIE program package code are written ab initio and are proprietary code of The PhysiSoft Corporation (XLIB program library, B.Rupp). Two routines have been adapted and modified from other sources : The method used to decode the point group transformations in subroutine EQUIPT follows the one used in the program LAZY PULVERIX [8], which itself notes that its decoding routine was adapted from a program BURZ supplied by H.Burzlaff [9]. The Heap-Sort routine HEAPST is based on a program listed in Numerical Recipes [10]. The values for the X-ray absorption energies are taken from Bearden and Burr [11]. The crystallographic data for the elements can be found in Pearson's Handbook [1]. The atomic weights were taken from a IUPAC periodic table (1985). Disclaimer ========== Although this program has been extensively tested neither the authors nor the PhysiSoft Corp. can guaranty the correctness of the output nor assume liability for any damages, whether incidental, consequential or otherwise. Please give reference to the program if it is sucessfully used in published scientific work and, if possible, please submit a re-print to of the source code which might be of general interest should be reported to the author in order to include them in further releases of SEXIE. We encourage users to exchange their data base files and would ourselves appreciate additions to the data base. Literature ========== [1] Pearson's Handbook of Crystallographic Data for Intermetallic Phases, P.Villars and L.D.Calvert, eds., American Society for Metals, Metals Park, Ohio (1985) [2] Crystal Structures, R.W.G.Wyckoff, Wiley & Sons, N.Y. (1963) [3] International Tables for Crystallography, Vol. I, The Kynoch Press, Birmingham, England (1968); or International Tables for Crystallography, Theo Hahn, ed., D.Reidl Publishing Company (1988) [4] B.Rupp, B.Smith and J.Wong, Comp.Phys.Comm. 67, 543 (1992) [5] J.J.Rehr, R.C.Albers and S.I.Zabinsky, Phys.Rev.Lett. 69, 3397 (1992) for information e-mail to jjr@leonardo.phys.washington.edu [6] J.J.Rehr and R.C.Albers, Phys.Rev.B. 41, 8139 (1990) [7] A.E. Tabor-Morris, K.M.Kemner, B.A.Bunker, K.A. Bertness, Jpn.J.Appl.Phys. 32, Suppl. 32-2, 404 (1993) and B.Rupp et al., J.Sol.State Chem. 107, 471 (1993) [8] Program LAZY PULVERIX, K.Yvon, W.Jeitschko and E.Parthe, J.Appl.Cryst. 10, 73 (1977) [9] R.Boehme, H.Burzlaff and M.Gomm, Acta Cryst A31, S277 (1975) [10] W.H.Press, B.P.Flannery, S.A.Teukolsky and W.T.Vetterling, Numerical Recipes, Cambridge University Press. [11] J.A.Bearden and A.F.Burr, Rev.Mod.Phys., 39 (1967) 125. [12] E.Keller, J.Appl.Cryst. 22, 16 (1989), for information e-mail to kell@sun1.ruf-uni-freiburg.de TEST-INPUT SUBTEST.INP Lithium Calcium Chromium Fluoride, Rupp Neutron 10.00 .010 1 .500 5.1054 5.1054 9.7786 90. 90. 120. P -3 1 C 163 CA 2b .0000 .0000 .5000 1 LI 2c .3333 .6667 .2500 0 CR 2d .6667 .3333 .2500 0 F 12i .3662 .0192 .1405 0 EXAMPLE BATCH FILE SEXIE.BAT (DOS) echo off if %1x==x goto inter goto batch :inter inshell if errorlevel == 3 goto calc goto end :calc sexie87 copy atom.dat + xyz.dat schakal.dat readme sexie.out infeff readme feff.inp echo. echo. echo If you want to keep this file, rename SEXIE.OUT to a name of your choice echo. goto end :batch if not exist %1.inp goto nofile copy %1.inp sexie.inp sexie87 copy atom.dat + xyz.dat schakal.dat copy sexie.out %1.out infeff readme %1.out readme feff.inp goto end :nofile echo Can't find file %1.INP ?? goto end :end EXAMPLE BATCH FILE SEXIE.COM (VAX) ! --- batch file driver for SEXIE - generic version ! ! --- start interactive mode if no input file specified -- $ if p1 .nes. "" then goto search $ define /user_mode sys$input sys$command $ run inshell $ if .not.($status.eq.3) then exit ! $ batchmode: ! --- execute sexie with assigned files -- $ run sexie $ if p1.nes."" then rename SEXIE.OUT 'output' $ if p1.eqs."" then output = "SEXIE.OUT" $ if (p2 .nes. "Y") .AND. (p2 .nes. "y") then - inquire p2 " Type output on screen (Y/N) " $ if p2.eqs."" then p2="Y" $ if (p2 .eqs. "Y") .or. (p2 .eqs. "y") then type 'output' $ if p1.eqs."" then goto keep $ exit $ search: ! -- look, if we find a suitable input file -- $ input = p1 + ".INP" $ if f$search (input) .eqs. "" then goto nofile $ copy 'input' SEXIE.INP' $ output = p1 + ".OUT" $ write sys$output " Input file is ",input $ write sys$output " Output in ", output $ goto batchmode $ nofile: $ write sys$output "F$Search_fail: File ", p1,".INP does not exist " $ inquire p1 "Input file [file].INP " $ goto search $ keep: $ inquire p2 " Keep this output file (Y/N) " $ if (p2 .nes. "Y") .and. (p2 .nes. "y") then exit $ inquire p1 " Keep as (enter filename) " $ if p1.eqs."" then goto keep $ copy 'output' 'p1' $ exit TEST OUTPUT (FROM SUBTEST.INP) You should obtain the following test output (started with SEXIE SUBTEST , output in SUBTEST.OUT); the PC output and the VAX output are equivalent but use different graphics symbols for drawing the table frames. +-----------------------------------------------------------------------------+ | P R O G R A M S E X I E | +-----------------------------------------------------------------------------+ | Calculation of Coordination Shells and Interatomic Distances | | Bernhard Rupp | | Version 3.0, Revision 02/10/94 | | Proprietary code of PhysiSoft Corporation (C) 1988-93 | +-----------------------------------------------------------------------------+ | Title : Lithium Calcium Chromium Fluoride, Rupp Neutron | | Control parameters : | | Maximum distance range for calculation 10.00 A | | Maximum deviation for considering atoms to be in a common shell : .010 A | | Maximum deviation for considering angles to be special : .50 | | Search for coordination geometry enabled | +-----------------------------------------------------------------------------+ | Unit cell dimensions in A, deg( ) and cubic A : | +-----------------------------------------------------------------------------+ | a b c alpha beta gamma volume | | 5.1054 5.1054 9.7786 90.000 90.000 120.000 220.733 | +-----------------------------------------------------------------------------+ | Real space metric tensor used Contravariant coordinate | | for distance calculation transformation matrix | | | | | | | | | 26.065 -13.033 .000 | | 1.00000 -.50000 .00000 | | | | -13.033 26.065 .000 | | .00000 .86603 .00000 | | | | .000 .000 95.621 | | .00000 .00000 1.00000 | | | | | | | | +-----------------------------------------------------------------------------+ Space group decoding follows +-----------------------------------------------------------------------------+ | Space group Nr. 163 : P -3 1 C | +-----------------------------------------------------------------------------+ | System as decoded from unit cell dimensions : hexagonal | | is consistent with space group P -3 1 C | | Centrosymmetric structure (X,Y,Z) = (-X,-Y,-Z) | | Bravais translation primitive | +-----------------------------------------------------------------------------+ | 6 equipoint transformations [X]'=[X]*[R]+[T] : | +-----------------------------------------------------------------------------+ | R(11) R(12) R(13) R(21) R(22) R(23) R(31) R(32) R(33) T(1) T(2) T(3) | | 1.0 .0 .0 .0 1.0 .0 .0 .0 1.0 .000 .000 .000 | | .0 -1.0 .0 1.0 -1.0 .0 .0 .0 1.0 .000 .000 .000 | |-1.0 1.0 .0 -1.0 .0 .0 .0 .0 1.0 .000 .000 .000 | | .0 1.0 .0 1.0 .0 .0 .0 .0 1.0 .000 .000 .500 | | 1.0 -1.0 .0 .0 -1.0 .0 .0 .0 1.0 .000 .000 .500 | |-1.0 .0 .0 -1.0 1.0 .0 .0 .0 1.0 .000 .000 .500 | +-----------------------------------------------------------------------------+ | 6 equipoint transformations decoded into atom coordinates : | +-----------------------------------------------------------------------------+ | X , Y , Z -X , -Y , -Z | | -Y , X -Y, Z Y , -X +Y, -Z | | -X +Y, -X , Z X -Y, X , -Z | | Y , X ,1/2 +Z -Y , -X ,1/2 -Z | | X -Y, -Y ,1/2 +Z -X +Y, Y ,1/2 -Z | | -X , -X +Y,1/2 +Z X , X -Y,1/2 -Z | +-----------------------------------------------------------------------------+ | 6 equipoints generated by point symmetry | | doubled by centrosymmetry to 12 | | yielding the general position multiplicity of 12 | +-----------------------------------------------------------------------------+ Preparation of unit cell information follows +-----------------------------------------------------------------------------+ | Coordinates, multiplicity and energy of non equivalent atoms in unit cell | +-----------------------------------------------------------------------------+ | Nr. Atom Label X Y Z Mult z K (eV) L1 L2 L3 | +-----------------------------------------------------------------------------+ | 1. Ca 2b .0000 .0000 .5000 2 20 4038.1 437.8 350.0 346.4| | 2. Li 2c .3333 .6667 .2500 2 3 54.8 .0 .0 .0| | 3. Cr 2d .6667 .3333 .2500 2 24 5989.2 694.6 583.7 574.5| | 4. F 12i .3662 .0192 .1405 12 9 685.4 31.0 8.6 8.6| +-----------------------------------------------------------------------------+ | All equipoints of one atom have reasonable distances from each other | | The equipoint transformations generated following atoms in the unit cell : | +-----------------------------------------------------------------------------+ | Fractional Coord. Cartesian coordinates (A) | | Nr. Atom Pos.Nr. X Y Z x y z Dist to Origin | +-----------------------------------------------------------------------------+ | 1 Ca 1 .0000 .0000 .5000 .0000 .0000 4.8893 4.8893 | | 2 .0000 .0000 .0000 .0000 .0000 .0000 .0000 | +-----------------------------------------------------------------------------+ | 2 Li 1 .3333 .6667 .2500 -.0003 2.9478 2.4446 3.8296 | | 2 .6667 .3333 .7500 2.5530 1.4737 7.3340 7.9042 | +-----------------------------------------------------------------------------+ | 3 Cr 1 .6667 .3333 .2500 2.5530 1.4737 2.4446 3.8296 | | 2 .3333 .6667 .7500 -.0003 2.9478 7.3340 7.9042 | +-----------------------------------------------------------------------------+ | 4 F 1 .3662 .0192 .1405 1.8206 .0849 1.3739 2.2824 | | 2 .6338 .9808 .8595 .7321 4.3365 8.4047 9.4858 | | 3 .9808 .3470 .1405 4.1216 1.5342 1.3739 4.6075 | | 4 .0192 .6530 .8595 -1.5689 2.8872 8.4047 9.0242 | | 5 .6530 .6338 .1405 1.7159 2.8023 1.3739 3.5616 | | 6 .3470 .3662 .8595 .8368 1.6191 8.4047 8.6000 | | 7 .0192 .3662 .6405 -.8368 1.6191 6.2632 6.5230 | | 8 .9808 .6338 .3595 3.3895 2.8023 3.5154 5.6302 | | 9 .3470 .9808 .6405 -.7321 4.3365 6.2632 7.6530 | | 10 .6530 .0192 .3595 3.2848 .0849 3.5154 4.8120 | | 11 .6338 .6530 .6405 1.5689 2.8872 6.2632 7.0728 | | 12 .3662 .3470 .3595 .9838 1.5342 3.5154 3.9598 | +-----------------------------------------------------------------------------+ | Maximum distance within asymmetric unit cell is 9.4858 A | | Unit cell contains : 18 atoms; average atom density is .0815 atoms/A**3 | | 202 electrons; average el density is .9151 el/A**3 | | The calculated X-ray density of this material is 3.2044 gram/cm**3 | +-----------------------------------------------------------------------------+ Starting cluster expansion +-----------------------------------------------------------------------------+ | Listing of coordination shells around central atom Ca 2b | +-----------------------------------------------------------------------------+ | Shell Vector Coord.Nr. Distance Coordination Geometry | +-----------------------------------------------------------------------------+ | 1 Ca 2b - F 12i 6 2.2824 trigonal antiprism | | 2 Ca 2b - F 12i 6 3.5616 trigonal antiprism | | 3 Ca 2b - Li 2c 6*) 3.8296 | | 3 Ca 2b - Cr 2d 6*) 3.8296 | | 3 Total coordination 12 reg. hexagonal prism | | 4 Ca 2b - F 12i 6 3.9598 trigonal antiprism | | 5 Ca 2b - F 12i 6 4.6075 trigonal antiprism | | 6 Ca 2b - F 12i 6 4.7676 trigonal antiprism | | 7 Ca 2b - F 12i 6 4.8120 trigonal antiprism | | 8 Ca 2b - Ca 2b 2 4.8893 linear | | 9 Ca 2b - Ca 2b 6 5.1054 regular hexagon | | 10 Ca 2b - F 12i 6 5.6302 trigonal antiprism | | 11 Ca 2b - F 12i 6 5.7620 trigonal antiprism | | 12 Ca 2b - F 12i 6 6.3102 trigonal antiprism | | 13 Ca 2b - Li 2c 6*) 6.3823 | | 13 Ca 2b - Cr 2d 6*) 6.3823 | | 13 Total coordination 12 reg. hexagonal prism | | 14 Ca 2b - F 12i 6 6.4281 planar sixfold | | 15 Ca 2b - F 12i 6 6.5230 planar sixfold | | 16 Ca 2b - Ca 2b 12*) 7.0690 | | 16 Ca 2b - F 12i 12*) 7.0728 | | 16 Total coordination 24**) no special name | | 17 Ca 2b - F 12i 6 7.0915 trigonal antiprism | +-----------------------------------------------------------------------------+ | *) subshell (more than one atom kind contributes to this shell) | | **) possible coincidence with following shell | +-----------------------------------------------------------------------------+ Full listing of vertex coordinates and angles follows +-----------------------------------------------------------------------------+ |Shell 1: Central atom Ca 2b .000 .000 .000, cartes. .000 .000 .000 | |Coordination number 6, no subshell | |Shell atom(s) : F 12i ; | +-----------------------------------------------------------------------------+ |Vector A - B Sub- Fractional coordinates Cartesian coordinates Distance| | Nr Atom Atom shell X Y Z x y z A - B | +-----------------------------------------------------------------------------+ | 1 Ca2b -F 12i 1 .366 .019 .140 1.821 .085 1.374 2.2824 | | 2 Ca2b -F 12i 1 -.347 -.366 .140 -.837 -1.619 1.374 2.2824 | | 3 Ca2b -F 12i 1 -.366 -.019 -.141 -1.821 -.085 -1.374 2.2824 | | 4 Ca2b -F 12i 1 .347 .366 -.141 .837 1.619 -1.374 2.2824 | | 5 Ca2b -F 12i 1 -.019 .347 .140 -.984 1.534 1.374 2.2824 | | 6 Ca2b -F 12i 1 .019 -.347 -.141 .984 -1.534 -1.374 2.2824 | +-----------------------------------------------------------------------------+ |Total of 15 calculated angles in 3 equivalent set(s) ( 0.1 deg) : | +-----------------------------------------------------------------------------+ | 87.506 between Vectors: 1- 2 1- 5 2- 5 3- 4 3- 6 4- 6 | | 180.000 between Vectors: 1- 3 2- 4 5- 6 | | 92.494 between Vectors: 1- 4 1- 6 2- 3 2- 6 3- 5 4- 5 | +-----------------------------------------------------------------------------+ +-----------------------------------------------------------------------------+ |Shell 2: Central atom Ca 2b .000 .000 .000, cartes. .000 .000 .000 | |Coordination number 6, no subshell | |Shell atom(s) : F 12i ; | +-----------------------------------------------------------------------------+ |Vector A - B Sub- Fractional coordinates Cartesian coordinates Distance| | Nr Atom Atom shell X Y Z x y z A - B | +-----------------------------------------------------------------------------+ | 1 Ca2b -F 12i 1 -.019 -.653 .140 1.569 -2.887 1.374 3.5616 | | 2 Ca2b -F 12i 1 .653 .634 .140 1.716 2.802 1.374 3.5616 | | 3 Ca2b -F 12i 1 -.634 .019 .140 -3.285 .085 1.374 3.5616 | | 4 Ca2b -F 12i 1 -.653 -.634 -.141 -1.716 -2.802 -1.374 3.5616 | | 5 Ca2b -F 12i 1 .019 .653 -.141 -1.569 2.887 -1.374 3.5616 | | 6 Ca2b -F 12i 1 .634 -.019 -.141 3.285 -.085 -1.374 3.5616 | +-----------------------------------------------------------------------------+ |Total of 15 calculated angles in 3 equivalent set(s) ( 0.1 deg) : | +-----------------------------------------------------------------------------+ | 106.069 between Vectors: 1- 2 1- 3 2- 3 4- 5 4- 6 5- 6 | | 73.931 between Vectors: 1- 4 1- 6 2- 5 2- 6 3- 4 3- 5 | | 180.000 between Vectors: 1- 5 2- 4 3- 6 | +-----------------------------------------------------------------------------+ +-----------------------------------------------------------------------------+ |Shell 3: Central atom Ca 2b .000 .000 .000, cartes. .000 .000 .000 | |Coordination number 12, 2 subshells | |Shell atom(s) : Li2c ; Cr2d ; | +-----------------------------------------------------------------------------+ |Vector A - B Sub- Fractional coordinates Cartesian coordinates Distance| | Nr Atom Atom shell X Y Z x y z A - B | +-----------------------------------------------------------------------------+ | 1 Ca2b -Li2c 1 -.333 .333 -.250 -2.552 1.474 -2.445 3.8292 | | 2 Ca2b -Li2c 1 .333 -.333 .250 2.552 -1.474 2.445 3.8292 | | 3 Ca2b -Cr2d 2 -.333 .333 .250 -2.552 1.474 2.445 3.8292 | | 4 Ca2b -Cr2d 2 .333 -.333 -.250 2.552 -1.474 -2.445 3.8292 | | 5 Ca2b -Li2c 1 .333 .667 .250 .000 2.948 2.445 3.8296 | | 6 Ca2b -Cr2d 2 .667 .333 .250 2.553 1.474 2.445 3.8296 | | 7 Ca2b -Li2c 1 -.667 -.333 .250 -2.553 -1.474 2.445 3.8296 | | 8 Ca2b -Cr2d 2 .333 .667 -.250 .000 2.948 -2.445 3.8296 | | 9 Ca2b -Li2c 1 -.333 -.667 -.250 .000 -2.948 -2.445 3.8296 | | 10 Ca2b -Cr2d 2 -.667 -.333 -.250 -2.553 -1.474 -2.445 3.8296 | | 11 Ca2b -Cr2d 2 -.333 -.667 .250 .000 -2.948 2.445 3.8296 | | 12 Ca2b -Li2c 1 .667 .333 -.250 2.553 1.474 -2.445 3.8296 | +-----------------------------------------------------------------------------+ |Total of 66 calculated angles in 7 equivalent set(s) ( 0.1 deg) : | +-----------------------------------------------------------------------------+ | 180.000 between Vectors: 1- 2 3- 4 5- 9 6-10 7-12 8-11 | | 79.348 between Vectors: 1- 3 2- 4 5- 8 6-12 7-10 9-11 | | 100.652 between Vectors: 1- 4 2- 3 5-11 6- 7 8- 9 10-12 | | 96.389 between Vectors: 1- 5 1- 7 2- 9 2-12 3- 8 3-10 4- 6 4-11 | | 5-12 6- 8 7- 9 10-11 | | 134.734 between Vectors: 1- 6 1-11 2- 8 2-10 3- 9 3-12 4- 5 4- 7 | | 5-10 6- 9 7- 8 11-12 | | 45.266 between Vectors: 1- 8 1-10 2- 6 2-11 3- 5 3- 7 4- 9 4-12 | | 5- 6 7-11 8-12 9-10 | | 83.611 between Vectors: 1- 9 1-12 2- 5 2- 7 3- 6 3-11 4- 8 4-10 | | 5- 7 6-11 8-10 9-12 | +-----------------------------------------------------------------------------+ Rest of file omitted. FEFF input file created by INFEFF from SUBTEST.INP *************************************************** * FEFF input file generated by SEXIE * *************************************************** TITLE Ca-F -F 12 shells FEFF Rmax - 6.0 TITLE Lithium Calcium Chromium Fluoride, Rupp Neutron TITLE Space group Nr. 163 : P -3 1 C RMAX 6.000000 Max. radial distance HOLE 1 1.0 ihole(1=K), s02 *NOGEOM Use own geom.dat *DEBYE 0 0 T(K), Debye-Temp *** (or change Debye-Waller factors in files.dat &) *** CONTROL 0 0 0 1 CONTROL 1 1 1 1 *PRINT 0 0 0 0 * mphase mpath mfeff mchi * *KLIMIT 0 15 Default k=0-20 *NLEG 8 (2=single sc.only) *RMULTIPLIER 1.0 Mult atomic coord. *CRITERIA 6.0 3.0 Curve 6%, Plane 3% * POTENTIALS * ipot Z atom atom_Id 0 20 Ca 2b 1 9 F 12i 2 3 Li 2c 3 24 Cr 2d 4 20 Ca 2b ATOMS * x y z ipot atom dist atom_Id .0000 .0000 .0000 0 Ca .0000 2b 1.8206 .0849 1.3739 1 F 2.2824 12i -.8368 -1.6191 1.3739 1 F 2.2824 12i -1.8206 -.0849 -1.3739 1 F 2.2824 12i .8368 1.6191 -1.3739 1 F 2.2824 12i -.9838 1.5342 1.3739 1 F 2.2824 12i .9838 -1.5342 -1.3739 1 F 2.2824 12i 1.5689 -2.8872 1.3739 1 F 3.5616 12i 1.7159 2.8023 1.3739 1 F 3.5616 12i -3.2848 .0849 1.3739 1 F 3.5616 12i -1.7159 -2.8023 -1.3739 1 F 3.5616 12i -1.5689 2.8872 -1.3739 1 F 3.5616 12i 3.2848 -.0849 -1.3739 1 F 3.5616 12i -2.5524 1.4737 -2.4446 2 Li 3.8296 2c 2.5524 -1.4737 2.4446 2 Li 3.8296 2c -.0003 2.9478 2.4446 2 Li 3.8296 2c -2.5530 -1.4737 2.4446 2 Li 3.8296 2c .0003 -2.9478 -2.4446 2 Li 3.8296 2c 2.5530 1.4737 -2.4446 2 Li 3.8296 2c -2.5524 1.4737 2.4446 3 Cr 3.8296 2d 2.5524 -1.4737 -2.4446 3 Cr 3.8296 2d 2.5530 1.4737 2.4446 3 Cr 3.8296 2d -.0003 2.9478 -2.4446 3 Cr 3.8296 2d -2.5530 -1.4737 -2.4446 3 Cr 3.8296 2d .0003 -2.9478 2.4446 3 Cr 3.8296 2d -.9838 -1.5342 -3.5154 1 F 3.9598 12i .8368 -1.6191 3.5154 1 F 3.9598 12i .9838 1.5342 3.5154 1 F 3.9598 12i 1.8206 -.0849 -3.5154 1 F 3.9598 12i -1.8206 .0849 3.5154 1 F 3.9598 12i -.8368 1.6191 -3.5154 1 F 3.9598 12i 4.1216 1.5342 1.3739 1 F 4.6075 12i -4.1216 -1.5342 -1.3739 1 F 4.6075 12i -.7321 -4.3365 1.3739 1 F 4.6075 12i 3.3895 -2.8023 -1.3739 1 F 4.6075 12i .7321 4.3365 -1.3739 1 F 4.6075 12i -3.3895 2.8023 1.3739 1 F 4.6075 12i -.7321 4.5063 1.3739 1 F 4.7676 12i -3.5365 -2.8872 1.3739 1 F 4.7676 12i -4.2686 1.6191 -1.3739 1 F 4.7676 12i 3.5365 2.8872 -1.3739 1 F 4.7676 12i 4.2686 -1.6191 1.3739 1 F 4.7676 12i .7321 -4.5063 -1.3739 1 F 4.7676 12i 3.2848 .0849 3.5154 1 F 4.8120 12i 1.7159 -2.8023 -3.5154 1 F 4.8120 12i -1.7159 2.8023 3.5154 1 F 4.8120 12i -3.2848 -.0849 -3.5154 1 F 4.8120 12i 1.5689 2.8872 -3.5154 1 F 4.8120 12i -1.5689 -2.8872 3.5154 1 F 4.8120 12i .0000 .0000 4.8893 4 Ca 4.8893 2b .0000 .0000 -4.8893 4 Ca 4.8893 2b -5.1054 .0000 .0000 4 Ca 5.1054 2b 2.5527 4.4214 .0000 4 Ca 5.1054 2b -2.5527 4.4214 .0000 4 Ca 5.1054 2b 5.1054 .0000 .0000 4 Ca 5.1054 2b 2.5527 -4.4214 .0000 4 Ca 5.1054 2b -2.5527 -4.4214 .0000 4 Ca 5.1054 2b -.7321 4.3365 -3.5154 1 F 5.6302 12i .7321 -4.3365 3.5154 1 F 5.6302 12i 3.3895 2.8023 3.5154 1 F 5.6302 12i -3.3895 -2.8023 -3.5154 1 F 5.6302 12i -4.1216 1.5342 3.5154 1 F 5.6302 12i 4.1216 -1.5342 -3.5154 1 F 5.6302 12i -.7321 -4.5063 -3.5154 1 F 5.7620 12i .7321 4.5063 3.5154 1 F 5.7620 12i -3.5365 2.8872 -3.5154 1 F 5.7620 12i 4.2686 1.6191 -3.5154 1 F 5.7620 12i -4.2686 -1.6191 3.5154 1 F 5.7620 12i 3.5365 -2.8872 3.5154 1 F 5.7620 12i END