___________________________________________________________________ __ NOTE: This update (30.07.96 08:09) replaces all previous versions. Documentation for BALSAC Build and Analyze Lattices, Surfaces, And Clusters Version 2.00 by K. Hermann, Fritz-Haber-Institut Berlin, Germany Part I. Installation and Tutorial Part II. Reference Manual (C) Copyright 1991-6 Klaus Hermann. All Rights Reserved 1 __ 2 ___________________________________________________________________ ========================================================================= NOTE: The latest version of the BALSAC manual may differ from the printed version and is contained in file BALSAC2.DOC. Error notifications and suggestions for improvement are highly welcome. The latest version of this document is also accessible electronically on World Wide Web at http://www.fhi-berlin.mpg.de/th/balsac/balsac.html ========================================================================= ___________________________________________________________________ __ 3 TABLE OF CONTENTS: page 1. Introduction and general description ............................ 6 1.1. How to use the BALSAC documentation ....................... 1.2. BALSAC system features .................................... 6 7 1.2.1. Features of BALSAC/LATTICE ........................ 1.2.2. Features of BALSAC/CLUSTER ........................ 7 9 1.3. Comparison and interfacing with other systems (LATUSE, PLOT3D, SARCH, SCHAKAL) ..... 1.4. History of features and improvements ..................... 1.5. How to cite BALSAC ....................................... 1.6. Where to get BALSAC ...................................... 10 12 14 14 2. Installation and setup of BALSAC ............................... 15 2.1. DOS based PC systems ..................................... 15 2.1.1. System requirements .............................. 2.1.2. Installation ..................................... 15 15 2.2. Unix based systems ....................................... 17 2.2.1. System requirements .............................. 2.2.2. Installation ..................................... 17 17 2.3. Program use in brief ..................................... 2.4. Quick start .............................................. 22 23 3. Tutorial ....................................................... 26 3.1. Setting up ............................................... 3.2. Starting up .............................................. 26 26 3.3. Interactive sessions ..................................... 27 3.3.1. A BALSAC/LATTICE session from scratch ............ 3.3.2. A BALSAC/CLUSTER session from scratch ............ 3.3.3. Getting interactive help ......................... 3.3.4. Analyzing a structure with/without a mouse ....... 27 36 47 49 3.3.4.1. BALSAC/LATTICE sessions ................ 3.3.4.2. BALSAC/CLUSTER sessions ................ 49 50 3.3.5. Producing an output file ......................... 3.3.6. Starting with an input file ...................... 3.3.7. Using the file stack ............................. 3.3.8. Mouse use in BALSAC .............................. 3.3.9. Teach mode of BALSAC ............................. 52 54 55 56 59 3.4. Batch mode operation of BALSAC/LATTICE ................... 3.5. Switching between BALSAC/LATTICE and BALSAC/CLUSTER sessions ................................................. 60 62 4. Hints for efficient usage ...................................... 64 4.1. General strategies ....................................... 4.2. Printing ................................................. 4.3. Plotting ................................................. 64 66 66 4.3.1. Color and gray scale PostScript .................. 68 4.4. Photographic reproduction ................................ 4.5. Frequently asked questions ............................... 68 69 5. Basic definitions .............................................. 74 5.1. Coordinate systems and basis vectors ..................... 5.2. Displaying crystal surfaces .............................. 5.3. Internal parameters for atoms, lattices .................. 74 76 77 __ 4 ___________________________________________________________________ 5.4. Colors and painting used for graphics and PostScript output ................................................... 5.5. Interactive input/output ................................. 5.6. File system used by BALSAC ............................... 90 93 94 6. Detailed operations ............................................ 98 6.0. Setting up and installation .............................. 6.1. Starting up .............................................. 6.2. Interactive options: BALSAC/LATTICE session ............. 98 98 103 6.2.0. Main option menu ................................ 6.2.1. Lattice option, [L] ............................. 104 110 6.2.1.1. Selecting Bravais lattices ............. 115 6.2.1.2. Updating free lattices ................. 118 6.2.2. Radii and nuclear charge option, [R] ............ 6.2.3. Miller index option, [M] ........................ 6.2.4. Section option, [S] ............................. 6.2.5. Layer restructure option, [C] ................... 6.2.6. View option, [V] ................................ 6.2.7. Graphics option, [G] ............................ 123 128 131 136 146 151 6.2.7.1. Setting links/bonds between atoms ...... 161 6.2.7.2. Defining the plot layout ............... 164 6.2.8. File output option, [O] ......................... 6.2.9. Execute option, [X] ............................. 167 174 6.2.10. Scratch option, [N] ............................. 177 6.2.11. File input option, [I] .......................... 178 6.2.12. Menu option, [E] ................................ 178 6.2.13. Exit and transfer option, [,], [U] .............. 179 6.2.14. Analysis option, [A], [Q] ....................... 181 6.2.14.1. Analysis in text mode, [A] ............ 181 6.2.14.2. Analysis in graphics mode, [Q] ........ 189 6.2.15. Basic parameter option, [P] ..................... 200 6.2.15.1. Setting basic colors .................. 208 6.2.15.2. Using the color/shading workbench ..... 216 6.2.16. File stack option, [K] .......................... 220 6.3. Interactive options: BALSAC/CLUSTER session ............. 223 6.3.0. Main option menu ................................ 6.3.1. Changing the cluster title, [T] ................. 6.3.2. Structure option, [S] ........................... 224 227 228 6.3.2.1. Manipulating atoms ..................... 232 6.3.2.2. Manipulating groups of atoms ........... 239 6.3.2.3. Imposing symmetry ...................... 247 6.3.3. Radii and nuclear charge option, [R] ............ 6.3.4. View option, [V] ................................ 6.3.5. Graphics option, [G] ............................ 250 255 260 6.3.5.1. Setting links/bonds between atoms ...... 262 6.3.5.2. Defining the plot layout ............... 263 6.3.6. File output option, [O] ......................... 6.3.7. Execute option, [X] ............................. 6.3.8. Scratch option, [N] ............................. 6.3.9. File input option, [I] .......................... 265 269 272 272 6.3.10. Exit and transfer option, [,], [L] .............. 273 6.3.11. Resume option, [E] .............................. 274 ___________________________________________________________________ __ 5 6.3.12. Analysis option, [A], [Q] ....................... 275 6.3.12.1. Analysis in text mode, [A] ............ 275 6.3.12.2. Analysis in graphics mode, [Q] ........ 279 6.3.13. Basic parameter option, [P] ..................... 291 6.3.14. File stack option, [K] .......................... 292 6.4. File input/output ....................................... 292 6.4.1. Use of external files, batch run mode ........... 6.4.2. LATUSE format (in/output from LATTICE/CLUSTER session) ........ 6.4.3. PLOT3D format (in/output from CLUSTER/LATTICE session) ........ 6.4.4. SARCH ASCII format (output files from LATTICE session) ............. 6.4.5. SCHAKAL format (output files from LATTICE session) ............. 6.4.6. PostScript format (output from LATTICE/CLUSTER session) ........... 292 293 306 311 313 314 6.4.6.1. Editing PostScript files .............. 320 6.4.7. Format of initialization files .................. 6.4.8. Format of on-line help files .................... 327 332 6.4.8.1. Listing of the default help file ...... 333 6.5. Utility programs ........................................ 358 6.5.1. Testing initialization file definitions ......... 358 6.5.1.1. Utility TSTCOL (DOS/VGA version) ...... 6.5.1.2. Utility TSTCOL (Unix/X.11 version) .... 358 372 7. 380 In case of trouble ............................................ 8. Programming notes and restrictions ............................ 9. Bibliography and software ..................................... 10. 388 List of option menus .......................................... 11. 407 Index ......................................................... 385 386 __ 6 _________________ Sec. 1. _________________________________________ 1. INTRODUCTION AND GENERAL DESCRIPTION The program system BALSAC (Build and Analyze Lattices, Surfaces, And Clusters, (C) Copyright K. Hermann 1991-6) allows the construction, visualization, and interactive analysis of general crystal lattices including single crystal surfaces (LATTICE sessions) and of finite clusters and molecules (CLUSTER sessions). Structural information can be stored on ASCII-type data files using a variety of different formats including gray scale and color PostScript to obtain high quality print output using PostScript printers and typesetting devices. BALSAC versions exist for Unix-based workstations and mainframes using X.11 Windows for graphics output (DECstation 5000, IBM RS/6000, HP 9000, Silicon Graphics, Convex, Stardent, SUN) and for DOS-based personal computers (IBM PC XT/AT, IBM PS/2 or true compatible systems) using VGA monochrome or color graphics. The BALSAC program system ((C) Copyright K. Hermann 1991-6) is copyright protected and may be obtained from Garching Innovation GmbH, Koeniginstr.19, D-80539 Muenchen, Germany (tel. [+49] 89 288279, fax. [+49] 89 21081593. 1.1. HOW TO USE THE BALSAC DOCUMENTATION The complete BALSAC documentation ((C) Copyright K. Hermann 1991-6) comes in one book with 11 Sections and is also included as a printable ASCII file 'balsac.doc' in the BALSAC package. The BEGINNERS may first want to read the brief introduction into BALSAC features including new program options and improvements described in Sec. 1.4. Then they will obtain flavor of how to use BALSAC by reading through Sec. 2.4. Afterwards he/she should work through the complete tutorial, Sec. 3, where various applications are discussed in example sessions. This provides some basic understanding of the strategies used in BALSAC and teaches how the most important options work. Further, they may consult Sec. 4 for hints (see in particular the "Questions and answers" section 4.5). The ADVANCED users may want to inspect new program options and improvements introduced in this updated version and described in Sec. 1.4. They may want to look up basic definitions of lattices, color assignments, coordinate systems, and file names in Sec. 5. Further, they obtain detailed explanations of all options in Secs. 6.2-3. Then they may consult Sec. 4 for hints (see in particular the "Questions and answers" section 4.5) and Sec. 6.4 for output file format definitions. Finally, Sec. 6.4.6.1 helps to improve PostScript output. The SYSTEM ADMINISTRATOR finds detailed informations on how to install and set up BALSAC in Sec. 2 while Sec. 7 helps in trouble shooting. The installation requires basic knowledge of the Microsoft Disk Operating System (DOS) for DOS-based systems and minor Unix experience for Unix-based systems. ________________________ Sec. 1.2. ________________________________ __ 1.2. 7 BALSAC SYSTEM FEATURES The program system BALSAC ((C) Copyright K. Hermann 1991-6) includes two parts, BALSAC/LATTICE and BALSAC/CLUSTER, which distinguish between periodic and local non-periodic structures. The two parts are interconnected, allow transfer of structure data between them, and use the same menu driven strategies. Their features will, however, be described separately. 1.2.1. FEATURES OF BALSAC/LATTICE BALSAC/LATTICE uses a lattice definition and appropriate Miller indices to construct sections of lattice planes which are displayed as 3-dimensional arrays of atoms for visual inspection and interactive analysis. The program allows you to study lattices (both primitive and non-primitive, with up to 200 atoms per unit cell) and comes provided with several standard lattice structures predefined internally. Lattice planes are described by appropriate Miller indices (h k l). For fcc and bcc type lattices (h k l) can be defined with respect to simple cubic lattice vectors (commonly used) as well as to Bravais reciprocal lattice vectors. For hcp and Graphite structures a 3and 4-index notation, (h k l) and (l m n q), is implemented. The bottom/top plane of a lattice section can be selected freely to allow for surface planes of different termination in non-primitive lattices. Any number of selected planes may be completely restructured (including 3dimensional shifts, modified planar periodicities, modified atom basis sets) to allow for most general geometries. BALSAC/LATTICE contains various graphical options to visualize structural properties. Lattice sections of variable size and shape (blocks or spherical cuts) are displayed either layer-by-layer (net plane stacking) starting with a selected plane, atom-by-atom as 3-dimensional arrays of atoms, or as arrays of elementary cells starting with the atoms farthest away from the viewer. Atoms can be visualized by dots, (filled) circles, or (shaded) spheres (with/without sticks connecting atoms) and may be labelled/painted according to their layer or element label. A 3-dimensional impression of the structure is given by parallel or central projection where the viewing direction and position can be chosen freely. The structural impression can be further improved by red/blue stereo viewing (using color filter viewing glasses) or by full color stereo viewing (with optical stereo viewing glasses). Various manipulations of the graphical output such as size reduction / enlargement, rotation about the viewing direction, or changes in perspective are readily available. Further, atom coordinates, distances, angles, local symmetries, geometries, and subplanes of a lattice section may be read off from the screen by selection via a graphical pointer (keyboard or mouse). __ 8 _________________ Sec. 1.2.1. _____________________________________ Apart from graphical output, numerical coordinates of all atoms of given sections can be listed and saved for separate graphical or numerical applications. (This feature allows you to run BALSAC without a graphics adapter.) Numerical information on lattice sections (such as real and reciprocal lattice vectors, transformed basis vectors, restructure information, atomic coordinates etc.) determined by BALSAC/LATTICE can be saved on separate files. These files may be transferred to the BALSAC/CLUSTER part (see below) or modified externally with text editors and used as input for subsequent runs of BALSAC or other programs. BALSAC/LATTICE is fully menu-driven in interactive mode using keyboard or mouse input and is mostly self-explanatory. The user may start from scratch building any lattice or use predefined lattice structures or he/she can start with structures generated by previous runs. In batch mode BALSAC/LATTICE runs by itself using input from an ASCII file which was generated in a preceding session or written with a text editor or produced by other programs. This feature allows you to interface BALSAC with other application programs. In batch mode the program simulates an interactive session defined by a set of option parameters and input data taken from the input file. Most of the important manipulations of the interactive mode of BALSAC/LATTICE such as changing lattices, Miller indices, views, graphics options etc. are possible in batch mode. Switching between interactive and batch mode is always possible if appropriate data transfer files for in/output are provided. BALSAC/LATTICE allows file output of structure and graphics data in various ASCII formats for subsequent use with BALSAC as well as with other professional visualization programs (SARCH, LATUSE, PLOT3D, SCHAKAL, etc.). This includes encapsulated color PostScript format for generating structure graphics. BALSAC PostScript files are written specifically for good readability and easy editing to further modify/embellish structure plots. Amongst other applications, BALSAC/LATTICE is particularly useful to - quickly explore a variety of bulk structures and terminations, both qualitatively and quantitatively. - visualize lattice sections of various shapes with planar and spherical boundaries, allowing to show - crystal blocks with planar surfaces, - hemispherical lattice sections describing facetted FIM, FEM, or STM tips, - spherical crystal sections describing clusters, - spherical cavities inside crystals. - inspect and analyze local geometries and symmetries of any (h k l) oriented surfaces in complex lattices, with or without adsorbates, including surface restructuring (layer relaxation, commensurate/ incommensurate reconstruction).In particular, lattice planes of large ________________________ Sec. 1.2.2. ______________________________ __ 9 Miller index values describing stepped / kinked surfaces are accurately accounted for. (All basis vectors are determined using integer algorithms based on solutions of diophantene equations rather than by direct vector operations). - generate instructive high quality (color) graphics of complex lattice and surface geometries for presentations and publications. 1.2.2. FEATURES OF BALSAC/CLUSTER BALSAC/CLUSTER allows you to construct, visualize, and analyze atom clusters of any complexity. Examples are molecules, clusters, finite sections of crystal lattices, of surfaces, of adsorbates on surfaces, or of interfaces. In the following we will always call these systems "clusters". Starting from a set of atom definitions (coordinates, nuclear charges, provided interactively or by transfer from BALSAC/LATTICE or using external input files) the cluster can be visualized or listed numerically by appropriate atom coordinates. Further, BALSAC/CLUSTER allows you to analyze local symmetries and geometries in a given cluster. It is interactive and uses the same menu strategies as BALSAC/LATTICE with many options being identical or similar. The user may start from scratch building a cluster or he/she can start with structures generated by previous BALSAC runs. Atom clusters can be modified by adding or deleting (hiding) atoms. Further, local groups of atoms may be selected and manipulated interactively. Possible transformations include rotation, translation, copying, or hiding/deleting. BALSAC/CLUSTER includes the same graphical visualization options as BALSAC/LATTICE. Here clusters are displayed as 3-dimensional arrays of atoms starting with the atoms farthest away from the viewer and allowing for various graphical manipulations such as size reduction / enlargement, rotation about the viewing direction, or changes in perspective. Atom coordinates, distances, and angles in a cluster may by determined directly from the screen output using a graphical pointer (keyboard or mouse). The pointer can also be used to select atoms and define subgroups interactively. In addition to graphical display all cluster atoms can be listed by their numerical coordinates and saved for separate graphical/numerical applications on external files. These files are ASCII-type and may be modified with text editors and used as input for subsequent runs of BALSAC/CLUSTER or other programs. The atoms of a cluster can be transferred to BALSAC/LATTICE to form the elementary cell of a 3-dimensional lattice allowing the user to build very complex molecular crystals. BALSAC/CLUSTER allows file output of structure and graphics data in various ASCII formats for subsequent use with BALSAC as well as with other professional visualization programs (LATUSE, PLOT3D, etc.). This includes encapsulated color PostScript format for generating structure graphics. BALSAC PostScript files are written specifically to maximize readability and enable easy editing to further modify/embellish structure plots. __ 10 _________________ Sec. 1.3. _______________________________________ Among other applications, BALSAC/CLUSTER is particularly useful to - inspect and analyze local geometries and symmetries of any atom cluster such as - molecules, clusters, - finite sections of crystal lattices, allowing to postprocess structures generated with BALSAC/LATTICE by manipulating (adding/moving/hiding) single atoms or groups of atoms - surfaces, - interfaces; - explore possible atom clusters for structure determinations; - evaluate structural relationships qualitatively and quantitatively: bonding, interatomic distances, bond angles, atomic coordinates, etc; - generate instructive (color) graphics of complex structures presentations and publications: 3-dimensional structures with any viewing geometry including red/blue or full color stereo views. Further, color and gray scale PostScript output is possible allowing high quality prints on PostScript laser printers to be used for publications. 1.3. COMPARISON AND INTERFACING WITH OTHER SYSTEMS (LATUSE, PLOT3D, SARCH, SCHAKAL) The BALSAC program system includes all features of the two PC-based program systems LATUSE (a subset of BALSAC/LATTICE) and PLOT3D (a subset of BALSAC/CLUSTER) developed by K. Hermann. While building and analysis strategies of BALSAC and LATUSE/PLOT3D are identical BALSAC offers many additional features and improvements, the most important ones being - portability which allows you to run BALSAC on DOS based PCs as well as on many Unix based workstations and mainframes using an X.11 Windows interface; of a completely revised graphics interface which offers a free choice RGB color definitions with up to 240 (Unix/X11) and 16 (DOS/VGA) different colors/shadings; - a more user friendly menu interface with mnemonic keys and a separate menu window (Unix/X.11) for all options - faster and more refined graphics options (shading with diffuse, Lambert, and specular contributions); ________________________ Sec. 1.3. ________________________________ __ and 11 larger internal space for atom definitions allowing the construction analysis of larger systems; - on-line help facility which can be customized by the user; - much more features in the interactive graphic analysis of screen output; - full color PostScript file output yielding color prints of publishing quality. The files are well structured and can be easily modified by the user. The program system SARCH developed by M. A. Van Hove includes many features of BALSAC and offers in addition surface science oriented visualization tools like a kinematic LEED analysis option and an STM surface topograph. The interactive graphics options of SARCH are generally less sophisticated and slower than those of BALSAC. In addition, SARCH is in its present version restricted to PC systems while a workstation version is not available. BALSAC is, in some respect similar in its goals to the crystallographic and molecular visualization package SCHAKAL written by E. Keller. However, BALSAC is designed for interactive use. The graphics screen output shows complete substructures at all times. Substructures as well as the final atom cluster or crystal section may be analyzed interactively. In contrast, SCHAKAL produces somewhat more sophisticated final output whereas during the construction period screen output is always incomplete. Further, SCHAKAL (originally designed as a batch program for crystal graphics) does not allow interactive analysis and modification of a given atom cluster nor does it handle different net plane stacking using Miller indices. BALSAC uses several ASCII file formats for structure input/output which provides the interface with other programs. The different formats are listed in the following file type BALSAC input BALSAC output -----------------------------------------------------------LATUSE X X PLOT3D X X SARCH X SCHAKAL X gray/color PostScript X ------------------------------------------------------------ __ 12 _________________ Sec. 1.4. _______________________________________ 1.4. HISTORY OF FEATURES AND IMPROVEMENTS Version 1.1: - first official release Version 2.0: - The (re)start of BALSAC/LATTICE sessions from scratch is made simpler using more default parameter values and less numerical output at startup. - The LATTICE session now includes all 14 elementary Bravais lattices as defaults. - In BALSAC/LATTICE sessions lattice sections may be built by stacking complete elementary cells in addition to layer-by-layer and atom-byatom building mode. - Some option keys have been given different names for improved mnemonic value. - The transfer between LATTICE and CLUSTER sessions is made faster and more convenient. - An extended mouse menu feature makes selecting options easier (DOS and Unix versions) including the new menu window option (Unix/X.11 version). - File names used for in/output can be given up to 72 characters (formerly only a maximum of 20 characters was allowed). Some file input is made simpler by default names (balsac2.ini, balsac2.hlp, balsac.lat, balsac.plt). - A new safety backup feature saves all structure/graphics information on an external file automatically whenever a BALSAC session is finished. This allows a complete recovery of a previously finished session. - Groups of atoms can be saved/moved onto an external PLOT3D format file (BALSAC/CLUSTER sessions). - Text fonts used for graphics output are read from the initialization file (Unix/X.11 version). They can also be redefined interactively. - A new internal display geometry model allows you to reset the view focus with the viewer positioned even inside a structure. - The interactive graphic analysis option has been completely revised. This includes new features such as - Atoms used in the graphical analysis are now marked visually. - Wigner-Seitz cells and Brillouin zones can be displayed (also available as PostScript output files). ________________________ Sec. 1.4. ________________________________ __ 13 - Basis vectors of reconstructed layers (2-dim. periodicities) can be displayed in addition to 3-dimensional bulk lattice periodicities. - Atoms can be hidden/unhidden interactively. - Fast assignment of colors to atoms, bonds, and background is possible. - The view focus can be readjusted interactively for improved perspective. - Any 2-dimensional lines may be drawn/erased on the screen for marking. The lines are included as arrows in PostScript output files. - The PostScript output interface has been completely rewritten for better performance and flexibility. This includes features such as - Improvements of the ASCII file structure towards better readability for easy editing to further modify/embellish BALSAC graphics output. This manual includes a tutorial telling you how to make changes in the PostScript files with the help of a text editor. - Arrow definitions are complemented by double-headed arrows and arrow pairs with/without outlining. - Background color definitions are included. - Titles and labels can include super/subscripts and mathematical ot greek symbols. - Atoms are internally numbered in the file for better identification. - A full multi-user installation procedure including man(ual) files and run-time shell scripts has been added. This includes makefiles for various workstation types (Unix/X.11 version). - The performance of the X.11 Windows graphics output has been further optimized in speed and memory requirements. The interfacing has become more robust allowing for different X.11 window managers. Terminal information has been added to the logon screens (Unix/X.11 version). - The menu and on-line help text has been completely rewritten to achieve better understanding. A new teach mode using extended help text (from the default help file) greatly facilitates learning how to use BALSAC. - Symmetry constraints can be applied to complete a cluster or elementary cell of a lattice by adding symmetry equivalent atoms. __ 14 _________________ Sec. 1.5. _______________________________________ 1.5. HOW TO CITE BALSAC To comply with copyright laws and as a matter of fairness/politeness to the author any publication which includes BALSAC output in printed form should also include a reference similar to "Fig. xx was produced with the help of BALSAC (version 2.0, (C) Copyright K. Hermann 1991-6). The BALSAC software was developed by K. Hermann, Fritz-Haber-Institut Berlin (Germany)." in the text or reference section. Further, oral or poster presentations using BALSAC print output must include the "BALSAC plot" logo at the bottom right of the plot unless the logo disturbs the visual impression. 1.6. WHERE TO GET BALSAC The BALSAC software is copyright protected ((C) Copyright K. Hermann 1991-6) and is distributed by the marketing company of the Max-PlanckGesellschaft. For pricing and shipment information on BALSAC please contact Garching Innovation GmbH, Mrs. M. Pasecki, Koeniginstr. 19, D-80539 Muenchen (Germany) Tel.: [+49] 89 288279 Fax: [+49] 89 21081593 e-mail: 100627.1572@compuserv.com For technical questions on BALSAC please contact the author Prof. Dr. Klaus Hermann Abt. Theorie, Fritz-Haber-Institut Faradayweg 4-6 D-14195 Berlin (Germany) Tel.: [+49] 30 84134812 Fax: [+49] 30 84134701 e-mail: hermann@FHI-Berlin.MPG.DE ________________________ Sec. 2. __________________________________ __ 2. 15 INSTALLATION AND SETUP OF BALSAC This section describes all operations necessary to install BALSAC starting from the original package ((C) Copyright K. Hermann 1991-6). Installation details are different for the PC as compared to the workstation version and will therefore be described separately. It is strongly recommended to make backup copies of all original floppy diskettes before installing the BALSAC software. However, copies should be made for safety purposes only since BALSAC is copyright protected. Anyone interested in this software should contact the author to obtain copies. 2.1. 2.1.1. DOS BASED PC SYSTEMS SYSTEM REQUIREMENTS Running the BALSAC system requires an IBM PC XT/AT, IBM PS/2 or fully compatible PC running MS-DOS or PC-DOS Version 5.0 or later. However, the BALSAC PC software is guaranteed only to run on IBM PS/2 systems with standard VGA adapters. The system requirements are - 640 Kb installed memory of which 560 Kb must be free for running BALSAC - Math coprocessor for Intel 80286, 80386, 80486-SX systems, not required for i80486-DX and Pentium based systems - 3 MB free hard disk space - VGA graphics adapter - color (or monochrome) monitor (640 x 480 pixels) - Microsoft compatible mouse pointer (optional but highly recommended) - black/white or color PostScript printer (optional) 2.1.2. INSTALLATION To install BALSAC under DOS 5.0 or higher copy all files of the original package listed below into a subdirectory of your PC hard disk. Then select the correct initialization file and copy it to a file named 'balsac2.ini' of the same subdirectory, see Sec. 2.3. This completes the DOS installation. BALSAC may also be run as a full screen DOS application under MS Windows 3.1x. For the integration of BALSAC in a Windows application group a file balsac2.ico is included on diskette 1 providing an appropriate icon. Note that running BALSAC as a DOS application inside MS Windows requires a minimum of 560kb free memory which may be available only after removing memory resident drivers from your system. __ 16 _________________ Sec. 2.1.2. _____________________________________ The BALSAC (version 2.0) system uses files balsac.exe balsac2.ini balsac2.hlp balsac.trl balsac.trp file.lat opt.) file.plt opt.) BALSAC run module BALSAC initialization file BALSAC on-line help file BALSAC transfer file used for transfer (optional) BALSAC/CLUSTER --> BALSAC/LATTICE (optional) BALSAC transfer file used for transfer BALSAC/LATTICE --> BALSAC/CLUSTER (optional) BALSAC/LATTICE input/output files (LATUSE format, BALSAC/CLUSTER input/output files (PLOT3D format, where 'balsac.exe' and 'balsac2.ini' have to reside in the same DOS subdirectory. Note that several versions of 'balsac2.ini' are provided with the original distribution diskettes, see Sec. 2.3. The full documentation ((C) Copyright K. Hermann 1991-6) of BALSAC is contained in file 'balsac2.doc'. The following table lists all files provided with the original BALSAC (version 2.0) distribution diskettes. Each file is described, its use (either required (R) or optional (O) ) is indicated, and its location on the diskettes is shown. ------------------------------------------------------------------------file name file description use diskette ------------------------------------------------------------------------balsac.exe BALSAC run module R 1 balsac2.hlp BALSAC on-line help file R 1 tstcol.exe utility for monitor/adapter checking, mouse tests, and color setting O 1 vgac6.ini vgac2.ini bwgraph.ini balsac2.ini balsac2.ico readme.1st balsac2.doc initialization file VGA 6 colors, 2 tones initialization file VGA 2 colors, 6 tones initialization file gray tones for black/white prints is created from either vgac6.ini, vgac2.ini, bwgraph.ini MS Windows 3.1x icon file O O 1 1 O 1 R O 1 latest system changes, manuals guide Complete documentation file: introduction, installation, tutorial, reference manual O 1 O 2 baltit2.ps XMPLS PostScript format manual title page and example output of BALSAC to be printed on color/gray scale PostScript printers O 2 directory containing examples of structure input files for BALSAC/LATTICE sessions (LATUSE format files *.lat) and for BALSAC/CLUSTER sessions (PLOT3D format files *.plt) O 1 ------------------------------------------------------------------------- ________________________ Sec. 2.2. ________________________________ __ 2.2. 17 2.2.1. UNIX BASED SYSTEMS SYSTEM REQUIREMENTS Running BALSAC requires a genuine Unix workstation or mainframe interfacing with X.11 Windows (Release 3 or later). This includes workstations and operating systems IBM RS/6000 stations DEC alpha Hewlett-Packard HP9000 SUN Silicon Graphics DECstations 5000 Convex Cxxx systems Linux based systems However, the BALSAC workstation software is guaranteed only to run on IBM RS/6000 stations (AIX 3.2.5). The system requirements are (a) hardware - 8 MB of installed memory - 5 MB of hard disk space for system files - color graphics adapter (256 colors) accessible from X.11 Windows, this may be a direct workstation interface or an X-Windows terminal - high resolution color monitor (minimum 800 x 600 pixels) - three button mouse pointer - black/white or color PostScript printer (optional) (b) software - Fortran77 compiler (objects linkable with C bindings) C (ANSI) compiler (objects linkable with Fortran bindings) Xlib X.11 Windows graphics library (revision 3 or higher) C include files: Xlib.h, Xutil.h, stdio.h, termios.h 2.2.2. INSTALLATION The installation of BALSAC (version 2) on a Unix system requires some basic knowledge of Unix system management. The installing person must have root privileges and should know the local system administrator. The installation procedure includes six steps (plus step 0 for uninstalling version 1) described in the following where the commands enclosed in quotes "..." are meant to be interactive Unix (c shell type) commands. For convenience we __ 18 _________________ Sec. 2.2.2. _____________________________________ assume that the archive file BALSAC2.tar.Z of the original package resides in subdirectory /user/BALSAC2 and the installing person is logged in as super user (root). Steps 0: and In case you have BALSAC Version 1 installed in your system want to delete it before installing the new version you have to delete the old executables, default help and initialization files as well as the manual files e.g. by "rm /usr/local/balsac/balsac.* /usr/local/balsac/tstcol.*" and remove the old script files by e.g. "rm /usr/local/bin/balsac /usr/local/bin/tstcol" Note that for this action you have to have Unix super user privileges. If the old version is not removed it will not be overwritten by the update and can be used further on but there is no obvious need for it since all input file formats are compatible between version 1 and 2. Steps 1: file, Go to subdirectory /user/BALSAC2, uncompress the archive and unpack all BALSAC files by "cd /user/BALSAC2" "uncompress BALSAC2.tar.Z" "tar -xvf BALSAC2.tar" This creates the BALSAC (version 2.0) system consisting of files readme.1st balsac2.doc *.f , *.c makefile balsac2.scr tstcol2.scr *.1 balsac2.hlp balsac2.ini last messages and installation, manual, complete source code, system generating file BALSAC (version 2.0) multi-user script TSTCOL (version 2.0) multi-user script Unix man(ual) files for interactive use on-line help file initialization file baltit2.ps PostScript file of the manual title page head.hp examples header file for installation on Hewlett- XMPLS Unix systems subdirectory containing example input files and Packard ________________________ Sec. 2.2.2. ______________________________ __ Step 2: 19 Generate the BALSAC run files by "make sys" where sys denotes the Unix system with sys = aix for IBM RS/6000 systems, AIX 3.1 or later, = osf for DEC Alpha systems, OSF/1 V3.0 or later, = sgi for Silicon Graphics, IRIX V5.3 or later, = hpux for HP 9000 systems, HPux V9.0 or later, = solaris1 for SUN sparc stations, OS 4.1.2/Solaris 1, = solaris2 for SUN sparc stations, OS 5.x/Solaris 2.x, = ultrix for DECstations, Ultrix 4.1 or later, = convex for Convex Cxxx systems, OS 8.0 or later, = linux for Linux based systems, Kernel 1.2.13, gcc 2.7.0, ELF This creates run files balsac2.exe, tstcol2.exe of the BALSAC system. Depending on the local system installation the X.11 Windows include file directory may have to be added in the C compile step of the makefile as cc -O -c -Iincludedir all.c where includedir denotes the valid directory name (edit the makefile appropriately). Further, the local X.11 Windows basic library may reside in a directory other than the default assumed in the makefile. This requires changes in the two Fortran compile and final link steps of the makefile reading e.g. f77 balsac2.f all_.o -o balsac2.exe f77 tstcol2.f all_.o -o tstcol2.exe localdir/libX11.a localdir/libX11.a where localdir denotes the full name of the directory containing the local X.11 Windows basic library (edit the makefile appropriately). If you are in doubt consult your system administrator for the local directory names. Note that Linux based systems with an incorrect make installation may yield an error message " make: *** [linux] Error 4" requiring to run the compile steps of the makefile manually. Steps 3: Create a BALSAC system directory owned by root but accessible to all users e.g. /usr/local/balsac, move the BALSAC system and default initialization files to that directory, and set appropriate file restrictions by "mkdir /usr/local/balsac" (needed only if the directory does not exist from a earlier version 1 installation). __ 20 _________________ Sec. 2.2.2. _____________________________________ "mv *.exe balsac2.ini balsac2.hlp /usr/local/balsac" "chmod 755 /usr/local/balsac/*.*" Consult your system administrator for a meaningful directory name. Steps 4: Edit the two BALSAC run scripts, balsac2.scr, tstcol2.scr, by replacing in line set files=DIRECTORY the word DIRECTORY by the appropriate name of the BALSAC system directory (e.g. /usr/local/balsac as used above). Then move the BALSAC run scripts to the system directory that holds local software, e.g. /usr/local/bin, by "mv balsac2.scr /usr/local/bin/balsac" "mv tstcol2.scr /usr/local/bin/tstcol" and make the scripts executable by "chmod 755 /usr/local/bin/balsac" "chmod 755 /usr/local/bin/tstcol" Note that all potential BALSAC users must have the directory /usr/local/bin in their directory path. Step 5: moving Make the man(ual) files of the BALSAC system available by the appropriate files to the Unix manual directory, e.g. /usr/man/man1 (consult your system administrator for the local name of the directory), by "mv *.1 /usr/man/man1" Step 6: Remove the source code and tar file by "make clean" . Make all files of the directory /user/BALSAC2 holding the BALSAC manual print files (balsac2.doc, baltit2.ps) and the examples directory XMPLS publicly available. NOTE that the source code and tar file should be kept only for backup purposes and NOT made publicly available. Distributing or modifying the source code or parts of it without informing the author is unfair and violates copyright laws! After steps 1-6 of the installation are completed successfully BALSAC is accessible for all users in a multi-user environment and can be run by different users at the same time. BALSAC will start up using default initialization and/or on-line help files (balsac2.ini, balsac2.hlp of the BALSAC system directory) unless the user redefines the file names, see Sec. 6.1. In the following we list the shell script balsac2.scr to illustrate the philosophy of multi-user application of BALSAC. ________________________ Sec. 2.2.2. ______________________________ __ 21 ---- file balsac2.scr start ----------------------------------------------#!/bin/csh -f # # Calling script for Unix distribution of BALSAC Version 2.0 # # Authors: F. Rammer , K. Hermann (FHI Berlin) , May 3, 1993 # Version 2 revision: K. Hermann (FHI Berlin) , June 14, 1995 # # Description: # # This script enables the general use of BALSAC Version 2 ((C) Copyright # K. Hermann 1992) in a Unix multiuser environment. The calling convention # from any user directory is # # balsac [-options] [datafile] [initfile] [helpfile] # # as decribed in the BALSAC Version 2.0 Users Guide. All run files (balsac2.exe # tstcol2.exe) and default parameter files (balsac2.ini, balsac2.hlp are # assumed to reside in directory 'files', see below. This script file should be # stored in a generally available directory which is included in the path of # generally available directory which is included in the path of # all potential BALSAC users. # # If an initialization file 'balsac2.ini' and/or a help file 'balsac2.hlp' # exists in the directory from which balsac is called the program will # override its defaults files (in directory 'files'). Otherwise the default # files are used at startup of balsac. set files=/usr/global/balsac # directory in which to find # initial data-, init-, helpfile set inifile=balsac2.ini set hlpfile=balsac2.hlp unset inilink unset hlplink if (! -f $inifile) then # no ini file in calling directory, make a symbolic link to default ln -s $files/$inifile $inifile set inilink endif if (! -f $hlpfile) then # no help file in calling directory, make a symbolic link to default ln -s $files/$hlpfile $hlpfile set hlplink endif $files/balsac2.exe $1 $2 $3 $4 __ 22 _________________ Sec. 2.3. _______________________________________ # remove previously defined soft links if ($?inilink) rm $inifile if ($?hlplink) rm $hlpfile exit ---- file balsac2.scr end ------------------------------------------------- 2.3. PROGRAM USE IN BRIEF BALSAC is started from the DOS or Unix command line by balsac [-options] [structfile] [initfile] [helpfile] where all parameters in square brackets [...] are optional as explained in detail in Sec. 6.1. If no structure input file and session option is given BALSAC starts with the initial startup screen from which a BALSAC/LATTICE or BALSAC/CLUSTER session can be started in interactive mode or using a structure input file. For graphical output a graphics interface (X.11 Windows and a color graphics adapter) must be installed. In interactive mode of BALSAC/LATTICE, the user has to provide structural parameters and select graphics options in the order (see Sec. 6.2.) a) b) c) d) e) f) lattice type, lattice constant, Miller indices defining the lattice plane stacking, size of the lattice section and terminal plane, optional restructuring of lattice planes, viewing direction, perspectives etc. used for graphics output type of graphics, colors etc. used for graphics output. After input a) - f) the LATTICE main option menu shows giving shorthand information on all important parameters. Most of the structural parameters and those concerning graphics output can be viewed and modified from the main option menu. In addition, plotting of lattice sections with different graphics modes, analysis of lattice sections, and numerical output is initiated from the main option menu (and from many other menus), see Sec. 6.2. All parameters of the lattice section can be saved on external files or in an external file stack. The resulting structure files may serve as input for subsequent runs of BALSAC or for other programs. Graphics prints may be produced using color and gray scale PostScript file output sent to a PostScript laser printer. In interactive mode of BALSAC/CLUSTER the user has to provide structural parameters and select graphics options in the order (see Sec. 6.3.) a) b) c) atom coordinates, atomic radii, nuclear charges, viewing direction, perspectives etc. for graphics output type of graphics, colors etc. ________________________ Sec. 2.4. ________________________________ __ 23 After input a) - c) the CLUSTER main option menu shows describing the structure. Most of the structural parameters and those concerning graphics can be viewed and modified from this main option menu. In addition, plotting of atom clusters with different graphical modes, analysis of substructures, and numerical output is initiated from the main option menu (and from many other menus). All parameters of the atom cluster can be saved on external files or in an external file stack. The resulting structure input files can serve as input for subsequent runs of BALSAC or for other programs. Graphics prints may be produced using color and gray scale PostScript file output sent to a PostScript laser printer. If BALSAC/LATTICE is entered with a structure input file all data are read from the file (see Sec. 6.4.1/2.) and, depending on the option flags of the structure input file, BALSAC moves directly to the LATTICE main option menu allowing to visualize/analyze/modify the preloaded lattice section interactively or BALSAC executes the sequence of options defined by the option flags. If BALSAC/CLUSTER is entered with a structure input file all data are read from the file (see Sec. 6.4.1/3.) and BALSAC moves directly to the CLUSTER main option menu allowing to visualize/analyze/modify the preloaded cluster structure interactively. Note that all BALSAC Version 1 output files can be used without changes for input to BALSAC Version 2. Lattice sections which interactively or using BALSAC/CLUSTER session transfer from BALSAC/CLUSTER to is used for an elementary 2.4. have been created in a BALSAC/LATTICE session a structure input file may be transferred to a for further processing. Further, structure BALSAC/LATTICE is possible where the atom cluster cell of a (fictitious) simple cubic lattice. QUICK START OF BALSAC To give the impatient user a flavor of the BALSAC system two sample sessions will be given below by listing only the commands to be entered and the results of this input without a detailed explanation. For a full tutorial Sec. 3 may be consulted. It is assumed that BALSAC has been correctly installed in a DOS/VGA or Unix/X.11 environment and the display settings (on Unix systems) are correct. In the following, input to BALSAC is entered from the keyboard where [x] denotes "press key x on the keyboard". Further, "numbers/text" means "type the text/values inside the double quotes, " ", followed by the enter key". __ 24 _________________ Sec. 2.4. _______________________________________ (A) Build and view a lattice section showing the (001) face of the cubic Zincblende lattice. command action ---------------------------------------------------------------------------"balsac -l" starts a BALSAC/LATTICE session. [i] starts an interactive session from scratch. [h] selects a Zincblende lattice. "1." selects a lattice constant a = 1. "0,0,1" selects Miller indices (001) for surface orientation. "3,4,7,1" selects a section of 3 x 4 x 7 atoms, finishes with 1st termination plane. [,] skips view options, using view defaults. [,] skips graphics options, using the default graphic values, and moves to main option menu of the BALSAC/LATTICE session. [x] displays the lattice section: see layers of Zn atoms (small balls) and S atoms (large balls). The layers are painted differently. [,] returns to main option menu. [s], [b], "4,5,7" increases the crystal section block. [,] returns to main option menu. [v], [t], "60,10" changes view angle theta to 60 degrees (10 degrees increment, see below). [p], "65,10" changes viewing angle phi to 65 degrees (10 degrees increment, see below). [q], "3,1" turns on central perspective. [,] returns to main option menu. [g], [d], [d] displays atoms as dither-shaded balls. [l], [p] colors atoms according to their nuclear charge. [x] views the modified lattice section: pretty 3dimensional picture of the lattice section. [up arrow] or [8] rotates the lattice section (theta increased by 10 degrees) and plots again. [left arrow] or [4] rotates the lattice section (phi decreased by 10 degrees) and plots again. [m] shrinks picture of lattice section. [M] blows up picture of lattice section to previous size. [,] returns to main option menu. [o], [q] saves lattice structure on file 'balsac.lat'. [,], [q] exits from BALSAC. "balsac -lr" starts a BALSAC/LATTICE session with the previously saved lattice structure as input. ---------------------------------------------------------------------------- ________________________ Sec. 2.4. ________________________________ __ 25 (B) Build and view a benzene (C6H6) molecule. command action ---------------------------------------------------------------------------"balsac -c" starts a BALSAC/CLUSTER session. [i] starts an interactive session from scratch. "C6H6 molecule" provides molecule title. "2" starts with two atoms (C, H) only. "1.4,0,0,0,6" defines one C atom (x,y,z, dummy radius, atomic number). "2.5,0,0,0,1" defines one H atom (x,y,z, dummy radius, atomic number). [s], [c] imposes symmetry (rotation axis). "0,0,0,0" defines symmetry origin (0, x,y,z). "0,0,1,6" defines direction of rotation axis (x,y,z) and order (6). ( [c] ) returns to structure menu (BALSAC DOS version only). [,] moves to view menu. [,] skips view options, using view defaults. [,] skips graphics options, using the default graphic values, and moves to main option menu of the BALSAC/CLUSTER session. [r], [r], [c] renormalizes atom radii. [x] displays the molecule: planar view with C atoms (large balls) and H atoms (small balls). Elements are painted differently. [,] returns to main option menu. [r], [a], [r], ".8" shrinks all atom radii to 80%. [,] returns to main option menu. [g], [c] defines bonds between atoms. [n], "2" defines two bond constraints. "6,6,1.3,1.5" connects carbons (atomic number = 6) within a distance range (1.3, 1.5). "6,1,1.0,1.2" connects carbons (atomic number = 6) with hydrogens (atomic number = 1) within a distance range (1.0, 1.2). [r], "0.15,0.1" defines bond thicknesses (stick radii). [x] displays the molecule: planar view of C6H6 with bonds. [o], [v], [q], "3,1" turns on central perspective. [x] displays the molecule: still planar view. [up arrow] or [8] rotates the molecule (theta increased by 10 degrees) and plots again. Repeat with [up arrow]. [left arrow] or [4] and rotates the molecule (phi decreased by 10 degrees) plots again. Repeat with [left arrow]. returns to main option menu. saves molecule structure on file 'balsac.plt'. exits from BALSAC. starts a BALSAC/CLUSTER session with the previously saved molecule structure as input. ---------------------------------------------------------------------------[,] [o], [q] [,], [q] "balsac -cr" __ 26 _________________ Sec. 3. _________________________________________ 3. 3.1. TUTORIAL SETTING UP If BALSAC ((C) Copyright 1991-6 K. Hermann) has not yet been installed on your PC or workstation you have go through one of the installation procedures described in detail in Sec. 2. Note that BALSAC needs two external files to run correctly, 'balsac2.ini' containing all basic control parameters and 'balsac2.hlp' providing on-line help text, for details see Secs. 6.4.7/8. These files must be in your directory or appropriate directory paths must be set. After you have made sure that both 'balsac2.ini' and 'balsac2.hlp' exist in your directory you are ready to start BALSAC. 3.2. STARTING UP You start BALSAC ((C) Copyright 1991-6 K. Hermann) from the command line by typing BALSAC {options} or balsac {options} followed by the [enter] key where {options} are a number of options available at startup which will be explained later and in Sec. 6.1. If no options are selected defaults are assumed and BALSAC moves to its initial logon screen as displayed in Sec. 6.1 with an initial option menu Select: [L]attice [C]luster [M]ouse(off) [T]each(off) [?,]Quit from which you can choose between running a BALSAC/LATTICE session (studying periodic crystal/surface sections), running a BALSAC/CLUSTER session (studying atom clusters), toggling flags of the mouse mode, and teach mode (don't before you know what you are doing!), and quitting. All these options are available to you by simply pressing the respective option key which is enclosed in square brackets [ ] in the option menu, see also Sec. 5.5. Options may also be selected with the mouse pointer using mouse mode, see Sec. 3.3.8, but for now you stick to keyboard input. If you need help on any of the above options just press "?" followed by the option key and a short explanation will appear. The next sections will tell you what to do with these options. Note, however, that BALSAC can run correctly ONLY if an initialization file (its name is defaulted to 'balsac2.ini') and an online help file (default name is 'balsac2.hlp') exists in you present working directory or an appropriate directory path has been set. ________________________ Sec. 3.3. ________________________________ __ 3.3. 27 INTERACTIVE SESSIONS In the following sessions you will learn how to use BALSAC to generate, display, and analyze the most general atom structures. BALSAC allows you to enter basically two different interactive sessions, BALSAC/LATTICE where periodic systems of atoms (crystals, surfaces) can be studied and BALSAC/CLUSTER where finite clusters of atoms (molecules, clusters) can be examined. The sessions use similarly structured option menus and building strategies so that you can easily switch between them. However, to show you the special features of each session we will discuss them below in two separate examples. In Sec. 3.3.1 you learn in a BALSAC/LATTICE session about the (001) surface of the cubic Zincblende lattice which is still simple enough to understand all numerical and graphical output but can also be used to illustrate some of the more advanced features of BALSAC/LATTICE. In Sec. 3.3.2 you examine in a BALSAC/CLUSTER session the nickel carbonyl molecule, Ni(CO)4, which shows both basic and advanced features of BALSAC/CLUSTER. 3.3.1. A BALSAC/LATTICE SESSION FROM SCRATCH Let us assume that BALSAC is correctly installed in your system. You can start a BALSAC/LATTICE session either - from the initial BALSAC menu, see Sec. 3.2, which shows after startup (start with "balsac" + [enter] on the command line) followed by pressing [L] or - directly using a command line option (start with "balsac -l" + [enter] on the command line). Now you will be presented with the initial session menu ========================================================================= = BALSAC/LATTICE 2.00 by K. Hermann (C) Copyright 1991-6 {graphics mode information} Select: [I]nteractive [R]esume [P]revious [F]ile [?,]Quit ->[C]luster ========================================================================= = asks you to select a run option by pressing the respective option key (ignore the graphics mode information for the moment). Since you want to build the lattice section interactively from scratch you press [I]. From now on you have to select various options by pressing option keys enclosed in [ ] and provide numerical parameters by typing the respective __ 28 _________________ Sec. 3.3.1. _____________________________________ values. First, the lattice option menu ========== LATTICE OPTIONS =============================================== Select : [A] sc [B] fcc [L] fcc (Bravais hkl) [C] bcc [M] bcc (Bravais hkl) [D] hcp [N] hcp (lmnq) [E] diamond [O] diamond (Bravais hkl) [F] NaCl [P] NaCl (Bravais hkl) [G] CsCl [H] zincblende [Q] zincblende (Bravais hkl) [I] graphite [R] graphite (lmnq) [J] free lattice [S] free lattice (lmnq) [K] Bravais lattice [U]pdate free/Bravais lattice [V]lattice scaling [T]itle [?,]esc ========================================================================= = asks you to select the lattice you want to study. So for a Zincblende type lattice you type [H]. This is confirmed by a line Znblnde(fcc+2) lattice selected, code = 8 Now BALSAC asks you Global lattice scaling constant a= for a reasonable value of the lattice constant of the lattice. At first you are not interested in numerical results but only in the structural details of the lattice. Therefore, you use a trivial value, typing "1." + [enter]. This defines the lattice constant as one unit length (whatever "unit" means; in typical applications you will deal with Angstrom units but feel free to use those of your preference). After these basic lattice definitions the prompt ========== MILLER INDEX OPTION =========================================== Define Miller indices for directions of net plane stacking to build the lattice section. Simple cubic, Bravais, and 4-index notation are available depending on the lattice type. Miller indices (H K L / 0 0 0 ) : ========================================================================= = gives a short explanation and asks you to select the lattice plane stacking you want to use to build your lattice. Here you have to provide three (integer) Miller indices (the three zeroes in brackets mean that previous values of H, K, L have not been defined). Since you want to study the (001) ________________________ Sec. 3.3.1. ______________________________ __ 29 planes of the lattice you type "0,0,1" + [enter]. Now the prompt ========== SECTION OPTIONS ======================================== Select the size of a rectangular lattice block to be displayed. The block is defined by layers of N1 x N2 atoms where N3 layers are stacked. NINIT sets the index of the initial plane (bottom of block ) for non-primitive lattices ( NINIT = 1 for primitive lattices). Section N1,N2,N3,NINIT : =================================================================== gives a short explanation and asks you to choose the size of the lattice plane sections you want to inspect. BALSAC has already determined two vectors R1', R2' which define a periodicity basis within the lattice planes. Then the section size is determined by the number of atoms along each of the two basis vectors. Here N1 refers to R1' and N2 to R2'. Since you want a picture that does not look too complicated but still gives the impression of planes you decide on a 3 x 4 array of atoms in each plane (N1=3, N2=4). Now you have to tell BALSAC how many planes you want to include. This is the 3rd entry, N3, of the section request. Again you don't want a plot that looks too crowded and ask for 7 planes (N3=7). Finally, the Zincblende lattice is nonprimitive and there are two different (0 0 1) lattice subplanes. BALSAC/LATTICE allows you to build structures starting with different subplanes. The number of the starting subplane is required as the 4th parameter NINIT in the above section request. To begin you start with the first plane (NINIT=1, you can start with the second plane later). This completes the input for the section request reading "3,4,7,1". You send it off with [enter]. Now BALSAC shows the view option menu ========== VIEW OPTIONS ================================================== [V]iew(miller) = ( .000 .000 1.000 / [T]heta,(dtheta) = .00 ( 10.00 ) [P]hi,(dphi) = .00 ( 10.00 ) .000) [R]ot,(drot) [M]agnf,(dmagnf) [Q]persp,(dpersp) [F]ocus [S]hift (pixels) [A]ll [W]orkb = .00 ( 180.00 ) = 1.0000 ( 1.5000 ) = .0000 ( 1.5000 ) = 0 ( .000 .000 = 0 , 0 [D]ispla [?,]esc .000 ) ========================================================================= = asking for details of the viewing geometry in subsequent plots. The first line describes the viewing direction by Miller indices as will be explained below. The next lines contain viewing angles and other quantities that you need for the viewing. All necessary parameters are defaulted with values given as the first numbers in each line of the list. The incremental values (becoming important later) are shown in brackets. Let us start by setting all parameters except for Miller view indices (which will be computed __ 30 _________________ Sec. 3.3.1. _____________________________________ internally). You press [A] and get the prompt Input THETA,PHI,ROT,MAGNF,PERSP : First you want to understand what these parameters mean. THETA and PHI are the two angles defining the viewing direction. This is based on a right handed coordinate system where the z axis coincides with the lattice plane normal and the x axis is parallel to the lattice plane basis vector R1'. If you use spherical coordinates (r,THETA,PHI) in this system you can specify any direction by angles THETA (polar angle with respect to z axis), PHI (azimuthal angle with respect to x axis). This is the notation used for the viewing direction. You may want to inspect the lattice section along the lattice plane normal vector which means THETA = 0 and PHI = 0. BALSAC allows also to rotate the plot about the viewing axis by an angle ROT. Since you don't want to rotate at this moment (additional rotation may only confuse you) you set ROT = 0. BALSAC can enlarge or reduce the size of the picture on the screen using a magnify factor MAGNF. You stick to the default size (maximum screen filling) and set MAGNF = 1. Now you have to decide on the kind of projection to obtain a 3-dimensional impression of the lattice on the screen by setting PERSP. As will be discussed in great detail in Sec. 6.2.6 a perspective value PERSP > 0 results in central perspective while PERSP = 0 leads to parallel projection. You start with the simplest case, parallel projection where PERSP = 0. Now the input for the view request is complete and reads "0.,0.,0.,1.,0." which agrees, by the way, with the default values. (For a view along the planes with a 70 degrees rotation, half size reduction, and a reasonable perspective the input would read e.g. "90.,0.,70.,.5,3.".) After sending it off with [enter] BALSAC returns to the view option menu (see above) and gives you another chance to modify each parameter. There is an alternative method to tell BALSAC/LATTICE about the viewing direction which is available as option [V] (Miller view) in the menu. Here you define directions in the crystal by triples (vh, vk, vl) defining linear combinations of the three reciprocal lattice vectors. If the three components vh, vk, vl are integer valued you have the usual Miller index definition of a lattice direction. However, for a general direction vh, vk, vl will be non-integer. After you press [V] the prompt Input Miller view (VH,VK,VL) : asks you to define the view direction vector. Looking at the lattice planes along the normal vector corresponds to VH,VK,VL = 0,0,1. After you type "0,0,1" + [enter] BALSAC returns to the view option menu with the same values of THETA, PHI as shown above which confirms that you have chosen the same viewing direction as before by defining the angles THETA, PHI explicitly. (Typing "0,1,0" + [enter] would have yielded angles THETA=90, PHI=45.) To go on to the next set of options you press [,] after which BALSAC shows as the final part of the build up sequence the graphics option menu ========== GRAPHICS OPTIONS ============================================== Graphs: [D]esign(Hm) [S]tereo(off) [B]ackgr( 0) [P]alstart( 1) [M]ode(A) [C]link( 0) [L]ayout(L-/T-F) c[T]abl [W]orkb [?,]esc ========================================================================= = ________________________ Sec. 3.3.1. ______________________________ __ 31 which lets you define all important graphics parameters, such as the display mode (layer-by-layer or atom-by-atom), how to represent atoms (points, balls, etc.), or color settings, which are used to plot the lattice section. Most of these parameters come already with reasonable defaults and do not need to be changed. Let us assume that you want create a layer-by-layer plot pausing the plot between subsequent layers. So you press [M] and the prompt ========================================================================= = Mode (A) : [L]ayer-by-layer, [A]tom-by-atom, [C]ells, [?,]esc ========================================================================= = lets you choose between different modes where in "Mode (A)" the character in brackets means that the default mode was atom-by-atom display. For layer-by-layer plotting you press [L] after which BALSAC returns to the graphics option menu which reads ========== GRAPHICS OPTIONS ============================================== Graphs: [D]esign(Hm) [S]tereo(off) [B]ackgr( 0) [P]alstart( 1) [M]ode(L) [C]link( 0) [L]ayout(L-/T-F) c[T]abl [W]orkb [?,]esc ========================================================================= = where "[M]ode(L)" confirms your choice. Next you decide about how the atom are to be shown in plots. Pressing [D] shows ========================================================================= = Design(Hm) : [N]one [L]ist [P]oint [C]ircle [A]rea [R]Bstereo balls: [H]ard [F]uzzy [D]ithered [G]lossy [S]tereodup(off) [?,]esc ========================================================================= = and lets you choose between different representations. Here in "Design (Hm)" the characters in brackets mean that the default representation of atoms was by hard-shaded balls (using a mono view). Since you want color filled circles (= areas) you press [A] after which BALSAC returns to the graphics option menu which reads ========== GRAPHICS OPTIONS ============================================== Graphs: [D]esign(Am) [S]tereo(off) [B]ackgr( 0) [P]alstart( 1) [M]ode(L) [C]link( 0) [L]ayout(L-/T-F) c[T]abl [W]orkb [?,]esc ========================================================================= = where "[D]esign(Am)" confirms your choice. Next you define your plot layout. Pressing [L] shows the layout menu [T]itl(on ) [B]as(off) [F]ram(on ) [P]aint(layer) [L]abl(none) [?,]esc where all options parameter values ("on", "off", "layer", "none") are given in brackets after each entry. Here the defaults show that each plot comes with a title line at the top, no lattice vectors (basis) are shown, the lattice section is enclosed by a wire frame, atoms of different lattice __ 32 _________________ Sec. 3.3.1. _____________________________________ planes (layers) will be discriminated by different colors, and atoms will not be labelled. You can change the above options by pressing the respective keys [T], [B], [F], [P], [L] as many times as you like. Each key press is confirmed by a new option line which shows the updated selection. You want lattice vectors to be shown and press [B]. You further want to label atoms by their element names and press [L]. Now the option line reads [T]itl(on ) [B]as(on) [F]ram(on ) [P]aint(layer) [L]abl(elmnt) [?,]esc You return to the graphics option menu pressing [,] and since all parameters are set you move on by [,] which completes the initial build up sequence and shows the main option menu ========== BALSAC/LATTICE MENU =========================================== [L]attice = Znblnde(fcc+2) lattice ( 8) a= 1.00000000 [R]ad/nuc = 2 ( 2) [M]iller = ( 0 0 1 )c ( 1 1 0 ) [S]ection = 3 4 7 ; top= 1 ; rclc=on ; atoms= 0 ( 0) [C]hstruct = 0 layers: [V]iew = .0 .0 ; rot= .0 ; mag= 1.00 ; per= .00 ; foc= 0 [G]raphics = L/Am ; colr= 0/1 LE ; lout=TBF ; cnct= 0 ; shft= 0 0 [X]plot [A]nl [I]nput [O]utput stac[K] [N]ew >cl[U]str [P]arm [?]Help [,]Quit ========================================================================= = which gives shorthand information about the parameters you have defined so far (a detailed explanation of this menu is given in Sec. 6.2.0.). From this menu you can generate a pretty picture on the screen (using plot option [X]) or choose any of the other main options which allows you, amongst other things, to modify all parameters defined in the initial build up. Let's try out graphics first. To produce graphics output you simply press [X] inside the main option menu (or any other menu that offers the [X]plot option). Depending on whether you sit before a PC or in front of an X.11 Windows equipped graphics workstation you can watch the screen being cleared or a graphics window being created on the screen after which the wire frame of a 3-dimensional box shows up (looking like rectangle of white lines with the present viewing parameters). All lattice plane sections shown in the following will be inside a box outlined by the wire frame. Then the first layer of atoms given by (blue) painted spheres shows on the screen. The atoms are all labelled by "Zn" since they represent zinc atoms. In addition, the screen shows a title line ( 0 0 1 )c Znblnde(fcc+2) < .0 .0> 1 A at the top indicating which lattice plane of what lattice you see. Here the Miller indices "(0 0 1)c" are given with respect to the simple cubic reciprocal lattice vectors which you asked for. The following two numbers on the title line define the actual viewing direction given by angles "<THETA PHI>" (see above) which confirms that you are viewing perpendicular to the layers. The two characters at the end, "1 A", tell you that BALSAC has generated a first lattice plane section (1) using the first subplane (A). Note that since you have chosen a non-primitive lattice there are two ________________________ Sec. 3.3.1. ______________________________ __ 33 non-equivalent parallel subplanes, "A", "B", which are repeated periodically. In primitive lattices you would get only "A" planes. To continue you press [enter] after which the atoms of the second lattice plane shown as (green) painted spheres with their atoms labelled "S" are added to the plot. Now the last two characters on the title line read "1 B" since the program has added a lattice plane section from the first set of subplanes (1) using the second subplane (B). After you press [enter] again another layer of zinc atoms shown by (dark green) painted spheres and labelled "Zn" will be added to the plot and the lattice plane is denoted "2 A" in the title and so on. After you have added the 7th lattice plane section (denoted "4 A" showing zinc atoms ) the plot output is completed by finishing the wire frame (which you don't recognize with the present viewing parameters). In addition, three lines are drawn and labelled by "1", "2", "3" giving a graphical impression of the actual basis vectors used to create the atoms. Finally, a menu line Replot[udlr][rRpPmM+] analyze[Q] stack[LS] trnsf[T] qmen[O] sho[EI] [?,]esc shows at the bottom of the screen listing all available fast plot key options (pressing [O] will show all options of the main option menu, don't use it at this point). Now you can inspect the lattice section with different values of viewing parameters (using one of the fast plot keys of the above list, see Sec. 6.2.6) or analyze the lattice section with/without a mouse pointer (see Sec. 3.3.4) or go back to the main option menu by pressing the escape key [,]. As an example for modifying the graphics output let us produce a more flashy view of the ZnS (001) lattice planes. You start from the main option menu with the above parameters (you may have to press the escape key [,] several times to get there) and increase the crystal section block by [S], [B], "4,5,7" + [enter], [,] returning to the main option menu and change the view and projection by [V], [T], "60.0,10.0" + [enter], [P], "65.0,10.0" + [enter], [Q], "3.0,1.0" + [enter], [,] returning to the main option menu and modify graphics (display atom-by-atom as unlabelled dither-shaded balls of different color according to their nuclear charge, no basis, no labels) by [G], [M], [A], [D], [D], [L], [B] until "[B]as(off)" shows, [C] until "[C]ol(elmnt)" shows, [L] until "[L]abl(none)" shows, [,] returning to the graphics menu. Now pressing [X] from inside the graphics submenu produces a pretty picture of the lattice section without having to go through the main option menu. While the picture is created atom-by-atom you can interrupt by pressing [enter] after which plotting stops and you can inspect the incomplete structure. This can help to orient yourself in a complicated structure. __ 34 _________________ Sec. 3.3.1. _____________________________________ Pressing [enter] with the plot stopped resumes plotting to complete the lattice section, closing the wire frame, and showing the above option menu line at the bottom of the screen. Now you can examine the picture and then return to the main option menu by [,]. Let us save the present structure and graphics data on a backup file with the default name 'balsac.lat'. The use of separate structure files will be discussed in great detail later on, see Secs. 3.3.5-6. However, for now you simply press [O] in the main option menu to get to the file output menu and then [Q] to store. In the next plot you want to distinguish visually between different layers rather than different kinds of atoms. Thus, you modify graphics (display atoms as shaded balls of different color according to their layer position) starting from the main option menu and press [G], [L], [C] until "[C]ol(layer)" shows, [X] . After plotting has finished you try a few more things before returning to the main option menu. For instance, you can decrease the viewing angle THETA by 10 degrees and immediately repeat the plot by pressing the cursor key [arrow down] or alternatively the number key [2], see Sec. 5.5. Repeating the display process with changed viewing parameters may not require to show the complete lattice section with all atoms. You can interrupt plotting at any time by pressing [enter] followed by [,]. This finishes the plot of the (incomplete) section indicated by the menu line after which you can start the next plot with changed viewing parameters. Working with incomplete plots can speed up the initial orientation in unknown structures considerably. After you have tried out the fast view change with a few plots you return to the main option menu by pressing [,] after a plot has completed. So far, the topmost lattice plane consists of positive Zn ions shown as small balls which accounts for one of two possible terminations of ZnS(001) surfaces. To see how the second surface termination looks you modify the termination number. Let us start from the completed graphics and bypass the main option menu. Typing [O] keeps the graphics but shows a second option menu line Structure[LCMSRA] [?,]esc Graphics[VG] Files[IOK] [P]arms Cont[XNEU] listing all option keys of the main option menu and allowing to move immediately to the respective suboptions. After you press [S], [I], "2" + [enter], [X] BALSAC displays the lattice section starting with the second inequivalent lattice plane yielding the alternative termination where the topmost lattice plane consists of negative sulfur ions (large balls). Other surfaces like (110) would have shown both Zn and S ions within the same layer. Try it out and select Miller indices of (110) planes pressing [M], "1,1,0" + [enter], [X] from the main option menu. As a result, you see a section of the ZnS(110) ________________________ Sec. 3.3.1. ______________________________ __ 35 surface. Try to rotate the lattice section on the screen by pressing any of the cursor keys [up/down/left/right] or [8/2/4/6] . Also try to magnify/reduce the plot size by pressing [M/m] after a plot is completed. You can study various numerical structure parameters calculated by BALSAC with the text analysis starting from the main option menu pressing [A], [B], [C], [M], [C], [,] . Further, you can inspect and change (don't at this point!) a number of internal control parameters determining BALSAC graphics starting from the main option menu pressing [P],... [,] . Finally, you can study different structures contained in the example structure files provided with BALSAC starting from the main option menu by pressing [I], "file" + [enter] where "file" is a valid file name. Try to find and visualize the high Tc superconductor crystal YBa2Cu3O7 described by file 'ybacuo.lat'. When you are tired or bored you quit the session by using the exit option [,] from the main option menu which asks you Confirm exit: [Q]uit [E]nd(save) [B]ckup( on) [?,]esc to confirm quitting the session. Pressing [Q] will simply exit BALSAC while pressing [E] stores all structural and graphics parameters of the present session on a backup file named 'balsac.lat' after which BALSAC finishes. You can use the file 'balsac.lat' as structure input to a subsequent BALSAC/LATTICE run, see Sec. 3.3.6. The safety backup flag shown with "[B]ckup( on)" in the above prompt reads "on" by default. Thus, quitting a BALSAC session will always keep a safety copy of your last session status so that you can return to it if you have left BALSAC by mistake. Recovering the last BALSAC/LATTICE session is possible with "balsac -lp" from the command line. If you don't want safety copies you simply press [B] above which will be confirmed by "[B]ackup(off)" in the prompt. __ 36 _________________ Sec. 3.3.2. _____________________________________ 3.3.2. A BALSAC/CLUSTER SESSION FROM SCRATCH Let us assume that BALSAC is correctly installed in your system. You can start a BALSAC/CLUSTER session either - from the initial BALSAC menu, see Sec. 3.2, which shows after startup (start with "balsac" + [enter] on the command line) followed by pressing [C] or - directly using a command line option (start with "balsac -c" + [enter] on the command line). Now the initial session menu ========================================================================= = BALSAC/CLUSTER 2.00 by K. Hermann (C) Copyright 1991-6 {graphics mode information} Select: [?,]Quit [I]nteractive [R]esume [P]revious [F]ile ->[L]attice ========================================================================= = asks you to select a run option by pressing the respective option key (ignore the graphics mode information for the moment). Since you want to build an atom cluster interactively from scratch you press [I]. From now on you have to select various options by pressing option keys enclosed in [ ] and provide numerical parameters by typing the respective values. First, the initialization part of the structure option menu ========== STRUCTURE OPTIONS ============================================= Build structure from scratch: Title (A60) : ========================================================================= = asks you for a title (up to 60 ASCII characters) to describe the structure. You type " Ni(CO)4 molecule" + [enter] after which No. of atoms N (>0, 0=esc) : asks you for the number of atoms of the molecule. Since Ni(CO)4 consists of 9 atoms (Ni + 4 C + 4 O) you type "9" + [enter]. Next, you have to give coordinates for all atoms together with respective atom radii and nuclear charges. You know that the Ni(CO)4 molecule has a tetrahedral structure with ________________________ Sec. 3.3.2. ______________________________ __ 37 the Ni atom in its center and interatomic distances as shown below O : -- d(Ni-C)=3.75 Bohr C : : O..C.....Ni.....C..O : \ : d(C-O)=2.15 Bohr C : O Therefore, appropriate atom coordinates are Ni => ( 0, 0, 0) C => => => => ( a, a, a) (-a,-a, a) (-a, a,-a) ( a,-a,-a) O => => => => ( b, b, b) (-b,-b, b) (-b, b,-b) ( b,-b,-b) where a = d(Ni-C)/sqrt(3) = 2.1651 Bohr and b = [d(Ni-C)+d(C-O)+]/sqrt(3) = 3.4064 Bohr. Since you do not have values of atomic radii at hand you decide to use internal defaults by setting r(Ni) = r(C) = r(O) = 0.0 Bohr and having BALSAC choose reasonable values. However, you still remember that the nuclear charges of the elements of interest are q(Ni) = 28, q(C) = 6, q(O) = 8 . As a result of these considerations you answer the 9 structure prompts (for each atom coordinates (x,y,z), radius, charge) by 1 2 3 4 5 6 7 8 9 (X,Y,Z,R,NUC): (X,Y,Z,R,NUC): (X,Y,Z,R,NUC): (X,Y,Z,R,NUC): (X,Y,Z,R,NUC): (X,Y,Z,R,NUC): (X,Y,Z,R,NUC): (X,Y,Z,R,NUC): (X,Y,Z,R,NUC): " 0.0, " 2.1651, "-2.1651, "-2.1651, " 2.1651, " 3.4064, "-3.4064, "-3.4064, " 3.4064, 0.0, 2.1651, -2.1651, 2.1651, -2.1651, 3.4064, -3.4064, 3.4064, -3.4064, 0.0, 2.1651, 2.1651, -2.1651, -2.1651, 3.4064, 3.4064, -3.4064, -3.4064, 0.0, 28" + [enter] 0.0, 6" + [enter] 0.0, 6" + [enter] 0.0, 6" + [enter] 0.0, 6" + [enter] 0.0, 8" + [enter] 0.0, 8" + [enter] 0.0, 8" + [enter] 0.0, 8" + [enter] . __ 38 _________________ Sec. 3.3.2. _____________________________________ This input is confirmed by BALSAC showing ========================================================================= = 9 ( 3) different atoms (elements) [T]it [R]ad/nuc [?,]esc [A]toms [G]rp [F]ilrd [L]ist [S]ymm [D]ispla ========================================================================= = which includes the structure option menu. This lets you modify all structure parameters defined so far. At the moment you just want to set the atom radii in the molecule equal to their internal defaults (see Sec. 5.3). So you press [R] after which the radii/charges option menu shows as ========== RADII/CHARGES OPTIONS ========================================= 9 atoms 3 elements Nuc Rmin Rmax | Rmax 1) 28/Ni .00000 .00000 | .00000 3) 8/ O .00000 .00000 | Modify radii : charges: [A]ll a[L]l [Z]select s[E]lect 2) [S]elect [T]abl Nuc Rmin 6/ C .00000 [R]escale [D]ispla [?,]esc ========================================================================= = confirming your input with radii of all three elements set to zero and the radii options allow you to redefine or scale sphere radii of all atoms. To set internal defaults you simply press [R] (rescale) which is confirmed by ... Rescaling ... factor = 1.552343 / min ( 2 - 6) = 2.149995 ** Press [C], L-click to continue ** telling you that all atom radii, determined as covalent radii, have been increased by a factor 1.552343 to yield touching atom spheres and the smallest distance between two atoms of the molecule (# 2 (carbon) and # 6 (oxygen)) equals 2.149995 Bohr. You return to the radii/charges option menu by pressing [C] and get ========== RADII/CHARGES OPTIONS ========================================= 9 atoms 3 elements Nuc Rmin Rmax | Rmax 1) 28/Ni 1.93422 1.93422 | 1.01678 3) 8/ O 1.13321 1.13321 | Modify radii : charges: [A]ll a[L]l [Z]select s[E]lect Nuc 2) [S]elect [T]abl 6/ C [R]escale [D]ispla Rmin 1.01678 [?,]esc ========================================================================= = which shows meaningful radii values for all atoms where for each element the two values Rmin, Rmax give the smallest and largest radius (only in case different atoms of the same element have been assigned different radii, see Sec. 6.3.2). You leave the radii menu by pressing [,] which returns to the structure option menu. Since all atoms of the molecule are defined you move ________________________ Sec. 3.3.2. ______________________________ __ 39 on pressing [,]. This shows the view option menu ========== VIEW OPTIONS ================================================== [V]iew (x, y, z) = ( .0000 .0000 1.0000 ) [T]heta,(dtheta) = .00 ( 10.00 ) [P]hi,(dphi) = .00 ( 10.00 ) [R]ot,(drot) = .00 ( 180.00 ) [M]agnf,(dmagnf) = 1.0000 ( 1.5000 ) [Q]persp,(dpersp) = .0000 ( 1.5000 ) [F]ocus = 0 ( .000 .000 [S]hift (pixels) = 0 , 0 [A]ll [W]orkb [D]ispla [?,]esc .000 ) ========================================================================= = asking for details of the viewing geometry in subsequent plots. The first line describes the viewing direction by a vector (x,y,z) in cartesian components. The next lines contain viewing angles and other quantities that you need for the viewing. All necessary parameters are defaulted with values given as the first numbers in each line of the list. The incremental values (becoming important later) are shown in brackets. Let us start by setting all parameters. You press [A] and get the prompt Input THETA,PHI,ROT,MAGNF,PERSP : The meanings of these parameters are identical to those discussed in the BALSAC/LATTICE session of the last section. THETA and PHI are the two angles defining the viewing direction which is based on a the coordinate system in which the atoms are defined. If you use spherical coordinates (r,THETA,PHI) in this system you can specify any direction by angles THETA (polar angle with respect to z axis), PHI (azimuthal angle with respect to x axis). This is the notation used for the viewing direction. You may want to look at the atom cluster along the z axis, that is THETA = 0.0 and PHI = 0.0. BALSAC allows also to rotate the plot about the viewing axis by an angle ROT. Since you don't want to rotate at this moment (additional rotation may only confuse you) you set ROT = 0. BALSAC can enlarge or reduce the size of the picture on the screen using a magnify factor MAGNF. You stick to the default size (maximum screen filling) and set MAGNF = 1. Now you have to decide on the kind of projection to obtain a 3-dimensional impression of the structure on the screen by setting PERSP. As will be discussed in detail in Secs. 5.1, 6.3.4 a perspective value PERSP > 0.0 results in central perspective while PERSP = 0.0 leads to parallel projection. You start with the simplest case, parallel projection where PERSP = 0. Now the input for the view request is complete and reads "0.,0.,0.,1.,0." which agrees, by the way, with the default values. (For a view along the x axis, 70 degrees rotation, half size reduction, and a reasonable perspective the input would read "90.,0.,70.,.5,3.,0.".) After sending it off with [enter] BALSAC returns to the view option menu (see above) and gives you another chance to modify each of the parameters. As in the LATTICE session there is an alternative method to specify the viewing direction which is available as option [V] (absolute view vector) in the menu. Here you define directions by vectors (vh, vk, vl) in absolute cartesian coordinates referring to the system in which the atom coordinates __ 40 _________________ Sec. 3.3.2. _____________________________________ are given. After you press [V] the prompt Input view vector (X,Y,Z) : asks you to define the view direction vector. Looking at the molecule along the z axis corresponds to (x,y,z) = (0., 0., 1.). Thus, you type "0.,0.,1." + [enter] and BALSAC returns to the view option menu with the same values of THETA, PHI as shown above which confirms that you have chosen the same viewing direction as before by defining the angles THETA, PHI explicitly. (Typing "1.,1.,1." + [enter] would have yielded angles THETA=54.74, PHI=45.00.) To go on to the next set of options you press [,] after which BALSAC shows as the final part of the build up sequence the graphics option menu which is identical to that of the LATTICE session ========== GRAPHICS OPTIONS ============================================ Graphs : [D]esign(Hm) [C]link( 0) [S]tereo(off) [B]ackgr( 0) [P]alstart( 1) [L]ayout(L-/T-F) c[T]abl [W]orkb [?,]esc ======================================================================== This lets you define all important graphics parameters, such as how to represent atoms (points, balls, etc.) or color settings, which are used to plot the molecule. Most of these parameters come already with reasonable defaults and do not need to be changed. Let us assume that you want to start with a plot showing all atoms of the molecule as painted (hard-shaded) balls. Pressing [D] yields ========================================================================= = Design(Hm) : [N]one [L]ist [P]oint [C]ircle [A]rea [R]Bstereo balls: [H]ard [F]uzzy [D]ithered [G]lossy [S]tereodup(off) [?,]esc ========================================================================= = and lets you choose between different representations. Here in "Plot (Hm)" the characters in brackets mean that the default representation of atoms was by hard-shaded balls (using a mono view). So you press [H] after which BALSAC returns to the graphics option menu which reads ========== GRAPHICS OPTIONS ============================================== Graphs : [D]esign(Hm) [C]link( 0) [S]tereo(off) [B]ackgr( 0) [P]alstart( 1) [L]ayout(L-/T-F) c[T]abl [W]orkb [?,]esc ========================================================================= = where "[D]esign(Hm)" confirms your choice. Next you define your plot layout. ________________________ Sec. 3.3.2. ______________________________ __ 41 Pressing [L] shows the layout menu ========== GRAPHICS OPTIONS ============================================== [T]itle(on ) [F]rame(on ) [L]abel(none) [?,]esc ========================================================================= = where all options parameter values ("on", "on", "none") are given in brackets after each entry. Here the defaults show that each plot comes with a title line at the top, the molecule is enclosed by a wire frame, and atoms will not be labelled. You can change the above options by pressing the respective keys [T], [F], [L] as many times as you like where each key press is confirmed by a new option line which shows the updated selection. You want a title line and a frame which are both set by default and element labels. So you press [L] until "[L]abl(elmt)" shows and return to the graphics option menu pressing [,]. Since all graphics parameters are set you move on by [,] which completes the initial build up sequence and shows the main option menu ========== BALSAC/CLUSTER MENU =========================================== [T]itle = Ni(CO)4 molecule [S]tructure = 9 ( 9) atoms in 10.6812 10.6812 10.6812 [R]ad/nuc = 3 elements [V]iew = .0 .0 ; rot= .0 ; mag= 1.00 ; per= .00 ; foc= 0 [G]raphics = A/Hm ; colr= 0/ 1 EE ; lout=T-F ; cnct= 0 ; shft= 0 0 [X]plot [?]Help [,]Quit [A]nl [I]nput [O]utput stac[K] [N]ew >[L]at [P]arm ========================================================================= = which gives shorthand information about the parameters you have defined so far (a detailed explanation of this menu is given in Sec. 6.3.0.). From this menu you can generate a sketch of the molecule on the screen (using plot option [X]) or choose any of the other main options which allows you, amongst other things, to modify all parameters defined in the initial build up. Let's try out graphics. To produce graphics output you simply press [X] inside the main option menu (or any other menu that offers the [X]plot option). Depending on whether you sit before a PC or in front of an X.11 Windows equipped graphics workstation you can watch the screen being cleared or a graphics window being created on the screen after which the wire frame of a 3-dimensional box shows up (The view along the z axis just shows a square). All atoms shown in the following will be inside a box outlined by the wire frame. Now all atoms of the Ni(CO)4 molecule are plotted on the screen and the wire frame is completed (The molecule and the wire frame may look as being plotted at once if you have a fast computer). The atoms will be sketched by color filled circles (colors discriminating different elements) and labelled by their element names "Ni", "C", and "O". In addition, the screen displays a title line Ni(CO)4 molecule < .0 .0 > at the top describing your molecule. The two numbers in brackets define the actual viewing direction given by angles <THETA PHI> (see above) confirming __ 42 _________________ Sec. 3.3.2. _____________________________________ that you are viewing along the z axis. Finally, a menu line Replot[udlr][rRpPmMC+] analyze[Q] stack[LS] trnsf[T] qmen[O] sho[EI] [?,]esc shows at the bottom of the screen listing all available fast plot key options (pressing [O] will show all options of the main option menu, don't use it at this point). Now you can inspect the molecule with different values of viewing parameters (using one of the fast plot keys of the above list, see Secs. 6.2.6, 6.3.4) or analyze the molecule with/without a mouse pointer (see Sec. 3.3.4) or go back to the main option menu by pressing the escape key [,]. As an example for modifying the graphics output let us produce a more flashy view of the Ni(CO)4 molecule. You start from the main option menu with the above parameters (you may have to press the escape key [,] several times to get there) and first you connect all neighboring atoms by links (lines) pressing [G], [C], [N] and answering the prompt No. of links (0-20, -1=esc) : by "1" + [enter] which lets you define one link constraint and the prompt Input 1) : NUCA,NUCE,RMIN,RMAX : asks you to define the constraint. Here you type "0, 0, 2.1, 3.8" + [enter] meaning that every two atoms which lie at a distance between 2.1 and 3.8 should be linked by a line. (Nuclear charges NUCA=0 and NUCE=0 chosen here means "connect every pair of atoms irrespective of their element number"; connecting only C with O atoms would require NUCA=8, NUCE=6.) Next you convert the linking lines into cylindrical sticks giving them a finite stick radius of 0.2 by [R], "0.2" + [enter] and you finish the graphics options pressing [,], [,] returning to the main menu. Now you change the view and projection by [V], [T], "60.0,10.0" + [enter], [P], "65.0,10.0" + [enter], [Q], "3.0,1.0" + [enter], [,] returning to the main option menu Then you modify graphics (display atoms as unlabelled dither-shaded balls of different color according to their nuclear charge, no labels) by [G], [D], [D], [L], [L] until "[L]abl(none)" shows. If you press [X] from the graphics layout submenu you obtain a pretty picture of the molecule without having to go through the main option menu. While the ________________________ Sec. 3.3.2. ______________________________ __ 43 picture is created you can interrupt by L-click or pressing [enter] after which plotting stops and you can inspect the incomplete structure. This can help you to orient yourself in more complicated structures. L-clicking or pressing [enter] with the plot stopped resumes plotting to complete the molecule, closing the wire frame, and showing the above option menu line at the bottom of the screen. Now you can examine the picture and then return to the main option menu by [,]. Let us save the present structure and graphics data on a backup file with the default name 'balsac.plt'. The use of separate structure files will be discussed in great detail later on, see Secs. 3.3.5-6. However, for now you simply press [O] in the main option menu to get to the file output menu and then [Q] to store. Now you plot the molecule again by pressing [X] from the main option menu and after plotting has finished you try a few more options. For instance, you can decrease the viewing angle THETA by 10 degrees and immediately repeat the plot by pressing the cursor key [arrow down] or alternatively the number key [2], see Sec. 5.5. Repeating the display process with changed viewing parameters may not require to show the complete molecule. You can interrupt plotting at any time by pressing [enter] followed by [,]. This finishes the plot of the (incomplete) molecule indicated by the menu line on after which you can start the next plot with changed viewing parameters. Working with incomplete plots can speed up the initial orientation in unknown structures considerably. After you have tried out the fast view change with a few plots you return to the main option menu by pressing [,] after a plot has completed. Also try to magnify/reduce the plot size by pressing [M/m] after a plot is completed. You can study various numerical structure parameters calculated by BALSAC with the text analysis starting from the main option menu pressing [A], [F] ... [,] . Further, you can inspect and change (don't at this point!) a number of internal control parameters determining BALSAC graphics starting from the main option menu pressing [P],... [,] . Finally, you can study different structures contained in the example structure files provided with BALSAC starting from the main option menu by pressing [I], "file" + [enter] where "file" is a valid file name. Try to find and visualize the Buckminster ball molecule C60 described by file 'c60.plt'. __ 44 _________________ Sec. 3.3.2. _____________________________________ To practice some of the more advanced features let us build the Ni(CO)4 molecule using a different strategy by exploiting its symmetry. To do this you start from the main option menu and return BALSAC to its scratch state by pressing [N] and answer the prompt Confirm start from scratch: [N]ew [?,]esc by pressing [N] again. Now you provide a new title in ========== STRUCTURE OPTIONS ============================================= Build structure from scratch: Title (A60) : ========================================================================= = typing "Ni(CO)4 molecule rebuilt" + [enter] and start the building procedure with a linear NiCO molecule whose atoms can be described by coordinates Ni => ( 0, 0, 0) C => ( a, a, a) O => ( b, b, b) with a = 2.1651 Bohr and b = 3.4064 Bohr. So you answer the prompt No. of atoms N (>0, 0=esc): by "3" + [enter] and the following three structure prompts (for each atom coordinates (x,y,z), radius, charge) by 1 2 3 (X,Y,Z,R,NUC): (X,Y,Z,R,NUC): (X,Y,Z,R,NUC): " 0.0, " 2.1651, " 3.4064, 0.0, 2.1651, 3.4064, 0.0, 2.1651, 3.4064, 0.0, 28" + [enter] 0.0, 6" + [enter] 0.0, 8" + [enter] which is confirmed by 3 ( 3) different atoms (elements) and the structure option menu shows on the screen ========================================================================= = [T]it [R]ad/nuc [?,]esc [A]toms [G]rp [F]ilrd [L]ist [S]ymm [D]ispla ========================================================================= = Now you can use this fragment molecule to generate the other 3 CO parts. In a first step you add a second CO to NiCO. This uses the original CO part (atoms 2, 3, see above) creating a mirrored copy where the mirror plane normal goes through the Ni center at (0, 0, 0) and points along (1, 1, 0). First, you define the two atoms of CO as a group by pressing [G] above. This ________________________ Sec. 3.3.2. ______________________________ __ 45 shows the group modify submenu ========================================================================= = No group defined Group: [G]def [L]ist [R]ot [A]rot+ m[V]fl [S]equ(off) [T]ransl [C]opy [E]xpnd [F]xpnd+ [X]plot [U]n[H]ide m[I]rr m[J]rr+ [Z]defn c[P]fl [?,]esc ========================================================================= = then pressing [G], [G] shows Define new group: size NGRP (-1=esc) : asking for the number of atoms to be included in the group. You answer by "2" + [enter] and BALSAC prompts for atom pointers by Define 2 atom(s): which you answer by "2,3" + [enter] since the C, O atoms where input as atoms no. 2, 3. The group definition is confirmed by ========================================================================= = Group of 2 atom(s) defined (cluster total = 3) Group: [G]def [L]ist [R]ot [A]rot+ m[V]fl [S]equ(off) [T]ransl [C]opy [E]xpnd [F]xpnd+ [X]plot [U]n[H]ide m[I]rr m[J]rr+ [Z]defn c[P]fl [?,]esc ========================================================================= = and BALSAC returns to the group modify submenu. Now you can subject all atoms of the group to a mirror operation and add the resulting new atoms to the molecule by pressing [J]. This asks for the origin of the mirror plane by Mirror origin NC,X,Y,Z ("-1,0 0 0"=esc) : which you answer by "1,0,0,0" + [enter] using atom no. 1 (Ni) as the mirror plane origin and then Mirror plane normal (X,Y,Z) : asks for the normal vector defining the mirror plane orientation which you answer by "1,1,0" + [enter]. Now you have created a Ni(CO)2 fragment. The missing two COs can be added by another symmetry operation. Here we use the fact that Ni(CO)4 has a 2-fold rotation axis through (0,0,0) pointing along (1,0,0). Pressing [,] returns you to the structure option ========== STRUCTURE OPTIONS ============================================= [T]it [R]ad/nuc [?,]esc [A]toms [G]rp [F]ilrd [L]ist [S]ymm [D]ispla ========================================================================= = from which you choose symmetry properties by pressing [S]. This shows the __ 46 _________________ Sec. 3.3.2. _____________________________________ symmetry properties menu ========================================================================= = Global symmetry: [C]axis 1.000D-02) [X]plot [M]irror [I]nvers [R]educe [D]maxc( [?,]esc ========================================================================= = allowing you to complete a molecular structure by imposing global symmetries. Here you press [C] to select rotation axis after which Rotation origin NC,X,Y,Z ("-1,0,0,0"=esc) : asks you for a rotation origin, you answer by "1,0,0,0" + [enter] using atom no. 1 (Ni), and Rotation axis, order (X,Y,Z, N) : asks you for the axis direction (1,0,0) and the order (2-fold), you answer by "1,0,0,2" + [enter]. Now the symmetry of the molecule will be checked and new atoms generated if needed which is confirmed by Symmetry operation yields 4 new atoms This finishes the building process of the Ni(CO)4 molecule and returns to the structure option menu. Now you renormalize all radii (see above) by [R], [R], [C], [,] and another [,] gets you to the view option menu. Here you stick to the predefined values and press [,] to get to the graphics option menu from where you press [D], [D] to define dithered ball plotting and finally [,] gets you to the BALSAC main option menu. Now you can plot the molecule (press [X] from the main option menu) to confirm that the structure of the Ni(CO)4 molecule is correct. This building procedure seems conceptually more difficult than simply providing coordinates of all atoms in one step but it has taught you some of the possibilities to modify a given atom cluster by adding atoms and moving them around. If you read the group modify submenu you have also discovered that you can move and hide atoms. Try it out yourself! When you are tired or bored you quit the session by using the exit option [,] from the main option menu which asks you Confirm exit: [Q]uit [E]nd(save) [B]ckup( on) [?,]esc to confirm quitting the session. Pressing [Q] will simply exit BALSAC while pressing [E] stores all structural and graphics parameters of the present session on a backup file named 'balsac.plt' after which BALSAC finishes. You can use the file 'balsac.plt' as structure input to a subsequent BALSAC/CLUSTER run, see Sec. 3.3.6. The safety backup flag shown with "[B]ackup( on)" in the above prompt reads "on" by default. Thus, quitting a BALSAC session will always keep a safety copy of your last session status so that you can return to it if you have left BALSAC by mistake. Recovering the ________________________ Sec. 3.3.3. ______________________________ __ 47 last BALSAC/CLUSTER session is possible with "balsac -cp" from the command line. If you don't want safety copies you simply press [B] above which will be confirmed by "[B]ackup(off)" in the prompt. 3.3.3. GETTING INTERACTIVE HELP BALSAC offers an on-line help feature which becomes quite useful if you are lost inside one of the many option menus. This option is active by default and indicated by "...[?]Help..." in the main option menus, by ? in "[?,]esc" of all other option menus, and also by "...[H]elp(on )..." in the parameter option menu. With on-line help you can obtain a short explanation (in the text window) on each option given in any BALSAC menu. If the option key [K] appears in the menu pressing [?] followed by [K] gets you the help text. If you press [?] twice inside a menu an explanation will be given on all options of that menu. This may exceed the screen page and may require pressing [C] or L-click to continue (press [,] or R-click to cancel the listing) as indicated by ** Press [C], L-click to continue; [,], R-click to escape ** at the bottom of the screen. After the help text is shown the prompt line --> Select options from [ABC...,?] : lists all available option keys of the present menu including [,] and [?] inside the "[ ]" brackets. This allows you to continue selecting one of the options or obtaining more on-line help (press [?] again). Note, however, that the help text is always rather short, in particular inside graphics option menus, and meant only to remind the knowing user. It cannot replace the manual. But if you like you can modify or expand the available help text by creating your own help text file, for details consult Secs. 6.2.15, 6.4.8. If the on-line help feature is turned off for any reason you can activate it inside any menu by pressing [?] which opens the default help file confirmed by Help now available (default file) Press option key to get help : after which you can choose what option you want help on. If pressing [?] does not yield any response the default help file is unaccessible, see below. You can also explicitly activate on-line help by pressing [H] in the parameter __ 48 _________________ Sec. 3.3.3. _____________________________________ option menu reading ========== BASIC PARAMETER OPTIONS ===================================== [M]ouse(off) [H]elp(off) [T]each(off) me[N]u( on) [E]ltb(off) [I]ndex(off) [O]rder( on) [W]indow : (Ox,Oy)= ( 0, 0) (Lwx,Lwy)= ( 640, 480) Qyx= 1.000 [A]dapter : Int= 18, Colmx= 16, Chx,Chy= 8 16 [P]aint : basic colors= 4, tones= 3, palette= 4 wor[K]b ste[R]eo [L]oadini [S]avini [B]ackup(fbu) [X]plot [?,]esc ======================================================================== after which the prompt Help file name ("+"=def,"-"=esc): asks you for the default name help is available BALSAC startup menu main option menu, the name of the input file. Here in most cases you can use ('balsac2.hlp') typing "+" + [enter]. From now on on-line which is indicated by "...[H]elp(on )..." in the initial and in the parameter option menu, by "...[?]Help..." in the and by "...[?,]esc" in all other menus. The on-line help feature requires an external help text file where the default is named 'balsac2.hlp' but other names may be possible, see Sec. 6.1. This file must exist in your directory or an appropriate directory path must be set. If BALSAC does not find the help text file when you try to open it at startup or inside the parameter option menu you get an error message ERROR: opening file for on-line help input File = balsac2.hlp WARNING: help file unaccessible, no on-line help available which reminds you to find a correct file (in your computer or try to get it from the original software package) or to live without on-line help. Note that if Unix or DOS versions of BALSAC run in mouse mode their online help feature works differently, see Sec. 3.3.8. ________________________ Sec. 3.3.4. ______________________________ __ 3.3.4. 49 ANALYZING A STRUCTURE WITH/WITHOUT A MOUSE Apart from basic analysis options available from the main option menus and discussed in Secs. 6.2.14, 6.3.12 lattice sections and atom clusters can be analyzed interactively while they are displayed on the screen. This is one of the most powerful features of BALSAC. The basic concepts of this analysis are the same for LATTICE and CLUSTER sessions but the available features are different. Therefore, you will practice in both sessions. 3.3.4.1. BALSAC/LATTICE SESSIONS In order to learn about the numerical analysis of lattice sections using graphics output of a BALSAC/LATTICE session you restart BALSAC with input from the backup file 'balsac.lat' which you have created in Sec. 3.3.1. To do this you start BALSAC from the command line with options as balsac -lr or balsac -l balsac.lat Both commands tell BALSAC to load the structure file 'balsac.lat' and move to the BALSAC/LATTICE main option menu. Pressing [X] produces a plot of the ZnS(0 0 1) surface as shown before. After plotting has been completed and the option menu shows at the bottom of the screen you enter the graphic analysis by pressing [Q] which displays a one-line menu Analyze[DVRAEMN_B_WG] build[L_CK] draw/view[Z_IJ_FSQ+] [?,]esc at the bottom and a graphical pointer (standard mouse graphics pointer, "arrow", or crossing lines, "+", if no mouse is available) shows at the center of the screen (maybe only after an analysis option has been selected below). Now you can analyze each visible atom on the screen, obtain distances between two atoms, or angles and planar directions defined by three atoms using the graphical pointer. Let us try it out. First you select the distance analysis requiring two different atoms by pressing [D]. This allows you to move the graphical pointer on the screen by moving the mouse up/down/left/right on the table or by pressing the cursor keys (arrow up/down/left/right or number keys 2/8/4/6, see Sec, 5.5). Pressing [+] or [-] increases/decreases the step size of the pointer movement in keyboard mode. When the pointer points at the surface of an atom sphere (not necessarily the atom center itself) this atom can be analyzed by clicking the left mouse button (L-click) or by pressing [enter]. You choose the Zn atom (small sphere) of the topmost layer closest to you and Lclick or pressing [enter] marks the location you selected by a white "+" and shows a line 1: Xyz,R,Id( 110)= 1.7677670 2.4748737 1.5000000 0.139644 30/Zn 1 at the bottom of the screen. This tells you that you have selected as the first atom the 110th atom of the section located at (1.7678, 2.4749, 1.5000) in cartesian coordinates, with a sphere radius equal to 0.1396, element name Zn and nuclear charge = 30, and which is described by the first lattice basis __ 50 _________________ Sec. 3.3.4.2. ___________________________________ vector ("1" at the end of the line). Next you point at the Zn atom of the topmost layer to the right of atom no. 110. L-clicking or pressing [enter] shows the second atom as 2: Xyz,R,Id( 106)= 1.0606602 2.4748737 1.5000000 0.139644 30/Zn 1 Since by now you have selected two different atoms you can perform the distance analysis by clicking the right mouse button (R-click) or by pressing [X]. This yields (X,Y,Z),LV = (-0.70710678 0.00000000 0.00000000) 0.70710678 telling you that atoms 106 and 110 are connected by a vector (-0.7071, 0.0000, 0.0000) in absolute cartesian coordinates and of length 0.7071. If you had selected the lattice direction analysis (selecting [M] in the analysis menu) pointing at atoms 110, 106 and R-clicking or pressing [X] would have shown (hkl) = (-0.2500 -0.2500 -0.5000) (-0.5000 -0.5000 -0.0000)c indicating that the vector connecting the two atoms can be described by a linear combination (-0.2500 -0.2500 -0.5000) of Bravais reciprocal lattice vectors and (-0.5000 -0.5000 -0.0000) of simple cubic reciprocal lattice vectors. So this vector points parallel to the cubic (-1 -1 0) crystal direction. You can repeat this analysis as many times as you like by selecting other atoms. This allows you to examine the complete visible part of the lattice section in a straightforward manner. If you R-click or press [M] after an analysis step is finished BALSAC returns to the analysis menu offering other analysis types. Try as an exercise the distance/angle analysis (selecting [V] from the graphical analysis menu) or the net plane decomposition (select [N]) which require three atoms or the neighbor shell analysis (select [E]) which requires one atom. For further explanations consult Sec. 6.2.14. Rclicking or pressing [,] in the graphical analysis menu finishes the graphic analysis and allows you to continue with plotting or return to the BALSAC/LATTICE main option menu. 3.3.4.2. In order to graphics output of a backup file BALSAC from BALSAC/CLUSTER SESSIONS learn about the numerical analysis of clusters using the BALSAC/CLUSTER session you restart BALSAC with input from the 'balsac.plt' which you have created in Sec. 3.3.2. You start the command line with options as balsac -cr or balsac -c balsac.plt Both commands tell BALSAC to load the structure file 'balsac.plt' and move to the BALSAC/CLUSTER main option menu. Pressing [X] produces a plot of the Ni(CO)4 molecule as shown before. After plotting has been completed and the option menu shows at the bottom of the screen you enter the graphic analysis ________________________ Sec. 3.3.4.2. ____________________________ __ 51 by pressing [Q] which displays a one-line menu Analyze[DVRAENB] [?,]esc build[L_GRPTO_HU_CK_Y:] draw/view[Z_IJ_FSQ+] at the bottom and a graphical pointer (standard mouse graphics pointer, "arrow", or crossing lines, "+", if no mouse is available) shows at the center of the screen (maybe only after an analysis option has been selected below). Now you can analyze each visible atom on the screen, obtain distances between two atoms, or angles and planar directions defined by three atoms using the graphical pointer. Let us try it out. First you select the distance analysis requiring two different atoms by pressing [D]. This allows you to move the graphical pointer on the screen by moving the mouse up/down/left/right on the table or by pressing the cursor keys (arrow up/down/left/right or number keys 2/8/4/6, see Sec, 5.5). Pressing [+] or [-] increases/decreases the step size of the pointer movement in keyboard mode. When the pointer points at the surface of an atom sphere (not necessarily the atom center itself) this atom can be analyzed by clicking the left mouse button (L-click) or by pressing [enter]. You choose a carbon atom of the molecule (those closest to the central Ni atom) and L-click or press [enter]. This marks the location you selected by a white "+" and shows a line 1: Xyz,R,Id( i)= x.xxxx y.yyyy z.zzzz r.rrrr 6/ C at the bottom of the screen telling you that you have selected as a first atom the i-th atom of the molecule located at (x.xxxx, y.yyyy, z.zzzz) in cartesian coordinates, with a sphere radius = r.rrrr, element name C and a nuclear charge = 6. Now point at different C atoms and identify them by L-clicking or pressing [enter] until you have found the C atom # 2. If less than 4 C atoms show on the screen some may be hidden behind other atoms which makes them unreachable by the pointer. In this case you have to leave the analysis option (R-click or press [,] until the main option menu shows), plot the molecule with a different viewing geometry (press [X] from the main option menu changing views with the fast plot keys ([arrow up/down/left/right]), see above) and reenter the analysis option (press [Q]). The successful selection of atom 2 results in an analysis line 2: Xyz,R,Id( 2)= 2.1651000 2.1651000 2.1651000 1.016784 6/ C Next you point at the central Ni atom and L-click or press [enter] after which the top line reads 2: Xyz,R,Id( 1)= 0.0000000 0.0000000 0.0000000 1.934219 28/Ni Since by now you have selected two different atoms you can perform the distance analysis R-clicking or pressing [X]. This shows a line (X,Y,Z),LV = (-2.16510000 -2.16510000 -2.16510000) 3.75006320 telling you that atoms 1 and 2 are connected by a vector (-2.1651, -2.1651, -2.1651) in absolute cartesian coordinates and of length 3.75006320 (The above result is exact to all 8 digits! However, remember you gave the original atom coordinates only with 4 digits accuracy). You can __ 52 _________________ Sec. 3.3.5. _____________________________________ repeat this analysis as many times as you like by selecting two other atoms. If you R-click or press [M] after an analysis step is finished BALSAC returns to the analysis menu offering other analysis types. Try as an exercise the distance/angle analysis (selecting [V] from the graphical analysis menu) which requires three atoms or the neighbor shell analysis (select [E]) which requires one atom. Try also to hide atoms (select [H], hiding will be visible only after you replot the molecule). Further, define a group (select [G]) to be used in the structure option menu later on. The group definition may be changed interactively by adding atoms to the group (select [R], point/click at an atom to be added) or removing atoms from the group (select [P], point/click at an atom to be removed). You can also determine the center of gravity of a number of atoms (select [A]) or the normal direction of the plane defined by three atoms (select [N]). For further details consult Sec. 6.3.12. R-clicking or pressing [,] in the graphical analysis menu finishes the graphic analysis and allows you to continue with plotting or return to the BALSAC/CLUSTER main option menu. 3.3.5. PRODUCING AN OUTPUT FILE After you have built a lattice section or a cluster with BALSAC you can store all structure and graphics information in external files. These files are created by the same procedures during a LATTICE or a CLUSTER session. Only the available file formats are different as you will see below. Using external structure files saves retyping the structure data when you restart BALSAC to examine a previously created structure. External files are also necessary for producing PostScript print output, see below. You select the output file option from the main option menu by [O] after which the option line ========== FILE STORE OPTIONS ============================================ [F]ilesave [Q]uicksave [I]nit(off) [L]ogo(on ) [?,]esc ========================================================================= = allows you to select between saving in a file of given name (which will be prompted) or "quicksaving". For example, if you want to store the structure data on a file named file.out you type [F] and answer the name prompt Output file name ("-"=esc): by "file.out". Now the program creates a file named file.out which is confirmed in the following menu and you have to select between the different ________________________ Sec. 3.3.5. ______________________________ __ 53 output file formats which read for a LATTICE session ========================================================================= = Open: file.out Format: [L]at [E]xtlat [B]z [I]nit(off) [P]lt [S]ar l[O]go(on ) sch[K]l [G]ps [C]olps [W]sc [?,]esc ========================================================================= = and for a CLUSTER session ========================================================================= = Open: file.out Format: [P]lt [L]at sch[K]l [G]ps [C]olps [I]nit(off) l[O]go(on ) [?,]esc ========================================================================= = The different file formats allow you to interface with separate visualization software such as SARCH, LATUSE, PLOT3D, SCHAKAL and with PostScript printers as described in detail in Secs. 6.2.8, 6.3.6. However, BALSAC accepts for input only files of (extended) LATUSE (LATTICE sessions) or PLOT3D (CLUSTER sessions) format. Thus, if you want to use the file as input to a LATTICE session you select LATUSE format typing [L] and for a subsequent CLUSTER session you select PLOT3D format typing [P]. Now all parameters necessary for use in a future BALSAC session are written on file "file.out" after which the file is closed and BALSAC returns to the respective main option menu. There is a quick way ("quicksaving") to store structural information in a file which uses default backup files named 'balsac.lat' (LATTICE session) or 'balsac.plt' (CLUSTER session). You have used this feature already in Sec. 3.3.4. If you press [Q] in the above file option menu then the backup file is opened and all structure and graphics parameters of the session are saved. This fast backup option saves some typing but is restricted to output on files named 'balsac.lat' or 'balsac.plt' and these files will be overwritten each time you press [Q]. The above file format choices come with an initialization flag which can be turned on or off by pressing [I] in the above menu. Here the present flag setting is show in parentheses after the option, e.g. " [I]nit( on) ". With the initialization flag set to "on" all PLOT3D or LATUSE format file output will also include additional initialization data such as color tables and adapter/window parameters which are specific to the present session. This allows you to save color assignments for later use. You can produce a high quality print of the lattice section or cluster created with BALSAC using a gray scale or color PostScript laser printer. To do this you simply store the plot information on a PostScript file analogous __ 54 _________________ Sec. 3.3.6. _____________________________________ to the procedure described above - enter output file option menu, [O] open a file, [F] select gray scale or color PostScript output format, [G] or [C] possibly set number of gray/color tones for shading and send it to the PostScript printer (outside the BALSAC session; this may require a special procedure depending on your local computer setup). Note that for optimal PostScript output the gray scales corresponding to colors on the screen have to be adjusted. This may need some experimenting as explained in detail in Secs. 4.3.1, 5.4. BALSAC PostScript files are well structured ASCII files which can be easily modified with some basic knowledge of the PostScript programming language to yield even more sophisticated printouts, see Sec. 6.4.6.1. 3.3.6. STARTING WITH AN INPUT FILE Once you have created a structure input file for BALSAC, e.g. named file.in, there are three ways to load it in BALSAC (a) You can restart BALSAC with input file from the command line using balsac -l file.in (LATTICE session) balsac -c file.in (CLUSTER session) or (b) You can start the appropriate BALSAC session from the command line using balsac -l (LATTICE session) balsac -c (CLUSTER session) or Then you select file input [F] in the startup menu and answer the prompt Input file name ("+"=def,"-"=esc): by "file.in" + [enter]. (c) You can select file input [I] in the BALSAC main option menus and answer the above prompt by "file.in" + [enter]. In all three cases BALSAC loads the input file and moves to the main option menu (BALSAC/CLUSTER sessions) or runs by itself completing all interactive options defined in the input file until it reaches the last option flag after which it moves to the main option menu (BALSAC/LATTICE sessions). Further details concerning BALSAC/LATTICE batch runs are interesting only to advanced users and are found in Secs. 3.4, 6.2.11, 6.4.1-2. ________________________ Sec. 3.3.7. ______________________________ __ 3.3.7. 55 USING THE FILE STACK There is an alternative way of saving and retrieving structure data in files using the file stack. After a plot is completed and BALSAC is still in graphics mode you can press [S] to save the present structure and graphics data on the file stack without leaving graphics. After you have confirmed stack save by pressing [S] in the prompt Save structure on stack : [S]ave [?,)esc all structure data will be saved starting at the first position (using an external file 'stckFFF0.lat' or 'stckFFF0.plt' depending on the session). You may press [S] again after some BALSAC manipulations which will save the structure data at the second position of the file stack (using file 'stckFFF1.lat' or stckFFF1.plt). This can go on until 10 data sets are saved after which any further saving will overwrite the first stack files. To retrieve the structure data from the stack you simply press [L] after a plot is completed. Now graphics disappears and the stack menu ========== STACK OPTIONS ================================================= Pointer at 3 Stack file titles : 0 ( 1) Title of structure # 0 (up to 60 characters) 1 ( 2) Title of structure # 1 (up to 60 characters) 2 ( 3) Title of structure # 2 (up to 60 characters) -> 3 ( 0) ** stack file empty ** 4 ( 0) ** stack file empty ** ... 9 ( 0) ** stack file empty ** Select: [0123456789]get [X]plot [?,]esc ========================================================================= = shows on the screen listing the titles of all structures contained in the stack (three in the above example). In addition, you see the present stack pointer position marked by an arrow "->". If you press one of the position numbers 0 - 9 (only 0 - 2 are meaningful above) BALSAC loads the respective structure/graphics data from the stack file (overwriting all present parameter values!) and generates a plot. This stack file option allows you to compare various structures in a straightforward and fast way. The stack files 'stckFFF#.lat' and 'stckFFF#.plt' (# = 0 - 9) used by BALSAC are true structure files of LATUSE and PLOT3D type format respectively and are conserved even after a BALSAC session is finished. So you can use them outside BALSAC and they are accessible in subsequent BALSAC sessions. __ 56 _________________ Sec. 3.3.8. _____________________________________ You can access the stack option also from the main option menus of both BALSAC sessions by pressing [K]. Here an extended stack menu ========== STACK OPTIONS ================================================= Pointer at 3 Stack file titles : 0 ( 1) Title of structure # 0 (up to 60 characters) 1 ( 2) Title of structure # 1 (up to 60 characters) 2 ( 3) Title of structure # 2 (up to 60 characters) -> 3 ( 0) ** stack file empty ** 4 ( 0) ** stack file empty ** ... 9 ( 0) ** stack file empty ** Select: [U]p [D]own [P]ut [0123456789]get [X]plot [?,]esc ========================================================================= = shows which allows you to save the actual structure/graphics data at the present stack pointer position (position 3 above, press [P]), or to load structure/graphics data from position 0 - 9 (press [0] -[9]), or to move the stack pointer up and down (press [U], [D]). For further details see Secs. 6.2.16, 6.3.14). 3.3.8. MOUSE USE IN BALSAC If a mouse pointer is working in your PC or Unix/X.11 Windows system you can use it for selecting options in option menus and for pointing at atoms in the graphic analysis. Mouse input to BALSAC uses two buttons for the input selection. The PC version assumes a fully Microsoft compatible two button mouse (left/right buttons). The Unix/X.11 version assumes a three button mouse (left/central/ right) of which only the left and central (equivalent to left/right of the PC mouse) buttons are used. In the following, any mention of the "right button" will refer to the central button of a Unix mouse. Further, we will use short a notation where "L-click" means "press the left mouse button, "R-click" means "press the right mouse button, "B-click" means "press both left and right mouse buttons simultaneously. Mouse handling is somewhat different between the DOS and Unix versions of BALSAC and will be discussed separately if needed. In particular, for Unix versions of BALSAC mouse use is restricted to graphics and menu windows and can lead to strange results in the text window depending on the installed X.11 window manager and your own C.11 settings. ________________________ Sec. 3.3.8. ______________________________ __ 57 (A) Selecting menu options The mouse mode for selecting menu options is not set by default and you have to turn it on by either - including the option parameter "m" in the initial call to BALSAC, for example in the command "balsac -lrm", see Sec. 6.1, or - selecting mouse mode pressing [M] in the initial BALSAC startup menu, see Sec. 3.2. (For help text the default on-line help file 'balsac2.hlp' is used.), or - pressing [@] ("at" character) in any of the option menus, or - selecting mouse mode ([M]) in the basic parameter option menu until the first option line of the menu shows "[M]ouse(on) ...", see also Sec. 6.2.15. From then on you can select all options with the mouse pointer where the actual handling differs between the DOS and Unix versions of BALSAC. (a) DOS/VGA version: Here the present mouse pointer position in text screens is shown by a white rectangle (covering one character). If you want to select an option, say [x], from a menu you move the pointer over the character x enclosed by the brackets [ ] and click the left mouse button (Lclick). Alternatively, you can always select the option by pressing [x] from the keyboard. With the on-line help option active you get help by Lclicking the "?" in "[?,]esc" (or pressing [x]) and then L-clicking or pressing any of the option characters. In teach mode, see Sec. 3.3.9, all option menus show a modified escape prompt "[%,]esc" which allows you to turn off teach mode by L-clicking "%" in "[%,]esc" (or pressing [%]). If you want to turn off mouse selection mode you simply press [@] in any of the option menus. (b) Unix/X.11 version: Here selecting mouse mode for option menus opens a separate menu window which remains open until you turn off mouse mode or finish BALSAC. The menu windows contain all entries of a menu separated by black lines where the entries are given as " X: Option text " with X denoting the option key in keyboard mode and the option text being in most cases more explanatory than that of the keyboard menu. (A list of all available BALSAC option menus is given in Sec. 10.) As an example we show the menu __ 58 _________________ Sec. 3.3.8. _____________________________________ window to modify radii/charges in a BALSAC/CLUSTER session +--+-------------------------+ |__| A: All radii changed | |__| D: Display analysis txt | |__| E: Selected charges | |__| I: Info lattice/atoms | |__| L: All charges changed | |__| R: Rescale all radii | |__| S: Selected radii | |__| T: Table of el. radii | |__| X: Plot/list structure | |__| Z: Element radii __| |__| ,: Escape / Menu off |__| | | ?: CLUSTER Menu | +--+-------------------------+ | | | | +----------------------------+ To select any of the options you simply move the mouse pointer into the left blue field (option field) of the appropriate line and press the left button ("L-click the option"). As long as the option is active the respective option field is painted red while a menu window with all option fields in blue is waiting for your input. The escape line comes with two option fields where L-clicking the left field refers to "escape" while L-clicking the right field turns off mouse mode closing the menu window and you continue with keyboard input for all options. You can get help on each of the options of a menu window if on-line help is available which is indicated by the "?" character showing in the bottom entry |__| ?: CLUSTER Menu | of the menu. After you L-click this line and then any of the menu option lines you obtain a help text in the text window. In teach mode, see Sec. 3.3.9, the bottom entry of each menu reads |__| %: CLUSTER Menu | and selecting an option from the menu window shows you the respective help text in the text window while the menu window asks you to confirm the selection or to skip. If you L-click at the bottom entry teach mode will be turned off. This is confirmed by the "%" character being replaced by "?" in the bottom entry and on-line help becoming available, see above. Note that BALSAC interprets R-clicking inside the menu window always as "escape" which allows you to quickly move to another menu without having to point at the escape line. Further, L-clicking inside the red bottom ________________________ Sec. 3.3.9. ______________________________ __ 59 area of the menu window refreshes the window. This becomes particularly convenient if the window content is demolished (for example by overlapping windows on a X-terminal without backing store) and you want to continue with option input. If you have selected an option which needs alphanumeric input (e.g. radii values) the menu window is closed until you have typed all necessary numbers or text after which the window shows again. (B) Pointing and selecting in graphics After a plot has been finished you can enter the graphical analysis menu by pressing [Q] (Unix: without an open menu window!) or selecting __ |__| Q: Analyze/change | in the respective menu window (Unix only). After you have chosen an option from the analysis menu you must, in most cases, select atoms for the analysis. You can select any of the visible atoms on the graphics screen by moving the mouse pointer (mouse "hot" spot) to the surface of that atom (not necessarily to the exact center position) followed by L-clicking. The respective analysis is then carried out by R-clicking if you have selected enough atoms. R-clicking will also get you out of the present analysis and return to the graphical analysis menu if you have not selected enough atoms needed for the present analysis option. 3.3.9. TEACH MODE OF BALSAC The teach mode of BALSAC is meant to help you as an unexperienced user to learn all BALSAC features by yourself while you are building a structure. In this mode selecting an option from a BALSAC menu by pressing the respective key (or L-clicking inside the menu window) does not immediately execute this option. Instead, it shows a short explanatory text (in the text window) relevant for this option and taken from the help text file, see below. After this a prompt asks you to confirm the selection by pressing the key again (L-clicking the "X: Select" entry inside the menu window) or to reject the selection (press [,], L-click "Escape"). If you reject the selection BALSAC returns to the present menu window (mouse select mode) or shows a prompt line --> Select options from [ABC...,%] : listing all available option keys of the present menu including "%" inside the "[ ]" brackets. This allows you to continue with any of the options. Note that the help text is usually short and cannot replace the manual or this tutorial. __ 60 _________________ Sec. 3.4. _______________________________________ If you want to work in teach mode you have to turn it on by either - including the option parameter "t" in the initial call to BALSAC, for example in the command "balsac -crt", see Sec. 6.1. (For help text the default on-line help file 'balsac2.hlp' is used but other names are possible, see Sec. 6.1.), or - selecting teach mode pressing [T] in the initial BALSAC startup menu, see Sec. 3.2. (For help text the default on-line help file 'balsac2.hlp' is used.), or - selecting teach mode ([T]) in the basic parameter option menu, see Sec. 6.2.15, after which the prompt Teach file name ("+"=def,"-"=esc): asks you for the name of the teach mode input file. In most cases you can use the default (file 'balsac2.hlp') and type "+" + [enter]. From now on you are running in teach mode which is confirmed by "[T]each( on)" in the parameter option menu, "...(teach)..." in the last line of the main option menu, and a modified escape prompt "[%,]esc" in all other menus. Teach mode may be rather slow and can bother you if you are more experienced. Therefore, you can turn it off in any menu by pressing [%] or L-clicking the bottom entry of the menu window (reading "%: CLUSTER Menu" in teach mode). After this a message Teach mode off, help active confirms the end of teach mode and tells you that interactive help is still available, see Secs. 3.3.3, 3.3.8. 3.4. BATCH MODE OPERATION OF BALSAC/LATTICE Apart from interactive sessions you can run the LATTICE part of BALSAC also in batch mode. BALSAC/LATTICE starting in batch mode uses information from a set of option flags given in the structure input file. These flags refer to character codes identical to those used interactively in the main option menu, see Sec. 6.4.2. In batch mode LATTICE runs by itself according to the option flag sequence until it reaches an option flag "," (exit). This finishes the batch run and BALSAC exits to the operating system command line. Let us think of a typical batch run with a scenario a) b) c) d) e) create the lattice section, plot the structure, change the view of the plot, plot the structure a second time, finish the run. ________________________ Sec. 3.4. ________________________________ __ 61 Since a) is automatically carried out in the beginning of a batch mode run you need to specify four options, b) - e). In the main option menu "plotting" is selected by the option key [X], "view" by [V], and "exit" by [,]. Therefore, the number of options is N = 4 and the string of option flags reads "XVX," (given in the first line of the input file, upper case characters are accepted only). Of these options, only "view" requires additional input (one line defining THETA, PHI, ROT, MAGNF, PERSP, HIGHT (see Sec. 6.4.2) which has to be added at the end of the initial input, see Sec. 6.4.2). This would make a complete input file for a batch run. During the batch run you may want to save the lattice structure and additional numerical information on an output file. In this case you have to define the name of the output file and its format on the first line of the input file, see below and Sec. 6.4.2. In the following example we list the LATUSE input file 'bcc112.lat' included in the XMPLS subdirectory of the BALSAC package ---------------------------------------------------------------------------50 0 4XVX, 3 1.000000000 bcc lattice -.500000000 .500000000 .500000000 .500000000 -.500000000 .500000000 .500000000 .500000000 -.500000000 1 0 .000000000 .000000000 .000000000 .433012702 26 1 1 2 0 8 6 4 1 .000 .000 .000 .000 .000 0 0.00000 0.00000 .00000 1.00000 0.00000 0 16 1 4 5 0 0 0 0 50.00000 10.00000 .00000 1.00000 3.00000 0 ---------------------------------------------------------------------------which you can use in a BALSAC run "balsac -l bcc112.lat". This will show a section of the (112) face of a bcc crystal in two different views. In the first picture you look perpendicular to the plane in parallel projection where you can identify the surface periodicity. After you press [,] the second picture gives you a perspective view of the section. You finish the BALSAC/LATTICE session by pressing [,] again. Try it out. In batch mode BALSAC/LATTICE indicates its present status by messages n. : Option = [x] where "x" is the key code of the nth option defined by the input. This line may, however, be overwritten by other numerical or graphics output of BALSAC. If BALSAC/LATTICE is run in batch mode you do not have to manually initiate plotting each layer in a layer-by-layer plot of a lattice section. Instead, BALSAC plots layer after layer waiting for some time between successive layers where the waiting time is determined by the delay parameter NDELAY given in the structure input file, see Sec. 6.4.2. On an 100 MHz Pentium PC a value NDELAY = 100000 corresponds to a delay time of about 1.5 sec. On Unix systems much smaller NDELAY values may be needed. However, when a plot __ 62 _________________ Sec. 3.5. _______________________________________ is finished BALSAC always stops and waits for you to press a key allowing to inspect the plot as long as you like or to capture the graphics screen for further use, see Sec. 4.2. With the "Define atoms" option [Y] any delays are ignored and BALSAC returns to the main option menu for further options which allows batch runs without any manual intervention, see below. BALSAC/LATTICE run in batch mode is particularly useful to convert LATUSE format input files to other file formats for subsequent applications. For example, you can generate PostScript file output of a lattice section without inspecting the section by using the option flags "YO," (for options "Define atoms", "store on file", "finish") and giving a meaningful output file name in the LATUSE input file, see Sec. 6.4.2. In the following example we list the LATUSE input file 'fcc117.lat' included in the XMPLS subdirectory of the BALSAC package ---------------------------------------------------------------------------50 3fcc117.eps 3YO, 2 1.000000000 fcc lattice .000000000 .500000000 .500000000 .500000000 .000000000 .500000000 .500000000 .500000000 .000000000 1 0 .000000000 .000000000 .000000000 .353553391 13 1 1 7 0 8 4 10 1 .000 .000 .000 .000 .000 0 50.00000 10.00000 .00000 1.00000 3.00000 0 16 1 4 5 0 0 0 0 ---------------------------------------------------------------------------which you can use in a BALSAC run "balsac -l fcc117.lat". This creates a PostScript output file named 'fcc117.eps' which shows a section of the (117) face of a fcc crystal. Try it out. 3.5. SWITCHING BETWEEN BALSAC/LATTICE AND BALSAC/CLUSTER SESSIONS LATTICE sessions always deal with periodic arrangements modification is subject to this periodicity constraint. hand, CLUSTER sessions deal with non-periodic arrangements of clusters) where single atoms can be manipulated. BALSAC transfer of atoms and any On the other atoms (molecules, offers structure - from a LATTICE to a CLUSTER session where a finite section of a periodic lattice is converted to a finite atom cluster without periodicity, - from a CLUSTER to a LATTICE session where a molecule is converted to an elementary cell of a periodic lattice. These transfer options allow you to modify structures differently depending ________________________ Sec. 3.5. ________________________________ __ 63 on which session you are running in. For example, you can create a periodic crystal surface in a LATTICE session, transfer its structure to a CLUSTER session, and add additional single adsorbate molecules or non-periodic perturbations. On the other hand, you can build a molecule in a CLUSTER session, transfer its structure to a LATTICE session, and create a rather complex molecular crystal. Note, however, that a transfer from a LATTICE to a CLUSTER session always destroys the periodicity information of the lattice while all atom coordinates and graphics parameters are conserved. Switching between LATTICE and CLUSTER sessions of BALSAC is possible at any time using the transfer options of the main option menus or direct transfer in graphics mode. If you select [U] from the BALSAC/LATTICE main option menu you get a prompt Confirm transfer: [?,]esc [S]tructure->CLUSTER CL[U]STER from scratch where selecting [U] moves to the startup menu of a CLUSTER session to start a new structure from scratch or to load an appropriate structure file. If you select [S] in the above menu the coordinates of all atoms created in the LATTICE session together with graphics data are written on a transfer file 'balsac.trp' in PLOT3D format and used immediately as input for a CLUSTER session. Note that if you used layer-by-layer display of your lattice section in a LATTICE session then you can transfer only the atoms of the layer you displayed last. You have to build the complete lattice section in atom-by-atom mode in a LATTICE session to guarantee that all atoms are transferred correctly. If you select [L] from the BALSAC/CLUSTER main option menu you get a prompt Confirm transfer: [?,]esc [S]tructure->LATTICE [L]ATTICE from scratch where selecting [L] moves to the startup menu of a LATTICE session to start a new structure from scratch or to load an appropriate structure file. If you select [S] in the above menu the coordinates of all atoms created in the CLUSTER session together with graphics data are written on a transfer file 'balsac.trl' in LATUSE format and used immediately as input for a LATTICE session. Here the atoms of the CLUSTER session are interpreted as forming the crystallographic elementary cell of an orthorhombic lattice (which you may modify later inside the LATTICE session), see Sec. 6.3.10. As an example, try to build an fcc crystal of C60 "Buckey balls" as elementary units. Note that all structure and graphics data of a session where you transfer from are saved in a backup file (LATUSE formatted 'balsac.svl' in a LATTICE session, PLOT3D formatted 'balsac.svc' in a CLUSTER session) before transfer takes place. So you can always return to the previous session without loss. __ 64 _________________ Sec. 4. _________________________________________ 4. HINTS FOR EFFICIENT USAGE 4.1. GENERAL STRATEGIES In all sessions: - After you have created a structure from scratch always store it on an output file for use in subsequent sessions. Even the weirdest structure can be useful later on. - In 3-dimensional views always use central projection. Otherwise, the structure may look distorted. - Make use of the wire frame option to obtain a good visual impression of the structure orientation. Resetting the view focus and/or hiding atoms helps to see fine details in a lattice or cluster. - Do not use complex graphics output (e.g. shaded balls) in the beginning of the analysis when fast plotting is needed. - Make extensive use of the graphical analysis option to orient yourself in a complex lattice or cluster. - When trying to get the full color stereo impression by squinting relax your eyes from time to time to avoid feeling dizzy. the In viewing structures use the stack option and the picture import/ export options to save intermediate views. If special color assignments are included in your structure store structures always with the init flag set to "on" (file output menu). Otherwise all color reassignments will be lost and defaults will be applied in subsequent session using your file as input. it. Use the help option (press [?]+[x] to obtain help on option [x]) whenever you need to be reminded what an option does before you use - In Unix systems using the mouse menu option with menu windows is more explicit than using option keys only. In BALSAC/LATTICE sessions: - Try to start from a similar lattice section or cluster structure defined by an input file rather than building a structure from scratch. This saves time. - In an interactive graphical application with uncommon lattice geometry always start with small sections of a few parallel lattice planes until you have some orientation. ________________________ Sec. 4.1. ________________________________ __ - 65 Use enough parallel lattice planes to get a full impression of the lattice. Reduce atomic radii or use the dot option to make the plot look less busy. Always experiment with different viewing directions, magnifications, and perspectives. View along or near a crystallographic or high symmetry direction (such as in the initial orientation). Make also use of the stereo and the connect atoms features. - Lattice sections of closed packed crystals (fcc, hcp,...) of high Miller index planes may require many lattice planes to show a closed structure. - Lattice sections where the lengths of basis vectors differ considerably may require quite different numbers of atoms in each lattice direction to achieve reasonable section sizes. - Be very careful in using option flags (the maximum number is 48) in input files for BALSAC/LATTICE batch runs. The program and you can get confused if incorrect parameter values are supplied with one option followed by another option in batch mode. Batch mode always assumes that you supply the correct number of meaningful parameter values. So check option flags in BALSAC/LATTICE input files twice before you use the files. - In complex lattices with many atoms/ions the maximum number of atoms included in one plot of a BALSAC/LATTICE session is limited by the internal sorting process before plotting where the internal maximum is set to 2001 (DOS) or 8000 (Unix) atoms. In layer-by-layer graphics mode this maximum applies only to the atoms of each layer. This allows you to display larger lattice sections than for atom-by-atom or cell-bycell graphics mode where the maximum refers to all atoms of the plot, see also Sec. 6.2.7. - Save BALSAC/LATTICE structures in extended LATUSE format files only if atom coordinates are really needed for external analysis or in applications outside BALSAC. Extended LATUSE format output files are larger in size than respective PLOT3D format files and may become very large. In BALSAC/CLUSTER sessions: - In clusters with symmetry you can construct the system faster if you first build the irreducible part and then apply global symmetry constraints such as rotation axes or mirror planes (symmetry options structure menu). - Use the group manipulation options to build the clusters. Store small molecular subsystems on files for further use. - In complex clusters with many atoms/ions you can group atoms visually by assigning them the same nuclear charges (thus color). __ 66 _________________ Sec. 4.2. _______________________________________ 4.2. PRINTING All numerical structure information of BALSAC displayed on the screen may be printed with the hardcopy feature of DOS (press <shft>+<print>) on PCs or with respective screen dump utilities on Unix system. Further, memory resident hardcopy programs provided with several printers can be used on PCs. For PCs print output of VGA screen graphics is possible if DOS Version 5.0 or later and appropriate printer drivers are used. Note that PC color graphics displayed on black/white printers may be of unsatisfactory quality. PC hardcopy output is also possible with commercial memory resident screen capture/print programs such as CAPTURE, FRIEZE, or PIZAZZ Plus which are compatible with BALSAC. For Unix systems there are several public domain and commercial window dump utilities available which produce PostScript file output to be used with PostScript printers. Further, the public domain utility Ghostscript by Free Software Foundation, Inc. allows you to convert and print PostScript files on several non-PostScript printers, however, with reduced quality. BALSAC includes color and gray scale PostScript format file output of graphics which can be printed on PostScript laser printers for publishable high quality exceeding that of pixel dumps, see Sec. 6.2.8, 6.3.6. With the DOS version of BALSAC running on a PC and a PostScript printer connected as the main printer direct PostScript graphics output (without using an external file) is possible if the file name required for PostScript file output is given as "PRN". 4.3. PLOTTING PC graphics screen output uses a video graphics array adapter (VGA, 640x480 pixels, 16 colors) while Unix/X.11 Windows graphics output depends on respective workstation color adapters (up to 1280 x 1024 pixels, 256 colors). Lattice sections generated by BALSAC/LATTICE are displayed either key layer-by-layer where plotting stops after each layer and waits for a to be pressed or L-click before the next layer is displayed or - atom-by-atom where plotting stops only when interrupted manually or after the complete structure has been finished or - cell-by-cell stacking elementary cells where plotting stops only when interrupted manually or after the complete structure has been finished. Clusters generated by BALSAC/CLUSTER use only atom-by-atom display mode. ________________________ Sec. 4.3. ________________________________ __ 67 After a plot is completed BALSAC shows an option menu line at the bottom of the screen or text/graphics window (Unix) listing all available fast plot options which reads for a BALSAC/LATTICE session Replot[udlr][rRpPmM+] analyze[Q] stack[LS] trnsf[T] qmen[O] sho[EI] [?,]esc and for a BALSAC/CLUSTER session Replot[udlr][rRpPmMC+] analyze[Q] stack[LS] trnsf[T] qmen[O] sho[EI] [?,]esc This allows you to generate further plots/listings with changed graphics parameters, analyze the lattice section or cluster, or return to the respective main option menus. All options are described in detail in Secs. 6.2.9, 6.3.7. In mouse menu mode of the BALSAC Unix/X.11 version the above menu lines are replaced by respective text inside the menu window from where all options can be selected, see Sec. 3.3.8 The graphical display process may be interrupted by pressing any key or clicking the mouse inside the graphics window where after pressing [C] (or L-click) resumes plotting in continuous mode. [,] (or R-click) completes the wire frame outlining the lattice section or cluster (if selected) and BALSAC assumes the plot to be finished as indicated by the menu line showing at the bottom of the screen. This allows you to return to the main option menu (press [,], R-click) or to use any of the plot keys described above. [/] (or B-click) resumes plotting in single atom mode after which each atom is displayed only after pressing a key or L-click. If [/] is pressed (or B-click) in single atom mode plotting will be continued in continuous mode. In mouse menu mode (Unix/X.11 version only) interrupting the display process results in a menu window which includes the three options above and allows you to select by L-clicking the appropriate window area. In addition to interactive graphical output color and gray scale PostScript file output of a given structure plot is possible, see Secs. 6.2.8, 6.3.6. These files can be printed on PostScript laser printers to yield graphics prints of publishable quality exceeding the screen resolution by far. __ 68 _________________ Sec. 4.3.1. _____________________________________ 4.3.1. COLOR AND GRAY SCALE POSTSCRIPT Atoms of different lattice planes or elements (characterized by their nuclear charges) can be painted with different colors on a color screen and printed with different gray scales or colors on a PostScript printer. This allows visual grouping of elements and atom layers in plots. Since BALSAC does not check nuclear charges for consistency they can be assigned values which do not correspond to real systems but help the visual impression. For screen colors BALSAC uses color code numbers nc(i) which are entries to an internal color table of N colors using standard RGB values defined in the initialization file 'balsac2.ini' (or in a user provided initialization file), see Secs. 6.2.15, 6.4.7, 6.4.8. This RGB color table is also used for color PostScript file output to be printed on color or gray scale PostScript printers. In addition, a separate gray scale PostScript output option converts colors to continuous gray tones. The conversion algorithm and additional useful hints are given in Sec. 5.4. 4.4. PHOTOGRAPHIC REPRODUCTION High quality reproduction of the graphical (color screen) output is, apart from PostScript output, possible by simple photographic procedures which may in some cases yield more brilliant pictures. This requires e.g. a 35 mm SL camera with or without automatic exposure system and a heavy tripod. To obtain good results note that - the screen should be located in a room with few additional light sources. During exposure no external light should reflect from the screen. This is particularly important if structures on black background are to be reproduced. - the exposure time should be large enough (typically > 1 sec) to overcome the screen refresh cycle. Otherwise, the reproduction may contain stripes. ________________________ Sec. 4.5. ________________________________ __ 4.5. 69 FREQUENTLY ASKED QUESTIONS This section describes strategies and solutions to common problems in using BALSAC which have been pointed out by users or are not dealt with in the tutorial, Sec. 3, or in Sec. 7. The description will be brief and recipe like. Sequences of option key and numerical/text input are entered from the keyboard where [x] means "press key x on the keyboard" and "numbers/text" means "type the numbers or text inside the double quotes, " ", followed by the enter key". Both lower and upper case input of option keys is accepted but can lead to different results. All input sequences start from either the DOS/Unix command line or from one of the two main option menus of BALSAC returning to the respective main option menus where "Comlin" means "start from the DOS/Unix command line", "Lat" means "start from the main option menu of a LATTICE session", "Clu" means "start from the main option menu of a CLUSTER session", "LatClu" means "start from the LATTICE or CLUSTER main option menu". If mouse input for selecting menu options has been chosen the key sequences have to replaced by pointing at option characters and L-clicking (clicking the left button of the mouse, DOS) or by respective selections from the menu window (Unix). * How do I start BALSAC for an interactive session? > Comlin: "balsac -l" to build a periodic lattice. > Comlin: "balsac -c" to build a molecule or cluster. * How do I start BALSAC with an external input file? > Comlin: "balsac -l fname" (LATUSE format file 'fname' for input). > Comlin: "balsac -lr" (file 'balsac.lat' for input). > Comlin: "balsac -c fname" (PLOT3D format file 'fname' for input). > Comlin: "balsac -cr" * * (file 'balsac.plt' for input). How do I start BALSAC resuming the previous session? > Comlin: "balsac -lp". (file 'balsac.svl' for input). > Comlin: "balsac -cp". (file 'balsac.svc' for input). How do I start with a new file inside BALSAC? > Lat: [I], "fname" ("+" as a name uses 'balsac.lat'). > Clu: [I], "fname" ("+" as a name uses 'balsac.plt'). __ 70 _________________ Sec. 4.5. _______________________________________ * How do I transfer a complete lattice section from a LATTICE to a CLUSTER session after the message "WARNING: structure incomplete,..." received in a first attempt? > Lat: [G], [M], [A], [X], [T], [T]. * How do I get out of menus? > LatClu: [,] or R-click as many times as needed. * How do I get out of a prompt for a file name? > LatClu: "-". * How do I get out of BALSAC? > LatClu: [,] or R-click as many times as needed. * How do I turn on mouse menu mode? > LatClu: [@] from any menu. * How do I turn off mouse menu mode? > LatClu: L-click "Menu off" button inside any menu window (Unix). > LatClu: [@] from any menu (DOS). * How do I turn on teach mode? > LatClu: [P], [T], "+", [,]. * How do I turn off teach mode? > LatClu: [%] * or [P], [P], [T], [T], [,]. How do I save a structure on file? > Lat: [O], [Q] saves on file 'balsac.lat' (quick save). > Lat: [O], [F], "fname", [L] saves on file 'fname' (LATUSE format). > Clu: [O], [Q] saves on 'balsac.plt' (quicksave). > Clu: [O], [F], "fname", [P] saves on file 'fname' (PLOT3D format). ________________________ Sec. 4.5. ________________________________ __ * How do I include all color definitions in a LATUSE or PLOT3D format output file? > Lat: [O], [I] * 71 until "[I]nit(on )" shows in the menu. How do I generate (color) PostScript print output? > 1) Save structure in a PostScript file 'fname' LatClu: [O], [F], "fname", [G] ([C]). 2) Print file 'fname' on a PostScript printer. * How do I make changes in the PostScript plot file? > See Sec. 6.4.6.1 for a tutorial. * for How do I cope with multiple number input in BALSAC, e.g. equal radii many atoms? > Use multiplication factors, for example "5.4,1.,1.,1.,1.,0.3" can be input as "5.4,4*1.,.3" * How do I rescale all atomic radii (touching sphere geometry)? > LatClu: [R], [R], [,], [,]. * How do I get reasonable perspective (point projection) for my plot? > LatClu: [V], [Q], "3,1", [,]. * How do I set the option to include or remove the structure title in graphics? > LatClu: [G], [L], [T], [,], [,]. * How do I set the option to include or remove a wire frame in graphics? > LatClu: [G], [L], [F], [,], [,]. * How do I define bonds inside the graphics option menu? > LatClu: [G], [C], [A] adds a bond constraint, ... [C] sets colors for all constraints, ... [R] sets bond stick radii for all constraints. > LatClu: [X], [Q], [L], L-click 2 atoms, R-click (bond constraint). [K], L-click 2 atoms, R-click,(bond color). __ 72 _________________ Sec. 4.5. _______________________________________ * How do I measure distances between atoms on the graphics screen? > LatClu: [X], [Q], [D], L-click 2 atoms, R-click. * How do I measure bond angles on the graphics screen? > LatClu: [X], [Q], [V], L-click 3 atoms (A,B,C), R-click yields angle <(B-A-C). * How do I show lines used in the interactive graphic analysis (for distances, angles, ...)? > LatClu: [X], [Q], [Z], confirmed by "." showing at the end of the analysis menu line. * How do I get rid of additional lines in graphics output? > LatClu: [X], [Q], [J] deletes line generated last. * How do I refresh a plot which is too busy or after graphics changes? > LatClu: [+] in graphic analysis or main graphics menu. * How do I get a table of all defined colors with their numbers? > LatClu: [G], [T], [,], [,] * How do I get back from a graphical analysis option to the graphical analysis menu? > LatClu: [M] or R-click inside the graphics window/screen until menu shows at the bottom of the window/screen. * How do I find translationally equivalent basis atoms in a lattice section? > Lat: [L], [U], [B], [L] coincidences. * lists all basis atoms and shows How do I remove translationally equivalent basis atoms in a lattice section? > Lat: [L], [U], [B] ; then [L] lists basis atom indices, [D] removes basis atoms. ________________________ Sec. 4.5. ________________________________ __ * How do I find coinciding atoms in a cluster? > Clu: [A], [F], [A] * 73 lists all atoms and shows coincidences. How do I remove coinciding atoms from a cluster? > Clu: [S], [S], [R] to remove. shows coinciding atom pairs and allows you __ 74 _________________ Sec. 5. _________________________________________ 5. BASIC DEFINITIONS 5.1. COORDINATE SYSTEMS AND BASIS VECTORS An absolute 3-dimensional cartesian coordinate system (x,y,z) defines all atom coordinates of a cluster (CLUSTER session) as well as the elementary cell and the lattice periodicity vectors R1,R2,R3 of a periodic structure where R1,R2,R3 form a right-handed system (LATTICE session). All lattice basis vectors of non-primitive lattices refer to points inside the elementary cell spanned by R1,R2,R3. The system (x,y,z) is also used to define viewing directions for graphical and numerical output of atom clusters. In order to build net planes defined by Miller indices (h k l) in a LATTICE session the original lattice vectors R1, R2, R3 are transformed linearly to yield R1', R2', R3' where R1' and R2' are parallel to the (h k l) net planes with R1' denoting the smallest length between equivalent atoms and R3' forming a positive scalar product with the lattice plane normal vector En. All atom coordinates of a lattice section (LATTICE session) are by an internal cartesian coordinate system (X, Y, Z) which is also define viewing directions for graphical and numerical output of sections. In this system the transformed basis R1', R2', R3' is described used to lattice given by R1' = a ( 1, 0, 0 ) R2' = b ( cos(ph1), sin(ph1), 0 ) R3' = c ( sin(th)*cos(ph2), sin(th)*sin(ph2), cos(th) ) with a = |R1'|, b = |R2'|, ph1 = angle(R1',R2'), (R3'*En)En,R1') c = |R3'|, |En| = 1 th = angle(R3',En), ph2 = angle(R3'- Alternative layer periodicities modeling restructured layers are defined by 2x2 matrix transformations. The planar basis vectors R1'', R2'' of the restructured layer are given as R1'' = M11 * R1' + M12 * R2' R2'' = M21 * R1' + M22 * R2' . where R1', R2' define the original layer periodicity. Separate lattice basis vectors can be assigned to a layer in order to allow layer restructuring in the most general case. For further details consult Sec. 6.2.5 and references given at the end of this manual. All internal computations are based on reciprocal Bravais lattice vectors corresponding to R1, R2, R3. For cubic structures (fcc, bcc and composite structures based on fcc, bcc) BALSAC can accept Miller indices both in the commonly used simple cubic and in Bravais notation, see Sec. 6.2.1. ________________________ Sec. 5.1. ________________________________ __ 75 In parallel projection (PERSP = 0, >> 1) atoms described by (X, Y, Z) (LATTICE session) or (x, y, z) (CLUSTER session) are projected on to the viewing plane defined by its normal vector of direction THETA, PHI p = (sin(THETA)*cos(PHI), sin(THETA)*sin(PHI), cos(THETA)) The x axis of the viewing plane is defined by (En x p) x p (En is the lattice plane normal vector (LATTICE session) or vector (0,0,1) (CLUSTER session)) and the y axis points along (En x p). If p is parallel/antiparallel to En then x, y coincides with the internal coordinate directions X, Y. For graphics output with a rotation angle ROT = 0 the x direction is vertical pointing downwards and the y direction is horizontal pointing to the right on the screen. For non-zero rotation angles the plot coordinates are rotated clock-wise about the screen origin (center of the screen). The plot coordinates are enlarged/reduced by the optional magnification factor MAGNF. In central projection the projection plane stands perpendicular to the viewing direction at a distance R from the origin which is placed by default at the center of the crystal section or cluster and where R denotes the radius of the smallest sphere about O enclosing the section (see figure). | | crystal section | or cluster | ------------viewing | / / / / / / / / direction | / / / / / / / / | / / / O / / / / <----- <X viewer | / / / /:/ / / / : | / / / / : / / / : | ---------:---: |... R.....: : |................. persp*R .............: | projection plane The viewer <X is assumed at a distance persp*R from the projection plane where persp > 0 can be chosen freely with the view option. For perspective factors persp < 1 some atoms may sit behind the viewer and will not show in plots. The projection origin O can be repositioned with the view option whereas the distance definitions R, persp*R remain always unchanged. When viewing angles are changed incrementally (using fast plot keys, see Secs. 6.2.9, 6.3.7) the visual movement of the displayed section will proceed in different directions depending on the rotation angle ROT. For ROT < 180 pressing [arrow right] (increasing PHI by DPHI and repeating the plot) will move the background part of the section to the right while ROT > 180 moves the background part to the left. Pressing [arrow up/down] leads also to opposite visual movements for ROT < 180 and > 180. __ 76 _________________ Sec. 5.2. _______________________________________ 5.2. DISPLAYING CRYSTAL SURFACES In studies of single crystal surfaces Miller indices are usually defined such that the lattice plane normal points from the crystal into vacuum. Thus, lattice plane stacking towards the bulk proceeds opposite to the surface normal direction. In contrast, BALSAC builds lattice sections such that plane stacking proceeds along the normal direction. As a consequence, for view angles THETA < 90 a section of N layers representing the surface and N-1 underlying layers is visualized in the layer by layer mode such that the Nth underlayer is shown first and the surface layer last. The above layer building sequence can be reversed visually by a simple trick: To display a surface with Miller indices (h k l) use values (-h -k -l), see Sec. 6.2.3, view angles THETA > 90, and a screen rotation ROT = 180 degrees, see Sec. 6.2.6. Note, however, that in layer-by-layer display mode lattice plane stacking away from the viewer for THETA > 90 degrees may lead to erroneous pictures since the hidden surface algorithm can fail. ________________________ Sec. 5.3. ________________________________ __ 5.3. 77 INTERNAL PARAMETERS FOR ATOMS, LATTICES For clusters and general lattices (codes 10,-10) values of atomic radii may be determined as renormalized default radii according to respective nuclear charges such that maximum packing without overlapping spheres is achieved, see Sec. 6.2.1, 6.3.2. The internal table of default atomic radii (given in Angstroms) is shown in the following. charge radius radius -----------------1 (H ) 0.4350 1.7515 2 (He) 1.4000 1.5973 3 (Li) 1.5199 1.4280 4 (Be) 1.1430 1.3705 5 (B ) 0.9750 1.3800 6 (C ) 0.6550 1.3676 7 (N ) 0.7500 1.3573 8 (O ) 0.7300 1.3873 9 (F ) 0.7200 1.4419 10 (Ne) 1.6000 1.5025 11 (Na) 1.8579 1.7283 12 (Mg) 1.6047 1.7501 13 (Al) 1.4318 1.4600 14 (Si) 1.1758 1.4600 15 (P ) 1.0600 1.4500 16 (S ) 1.0200 1.4300 charge radius ----------------- charge radius ----------------- charge --------------- 25 (Mn) 1.3500 48 (Cd) 1.4894 71 (Lu) 26 (Fe) 1.2411 49 (In) 1.6662 72 (Hf) 27 (Co) 1.2535 50 (Sn) 1.5375 73 (Ta) 28 (Ni) 1.2460 51 (Sb) 1.4000 74 (W ) 29 (Cu) 1.2780 52 (Te) 1.3600 75 (Re) 30 (Zn) 1.3325 53 (I ) 1.3300 76 (Os) 31 (Ga) 1.3501 54 (Xe) 2.2000 77 (Ir) 32 (Ge) 1.2248 55 (Cs) 2.6325 78 (Pt) 33 (As) 1.2000 56 (Ba) 2.1705 79 (Au) 34 (Se) 1.1600 57 (La) 1.8725 80 (Hg) 35 (Br) 1.1400 58 (Ce) 1.8243 81 (Tl) 36 (Kr) 2.0000 59 (Pr) 1.8362 82 (Pb) 37 (Rb) 2.4700 60 (Nd) 1.8295 83 (Bi) 38 (Sr) 2.1513 61 (Pm) 1.8090 84 (Po) 39 (Y ) 1.8237 62 (Sm) 1.8040 85 (At) 40 (Zr) 1.6156 63 (Eu) 1.9840 86 (Rn) 17 (Cl) 2.5000 18 (Ar) 2.1400 19 (K ) 1.8775 20 (Ca) 1.7975 21 (Sc) 1.6086 22 (Ti) 1.5683 23 (V ) 1.0000 24 (Cr) 0.9900 41 (Nb) 1.4318 64 (Gd) 1.8180 87 (Fr) 1.9000 42 (Mo) 1.3626 65 (Tb) 1.8005 88 (Ra) 2.2620 43 (Tc) 1.3675 66 (Dy) 1.7951 89 (Ac) 1.9758 44 (Ru) 1.3529 67 (Ho) 1.7886 90 (Th) 1.6545 45 (Rh) 1.3450 68 (Er) 1.7794 91 (Pa) 1.4755 46 (Pd) 1.3755 69 (Tm) 1.7687 92 (U ) 1.3090 47 (Ag) 1.4447 70 (Yb) 1.9396 93-100 1.2490 In addition to a free definition of lattices (lattice codes 10, -10), structure parameters for 9 different standard lattices as well as for all 14 Bravais lattices are defined internally and can be selected by respective lattice code numbers inside a LATTICE session. The following tables list all internal parameters. __ 78 _________________ Sec. 5.3. _______________________________________ A) Lattice types ----------------------------------------------------------code (NTYP) internal title lattice type ----------------------------------------------------------1 sc simple cubic 2, -2 fcc face centered cubic 3, -3 bcc body centered cubic 4, -4 hcp (hex+2) hexagonal closed packed 5, -5 diamond(fcc+2) diamond 6, -6 NaCl (fcc+2) sodium chloride 7 CsCl (sc+2) cesium chloride 8, -8 Znblnde(fcc+2) cubic Zincblende 9, -9 Graphite Graphite 10, -10 free lattice 10 Bravais # 1 triclinic-P 10 Bravais # 2 monoclinic-P 10 Bravais # 3 monoclinic-B 10 Bravais # 4 orthorhombic-P 10 Bravais # 5 orthorhombic-C 10 Bravais # 6 orthorhombic-I 10 Bravais # 7 orthorhombic-F 10 Bravais # 8 tetragonal-P 10 Bravais # 9 tetragonal-I 10 Bravais # 10 hexagonal-P 10 Bravais # 11 trigonal-R 10 Bravais # 12 cubic-P 10 Bravais # 13 cubic-I 10 Bravais # 14 cubic-F ----------------------------------------------------------B) Lattice parameters B1) Standard lattices The following tables give, for each of the 9 standard lattices, cartesian coordinates of all lattice vectors of the real and reciprocal lattice and coordinates of all lattice basis vectors of non-primitive lattices. Also shown are default nuclear charges and atom/ion radii. The radii are calculated for touching spheres of maximum space filling and are used to determine the packing ratio (defined as the relative amount of space filled by the spheres). The point symmetry elements of the lattices reflect the point symmetry groups the cubic group the tetrahedral group the hexagonal group for sc, fcc,bcc, NaCl, CsCl lattices, for diamond, cubic ZnS lattices, for hcp lattices, the Graphite group for Graphite lattices. ________________________ Sec. 5.3. ________________________________ __ 79 The symmetry labels and vectors (vx,vy,vz) are defined as "Cn" axis "M" plane for n-fold rotational axes with (vx,vy,vz) pointing along the (only n = 1, 2, 3, 4, 6 are meaningful), for mirror planes with (vx,vy,vz) pointing along the mirror normal. In the following all coordinates in real space are given as multiples of the lattice constant A, those of the reciprocal space as multiples of 1/A. The numerical values are taken from BALSAC output (all parameters are defined internally with full REAL*8 accuracy). Note that inversion symmetry elements are not included in the following tables as they do not survive in finite lattice sections. Further, for a given direction only the rotational axis of highest multiplicity is included. a) simple cubic lattice (lattice code = 1). lattice vectors x y R1 1.00000 0.00000 R2 0.00000 1.00000 R3 0.00000 0.00000 z 0.00000 0.00000 1.00000 reciprocal lattice vectors x y z G1 6.28319 0.00000 0.00000 G2 0.00000 6.28319 0.00000 G3 0.00000 0.00000 6.28319 1 lattice basis vector x y r1 0.00000 0.00000 z 0.00000 atom/ion radius 0.5000 packing ratio = 0.52360 22 symmetry elements : label(s) C4, M C4, M C4, M C2, M C2, M C2, M C2, M C2, M C2, M C3 C3 vector (x, y, z) 1.0000 0.0000 0.0000 1.0000 0.0000 0.0000 0.0000 1.0000 0.0000 1.0000 1.0000 0.0000 1.0000 0.0000 1.0000 1.0000 1.0000 -1.0000 1.0000 1.0000 1.0000 1.0000 0.0000 0.0000 1.0000 1.0000 -1.0000 1.0000 -1.0000 0.0000 0.0000 1.0000 -1.0000 nuclear charge 1 (H) C3 C3 1.0000 -1.0000 -1.0000 1.0000 1.0000 1.0000 __ 80 _________________ Sec. 5.3. _______________________________________ b) face centered cubic lattice (lattice code = 2, -2). lattice vectors x y R1 0.00000 0.50000 R2 0.50000 0.00000 R3 0.50000 0.50000 z 0.50000 0.50000 0.00000 reciprocal lattice vectors x y z G1 -6.28319 6.28319 6.28319 G2 6.28319 -6.28319 6.28319 G3 6.28319 6.28319 -6.28319 1 lattice basis vector x y r1 0.00000 0.00000 z 0.00000 atom/ion radius 0.3536 packing ratio = 0.74048 22 symmetry elements : c) nuclear charge 13 (Al) see simple cubic lattice body centered cubic lattice (lattice code = 3, -3). lattice vectors x y R1 -0.50000 0.50000 R2 0.50000 -0.50000 R3 0.50000 0.50000 z 0.50000 0.50000 -0.50000 1 lattice basis vector x y r1 0.00000 0.00000 z 0.00000 packing ratio = reciprocal lattice vectors x y z G1 0.00000 6.28319 6.28319 G2 6.28319 0.00000 6.28319 G3 6.28319 6.28319 0.00000 atom/ion radius 0.4330 0.68017 22 symmetry elements : see simple cubic lattice nuclear charge 26 (Fe) ________________________ Sec. 5.3. ________________________________ __ d) 81 hexagonal closed packed lattice (lattice code = 4, -4) defined as hexagonal with 2 atoms per unit cell. lattice vectors x y R1 1.00000 0.00000 R2 0.50000 0.86603 R3 0.00000 0.00000 z 0.00000 0.00000 1.63299 reciprocal lattice vectors x y z G1 6.28319 -3.62760 0.00000 G2 0.00000 7.25520 0.00000 G3 0.00000 0.00000 3.84765 2 lattice basis vectors x y r1 0.00000 0.00000 r2 0.50000 0.28870 z 0.00000 0.81650 atom/ion radius 0.5000 0.5000 packing ratio = 0.74048 8 symmetry elements : label(s) C3, M M M M C2 C2 C2 vector (x, y, z) 0.0000 0.0000 1.0000 0.0000 1.0000 1.7321 -1.0000 1.7321 0.0000 1.0000 1.7321 1.0000 -1.7321 1.0000 1.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 nuclear charge 27 (Co) 27 (Co) __ 82 _________________ Sec. 5.3. _______________________________________ e) diamond lattice (lattice code = 5, -5) defined as face centered cubic with 2 atoms per unit cell. lattice vectors x y R1 0.00000 0.50000 R2 0.50000 0.00000 R3 0.50000 0.50000 z 0.50000 0.50000 0.00000 reciprocal lattice vectors x y z G1 -6.28319 6.28319 6.28319 G2 6.28319 -6.28319 6.28319 G3 6.28319 6.28319 -6.28319 2 lattice basis vectors x y r1 0.00000 0.00000 r2 0.25000 0.25000 z 0.00000 0.25000 atom/ion radius 0.2165 0.2165 packing ratio = nuclear charge 6 (C) 6 (C) 0.34009 19 symmetry elements : label(s) C2 C2 C2 C3 C3 C3 C3 C2, M C2, M C2, M C2, M C2, M C2, M vector (x, y, z) 1.0000 0.0000 0.0000 1.0000 0.0000 0.0000 1.0000 1.0000 1.0000 1.0000 1.0000 -1.0000 -1.0000 1.0000 0.0000 1.0000 0.0000 1.0000 1.0000 0.0000 1.0000 0.0000 1.0000 1.0000 1.0000 -1.0000 0.0000 0.0000 1.0000 1.0000 -1.0000 1.0000 1.0000 1.0000 -1.0000 1.0000 -1.0000 0.0000 0.0000 f) sodium chloride lattice (lattice code = 6, -6) defined as face centered cubic with 2 atoms per unit cell. The radii ratio r(Na)/r(Cl) = 0.525 is taken from Coulson's tables of ionic radii. lattice vectors x y R1 0.00000 0.50000 R2 0.50000 0.00000 R3 0.50000 0.50000 z 0.50000 0.50000 0.00000 reciprocal lattice vectors x y z G1 -6.28319 6.28319 6.28319 G2 6.28319 -6.28319 6.28319 G3 6.28319 6.28319 -6.28319 2 lattice basis vectors x y r1 0.00000 0.00000 r2 0.00000 0.00000 z 0.00000 0.50000 atom/ion radius 0.1721 0.3279 nuclear charge 11 (Na) 17 (Cl) packing ratio = 0.67599 22 symmetry elements : see simple cubic lattice ________________________ Sec. 5.3. ________________________________ __ 83 g) cesium chloride lattice (lattice code = 7) defined as simple cubic with 2 atoms per unit cell. Ratio of radii r(Cs)/r(Cl) = 0.934 is taken from Coulson's tables of ionic radii. lattice vectors x y R1 1.00000 0.00000 R2 0.00000 1.00000 R3 0.00000 0.00000 z 0.00000 0.00000 1.00000 reciprocal lattice vectors x y z G1 6.28319 0.00000 0.00000 G2 0.00000 6.28319 0.00000 G3 0.00000 0.00000 6.28319 2 lattice basis vectors x y r1 0.00000 0.00000 r2 0.50000 0.50000 z 0.00000 0.50000 atom/ion radius 0.4182 0.4478 packing ratio = nuclear charge 55 (Cs) 17 (Cl) 0.68255 22 symmetry elements : see simple cubic lattice h) cubic Zincblende lattice (lattice code = 8, -8) defined as face centered cubic with 2 atoms per unit cell. Ratio of radii r(Zn)/r(S) = 0.476 is taken from Coulson's tables of ionic radii. lattice vectors x y R1 0.00000 0.50000 R2 0.50000 0.00000 R3 0.50000 0.50000 z 0.50000 0.50000 0.00000 reciprocal lattice vectors x y z G1 -6.28319 6.28319 6.28319 G2 6.28319 -6.28319 6.28319 G3 6.28319 6.28319 -6.28319 2 lattice basis vectors x y r1 0.00000 0.00000 r2 0.25000 0.25000 z 0.00000 0.25000 atom/ion radius 0.1396 0.2934 packing ratio = 0.46868 13 symmetry elements label(s) C2 C2 C2 C3 C3 C3 vector (x, y, z) 1.0000 0.0000 0.0000 1.0000 0.0000 0.0000 1.0000 1.0000 1.0000 1.0000 1.0000 -1.0000 0.0000 0.0000 1.0000 1.0000 -1.0000 1.0000 nuclear charge 30 (Zn) 16 (S) C3 M M M M M M -1.0000 0.0000 0.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 0.0000 0.0000 1.0000 -1.0000 1.0000 1.0000 -1.0000 1.0000 -1.0000 0.0000 0.0000 __ 84 _________________ Sec. 5.3. _______________________________________ i) Graphite lattice (lattice code = 9, -9) defined as hexagonal with 4 atoms per unit cell. A lattice constant ratio c/a = 2.72 is used as default. lattice vectors x y R1 1.00000 0.00000 R2 0.50000 0.86603 R3 0.00000 0.00000 z 0.00000 0.00000 2.72000 reciprocal lattice vectors x y z G1 6.28319 -3.62760 0.00000 G2 0.00000 7.25520 0.00000 G3 0.00000 0.00000 2.30999 4 lattice basis vectors x y r1 0.00000 0.00000 r2 0.50000 0.28870 r3 0.00000 0.00000 r4 1.00000 0.57740 z 0.00000 0.00000 1.36000 1.36000 atom/ion radius 0.2887 0.2887 0.2887 0.2887 packing ratio = nuclear 6 6 6 6 charge (C) (C) (C) (C) 0.17111 8 symmetry elements label(s) C3, M M M M C2 C2 C2 vector (x, y, z) 0.0000 0.0000 1.0000 0.0000 1.0000 1.7321 -1.0000 1.7321 0.0000 1.0000 1.7321 1.0000 -1.7321 1.0000 1.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 B1) Bravais lattices The following table gives, for each of the 14 Bravais lattices, all parameters necessary to define the lattice and cartesian coordinates of all lattice vectors R1, R2, R3 with lengths |R1| = a, |R2| = b, |R3| = c, and angles <(R1,R2) = v12, <(R1,R3) = c13, <(R2,R3) = v23. Further, we define cij = cos(vij) , a) sij = sin(vij) , i,j = 1, 2, 3. Triclinic-P lattice Lattice without symmetry (apart from inversion). Parameters a, b, c, v12, v13, v23 required. R1 = R2 = R3 = a ( 1, 0, 0 ) b ( c12, s12, 0 ) c ( c13, (c23-c13*c12)/s12, sqrt(1-c12**2-c13**2c23**2+c12*c13*c23)/s12 ) ________________________ Sec. 5.3. ________________________________ __ b) Monoclinic-P lattice Vector R3 perpendicular to R1, R2. Parameters a, b, c, v12 required. R1 = R2 = R3 = c) a ( s12, b ( 0, c ( 0, c12, 1, 0, 0 ) 0 ) 1 ) Monoclinic-B lattice Vector R3 perpendicular to R1, R2. Plane R1/R3 is centered rectangular. Parameters a, b, c, v12 required. R1 = R2 = R3 = d) 1/2 ( a*s12, ( 0, 1/2 ( a*s12, a*c12, b, a*c12, -c ) 0 ) c ) Orthorhombic-P lattice Vectors R1, R2, R3 perpendicular to each other. Parameters a, b, c required. R1 = R2 = R3 = e) ( a, ( 0, ( 0, 0, b, 0, 0 ) 0 ) c ) Orthorhombic-C lattice Vectors R1, R2, R3 perpendicular to each other. Plane R1/R2 is centered rectangular. Parameters a, b, c required. R1 = R2 = R3 = 1/2 ( a, -b, 1/2 ( a, b, ( 0, 0, 0 ) 0 ) c ) 85 __ 86 _________________ Sec. 5.3. _______________________________________ f) Orthorhombic-I lattice Vectors R1, R2, R3 perpendicular to each other. One additional atom in cell center. Parameters a, b, c required. R1 = R2 = R3 = g) 1/2 ( a, -b, c ) 1/2 ( a, b, -c ) 1/2 ( -a, b, c ) Orthorhombic-F lattice Vectors R1, R2, R3 perpendicular to each other. Planes R1/R2, R1/R3, R2/R3 are centered rectangular. Parameters a, b, c required. R1 = R2 = R3 = h) 1/2 ( a, 1/2 ( a, 1/2 ( 0, 0, b, b, c ) 0 ) c ) Tetragonal-P lattice Vectors R1, R2, R3 perpendicular to each other with |R1| = |R2| = a. Parameters a, c required. R1 = R2 = R3 = i) ( a, ( 0, ( 0, 0, a, 0, 0 ) 0 ) c ) Tetragonal-I lattice Vectors R1, R2, R3 perpendicular to each other with |R1| = |R2| = a. One additional atom in cell center. Parameters a, c required. R1 = R2 = R3 = 1/2 ( a, -a, c ) 1/2 ( a, a, -c ) 1/2 ( -a, a, c ) ________________________ Sec. 5.3. ________________________________ __ j) 87 Hexagonal-P lattice Vectors R3 perpendicular R1, R2 with |R1| = |R2| = a and v12 = 120. Parameters a, c required. R1 = R2 = R3 = k) a ( q, -1/2, a ( 0, 1, c ( 0, 0, 0 ) 0 ) 1 ) q = sqrt(3/4) Trigonal-R lattice Vectors R1, R2, R3 form an equilateral rhombohedron where |R1| = |R2| = |R3| = a and v12 = v13 = v23 . Parameters a, v12 < 120 required. R1 = R2 = R3 = l) a ( p12, a ( -p12/2, a ( -p12/2, 0, q12 ) p12*q, q12 ) -p12*q, q12 ) p12 = sqrt( (1-c12)*2/3 ) q = sqrt(3/4) q12 = sqrt( 1- p12**2 ) Cubic-P lattice Vectors R1, R2, R3 perpendicular to each other with |R1| = |R2| = |R3| = a. Parameter a required. R1 = R2 = R3 = m) a ( 1, a ( 0, a ( 0, 0, 1, 0, 0 ) 0 ) 1 ) Cubic-I (bcc) lattice Vectors R1, R2, R3 perpendicular to each other with |R1| = |R2| = |R3| = a. One additional atom in cell center. Parameter a required. R1 = R2 = R3 = a/2 ( 1, a/2 ( 1, a/2 ( -1, -1, 1, 1, 1 ) -1 ) 1 ) __ 88 _________________ Sec. 5.3. _______________________________________ n) Cubic-f (fcc) lattice Vectors R1, R2, R3 perpendicular to each other with |R1| = |R2| = |R3| = a. Planes R1/R2, R1/R3, R2/R3 are centered square. Parameter a required. R1 = R2 = R3 = a/2 ( a/2 ( a/2 ( 1, 1, 0, 0, 1, 1, 1 ) 0 ) 1 ) ________________________ Sec. 5.3. ________________________________ __ 89 The following table lists lattices and lattice constants a (in Angstroms) for the most common elements as taken from R. W. G. Wyckoff, "Crystal Structures", Interscience, New York 1963. Nearly closed packed hexagonal lattices are denoted by hcp and the two lattice constants a/c of the hexagonal lattice are given. charge lattice a (a/c) -----------------------------2 (He) hcp 3.57/5.83 3 (Li) bcc 3.49 4 (Be) hcp 2.29/3.58 6 (C ) diamond 3.57 10 (Ne) fcc 4.43 11 (Na) bcc 4.23 12 (Mg) hcp 3.21/5.21 13 (Al) fcc 4.05 14 (Si) diamond 5.43 18 (Ar) fcc 5.26 19 (K ) bcc 5.23 20 (Ca) fcc 5.58 21 (Sc) fcc 4.54 21 (Sc) hcp 3.31/5.27 22 (Ti) hcp 2.95/4.69 23 (V ) bcc 3.02 24 (Cr) bcc 2.88 26 (Fe) bcc 2.87 27 (Co) hcp 2.51/4.07 27 (Co) fcc 3.55 28 (Ni) fcc 3.52 29 (Cu) fcc 3.61 30 (Zn) hcp 2.66/4.95 32 (Ge) diamond 5.66 36 (Kr) fcc 5.72 37 (Rb) bcc 5.59 38 (Sr) fcc 6.08 39 (Y ) hcp 3.65/5.73 40 (Zr) bcc 3.61 40 (Zr) hcp 3.23/5.15 41 (Nb) bcc 3.30 42 (Mo) bcc 3.15 44 (Ru) hcp 2.70/4.28 45 (Rh) fcc 3.80 46 (Pd) fcc 3.89 charge lattice a (a/c) -----------------------------47 (Ag) fcc 4.09 48 (Cd) hcp 2.98/5.62 50 (Sn) diamond 6.49 54 (Xe) fcc 6.20 55 (Cs) bcc 6.05 56 (Ba) bcc 5.02 57 (La) fcc 5.30 57 (La) hcp 3.75/6.07 58 (Ce) fcc 5.16 58 (Ce) hcp 3.65/5.96 59 (Pr) fcc 5.16 59 (Pr) hcp 3.67/5.92 60 (Nd) hcp 3.66/5.90 64 (Gd) hcp 3.64/5.78 65 (Tb) hcp 3.60/5.69 66 (Dy) hcp 3.59/5.65 67 (Ho) hcp 3.58/5.62 68 (Er) hcp 3.56/5.59 69 (Tm) hcp 3.54/5.55 70 (Yb) fcc 5.49 71 (Lu) hcp 3.50/5.55 72 (Hf) hcp 3.20/5.06 73 (Ta) bcc 3.31 74 (W ) bcc 3.16 75 (Re) hcp 2.76/4.46 76 (Os) hcp 2.74/4.32 77 (Ir) fcc 3.84 78 (Pt) fcc 3.92 79 (Au) fcc 4.08 81 (Tl) bcc 3.88 81 (Tl) hcp 3.46/5.53 82 (Pb) fcc 4.95 90 (Th) fcc 5.08 94 (Pu) fcc 4.64 __ 90 _________________ Sec. 5.4. _______________________________________ 5.4. COLORS AND PAINTING USED FOR GRAPHICS AND POSTSCRIPT OUTPUT BALSAC uses an internal color definition and coding scheme for producing screen graphics and color PostScript output which will be explained in the following. The complete internal table determining all available colors contains nctot <= ncmax entries (ncmax = 16 for DOS/VGA, = 256 for Unix/X.11) consisting each of an integer triple (nr, ng, nb) defining RGB colors with values nr, ng, nb ranging between 0 and rgb (defined in the initialization file with defaults rgb = 63 for DOS/VGA, = 65535). The color table entries 0...pb (pb = 3 for DOS/VGA, = 7 for Unix/X.11) determine the BASE COLORS defined in the following table -----------------------------(a) Unix/X.11 entry color definition -----------------------------0 "black" 1 "white" 2 graphics background 3 graphics text color 4 default link color 5 default stereo red 6 default stereo blue 7 default stereo white ------------------------------ -----------------------------(b) DOS/VGA entry color definition -----------------------------0 "black" 1 "white" 0 graphics background 0 graphics text color 1 default link color 2 default stereo red 3 default stereo blue 1 default stereo white ------------------------------ The remaining color table entries pb+1...nctot determine colors used for painting/shading of balls and bonds. These colors are based on ncolb entries (BASIC PAINT COLORS). Each paint color comes with nsh different TONES varying from dark to light among which there is a default DARK TONE and a LIGHT TONE. These definitions are given in the initialization file, see Sec. 6.4.7. The respective color table entries are as follows ------------------------------------------------------------------------palette color table entries color (darkest) ..... (def.dark) ..... (def.light) .... (lightest) ------------------------------------------------------------------------- 1 ns(1)+1 ....... ns(1)+na ....... ns(1)+ne ....... ns(1)+nsh 2 ns(2)+1 ....... ns(2)+na ....... ns(2)+ne ....... ns(2)+nsh ... ncolb ns(ncolb)+1 ... ns(ncolb)+na ... ns(ncolb)+ne ... ns(ncolb)+nsh ------------------------------------------------------------------------where ns(i) = pb+(i-1)*nsh yielding a total number of colors nctot = ns(ncolb)+nsh = pb+ncolb*nsh . The above color table entries are used to define background and link colors allowing for the full range of nctot colors. In contrast, colors used to ________________________ Sec. 5.4. ________________________________ __ 91 paint circles and (shaded) balls of atoms are addressed by their paint color. Defining paint color j for - a circle or ball (filled circle) will use the respective def.dark color table entry given by position ns(j)+na(j) . - a hard-, fuzzy-, or dither-shaded ball (two color filling, black framing) will use the "black", def.dark, and def.light color table entries given by positions 0, ns(j)+na(j), and ns(j)+ne(j). - a glossy-shaded ball (continuous color filling) will use nsh color table entries, ns(j)+1 ... ns(j)+nsh. BALSAC contains an internal color palette which is generated when BALSAC is started using definitions of the initialization file, see Sec. 6.4.7. The palette has nptot entries np(1), ... np(nptot) which point at paint color indices j and thus determine the sequence in which paint colors are used in plots, see Sec. 6.2.7. The above color table is generated when BALSAC is started using definitions of the initialization file, see Sec. 6.4.7. In this file all base colors 0...pb are defined explicitly by their RGB values while the paint colors are given in short form. For paint color j a basic definition RGB0 = (R(j), G(j), B(j)), four darkness factors (values between 0 and 1), qu(j) for darkest, qb(j)j for def.dark, qe(j) for def.light, qt(j) for lightest, and a gamma value gam are defined from which the nsh different tones (color table entries) are built. This uses an RGB color function (linear path between (0,0,0), RGB0, and (rgb, rgb, rgb)) given by RGB0 * q/qint if q < qint RGB(q) = ( RGB0*(1-q) + RGBW*(q-qint) ) / (1-qint) if q > qint with qint = (R(j)+G(j)+B(j)) / (3*rgb) and RGBW = (rgb, rgb, rgb). Then the different tones of paint color j corresponding to color table entries ns(j)+1 ... ns(j)+nsh are defined by RGB(q(i)) with q(i) = qu(j) + (qt(j)-qu(j)) * [(i-1)/(nsh-1)]**gam , i = 1,...nsh . The gamma factor gam allows you to modify the distribution of tones between the darkest and lightest value. Here gam = 1 corresponds to a homogeneous distribution while gam > 1 (gam < 1) emphasizes darker (lighter) tones. Reasonable gamma values lie between 0.3 and 3.0. The offsets na(j), ne(j) used for the def.dark and def.light tones (see above) are determined by integers na(j) nearest to (nsh-1) * (qb(j)-qu(j)) / (qt(j)-qu(j)) , ne(j) nearest to (nsh-1) * (qe(j)-qu(j)) / (qt(j)-qu(j)) . __ 92 _________________ Sec. 5.4. _______________________________________ If gray tone conversion of screen colors is selected, see Secs. 6.2.15, all RGB color entries are replaced by gray values using the video transformation (r,g,b) --> (r',g',b') = (s,s,s) with s = 0.30*r + 0.59*g + 0.11*b . All color and palette definitions given in the BALSAC initialization file may be modified with the basic parameter option of a BALSAC session, see Sec. 6.2.15. However, the appropriate color parameters have to be chosen with care to avoid incomplete or incorrect graphics. Color PostScript file output uses the RGB values as defined in the color table. However, all RGB integers are renormalized to real numbers inside the range [0,1]. Output of color PostScript files on b/w PostScript laser printers automatically converts RGB colors to gray tones using the above transformation. Gray scale PostScript file output converts colors for painting atoms and bonds to gray tones according to the above transformation (r,g,b) --> (r',g',b') . Note that in practice only 4 - 6 different gray shaded atoms can be easily discriminated in a plot. This has to be considered in designing gray scale PostScript output by setting respective color code tables, see Secs. 6.2.15, 6.4.7. An initialization file 'bwgraph.ini' provided with the BALSAC software contains color definitions which are optimized for best gray scale results. It can be loaded inside the basic parameter option ([P] from the main option menu) of a BALSAC session. The different shading algorithms for screen output are described below and in Secs. 6.2.7, 6.3.5. PostScript output allows only for hard-shading (option [H] of the graphics design menu, see Sec. 6.2.7) and for continuous shading (options [F],[D],[G] of the graphics design menu, see Sec. 6.2.7). Hard-shading used in PostScript output is identical to that of screen output. Continuous shading uses, for each palette color or palette gray tone, a set of nshps different tones which are determined by the algorithm used also for color screen output and described above (note that all PostScript RGB components are within the range [0.0,1.0] and rgb = 1.0). When continuous shading is active the value of nshps is prompted before PostScript file output is initiated. This allows for separate shading densities in PostScript and screen output. Ball shading for screen and PostScript output is determined by the direction of the incident light defined by angles by polar and azimuthal angles theta, phi with respect to the screen or paper normal direction yielding a direction (unit) vector e = ( sin(theta)*cos(phi), sin(theta)*sin(phi), cos(theta) ) where one light source and parallel light is assumed. A polar angle phi = 0 corresponds to the vertical y direction on the screen. Thus, the default values theta,phi = 65,-25 degrees refer to light shining from the upper left front location relative to the viewer. Shading is based on three ________________________ Sec. 5.5. ________________________________ __ 93 contributions - homogeneous diffuse background light of relative intensity qdiff, - Lambert shading determined by the scalar product n*e of the ball surface normal (unit) vecor n and the light direction vector e with a maximum relative intensity qlamb, - specularly reflected light determined by the 5th power of the scalar product of the screen or paper normal direction vector and the reflected light direction vector with a maximum relative intensity qspec. where qdiff + qlamb + qspec = 1. Hard-shading of balls (design option [H] using two color tones (dark, light)) needs only factor qdiff where the separation line between the dark and light tone is determined by the equation n * e = qdiff , see above. Fuzzy- and dither-shading of balls (options [F],[D] of the graphics design menu) assumes no specular reflection ( qspec = 0.0) while glossy-shading (option [G]) includes all tree contributions, see Sec. 6.2.7, 6.3.5. At present PostScript print output of shaded balls does not include specular reflection. 5.5. INTERACTIVE INPUT/OUTPUT Keyboard input of numbers and text in interactive mode is always FORTRAN 77 free format type and has to be completed by [enter]. In the BALSAC manual ((C) Copyright 1991-6 K. Hermann) this input will be enclosed in double quotes "...". The input format means in particular that - numbers can be abbreviated, e.g. "-0.0044000" by "-.0044" and "1.0" by "1" ; - sequences of identical numbers can be abbreviated using multiplication factors, e.g. "1.,1.,1.,1.,0." => "4*1.,0." ; - different numbers requested with one prompt have to be separated either by a coma, [,], by at least one blank, or by the [enter] key; Note that the program does not interpret a single key stroke [enter] as "0" (numerical zero) input. Errors in numerical or text input can be corrected by going back and overtyping before the input is completed with [enter]. In some prompts long numerical input can be cancelled by typing "/" + [enter]. Menu options are selected, pressing a single key [A], typed) without [enter] where both lead to different results. are apart from mouse input (see Sec. 3.3.8), by [B], ... (the brackets are not meant to be lower and upper case input is accepted but can Erroneous option key input (i. e. key codes __ 94 _________________ Sec. 5.6. _______________________________________ not accessible in the menu) results in an error message [k] NOT AVAILABLE, enter correct option key : if key [k] was pressed. For cursor key characters [up], [down], [left], [right] used in graphics mode either cursor keys or appropriate keys of the number block on the keyboard can be used where the definitions are [8] [2] [4] [6] for for for for [up] [down] [left] [right] left - up | 7 8 9 4 5 6 1 2 3 | down - right For the Unix version of BALSAC only the above number block definitions and respective number keys may be valid if control sequences for cursor keys are not defined, e.g. for list output of atom coordinates (graphics modes 1, 11), see Sec. 6.2.7, 6.3.5. Mouse graphics input to BALSAC uses two buttons for the input selection. The PC version assumes a fully Microsoft compatible two button mouse (left/right buttons). The Unix/X.11 version is based on a three button mouse (left/ central/right) of which only the left and central (corresponding to "right" of the PC version) buttons are used, see Sec. 3.3.8 for further details. All numerical input/output using external files in batch or interactive mode is FORTRAN 77 fixed format-type. The appropriate format definitions are described in detail in Secs. 6.4.2. to 6.4.8. 5.6. FILE SYSTEM USED BY BALSAC BALSAC uses several external and internal files for its operation which will be described in the following. STRUCTURE INPUT to both BALSAC sessions uses fixed format files where input to a LATTICE session must be LATUSE format, see Sec. 6.4.2, while a CLUSTER session requires PLOT3D format file input, see Sec. 6.4.3. File names can be anything accepted by DOS or Unix (up to 72 characters). However, it is good practice to use names which suggest both the structure and file format. The present BALSAC system uses file names '*.lat' for LATUSE format files and '*.plt' for PLOT3D format files. ________________________ Sec. 5.6. ________________________________ __ 95 STRUCTURE OUTPUT to external files can be of different format depending on the file output option, see Secs. 6.2.8, 6.3.6. BALSAC accepts any valid DOS or Unix file name with up to 72 characters. The following table lists suggested file names to be used with the present BALSAC system -----------------------------------------------format suggested file name -----------------------------------------------LATUSE *.lat PLOT3D *.plt SARCH *.sar SCHAKAL *.sch gray scale PostScript *.ps or *.eps color PostScript *.cps or *.eps -----------------------------------------------SAFETY BACKUP of the present BALSAC session occurs whenever the session is finished: by quitting BALSAC, by loading a new structure (from the stack or externally) or starting from scratch within a session, by transfer between sessions. The safety backup files are called 'balsac.svl' (LATUSE format, closing a LATTICE session) or 'balsac.svc' (PLOT3D format, closing a CLUSTER session). They contain structure/graphics as well as all initialization data such that the session can be resumed without loss. QUICKSAVE of the present BALSAC session is available as a simplified file output option. Here default file names 'balsac.lat' (LATUSE format, from a LATTICE session) or 'balsac.plt' (PLOT3D format, from a CLUSTER session) are used. These files can be loaded at startup of BALSAC by a simplified call "balsac -lr" (LATTICE session) or "balsac -cr" (CLUSTER session). Further, the default file names are used inside the file input option of BALSAC if the dummy name "+" is given. The FILE STACK uses external files 'stckFFF#.lat' (LATUSE format, LATTICE session) and 'stckFFF#.plt' (PLOT3D format, CLUSTER session) with # =0...9 to hold up to 10 different structures for each session type. These files are created and loaded with the stack option, see Secs. 6.2.16, 6.3.14. They can also be loaded at startup of BALSAC by a simplified call "balsac -l#" (LATTICE session) or "balsac -c#" (CLUSTER session) with # = 0...9. TRANSFER of a crystal block created in a LATTICE session to a CLUSTER session (converting the block to a cluster without periodicity) uses an external transfer file 'balsac.trc' of PLOT3D format which can also be loaded in a subsequent CLUSTER session, e. g. with "balsac -c balsac.trc". Transfer of a cluster created in a CLUSTER session to a LATTICE session (using the cluster as an elementary cell of a fictitious simple cubic lattice) uses an external transfer file 'balsac.trl' of LATUSE format which can be also loaded in a subsequent LATTICE session, e. g. with "balsac -l balsac.trl". The INITIALIZATION file contains all relevant basic control parameters determining graphics settings (windows, adapters, colors, shading). The default name used by BALSAC is 'balsac2.ini' but any valid DOS or Unix file name with up to 72 characters is acceptable. The present BALSAC system suggests '*.ini' for initialization files. __ 96 _________________ Sec. 5.6. _______________________________________ The ON-LINE HELP file holds all text used with the on-line help feature of BALSAC. The default name used by BALSAC is 'balsac2.hlp' but any valid DOS or Unix file name with up to 72 characters is acceptable. The present BALSAC system suggests '*.hlp' for on-line help files. The default file name 'balsac2.hlp' is also used when the on-line help option is (re)activated and the dummy name "+" is given as the help file name. TEACH MODE of BALSAC uses a help file which has to be loaded when this mode is (re)activated. The default file name is 'balsac2.hlp' (if the dummy name "+" is given in the file name prompt) but any valid DOS or Unix file name with up to 72 characters is acceptable. The present BALSAC system suggests '*.hlp' for help files used with teach mode. The following table lists default names of all files used by BALSAC. --------------------------------------------------------------------------file names format use --------------------------------------------------------------------------balsac.lat LATUSE output from a LATTICE session using quicksave, input to a LATTICE session, e.g. with "balsac -lr". balsac.svl LATUSE output from a LATTICE session using safety backup input to a LATTICE session, e.g. with "balsac -lp". balsac.trl LATUSE output of a CLUSTER session transferring structure data to a LATTICE session, input to a separate LATTICE session, e.g. with "balsac -l balsac.trl". stckFFF#.lat LATUSE # = 0...9, internal stack file system to hold up to 10 structure files used for in/output in LATTICE sessions. balsac.plt PLOT3D output from a CLUSTER session using quicksave, input to a CLUSTER session, e.g. with "balsac -cr". balsac.svc backup, balsac.trc PLOT3D PLOT3D output of a CLUSTER session using safety input to a CLUSTER session, e.g. with "balsac -cp". output from a LATTICE session transferring structure data to a CLUSTER session, input to a stckFFF#.plt PLOT3D separate CLUSTER session, e.g. with "balsac -c balsac.trc". # = 0...9, internal stack file system to hold up to 10 structure files used for in/output in CLUSTER sessions. balsac2.ini ASCII default initialization file containing basic control parameters. balsac2.hlp ASCII default on-line help file containing all help text. This file is also used in teach mode by default. --------------------------------------------------------------------------- ________________________ Sec. 5.6. ________________________________ __ 97 Missing or incorrect input files used with BALSAC lead to either - an error message ERROR: opening file for structure input File = filename followed by another input file name prompt in interactive mode, or a program exit if a false input file name was used in batch mode, or - a program crash with unpredictable results if incorrect input format was used. Here a restart of BALSAC is strongly advised. __ 98 _________________ Sec. 6. _________________________________________ 6. 6.0. DETAILED OPERATIONS SETTING UP AND INSTALLATION Before running BALSAC for the first time the software has to be installed (using diskettes of the original BALSAC (version 2.0) distribution package for DOS PC based systems or from the archive file BALSAC2.tar.Z for Unix systems) and set up correctly. The system requirements, installation and setup procedures are described in detail in Sec. 2. This section contains also a list of all files provided with the original BALSAC (version 2.0) distribution package. Note that the PC version requires up to 560 KB of free memory at run time which may no be available if memory resident utilities are installed. In case of problems all memory resident utilities may have to be removed and BALSAC restarted. 6.1. STARTING UP BALSAC is started from the DOS or Unix command line or as a DOS full screen application inside MS Windows 3.1x. Running BALSAC requires an - initialization file (defaulted to 'balsac2.ini') and an - on-line help file (defaulted to 'balsac2.hlp'). The default files, if used, have to reside in the calling directory or in the BALSAC system directory. Alternatively, initialization and on-line help file names can be given on the command line, see below). For graphics output a graphics interface (VGA monochrome or color graphics adapter for PCs, X.11 Windows system with color adapter for Unix systems) must be installed. The calling command of BALSAC is balsac [-options] [structfile] [initfile] [helpfile] where all parameters in square brackets [...] are optional. Here "options" is any meaningful combination of characters l = start a BALSAC/LATTICE session in interactive mode or with an input file (for file names see below), see Sec. 6.2, c = start a BALSAC/CLUSTER session in interactive mode or with an input file (for file names see below), see Sec. 6.3, r = used together with session parameters "l" or "c" starts a BALSAC/LATTICE or BALSAC/CLUSTER session with the quicksave file 'balsac.lat' or 'balsac.plt' as input. The file names need not be given on the command line. ________________________ Sec. 6.1. ________________________________ __ p = 99 used together with session parameters "l" or "c" starts a BALSAC/LATTICE or BALSAC/CLUSTER session with the safety backup file 'balsac.svl' or 'balsac.svc' as input. The file names need not be given on the command line. 0 - 9 = used together with session parameters "l" or "c" starts a BALSAC/LATTICE or BALSAC/CLUSTER session with stack file 'stckFFF#.lat' or 'stckFFF#.plt' as input. m = mouse use for all option menus, see Sec. 3.3.8, t = start BALSAC in teach mode, see Sec. 3.3.9. The necessary help file is defaulted to 'balsac2.hlp' in the user directory or in the BALSAC system directory, or can be defined on the command line (for file names see below), see Sec. 3.3.9, Parameter "structfile" used together with session parameters "l" or "c" denotes the name of an (optional) structure input file (up to 72 characters) to be loaded when the respective BALSAC session is started. A dummy 1-character file name "-" will ignore the file entry, see examples below. Parameter "initfile" denotes the name of an (optional) initialization file (up to 72 characters) to replace the default file 'balsac2.ini' (in the calling directory or in the BALSAC system directory, see below). Note that the content of an initialization file can also be stored in a structure input file, see Secs. 6.2.8, 6.3.6. In this case both the default and any external initialization file will be ignored and all initialization parameters will be taken from the structure input file. A dummy 1-character file name "-" will ignore the file entry, see examples below. Parameter "helpfile" denotes the name of an (optional) on-line help file (up to 72 characters) to replace the default file 'balsac2.hlp' (in the calling directory or in the BALSAC system directory, see below). If BALSAC was installed in a Unix multi-user environment the default initialization and on-line help files reside in the BALSAC system directory (e.g. /usr/local/balsac). If files balsac2.ini and/or balsac2.hlp exist in the directory from which BALSAC is started these files will override the standard defaults of the system directory. This becomes important for graphics systems with restricted capabilities where the default initialization file has to be replaced by a local default. Examples of BALSAC starting commands are > balsac start BALSAC without any options. > balsac -lm start a BALSAC/LATTICE session using a mouse to select menu options. > balsac -cm5 the start a BALSAC/CLUSTER session with stack file 'stckFFF5.plt' as input, using a mouse to select menu options. __ 100 _________________ Sec. 6.1. _______________________________________ > balsac -l lattice.lat start a BALSAC/LATTICE session with a structure file 'lattice.lat' as input. > balsac -cp the start a BALSAC/CLUSTER session with safety backup file 'balsac.svc' to resume the previous BALSAC/CLUSTER session. > balsac -cpt start a BALSAC/CLUSTER session in teach mode with the safety backup file 'balsac.svc' to resume the previous BALSAC/CLUSTER session. > balsac -c balsac.svc > balsac -crm - myown.ini the is identical to "balsac -cp". start a BALSAC/CLUSTER session with quicksave file 'balsac.plt' as input, using a mouse to select menu options, loading an external initialization file 'myown.ini' (overriding 'balsac2.ini'). > balsac -lp - - myown.hlp the start a BALSAC/LATTICE session with safety backup file 'balsac.svl' to resume the previous BALSAC/CLUSTER session, loading an external on-line help file 'myown.hlp' (overriding 'balsac2.hlp'). If BALSAC is started without any option parameters on the command line the initial interactive startup screen ========================================================= | | | B A L S A C | | | | Build and Analyze Lattices, Surfaces, And Clusters | | | | (C) Copyright 1991-6 K. Hermann. All Rights Reserved | | Fritz-Haber-Institut Berlin | | | | Version 2.00 February 1996 | | | | /adapter info/ | | | ========================================================= Select: [L]attice [C]luster [M]ouse(fms) [T]each(ftc) [?,]Quit To get help on option [x] press [?]+[x] or select Help from menu window is displayed where the adapter information reads "VGA graphics version" for DOS systems and "X.11 mode DISPLAY= nodeid" for Unix systems with nodeid ________________________ Sec. 6.1. ________________________________ 101 __ giving the network name of the display. Note that nodeid will always be truncated to 32 characters while longer display names may be used internally. If on Unix systems the nodeid is invalid or the display is not X.11 Windows compatible the adapter information reads "Terminal mode, no graphics display" which indicates that all graphics output will be suppressed and respective warnings will be issued. The prompt line shows the interactive startup menu where keywords start with characters enclosed in [ ] brackets. These characters have to be selected (press character key or select with a mouse pointer, see below) to activate the respective option. This selection procedure is common to all menus throughout BALSAC. Pressing an invalid key, e. g. x, asks to repeat the input with a prompt [x] NOT AVAILABLE, enter correct option key : The mouse menu and teach mode options include respective flags fms, fmt, shown in parentheses and reading "on" or "off" depending on the present modes, see below. Further, the line below the prompt line indicates that on-line help is available and explains its use where " or select Help from menu window" is shown only with the Unix/X.11 version which offers a menu window. If the on-line help file (default is 'balsac2.hlp') is not available or corrupt when BALSAC is started the above line is replaced by WARNING: help file unaccessible, no on-line help available which allows you to start BALSAC sessions, however, without on-line help. In the above menu option selecting > [L] menu. starts a BALSAC/LATTICE session moving to the LATTICE session > [C] menu. starts a BALSAC/CLUSTER session moving to the CLUSTER session > [M] switches the mouse selection flag fms in the above menu between "on" and "off" (default is "off"). For fms = "on" (DOS/VGA version) the mouse text pointer shows on the screen and selecting BALSAC menu options (shown in square brackets []) becomes possible by moving the pointer over the appropriate character on the screen and clicking the left mouse button (L-click) or by pressing the option key character on the keyboard. However, direct keyboard input is still possible. (Unix/X.11 version) a separate menu window named "Options Menu" is opened and will remain open until numerical input is requested, mouse selection mode is turned off, or BALSAC finishes. The menu window contains all entries of a given menu inside rectangles separated by black lines where the entries are given as " X: Option text " with X denoting the option key in keyboard mode and the option text being in most cases more explanatory than that of the keyboard menu, see Secs. 3.3.8, 10. Pointing and left clicking with the mouse inside a rectangle will select the respective key code. With this __ 102 _________________ Sec. 6.1. _______________________________________ option direct keyboard input becomes impossible and can be reactivated only by setting the mouse select flag fms to "off". For further information on the mouse menu selection mode see Sec. 3.3.8. Mouse selection mode can also be reset inside the basic parameter option menu, see Sec. 6.2.15, and by selecting [@] in any BALSAC option menu, see also Sec. 3.3.8. > [T] selected from submenu P switches the teach mode flag ftc in the above menu between "on" and "off". Selecting [T] with ftc = "off" shows the prompt Teach file name ("+"=def,"-"=esc): asking for a character string fname (up to 72 characters) which defines the file name, e.g. "myteach.hlp", of an on-line help format file, see Sec. 6.4.8 used in teach mode. Here the one-character filename "+" denotes the default on-line help file 'balsac2.hlp', see Sec. 6.4.8,1, while dummy input "-" returns to submenu P. After a valid file name is given the flag ftc is switched to "on" and BALSAC runs in teach mode as indicated by "... (teach) [%,]Quit" in the main option menus and by "[%,]esc" in all other menus. Selecting an option in teach mode does not immediately execute the option. Instead, a short explanatory text taken from the online help file is shown and a prompt asks to confirm or reject the selection. For further details see Secs. 3.3.9, 3.3.8. Selecting [T] (twice) with ftc = "on" switches the flag to "off" and returns to default run mode which is confirmed by Teach mode off, help active in the text window (Unix/X.11 version only) and the escape prompt of all option menus changes to "... [?]Help [?,]Quit" and "[?,]esc" respectively. Alternatively, teach mode can be turned off in any menu by selecting [%] with the same result as using option [T] of the present submenu P. > [,] quits BALSAC returning to the DOS or Unix command line. ________________________ Sec. 6.2. ________________________________ 103 __ 6.2. INTERACTIVE OPTIONS: BALSAC/LATTICE SESSION BALSAC/LATTICE sessions can be initiated by starting BALSAC with the session parameter "l" and without structure file input or by selecting [L] from the interactive startup menu, see Sec. 6.1, after which the BALSAC/LATTICE startup menu ========================================================================= BALSAC/LATTICE 2.00 by K. Hermann (C) Copyright 1991-6 /adapter info/ Select: [I]nteractive [R]esume [P]revious [F]ile ->[C]luster [?,]Quit =================================================================== == 6 shows. Here the adapter information reads "VGA graphics version" for DOS systems and "X.11 mode DISPLAY= nodeid" for Unix systems with nodeid giving the network name of the display. Note that nodeid will always be truncated to 32 characters while longer display names may be used internally. In the above menu option [I] starts BALSAC/LATTICE in interactive mode to build a lattice section from scratch going through the standard building sequence, see Sec. 3.3.1. [R] starts a BALSAC/LATTICE session with structure and graphics input from the quicksave file 'balsac.lat'. If no file 'balsac.lat' exists in the working directory BALSAC complains with ERROR: opening file for structure input File= balsac.lat and prompts for the name of an external structure input file analogous to option [F]. [P] restores a previous BALSAC/LATTICE session with structure and graphics input from the safety backup file 'balsac.svl'. This file is generated automatically whenever a BALSAC/LATTICE session is finished correctly. It contains in addition to structure/graphics information also a complete copy of the initialization file. Thus, both structural data and the full graphics environment of the previous session can be restored. If no file 'balsac.svl' exists in the working directory BALSAC complains with ERROR: opening file for structure input File= balsac.svl and prompts for the name of an external structure input file analogous to option [F]. [F] prompts for a name Input file name ("+"=def,"-"=esc): of a structure input file fname to be used for input starting a __ 104 _________________ Sec. 6.2.0. _____________________________________ BALSAC/LATTICE session in batch mode where option parameters are taken from file fname. Here a 1-character dummy name "+" can be used for the quicksave file 'balsac.lat' while giving "-" as a file name finishes the BALSAC session. If file fname does not exists in the working directory BALSAC complains with ERROR: opening file for structure input File= fname and prompts for a different file name. [C] the starts a BALSAC/CLUSTER session showing a startup menu similar to present one, see Sec. 6.3. [,] finishes the BALSAC session returning to the DOS or Unix command line. 6.2.0. MAIN OPTION MENU The main option menu provides basic control in an interactive BALSAC/LATTICE session. After each operation (except for structure file input [I], transfer to BALSAC/CLUSTER [U], or finishing [,]) BALSAC/LATTICE returns to this menu and requests input for the next interactive option. The menu has the general form ========== BALSAC/LATTICE MENU ============================================== [L]attice = lattice ( latc) a = acon [R]ad/nuc = nc ( nct ) [M]iller = ( h k l ) [S]ection = nz1 nz2 nz3; top= nt; rclc=xxr; atoms= ncta (nct) sph = xsph ysph zsph rmin rmax [C]hstruct = nr layers: nr1 nr2 nr3 ... [V]iew = tt pp; rot= rr; mag= fm; per= fp; foc= nf [G]raphics = gm/gd; colr= nb/ np pl; lout= xxl; cnct= nnc; shft= sx sy [X]plot [A]nl [I]nput [O]utput stac[K] [N]ew >cl[U]str [P]arm [?]Help [,]Quit ======================================================================= 8 == showing the most important structure and viewing parameters. In this menu the line starting with "[L]attice ..." gives the structure title "lattice", the lattice code number latc, and the global lattice scaling constant acon, see Sec. 6.2.1. "[R]ad/nuc ..." lists the number of lattice basis vectors, nc, and the total number of inequivalent atoms, nct, with nct > nc if layer restructuring with additional layer basis vectors is chosen, see Secs. 6.2.2, 6.2.5. ________________________ Sec. 6.2.0. ______________________________ 105 __ "[M]iller ..." lattice shows the Miller indices (h k l) describing the plane direction. The indices shown as "(h k l)" are defined with respect to the reciprocal Bravais lattice. For cubic lattices Miller index values are also given with respect to the (reciprocal) simple cubic lattice and are shown as "(h k l)c". For hexagonal lattices the 4index notation is shown as "l m n q", see Sec. 6.2.3. "[S]ection ..." shows the size of the lattice section. The section contains all atoms of a rectangular block with base area of length nz1*R1' and width nz2*R2'*sin(R1',R2') which is nz3 layers high. The number nt gives the layer index of the first layer, see Sec. 6.2.4. Parameter xxr reads "on" or "off" depending on whether atom coordinates have to be recalculated for a subsequent plot (which may take some time). Parameter ncta (nct) gives the number of atoms included in the lattice section if atom-by-atom display mode was selected. In layer-by-layer mode ncta (nct) equals the number of atoms of the layer plotted/listed last. While the nct value (in brackets) denotes always the true total number of atoms determined for the lattice section irrespective of internal constraints the ncta value may be smaller. This occurs if the total number of atoms determined for the lattice section exceeds the internal maximum namax (= 2001 for DOS, = 8000 for Unix versions). Then ncta is set equal to nmax and only nmax atoms are plotted/listed resulting in an incomplete lattice section. Note that internal storing of atoms coordinates is different in the atom-by-atom and the layer-by-layer mode larger lattice sections can be visualized with the layer-by-layer display option. If the lattice section is further confined by a spherical shell (see Sec. 6.2.4) then the additional line sph = xsph ysph zsph rmin rmax lists the center coordinates (xsph, ysph, zsph) and the inner and outer radii rmin, rmax of the shell. "[C]hstruct ..." relates to restructuring of section layers where nr gives the number of restructured layers while nr1, nr2,... are the respective layer indices. For nr = 0 no layer restructuring is defined, see Sec. 6.2.5. __ 106 _________________ Sec. 6.2.0. _____________________________________ "[V]iew ..." pp, defines the viewing geometry used in plots. Here tt, rr give the viewing angles theta, phi and the rotation angle rr while the plot magnification is given by fm. The perspective geometry is defined using a distance factor fp where fp = 0 means parallel projection and fp > 0 central projection. Parameter nf refers to the focus used in central projection, see Sec. 6.2.6, 5.1. For nf = 0 the focus coincides with the section center (default focus), = -1 the focus is given in absolute cartesian coordinates, > 0 the focus coincides with the center of atom nf. "[G]raphics ..." shows the basic graphics parameters used in plots, see Sec. 6.2.7. Parameter gm defines the display mode where gm = "A" refers to atom-by-atom display mode, = "L" refers to layer-by-layer display mode, = "C" refers to cell-by-cell display mode (stacking of elementary cells). Parameter gd defines the graphical representation of atoms in plots with gd = "Nx" for no plotting/listing (for testing only), = = = = "Lx" "Px" "Cx" "Ax" for for for for coordinate listing, atoms shown as points, atoms shown as circles, atoms shown as filled circles (areas), = "Rx" for atoms shown as red/blue stereo = = = = for for for for circles, "Hx" "Fx" "Dx" "Gx" atoms atoms atoms atoms shown shown shown shown as as as as hard-shaded balls, fuzzy-shaded balls, dither-shaded balls, glossy-shaded balls. The lower case character in gd refers to stereo duplication in plots where x = "m" for mono views with one picture on the screen, = "s" for stereo views showing two slightly different pictures of the structure on the screen, see Sec. 6.2.7. Parameter nb denotes the color index of the color used to paint the background in plots while np gives the starting value of the color palette used to paint atoms. Parameter ________________________ Sec. 6.2.0. ______________________________ 107 __ pl refers to painting and labelling of atoms where pl = "E-" paints atoms of different elements differently, no labels, = "EE" paints atoms of different elements differently, element labels, = "EN" paints atoms of different elements differently, atom number labels, = "L-" paints atoms of different layers differently, no labels, = "LE" paints atoms of different layers differently, element labels, = "LN" paints atoms of different layers differently, atom number labels. Parameter xxl refers to the plot layout and reads "off" or any combination of the four characters "T", "B", "F", "-" where "T" shows if a title line is included, "B" shows if basis vectors are sketched in the plot, "F" shows if the lattice section is enclosed by a rectangular wire frame, "-" is used only as a filling character. Parameter nnc gives the number of constraints used to define links between atoms (selecting pairs of atoms to be connected by straight lines or cylindrical sticks visualizing bonds, see Sec. 6.2.7. The shift quantities sx, sy (given in pixel units) define a shift of the plot origin with respect to the default origin (center of screen), see Sec. 6.2.7. __ 108 _________________ Sec. 6.2.0. _____________________________________ "[X]plot ... " available at the bottom of the menu lists various options with the menu. The end of this line reads " ... [?]Help [?,]Quit" if the on-line help is available inside BALSAC (default), see Sec. 3.3.3, " ... [,]esc" if the on-line help is NOT available inside BALSAC, " ... (teach) [%,]Quit" if BALSAC is in teach mode, see Sec. 3.3.9. From the main option menu of BALSAC/LATTICE the user selects an option by pressing any of the character keys shown in square brackets "[]" (lower and upper case input is accepted) or using the mouse, see Sec. 5.5, 3.3.8. Then BALSAC * moves to the appropriate submenu (options [L], [R], [M], [S], [C], [V], [G], [A], [O], [K], [P]), * generates a plot or coordinate listing (option [X]), * starts the LATTICE session from scratch deleting all present structure data (option [N], to be confirmed), * restarts the LATTICE session with a structure input file (option [I], file name prompted), * moves to a BALSAC/CLUSTER session with/without the present structure being transferred (option [U], to be confirmed), or * quits the BALSAC session (option [,], to be confirmed). There are two hidden options, [Y], [E], in the main option menu which are meant for BALSAC/LATTICE batch runs with structure input files, see Sec. 6.4.1 and below. Option [Y] calculates coordinates of all atoms of a given lattice section without plotting or listing allowing to create fast structure file output in batch runs. Option [E] only refreshes the main option menu allowing to switch to interactive mode in a batch run. If BALSAC/LATTICE is started from scratch in interactive mode all parameters of options [L], [M], [S], [V], [G] have to be defined before the main option menu shows. If BALSAC/LATTICE is started with a structure input file a fixed sequence of (up to 48) main options can be included in the file and is executed accordingly (batch run mode). This allows you to run BALSAC/LATTICE without manual interference, see Sec. 6.4.1. The option keys are defined in the input file by ASCII characters identical to those used in the main option menu or by code numbers (as used in BALSAC (version 1.x)). The following table lists ________________________ Sec. 6.2.0. ______________________________ 109 __ all available main menu options with their key character and code number to be used in batch runs, see Sec. 6.4.1/2. --------------------------------------------------------main option ASCII code code number --------------------------------------------------------Lattice definition "L" 1 Radii / nuclear charge option "R" 2 Miller index definition "M" 3 Section definition "S" 4 Change layer structure "C" 5 View option "V" 6 Graphics option "G" 7 Output on structure file "O" 8 Execute (plot/list) "X" 9 New structure from scratch "N" 10 Input of structure file "I" 11 Refresh menu /interactive mode "E" 12 Transfer to CLUSTER (exit) "U" 13 ( -> 0) Analyze lattice section "A" 14 Basic parameter option "P" 15 File stack option "K" 16 Define atoms without plotting "Y" 17 Finish BALSAC/LATTICE run "," 0 --------------------------------------------------------- __ 110 _________________ Sec. 6.2.1. _____________________________________ 6.2.1. LATTICE OPTION, [L] [L] This option allows you to select the crystal lattice by defining lattice vectors and lattice basis vectors. Several commonly used lattices including all 14 primitive Bravais lattices are implemented internally and can be selected by key code rather than defining lattice and lattice basis vectors. The lattice option menu L reads ========== LATTICE OPTIONS ============================================== Lattice: title of lattice Select: [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [K] sc fcc bcc hcp diamond NaCl CsCl zincblende graphite free lattice Bravais lattice [L] [M] [N] [O] [P] (latc) a= acon fcc (Bravais hkl) bcc (Bravais hkl) hcp (lmnq) diamond (Bravais hkl) NaCl (Bravais hkl) [Q] zincblende (Bravais hkl) [R] graphite (lmnq) [S] free lattice (lmnq) [U]pdate free/Bravais lattice [V]lattice scaling [T]itle {[X]plot} [?,]esc =================================================================== 50 == where the title line gives the title, "title of lattice", of the presently selected lattice, the internal lattice code number, latc, and the global scaling constant (lattice constant), acon. This line does not show if BALSAC/LATTICE was started from scratch and no lattice had been defined so far. Further, with BALSAC started from scratch the plot option "[X]plot" of this menu is not available and will not be shown. The selection of some commonly used lattices is possible from this menu by key code input where > [A] selects a simple cubic (sc) lattice. > [B] indices selects a face centered cubic (fcc) lattice where Miller are defined with respect to the sc lattice (default for surface scientists). > [C] indices selects a body centered cubic (bcc) lattice where Miller are defined with respect to the sc lattice (default for surface scientists). > [D] indices selects a hexagonal close packed (hcp) lattice where Miller are defined with respect to the true reciprocal Bravais lattice. > [E] Miller selects a diamond lattice built of two fcc sublattices where indices are defined with respect to the sc lattice (default for surface scientists). ________________________ Sec. 6.2.1. ______________________________ 111 __ > [F] selects a sodium chloride, NaCl, lattice built of two fcc sublattices where Miller indices are defined with respect to the sc lattice (default for surface scientists). > [G] selects a cesium chloride, CsCl, lattice built of two sc sublattices where Miller indices are defined with respect to the sc lattice (default for surface scientists). > [H] GaAs) selects a cubic Zincblende, ZnS, lattice (to be used also for built of two fcc sublattices where Miller indices are defined with respect to the sc lattice (default for surface scientists). > [I] where selects a graphite lattice built of four hexagonal lattices Miller indices are defined with respect to the true reciprocal Bravais lattice. > [L] indices selects a face centered cubic (fcc) lattice where Miller are defined with respect to the true reciprocal Bravais lattice. > [M] indices selects a body centered cubic (bcc) lattice where Miller are defined with respect to the true reciprocal Bravais lattice. > [N] indices selects a hexagonal close packed (hcp) lattice where Miller are given by the hexagonal 4-index notation. > [O] Miller selects a diamond lattice built of two fcc sublattices where indices are defined with respect to the true reciprocal Bravais lattice. > [P] selects a sodium chloride, NaCl, lattice built of two fcc sublattices where Miller indices are defined with respect to the true reciprocal Bravais lattice. > [Q] GaAs) selects a cubic Zincblende, ZnS, lattice (to be used also for built of two fcc sublattices where Miller indices are defined with respect to the true reciprocal Bravais lattice. > [R] where selects a graphite lattice built of four hexagonal lattices Miller indices are given by the hexagonal 4-index notation. The selection of the above lattice types is confirmed by title of lattice selected, code = latc where "title of lattice" gives the internal lattice name and latc is the respective lattice code number, see below. This is followed by a prompt Global lattice scaling constant a= asking for a global lattice constant a to scale all lattice and lattice basis vectors (a = 1.0 yields no scaling). This completes the lattice definition and BALSAC/LATTICE moves to the Miller index option (main option [M]) if the lattice section is built from scratch or returns to the BALSAC/LATTICE main option menu. __ 112 _________________ Sec. 6.2.1. _____________________________________ > [J] selected from submenu L allows you to define any non-primitive lattice in the most general way where lattice plane directions are denoted by Miller indices with respect to the reciprocal Bravais lattice vectors, see Sec. 6.2.3. After a message free lattice selected, code = 10 the prompt Title of free lattice (A40, "-"=esc) : asks for a title of the lattice given by an alphanumeric string with up to 40 characters (longer names will be truncated). Then the three prompts Lattice vectors : R1 = (x1, y1, z1) : R2 = (x2, y2, z2) : R3 = (x3, y3, z3) : ask for cartesian coordinates (x,y,z) (three numbers) of each lattice vector, R1, R2, R2, and No. of lattice basis vectors (<0=rel, >0=abs, 1=primtv, 0=esc): asks for the number nc of different atoms (described by basis vectors, radii and nuclear charges) of the elementary cell of the lattice. Here nc = 1 > 0 defines a primitive lattice with one atom (hydrogen) placed at r = (0, 0, 0). assumes a non-primitive lattice with nc atoms per unit cell where the following nc prompts Input lattice basis (abs:X,Y,Z,RAD,NUC) : Atom 1 ( X, Y, Z, RAD, NUC) : ... Atom nc ( X, Y, Z, RAD, NUC) : ask, for each atom, for five numbers defining absolute cartesian coordinates (x,y,z) of the lattice basis vector, an atomic radius rad, and a nuclear charge nuc. Atomic radii do not need to be known at this point. If (at least) one of the radii is set to zero all rad values are determined as renormalized covalent radii (according to respective nuclear charges nuc, see Sec. 5.3). The renormalization is performed such that highest ________________________ Sec. 6.2.1. ______________________________ 113 __ packing without overlapping spheres is achieved. The first atom center will serve as origin of a cartesian coordinate system which is used later on to determine any lattice structure data. < 0 assumes a non-primitive lattice with |nc| atoms per unit cell analogous to nc > 0. The following |nc| prompts Input lattice basis (rel:Q1,Q2,Q3,RAD,NUC) : Atom 1 (Q1,Q2,Q3, RAD, NUC) : ... Atom nc (Q1,Q2,Q3, RAD, NUC) : ask, for each atom, for five numbers (lattice basis vector, atomic radius rad, nuclear charge nuc) analogous to nc > 0. However, the lattice basis vectors are defined in multiples of the lattice vectors r = q1 * R1 + q2 * R2 + q3 * R3 rather than by absolute cartesian coordinates (x, y, z). = 0 leaves an existing lattice basis vector set unchanged while building a lattice from scratch repeats the above prompt enforcing lattice basis input. After the lattice basis has been defined BALSAC moves to the lattice update menu LU where the atom basis definition can be further modified, see [U] of submenu L below. > to [S] selected from submenu L is identical to option [J] allowing you define any non-primitive lattice. However, lattice plane directions are denoted by Miller indices using the hexagonal 4-index notation which is confirmed by the lattice code -10 in the message free lattice selected, code = -10 and becomes useful for non-primitive hexagonal lattices, see Sec. 6.2.3. > [K] selected from submenu L allows you to define any of the 14 primitive Bravais lattices which can be updated to include a lattice basis for the most general definition of a non- primitive lattice. Details of the Bravais lattice option are described in Sec. 6.2.1.1. > [U] 6.2.1.2. selected from submenu L allows you to update or redefine a free lattice definition including Bravais lattices selected before. Details of the lattice update option are described in Sec. __ 114 _________________ Sec. 6.2.1. _____________________________________ > [V] from selected from submenu L has no effect if the lattice is built scratch. Otherwise, BALSAC asks Global lattice scaling constant a= for an updated lattice constant A used to rescale the present lattice definition. If A' was the previous lattice constant, all lattice and lattice basis vectors and atom radii are scaled by a factor A/A'. After this BALSAC returns to the BALSAC/LATTICE main option menu. > [T] from selected from submenu L has no effect if the lattice is built scratch. Otherwise, the prompt Title [ ... old title ... ] New (A40,"-"=esc) : shows the present title and asks for a new title (up to 40 characters, longer text will be truncated). If this prompt is answered by the one character title "-" the old title will be kept and BALSAC returns to the BALSAC/LATTICE main option menu. > [X] lattice selected from submenu L (not shown and unavailable if the is built from scratch) plots the lattice section (switching to graphics mode (DOS) or opening a graphics window (Unix)) or lists its atom coordinates depending on the plot/list mode defined in the graphics option, see Sec. 6.2.7. > [,] menu selected from submenu L returns to the BALSAC/LATTICE startup if the lattice section is built from scratch. Otherwise BALSAC returns to the BALSAC/LATTICE main option menu, see Sec. 6.2.0. After a lattice definition is complete BALSAC/LATTICE moves to the Miller index option (main option [M]) if the lattice section is built from scratch or returns to the BALSAC/LATTICE main option menu. In interactive mode, atom sphere radii are constructed as radii of touching spheres and may be modified later, see Sec. 6.2.2. If the lattice option is used with a structure input file values of the atomic radii are always read in. If (at least) one of the atomic radii equals zero a touching spheres geometry is assumed and all radii are recomputed, see also below. For predefined lattices with diatomic bases (NaCl, CsCl, cubic ZnS) the ratios of the radii are taken from Coulson's tables of ionic radii, see Sec. 5.3, 6.2.2. In structure input files code numbers, latc, are used instead of characters to denote lattice types. These code numbers are also shown on the first line of the BALSAC/LATTICE main option menu and of the lattice option menu L. The following table connects option codes used ________________________ Sec. 6.2.1.1. ____________________________ 115 __ interactively in submenu L with lattice code numbers used in structure files. option code option code [A] [E] [I] [M] [Q] 1 5 9 -3 -8 [B] [F] [J] [N] [R] 2 6 10 -4 -9 option [C] [G] [K] [O] [S] code 3 7 10 -5 -10 option [D] [H] [L] [P] code 4 8 -2 -6 NOTE that in structure output files generated by BALSAC/LATTICE all structural parameters (lattice vectors, lattice basis vectors, radii) are rescaled to a global lattice scaling constant A = 1.0 and A is given separately in the first part of the file. 6.2.1.1. SELECTING BRAVAIS LATTICES Option [K] selected from the lattice option menu L, see Sec. 6.2.1, allows you to define any of the 14 primitive Bravais lattices. This lattice can be updated later to include a lattice basis for the most general definition of a non-primitive lattice, see Sec. 6.2.1.2. The Bravais lattice menu LK reads ========== LATTICE OPTIONS =============================================== Select from Bravais lattices : [A] triclinic-P [B] monoclinic-P [C] monoclinic-B [D] rhombic-P [E] rhombic-C [F] rhombic-I [G] rhombic-F [H] tetragonal-P [I] tetragonal-I [J] hexagonal-P [K] trigonal-R [L] cubic-P [M] cubic-I [N] cubic-F [?,]esc ==================================================================== 79 == > [A] lattice, selected from submenu LK confirms a primitive triclinic see Sec. 5.3, and prompts for three lattice constants, a, b, c, by triclinic-P lattice selected, code = 10 Basic lattice constants A,B,C : and for three angles, <(R2,R3), <(R1,R3), <(R1,R2), by Angles <(R2,R3), <(R1,R3), <(R1,R2) : which concludes the lattice definition. __ 116 _________________ Sec. 6.2.1.1. ___________________________________ > [B] lattice, selected from submenu LK confirms a primitive monoclinic see Sec. 5.3, and prompts for three lattice constants, a, b, c, by monoclinic-P lattice selected, Basic lattice constants A,B,C : code = 10 and for one angle, <(R1,R2), by Angle <(R1,R2) : which concludes the lattice definition. > [C] selected from submenu LK confirms a side centered monoclinic lattice, see Sec. 5.3, and prompts for three lattice constants, a, b, c, by monoclinic-B lattice selected, Basic lattice constants A,B,C : code = 10 and for one angle, <(R1,R2), by Angle <(R1,R2) : which concludes the lattice definition. > [D] lattice, selected from submenu LK confirms a primitive orthorhombic see Sec. 5.3, and prompts for three lattice constants, a, b, c, by orthorhombic-P lattice selected, Basic lattice constants A,B,C : code = 10 which concludes the lattice definition. > [E] selected from submenu LK confirms a side centered orthorhombic lattice, see Sec. 5.3, and prompts for three lattice constants, a, b, c, by orthorhombic-C lattice selected, Basic lattice constants A,B,C : code = 10 which concludes the lattice definition. > [F] selected from submenu LK confirms a body centered orthorhombic lattice, see Sec. 5.3, and prompts for three lattice constants, a, b, c, by orthorhombic-I lattice selected, Basic lattice constants A,B,C : which concludes the lattice definition. code = 10 ________________________ Sec. 6.2.1.1. ____________________________ 117 __ > [G] selected from submenu LK confirms a face centered orthorhombic lattice, see Sec. 5.3, and prompts for three lattice constants, a, b, c, by orthorhombic-F lattice selected, Basic lattice constants A,B,C : code = 10 which concludes the lattice definition. > [H] lattice, selected from submenu LK confirms a primitive tetragonal see Sec. 5.3, and prompts for two lattice constants, a, c, by tetragonal-P lattice selected, Basic lattice constants A,C : code = 10 which concludes the lattice definition. > [I] selected from submenu LK confirms a body centered tetragonal lattice, see Sec. 5.3, and prompts for two lattice constants, a, c, by tetragonal-I lattice selected, Basic lattice constants A,C : code = 10 which concludes the lattice definition. > [J] lattice, selected from submenu LK confirms a primitive hexagonal see Sec. 5.3, and prompts for two lattice constants, a, c, by hexagonal-P lattice selected, Basic lattice constants A,C : code = 10 which concludes the lattice definition. > see [K] selected from submenu LK confirms a trigonal rhombic lattice, Sec. 5.3, and prompts for one lattice constant, a, by trigonal-R lattice selected, Basic lattice constants A : code = 10 and for one angle, <(R1,R2), by Angle <(R1,R2) : which concludes the lattice definition. > see [L] selected from submenu LK confirms a primitive cubic lattice, Sec. 5.3, and prompts for one lattice constant, a, by cubic-P lattice selected, code = 10 Basic lattice constants A : which concludes the lattice definition. __ 118 _________________ Sec. 6.2.1.2. ___________________________________ > [M] lattice, selected from submenu LK confirms a body centered cubic see Sec. 5.3, and prompts for one lattice constant, a, by cubic-I lattice selected, code = 10 Basic lattice constants A : which concludes the lattice definition. > [N] lattice, selected from submenu LK confirms a face centered cubic see Sec. 5.3, and prompts for one lattice constant, a, by cubic-I lattice selected, code = 10 Basic lattice constants A : which concludes the lattice definition. > if [,] selected from submenu LK returns to the lattice option menu L the lattice is built from scratch or else moves to the BALSAC/LATTICE main option menu, see Sec. 6.2.0. The selection of a Bravais lattice is followed by a prompt Global lattice scaling constant a= asking for a global lattice constant a to scale all lattice vectors (a = 1.0 yields no scaling). This completes the lattice definition and BALSAC/LATTICE moves to the Miller index option (main option [M]) if the lattice section is built from scratch or returns to the BALSAC/LATTICE main option menu, see Sec. 6.2.0. 6.2.1.2. UPDATING FREE LATTICES Option [U] selected from the lattice option menu L, see Sec. 6.2.1, allows you to update or redefine a free lattice definition (lattice code = +/10) including Bravais lattices, see Sec. 6.2.1.1, selected before. The lattice update submenu LU reads =========================================================== Update free lattice: [L]atvec [B]asvec [?,]esc ===================================================== 62 == and allows you to modify both the lattice (periodicity) vectors and the lattice basis. ________________________ Sec. 6.2.1.2. ____________________________ 119 __ > [L] selected from submenu LU shows the present lattice vectors ============================================================ Lattice vectors (Xyz) : x1 y1 z1 x2 y2 z2 x3 y3 z3 Update lattice vectors: [L]update [?,]esc ====================================================== 63 == from which one can redefine all three lattice vectors R1, R2, R3 analogous to the input in the free lattice definition [J] of submenu L (select [L]). Selecting [,] returns to submenu LU. > the [B] selected from submenu LU lists definitions of all nc atoms in unit cell of the present lattice by their lattice basis vectors (x,y,z), atomic radii rad, and nuclear charges nuc togeter with the lattice basis update menu LUB reading ======================================================================== nc atom(s) : Xyz,R,Id( 1)= ... Xyz,R,Id( nc)= X Y Z , RAD , NUC xb1 yb1 zb1 , rad1 , nuc1 xbnc ybnc zbnc , radnc , nucnc Update lattice basis: [N]ew [A]dd [D]el [M]od [S]ymm [L]ist [?,]esc ================================================================== 64 == where this atom listing has to be initiated for nc > 10 by answering the prompt nc atoms [L]ist [?,]esc with [L]. (Selecting [,] in this menu will show submenu LUB without the atom listing.) > the > [N] selected from submenu LUB redefines the full set of atoms inside the elementary cell repeating the input sequence of lattice basis described above (see option [J] of submenu L) after which BALSAC returns to submenu LU. > > lattice [A] selected from submenu LUB adds an atom to the present basis definition. The prompt Add basis atom : [R]el [A]bs [?,]esc allows you to define the position of the additional atom in absolute cartesian coordinates (select [A]) where Atom nc+1 ( X, Y, Z, RAD, NUC) : asks for cartesian coordinates (x,y,z), an atomic radius rad, __ 120 _________________ Sec. 6.2.1.2. ___________________________________ and a nuclear charge nuc. Alternatively, the coordinates of the additional atom may be given in multiples of the lattice vectors (select [R]), see above, where Atom nc+1 (Q1,Q2,Q3, RAD, NUC) : asks for the relative coordinates (q1,q2,q3), the atomic radius rad, and the nuclear charge nuc. After successful input BALSAC shows the present basis vector definition returns to submenu LUB. > > [D] selected from submenu LUB deletes an atom from the present lattice basis definition. The prompt Delete basis atom no. (0=esc) : asks for an appropriate atom number nd from the listing of submenu LUB (a dummy number "0" will cancel the delete process). Then a confirm prompt [C]onfirm delete [?,]esc deletes atom nd (select [C]) or cancels deleting (select [,]) after which BALSAC shows the present basis vector set definition and returns to submenu LUB. > > [M] definition selected from submenu LUB modifies an existing atom of the lattice basis. The prompt Modify basis atom no. (0=esc) : asks for an appropriate atom number m from the listing of submenu LUB (a dummy number "0" will cancel the modification process) after which the present definition of atom nm shows as Xyz,R,Id( m)= and the prompt xbm ybm zbm , radm , nucm Modify coordinates : [R]el [A]bs [?,]esc allows you to redefine atom m in exactly the same way as explained for the addition of an atom to the basis set, see option [A] of submenu LUB. ________________________ Sec. 6.2.1.2. ____________________________ 121 __ > > [S] selected from submenu LUB allows you to impose point symmetries on the lattice basis set. The basis will be completed by adding equivalent atoms (if needed) to achieve the required symmetry. The basis symmetry menu LUBS reads ==================================================================== Basis symmetry: [C]axis [M]irplane [I]nvers [D]maxc(dc) [?,]esc ============================================================== 82 == allowing to define an n-fold rotation axis, a mirror plane, and inversion symmetry. The value dc determines the the present coincidence distance which is the maximum distance between two atoms to be considered to coincide in the above point symmetry transformations. Note that new atoms generated from the symmetry transformation will be translated such that they lie inside the parallel epipeth spanned by the lattice vectors. However, the symmetry operation will not be applied iteratively to new atoms. > an > > [C] selected from submenu LUBS defines a rotation axis by origin (x,y,z) (on the axis), a direction vector (xd,yd,zd), and an order N. The prompt Rotation origin NC,X,Y,Z ("-1,0,0,0"=esc) : asks for four numbers defining the rotation origin given either in absolute coordinates (0,x,y,z) or denoting the center of an existing basis atom na by (na,0,0,0). Dummy input "-1,0,0,0" returns immediately to submenu LUBS. Then the prompt Rotation axis, order (X,Y,Z, N) : asks for four numbers defining the direction vector components (xd,yd,zd) and the order N of the rotation axis. The direction vector does not need to be normalized. Further, note that BALSAC allows any local N-fold rotation axis while only orders N= 2, 3, 4, 6 are compatible with translational symmetry. > an > > [M] selected from submenu LUBS defines a mirror plane by origin (x,y,z) (on the plane) and a plane normal vector (xn,yn,zn). The prompt Mirror origin NC,X,Y,Z ("-1,0,0,0"=esc) : asks for four numbers defining the mirror plane origin given either in absolute coordinates (0,x,y,z) or denoting the center of an existing basis atom na by __ 122 _________________ Sec. 6.2.1.2. ___________________________________ (na,0,0,0). Dummy input "-1,0,0,0" returns immediately to submenu LUBS. Then the prompt Mirror plane normal (X,Y,Z) : asks for three numbers defining the vector components (xn,yn,zn) of the plane normal. The normal vector does not need to be normalized. > > center by > [I] selected from submenu LUBS defines an inversion its origin (x,y,z). The prompt Inversion origin NC,X,Y,Z ("-1,0,0,0"=esc) : asks for four numbers defining the inversion origin given either in absolute coordinates (0,x,y,z) or denoting the center of an existing basis atom na by (na,0,0,0). Dummy input "-1,0,0,0" returns immediately to submenu LUBS. After successful definition of the symmetry the respective operation is applied to all basis atoms and new atoms are added to the set if needed which is concluded by Symmetry checked, no new atoms if the symmetry operation did not result in new atoms or by Symmetry operation yields nn new atom(s) if nn new atoms have been generated by the symmetry operation and BALSAC returns to the lattice basis update menu LUB. If a new atom generated by the symmetry operation coincides with an existing basis atom (within the limit given by the coincidence distance, see below) the new atom will not be included in the basis. For coinciding atoms of different nuclear charge a warning WARNING: symmetry copy of XX atom (n1) and YY atom (n2) coincide no or partial symmetry applied to atom no. n1 will be issued where n1 denotes the number of the basis atom (XX its element name) where the symmetry operation was applied and n2 is the number of the existing basis atom (YY its element name). ________________________ Sec. 6.2.2. ______________________________ 123 __ > > > [D] selected from submenu LUBS resets the coincidence distance which is the maximum distance between two atoms to be considered to coincide in the above symmetry transformations. The prompt Atom coincidence distance ( dc) : shows the present value of the coincidence distance (default = 0.01) and asks for a new value after which BALSAC returns to submenu LUBS. > > basis > [,] selected from submenu LUBS returns to the lattice update submenu LUB. > > [L] selected from submenu LUB lists the complete lattice basis definition as shown above and returns to the lattice basis update submenu LUB. > > [,] selected from submenu LUB returns to the lattice update submenu LU. > [,] option selected from submenu LU returns to the BALSAC/LATTICE main menu, see Sec. 6.2.0, or if the lattice is built from scratch asks for the global lattice scaling constant, see below. 6.2.2. RADII AND NUCLEAR CHARGE OPTION, [R] [R] This option allows you to redefine or scale atom radii and nuclear charges of all atoms (assigned to lattice basis vectors). Nuclear charges together with atom radii are used by BALSAC to identify atoms. Since BALSAC can display atoms of equal charge with the same color reassigning charges to different atoms becomes useful if structural details in complex lattice sections need to be visualized. This is also true for modifications of atomic radii. If a lattice structure is built from scratch default values are used for both radii (defined by touching spheres) and nuclear charges (from an internal table) unless structural information is read in from an input file and meaningful (non-zero) values are provided for all radii and charges. Default values of atomic radii and nuclear charges are given in __ 124 _________________ Sec. 6.2.2. _____________________________________ Sec. 5.3. The radii option menu R of the BALSAC/LATTICE session reads ========== RADII/CHARGES OPTIONS ======================================== n ( nr) different atoms Pntr Nuc Rad | Pntr Nuc 1) np nc/el rad | 2) ... Rad | | Pntr Nuc Rad Modify radii : [A]ll [Z]select [S]elect [R]escale charges: a[L]l s[E]lect [T]abl [I]nfo [D]ispla [X]plot [?,]esc =================================================================== 56 == where for each of the n inequivalent atoms of the lattice basis (nr > n atoms if restructuring is included, see Sec. 6.2.5) the respective atom pointer np (labeling atoms of the same nuclear charge), its nuclear charge nuc and element symbol el, and its radius rad is listed. > [A] selected from submenu R allows you to change all atom radii globally. The prompt ============================================================== Change all nr radii: [A]bs [R]el [?,]esc ======================================================== 57 == gives the total number nr of radii defined in the lattice section and option > > [A] asks Input nr radii ("/"=esc) : for nr numbers defining radii (absolute values) of all inequivalent lattice atoms. The order of the radii is identical to that of the atoms shown in the list of menu R. If the option was selected erroneously it can be cancelled by the dummy input "/". After complete input BALSAC returns to submenu R. > > [R] asks Global stretch factor Q : for a value of Q > 0.0 to scale all atom radii of the lattice after which BALSAC returns to submenu R. > > [,] returns immediately to submenu R. ________________________ Sec. 6.2.2. ______________________________ 125 __ > of [Z] selected from submenu R allows you to change radii of all atoms a given nuclear (element) charge. The prompt Change radii of selected elements Nuc (0=esc) : asks for the nuclear charge nuc defining the element. If a charge nuc appearing in the list of menu R is chosen the prompt ============================================================== nel atoms(s) R= rmin/rmax: change radii [A]bs [R]el [?,]esc ======================================================== 58 == gives the number nel of different basis atoms of charge nuc and lists the smallest and largest radii assigned to them and option > > [A] asks Radius : for a new radius to be assigned to all atoms of charge nuc after which BALSAC returns to submenu R. > > [R] asks Factor : asks for a factor q to scale the radii assigned to all atoms of charge nuc after which BALSAC returns to submenu R. > > > [S] [,] returns immediately to submenu R. selected from submenu R allows you to change radii of selected basis atoms. The prompt Change radius of selected atom type N (1- nr, 0=esc) : asks for the number n of any of the nr basis atoms where the numbering is given in the list of menu R. For an n value appearing in the list the prompt ============================================= Xyz,R,Id( n)= x y z , rad , nuc Change radius [A]bs [R]el [?,]esc ======================================= 59 == lists coordinates (x,y,z), the atom radius rad, and the nuclear charge / element name of the respective atom and option __ 126 _________________ Sec. 6.2.2. _____________________________________ > > [A] asks Radius : for a new radius to be assigned to atom n after which BALSAC returns to submenu R. > > [R] asks Factor : asks for a factor q to scale the radius assigned to atom n after which BALSAC returns to submenu R. > > > [R] [,] returns immediately to submenu R. selected from submenu R rescales all atom radii of the lattice section using a scaling factor such that highest packing without overlapping atom spheres is achieved. If (at least) one of the original radii was chosen to be zero then internal radii (derived from atom radii according to respective nuclear charges, see Sec. 5.3) will be used. Rescaling may take some time during which the message ... Rescaling ... shows. After all radii are rescaled BALSAC shows Radii rescaled: factor = qr ** Press [C], L-click to continue ** the value of the computed rescaling factor qr. For qr < 1.D-5 no renormalization is performed which is indicated by "NO rescaling" added to the above line. This may occur if duplicate atoms or atoms very close to each other have been generated for example by symmetry operations, see Sec. 6.2.1.2. Coinciding atoms can be identified in the lattice basis vector listing of the analysis option, see Sec. 6.2.14. Selecting [C] in the above prompt (or L-click (DOS)) returns to submenu R. > [L] selected from submenu R allows you to assign new nuclear charges to all atoms of the lattice basis in one step (where atom radii and positions are kept fixed). The prompt Input nr nuclear charges ("/"=esc) : asks for nr nuclear charges to be assigned to each of the inequivalent atoms. The order of the charges is identical to that ________________________ Sec. 6.2.2. ______________________________ 127 __ of the atoms shown in the list of menu R. If the option was selected erroneously it can be cancelled by the dummy input "/". After complete input BALSAC returns to submenu R. > of [E] selected from submenu R allows you to change the nuclear charge selected basis atoms. The prompt Change charge of selected atom N (1- nr, 0=esc) : asks for the number n of any of the nr basis atoms where the numbering is given in the list of menu R. For an n value appearing in the list the prompt Xyz,R,Id( n)= x y z , rad , nuc New charge : lists coordinates (x,y,z), the atom radius rad, and the nuclear charge / element name of the respective atom and asks for a new nuclear charge value. After this BALSAC returns to submenu R. > [T] selected from submenu R shows a table of all elements and atom radii defined internally. The default radii are close to covalent radii (given in Angstrom) except for rare gas atoms where Van der Waals radii were chosen, see Sec. 5.3. The table reads Element/radii table: H( 1): .4350 .9750 C( 6): .6550 Ne(10):1.6000 Na(11):1.8579 P(15):1.0600 S(16):1.0200 Ca(20):1.9758 Sc(21):1.6545 Mn(25):1.3500 Fe(26):1.2411 Zn(30):1.3325 Ga(31):1.3501 Br(35):1.1400 Kr(36):2.0000 Zr(40):1.6156 He( 2):1.4000 Li( 3):1.5199 Be( 4):1.1430 N( 7): .7500 O( 8): .7300 F( 9): .7200 Mg(12):1.6047 Al(13):1.4318 Si(14):1.1758 Cl(17): .9900 Ar(18):1.9000 K(19):2.2620 Ti(22):1.4755 V(23):1.3090 Cr(24):1.2490 Co(27):1.2535 Ni(28):1.2460 Cu(29):1.2780 Ge(32):1.2248 As(33):1.2000 Se(34):1.1600 Rb(37):2.4700 Sr(38):2.1513 Y(39):1.8237 B( 5): Nb(41):1.4318 Rh(45):1.3450 Pd(46):1.3755 Sn(50):1.5375 Sb(51):1.4000 Cs(55):2.6325 Ba(56):2.1705 Nd(60):1.8295 Pm(61):1.8090 Tb(65):1.8005 Dy(66):1.7951 Yb(70):1.9396 Lu(71):1.7515 Re(75):1.3800 Os(76):1.3676 Hg(80):1.5025 Tl(81):1.7283 At(85):1.4500 Rn(86):1.4300 Th(90):1.7975 Pa(91):1.6086 Am(95):1.6000 Cm(96):1.6000 Mo(42):1.3626 Tc(43):1.3675 Ru(44):1.3529 Ag(47):1.4447 Cd(48):1.4894 In(49):1.6662 Te(52):1.3600 I(53):1.3300 Xe(54):2.2000 La(57):1.8725 Ce(58):1.8243 Pr(59):1.8362 Sm(62):1.8040 Eu(63):1.9840 Gd(64):1.8180 Ho(67):1.7886 Er(68):1.7794 Tm(69):1.7687 Hf(72):1.5973 Ta(73):1.4280 W(74):1.3705 Ir(77):1.3573 Pt(78):1.3873 Au(79):1.4419 Pb(82):1.7501 Bi(83):1.4600 Po(84):1.4600 Fr(87):2.5000 Ra(88):2.1400 Ac(89):1.8775 U(92):1.5683 Np(93):1.6000 Pu(94):1.6000 Bk(97):1.6000 Cf(98):1.6000 Es(99):1.6000 ** Press [C], L-click to continue ** and selecting [C] (or L-click (DOS)) returns to submenu R. __ 128 _________________ Sec. 6.2.3. _____________________________________ > [I] selected from submenu R lists all relevant data of the present lattice definition identical to the basic analysis listing, option [B] of the analysis menu, see Sec. 6.2.14. Selecting [C] (or L-click (DOS)) returns to submenu R. > [D] selected from submenu R shows up to 10 lines of the most recent output generated by the graphic analysis option, see Sec. 6.2.14.2, by ============ Latest Graphics Output ================== 1: Xyz,R,Id( n1)= x y z rad nuc ... ====================================================== This allows you to look up and use numerical output from the analysis for input within submenu R. After the listing BALSAC returns to submenu R. > [X] selected from submenu R plots the lattice section (switching to graphics mode (DOS) or opening a graphics window (Unix)) or lists its atom coordinates depending on the plot/list mode defined in the graphics option, see Sec. 6.2.7. > [,] option selected from submenu R returns to the BALSAC/LATTICE main menu, see Sec. 6.2.0. 6.2.3. [M] MILLER INDEX OPTION, [M] This option allows you to choose Miller indices defining net plane normal vectors which determine the direction of net plane stacking used to build the lattice section. Here Miller indices can be given in different forms depending on the lattice type, see below. If BALSAC/LATTICE is started from scratch in an interactive session (without a structure input file) this option shows an explanatory text ========== MILLER INDEX OPTION ==================================== Define Miller indices for directions of net plane stacking to build the lattice section. Simple cubic, Bravais, and 4-index notation are available depending on the lattice type. Miller indices (H K L / 0 0 0 ) : =================================================================== asking for Miller indices given as integer triples or ________________________ Sec. 6.2.3. ______________________________ 129 __ ========== MILLER INDEX OPTION ==================================== Define Miller indices for directions of net plane stacking to build the lattice section. Simple cubic, Bravais, and 4-index notation are available depending on the lattice type. Miller indices (L M N Q / 0 0 0 0 ) : =================================================================== for Miller indices given as integer quadruples in hexagonal lattices where 4-index notation is used depending on the type of lattice chosen in the previous lattice option, see below and Sec. 6.2.1. After correct input BALSAC moves to the section option, see Sec. 6.2.3. Selecting [M] from the main option menu of BALSAC/LATTICE shows the prompt ========== MILLER INDEX OPTION ==================================== Miller indices (H K L / hold kold lold ) : =================================================================== asking for three (integer) numbers h, k, l to define new Miller indices where hold, kold, lold are the present values. The indices are defined with respect to - simple cubic reciprocal lattice vectors for cubic lattices chosen by lattice type options [A], [B], [C], [E], [F], [G], [H], see Sec. 6.2.1. - Bravais reciprocal lattice vectors for cubic lattices chosen by lattice type options [L], [M], [O], [P], [Q], see Sec. 6.2.1. - Bravais reciprocal lattice vectors for all other lattice types. Note that Miller index input will be different for lattice type options [N], [R], [S], see below and Sec. 6.2.1. For hexagonal lattices using 4-index notation of Miller indices (lattice type options [N], [R], [S]) the above prompt is replaced by ========== MILLER INDEX OPTION ==================================== Miller indices (L M N Q / lold mold nold qold ) : =================================================================== asking for four (integer) numbers to define new Miller indices where lold, mold, nold, qold are the present values. The indices l, m, n, q are connected with the standard Bravais lattice Miller indices h, k, l by ( l, m, n, q ) = ( h, k-h, -k, l ) . The 4-index input is checked for consistency ( l+m+n = 0 ). In case of __ 130 _________________ Sec. 6.2.3. _____________________________________ error a warning WARNING: indices inconsistent ( l m' n q ) used instead ** Press [C], L-click to continue ** is issued and revised indices where m' = -(l+n) (shown in the warning) will be used for input. Note that Miller indices used in internal computations are always determined from indices l, n, q only. After Miller indices have been given BALSAC/LATTICE main option menu. For (l,m,n,q = 0,0,0,0) the index prompt previous Miller index values and returning to menu. BALSAC returns to the dummy input h,k,l = 0,0,0 is cancelled keeping the the BALSAC/LATTICE main option Note that the above definition of the 4-index notation refers to a strict definition of reciprocal lattice vectors by vector products of R1, R2, R3 where G1, G2 form an angle of 120 degrees (R1, R2 form an angle of 60 degrees), see Sec. 5.3. An alternative description of the hexagonal lattice starts from lattice vectors R1', R2', R3' where R1', R2' form an angle of 120 degrees and as a consequence G1' and G2' form an angle of 60 degrees. This corresponds in effect to a transformation G1' = G1 + G2 G2' = G2 G3' = G3 and lattice planes (h k l) would be expressed by (h' k' l') with h'= h k'= k - h l' = l As a consequence, the 4-index notation ( L', M', N', Q' ) would read ( L', M', N', Q' ) = (h', k', -h'-k', l') which is identical to definitions used in a number of surface science papers and books (cp. "Low-Energy Electron Diffraction" by Van Hove et al. as referenced below). However, in this program we use the former definition for internal consistency of BALSAC. For cubic lattices an internal transformation is used to connect between Bravais (fcc or bcc) and simple cubic (sc) Miller indices where a) (h,k,l) <--> (h',k',l') sc 1.0 -1.0 1.0 1.0 1.0 -1.0 fcc h' k' l' = -1.0 1.0 1.0 x h k l h k l = 0.0 0.5 0.5 0.5 0.0 0.5 0.5 0.5 0.0 x h' k' l' ________________________ Sec. 6.2.4. ______________________________ 131 __ b) (h,k,l) <--> bcc h' k' = l' 0.0 1.0 1.0 (h',k',l') sc 1.0 0.0 1.0 1.0 1.0 0.0 x h k l h k l = -0.5 0.5 0.5 0.5 -0.5 0.5 0.5 0.5 -0.5 x h' k' l' If for given simple cubic (h',k',l') indices the fcc or bcc indices (h,k,l) are non-integer they will be multiplied by 2 to yield integer values. 6.2.4. [S] SECTION OPTION, [S] This option allows you to choose the size of a lattice section. If BALSAC/LATTICE is started from scratch in an interactive session (without a structure input file) this option shows an explanatory text ========== SECTION OPTIONS ======================================== Select the size of a rectangular lattice block to be displayed. The block is defined by layers of N1 x N2 atoms where N3 layers are stacked. NINIT sets the index of the initial plane ( bottom of block ) for non-primitive lattices ( NINIT = 1 for primitive lattices ). Section N1,N2,N3,NINIT : =================================================================== asking for four integers n1, n2, n3, ninit describing the section size and initial layer. In BALSAC lattice sections contain all atoms within a rectangular block with a base area of length n1*|R1'| and width n2*|R2'|*sin(R2',R2') and a height corresponding to n3 layers. Here (R1', R2', R3') stands for the (hkl) surface adapted lattice vector set, see Sec. 5.1. (For additional spherical constraints see below.) The stacking direction of the lattice planes is along the normal vector defined by Miller indices, see Sec. 6.2.3. Further, the index ninit gives the number of the starting layer used in the stacking procedure. This is useful only for non-primitive lattices where neq > 1 inequivalent surface termination planes exist and where different ninit values can be used to show the different terminations. Note that ninit will always be taken modulo neq (see lattice plane option output). After correct input BALSAC moves to the view option, see Sec. 6.2.6. __ 132 _________________ Sec. 6.2.4. _____________________________________ Selecting [S] from the main option menu of BALSAC/LATTICE shows the section menu S ========== SECTION OPTIONS ======================================== [B]lock : [I]nitl : [S]phere: N1,N2,N3= n1 n2 n3 Lx,Ly,Lz= lx ly lz NINIT(1 - neq)= ninit (X,Y,Z)= ( xsph ysph zsph ) Rmin,Rmax= rmin rmax [X]plot [?,]esc ============================================================= 60 == where n1, n2, n3 give the present lattice section size in multiples of (projected) lattice vectors, see above, and lx, ly, lz are the actual lengths of the rectangular block. The second line of the menu, starting with "[S]phere: ...", shows only for non-primitive lattices if neq > 1 translationally inequivalent lattice planes exist. Here ninit defines the number of the lattice plane used as the starting layer in the stacking procedure. Respective net plane numbers can be obtained from the net plane adapted lattice listing of the text analysis option (option [M] of the text analysis menu), see Sec. 6.2.14. The third line of the menu, starting with "[S]phere: ...", and the following line indicate an additional spherical shell constraint which influences the shape of the lattice section. Here (xsph, ysph, zsph) defines the center (in absolute cartesian coordinates) of a spherical shell with inner/outer radius rmin/rmax and only atoms of the rectangular lattice block which are inside the shell will be considered for the lattice section, see below. If no spherical shell constraint is defined the above lines will be replaced by [S]phere: undefined Note that an existing spherical shell constraint is also indicated in the BALSAC/LATTICE main option menu by a line sph = xsph ysph zsph rmin rmax after the line starting with "[S]ection ...", see Sec. 6.2.0. > [B] selected from submenu S allows you to change the size of the rectangular lattice section. In BALSAC lattice sections contain all atoms within a rectangular block with a base area of length n1*|R1'| and width n2*|R2'|*sin(R2',R2') and a height corresponding to n3 layers. Here (R1', R2', R3') stands for the (hkl) surface adapted lattice vector set, see Sec. 5.1. The prompt Block size N1,N2,N3 ( n1old n2old n3old ) : asks for three integers n1, n2, n3 determining the section size where the previously defined values are shown as n1old, n2old, n3old. After meaningful input BALSAC returns to submenu S. ________________________ Sec. 6.2.4. ______________________________ 133 __ If the section size (number of atoms) defined by N = n1*n2*n3 exceeds the internal maximum namax (=2001 for DOS, =8000 for Unix systems) no warning will be given at this point. However, a warning WARNING: No. of atoms ( N ) exceeds internal maximum ( namax ) Plot will be incomplete will be issued whenever plotting/listing of the lattice section is initiated and the plot may be truncated. The warning can be ignored if layer-by-layer display mode is used and n1*n2 < nmax or if a spherical shell constrained restricts the total number of section atoms below nmax. > if [I] can be selected from submenu S only for non-primitive lattices neq > 1 translationally inequivalent lattice planes exist. Here the option allows you to redefine the number ninit of the lattice plane used as the starting layer in the stacking procedure. This is particularly useful if different surface termination planes of non-primitive lattices are to be displayed. The prompt Initial plane NINIT ( initold / 1 - neq) : asks for a new lattice plane number 1<= init <= neq where initold is the previously defined value. Respective net plane numbers can be obtained from the net plane adapted lattice listing of the text analysis option (option [M] of the text analysis menu), see Sec. 6.2.14. After meaningful input BALSAC returns to submenu S. > [S] remove a selected from submenu S allows you to define, redefine, or spherical shell constraint to modify the shape of a lattice section. Here (xsph, ysph, zsph) is the center of a spherical shell with inner/outer radius rmin/rmax and only atoms of the rectangular lattice block which are inside the shell will be considered for the lattice section. If no spherical shell constraint is defined the prompt Sphere NC,X,Y,Z, RMIN,RMAX ("-1,5*0"=esc) : asks for six numbers defining the constraint where the first four numbers refer to the shell center given either in absolute cartesian coordinates (0,xsph,ysph,zsph) or denoting the center of an existing atom na by (na,0,0,0). The last two numbers set the inner and outer radius, rmin and rmax, of the shell. After meaningful input BALSAC returns to submenu S. Dummy input "1,5*0" returns to submenu S without a shell definition. __ 134 _________________ Sec. 6.2.4. _____________________________________ If a spherical shell constraint is already defined as indicated in menu S above the shell constraint menu SS shows as ============================================================== [A]ll [C]enter [R]adii [E]rase a[N]alyze [D]ispla [?,]esc ======================================================== 61 == allowing you to redefine or remove the constraint. > > scratch [A] selected from submenu SS defines a new constraint from overriding any previous definition. (This option is identical to that used for the initial constraint definition explained above.) The prompt Sphere NC,X,Y,Z, RMIN,RMAX ("-1,5*0"=esc) : asks for six numbers where the first four numbers refer to the shell center given either in absolute cartesian coordinates (0,xsph,ysph,zsph) or denoting the center of an existing atom na by (na,0,0,0). The last two numbers set the inner and outer radii, rmin and rmax, of the shell. After meaningful input BALSAC returns to submenu S. Dummy input "-1,5*0" returns to submenu S with the previous shell definition left unchanged. > > [C] selected from submenu SS redefines the shell center of an existing constraint. The prompt Sphere center NC,X,Y,Z ("-1,3*0"=esc) : asks for four numbers defining the new shell center given either in absolute cartesian coordinates (0,xsph,ysph,zsph) or denoting the center of an existing atom na by (na,0,0,0). After meaningful input BALSAC returns to submenu S. Dummy input "-1,3*0" returns to submenu S with the previous shell definition left unchanged. > > shell [R] selected from submenu SS redefines the inner and outer radii of an existing constraint. The prompt Min/max radii RMIN,RMAX ("0,0"=esc) : asks for two numbers defining the new inner and outer radii, rmin and rmax, of the shell with rmax > rmin > 0. After meaningful input BALSAC returns to submenu S. Dummy input "0,0" returns to submenu S with the previous shell definition left unchanged. > > [E] selected from submenu SS erases an existing constraint and BALSAC returns to submenu S. The missing constraint will be indicated by a line "[S]phere: see above. undefined" in submenu S, ________________________ Sec. 6.2.4. ______________________________ 135 __ > and > [N] selected from submenu SS analyzes an existing constraint shows the result by Boundary analysis : antext Xrange: sphere ( xmin , xmax) block ( lxmin , lxmax Yrange: ( ymin , ymax) ( lymin , lymax Zrange: ( zmin , zmax ) ( lzmin , lzmax ) ) ) ** Press [C], L-click to continue ** where the cartesian intervals (xmin, xmax), (ymin, ymax), (zmin, zmax) give the cube enclosing the spherical shell and (lxmin, lxmax), (lymin, lymax), (lzmin, lzmax) describe the coordinate range of the rectangular block. The analysis text antext reads Sphere inside block if the spherical shell lies inside the rectangular lattice block leading to an overall spherically shaped lattice section or Sphere (partly) outside block if the spherical shell intersects the surface of rectangular lattice block leading to a spherical section with planar pieces cut off. Note that if lies completely outside the rectangular block no the lattice the shell atoms will be generated. This can be checked by comparing the cartesian intervals shown above. After the analysis output BALSAC returns to submenu S. > > [D] selected from submenu SS shows up to 10 lines of the most recent output generated by the graphic analysis option, see Sec. 6.2.14.2, by ============ Latest Graphics Output ================== 1: Xyz,R,Id( n1)= ... x y z rad nuc ====================================================== after which BALSAC returns to submenu SS. This allows you to look up and use numerical output from the analysis for input within submenu SS. > > [,] selected from submenu SS returns to the section menu S. __ 136 _________________ Sec. 6.2.5. _____________________________________ > [X] selected from submenu S plots the lattice section (switching to graphics mode (DOS) or opening a graphics window (Unix)) or lists its atom coordinates depending on the plot/list mode defined in the graphics option, see Sec. 6.2.7. > [,] option selected from submenu S returns to the BALSAC/LATTICE main menu, see Sec. 6.2.0. 6.2.5. LAYER RESTRUCTURE OPTION, [C] [C] This option allows you to restructure any set of layers of the lattice section. It can thus be used to model layer reconstruction or relaxation of any level of complexity. In addition, adsorbate or intercalation layers may be included in the structure with this option. Each layer of the unmodified lattice section is characterized by its origin vector o, two periodicity vectors (lattice vectors) R1', R2', and n layer basis vector(s) rt pointing to inequivalent atoms of the layer with appropriate nuclear charges and atom radii. With the present option, a given layer p can be restructured as follows a) origin shift o --> o + s this shifts layer p rigidly with respect to its original position where the shift vector s is 3-dimensional. b) periodicity transformation R1' --> R1'' = m11 * R1' + m12 * R2' --> R2'' = m21 * R1' + m22 * R2' R2' this changes the periodicity of layer p. The original periodicity vectors R1', R2' are transformed linearly using a 2x2 transformation matrix M. For simple cases, M is readily available. As an example we mention a p(a x b)Rx adsorbate layer ( = primitive a x b structure rotated by x degrees) where M is given by a product of two matrices ( a 0 ) ( cos(x)-A12*sin(x) A11*sin(x) ) M = T * R = ( ) * ( ) ( 0 b ) ( -A22*sin(x) cos(x)+A12*sin(x) ) with Aij = Ri'*Rj' / |R1'xR2'| For further details consult respective surface science textbooks as e.g. the one by M. A. Van Hove, W. H. Weinberg and C. M. Chan cited below. c) rebuild layer basis rt, i=1,k --> rt', i=1,k' this redefines all layer basis vectors (and atoms with radii and nuclear charges) of layer p by replacing the k original layer basis vectors (and atom parameters) by k' new ones. The new layer basis ________________________ Sec. 6.2.5. ______________________________ 137 __ vectors are defined as 3-dimensional vectors by rt' = p1 * R1'' + p2 * R2'' + pz * rz where R1'', R2'' form the (transformed) layer periodicity basis and rz is a layer normal vector of length D (D = distance between symmetry equivalent lattice planes) pointing towards layer p+1. Note that with this definition a restructured layer basis does not need to be planar (as opposed to the strict definition of lattice planes). The following table gives examples for any combination of the three schemes. ------------------------------------------------------------------Scheme(s) Application ------------------------------------------------------------------a layer relaxation at surfaces. b simple planar layer reconstructions, e.g. missing row. c layer buckling, commensurate 1x1 adsorbate layers. a + b combined layer reconstruction and relaxation in simple cases. a + c may be described by c only. b + c general relaxation/reconstruction case, incommensurate structures (buckling, warping, etc.), adsorbate layers. a + b + c may be described by b + c. ------------------------------------------------------------------Note that for non-primitive lattices with more than one inequivalent atoms in a layer BALSAC will apply restructure schemes a and b to each inequivalent atom separately starting from atom positions of the unrestructured layer. This may require to rebuild layer bases (scheme c) for non-primitive lattices even in simple restructure cases. Selecting [C] from the main option menu of BALSAC/LATTICE shows in the most general case the restructure entry menu C' which reads ========== RESTRUCTURE OPTION =================================== nrtot layer(s) restructured Layr Basis Relax (S1, S2, S3) (M11,M12,M21,M22) nl nb s1 s2 s3 m22 Xyz,R,Id( 1) : p1 ..... ..... | | p2 Reconstruct m11 m12 pz , m21 rad , nuc Select [C]hange layer [U]ndo restructuring [?,]esc =========================================================== 87 == giving the present definition of all nrtot restructured layers and asks __ 138 _________________ Sec. 6.2.5. _____________________________________ for the index n of a layer which is to be restructured from scratch or whose restructure parameters are to be changed, see option [L] of the restructure menu below. In the above listing of nrtot restructured layers each layer is described by its layer index nl within the range [1,n3] where n3 is the number of layers defined in the section option, see Sec. 6.2.4. Then, the number nb of separate atoms assigned to this layer is shown (see building scheme c) above) where nb = 0 denotes the original basis of the bulk lattice. In addition, vector s = (s1, s2, s3) defines the layer shift vector (see building scheme a) above) given in multiples of the (unmodified) layer periodicity vectors R1', R2' and of a layer normal vector Rn, see below. Further, the 2x2 transformation matrix with components (m11, m12, m21, m22) defines the changed layer periodicity (see building scheme b) above). The following nb lines list the redefined layer basis set where rt' = (p1, p2, pz) are layer basis vectors given in multiples of the (modified) layer periodicity vectors (R1'', R2'') and of the layer normal vector Rn, see below. Further, rad and nuc are respective atom radii and nuclear charges. > [C] selected from submenu C' allows you to set the index of a layer which is to be restructured from scratch or whose restructure parameters are to be changed. The prompt Select restructure layer N (1 - n3, 0=esc) : asks for the index nl of a layer to be restructured where nl must lie inside the range [1,n3] with n3 being the number of layers defined in the section option, see Sec. 6.2.4. Here nl = 1 will define the bottom and nl = n3 the top layer of the section (or vice versa depending on the view angles THETA, ROT, see Sec. 6.2.6.). If a layer number n within the range [1,n3] is given this layer will be added to the list of restructured layers (if needed) and BALSAC moves to the restructure menu C where the layer can be further modified, see below. Dummy input n=0 returns immediately to the BALSAC/LATTICE main option menu keeping all restructuring information. > [U] selected from submenu C' allows you to undo (cancel) restructuring of all or selected layers of the lattice section. The undo menu CU reads ============================================================= nrtot layers restructured: nl1 nl2 ... Undo [S]elected [A]ll [?,]esc ======================================================= 54 == where the indices nl1 ... of all nrtot restructured layers are listed. ________________________ Sec. 6.2.5. ______________________________ 139 __ > > [S] restructuring selected from submenu CU allows you to delete of one layer of the listing shown in the above menu. The prompt Select layer no. (0=esc) : asks you to choose a layer number nd from the list after which the restructuring definition of this layer will be deleted and the layer will be described by its original (bulk) definition. Then BALSAC returns to submenu C' if any restructured layer(s) remain or to the BALSAC/LATTICE main option menu. Dummy input nd = 0 in the prompt will keep all layer definitions unchanged. > > [A] restructuring selected from submenu CU allows you to delete of all layers in one step resulting in the original lattice section without restructuring. This has to be confirmed in the prompt Confirm undo [A]ll [?,]esc where selecting [A] deletes all restructuring and returns to the BALSAC/LATTICE main option menu while selecting [,] keeps all layer definitions unchanged returning to submenu C'. > > [,] selected from submenu CU returns immediately to the restructure menu C'. > [,] selected from submenu C' returns immediately to the BALSAC/LATTICE main option menu. After a layer has been selected for restructuring BALSAC moves to the restructure menu C which reads ========== RESTRUCTURE OPTION ===================================== nrtot layer(s) restructured Layr Basis Relax (S1, S2, S3) (M11,M12,M21,M22) nl nb s1 s2 s3 m22 Xyz,R,Id( 1) : p1 ..... ..... Layer n: [L]ayrdef [R]ebuild | | p2 Reconstruct m11 m12 pz , m21 rad , nuc [B]asis [U]ndo [F]rmlayr [S]hftlayr [X]plot [D]ispla [I]nfo [?,]esc ============================================================= 52 == giving the above listing of all restructured layers and the prompt line starting with "Layer n: [L]ayrdef ..." indicates that layer no. n has been chosen for input of reconstruction definitions. __ 140 _________________ Sec. 6.2.5. _____________________________________ > [L] layer selected from submenu C allows you to reset the index of a which is to be restructured from scratch or whose restructure parameters are to be changed. This option is identical to option [C] of the restructure entry menu C' discussed above and allows you to move between layers and thus to restructure more than one layer inside the restructure option. > [R] selected from submenu C allows you to redefine the origin and 2-dimensional periodicity of layer nl. The rebuild menu CR reads ================================================================= Layer nl abs. shift(XS,YS,ZS)= xs ys rel. shift(S1,S2,S3)= s1 s2 Mat(M11,M12,M21,M22)= m11 m12 m21 zs s3 m22 Select [A]ll [S]hift(abs) s[H]ift(rel) [M]atrix [R]otate [?,]esc =========================================================== 70 == where the layer shift vector s is shown by absolute cartesian coordinates s = (xs, ys, zs) (x-axis along the (unmodified) layer periodicity vector R1', z-axis along layer normal vector) as well as in relative units s = (s1, s2, s3) with s = s1 * R1' + s2 * R2' + s3 * Rn where R1', R2' are the (unmodified) layer periodicity vectors and Rn points along the layer normal vector En and is of length D equal to the distance between equivalent layers of the (unmodified) bulk pointing towards layer nl+1. Further, the 2x2 matrix M = (m11, m12, m21, m22) which transforms the layer periodicity basis of the original layer (R1', R2') into the restructured basis (R1'', R2''), see above, by R1'' = m11 * R1' + m12 * R2' R2'' = m21 * R1' + m22 * R2' is shown with its components. > > layer [A] selected from submenu CR allows you to redefine both the shift and 2-dimensional periodicity of layer nl in one step. The prompt Input rel. shift + (2x2) matrix S1,S2,S3, M11,M12,M21,M22 ("/"=esc) : asks for three numbers, s1, s2, s3, defining the layer shift vector (in relative units) and four numbers, m11, m12, m21, m22, defining the periodicity transformation matrix. Dummy input "/" leaves the present parameter values unchanged. After complete input BALSAC returns to submenu C. ________________________ Sec. 6.2.5. ______________________________ 141 __ > > [S] selected from submenu CR allows you to redefine the layer shift of layer nl by giving absolute cartesian coordinates, see above. The prompt Input abs. shift XS,YS,ZS ("/"=esc) : asks for three numbers, xs, ys, zs, defining the cartesian components of the layer shift vector (x-axis along the (unmodified) layer periodicity vector R1', z-axis along layer normal vector). Dummy input "/" leaves the present shift vector unchanged. After complete input BALSAC returns to submenu CR. > > [H] selected from submenu CR allows you to redefine the layer shift of layer nl in relative units, see above. The prompt Input rel. shift S1,S2,S3 ("/"=esc) : asks for three numbers, s1, s2, s3, defining the shift components with respect to vectors R1', R2', Rn, see above. Dummy input "/" leaves the present shift vector unchanged. After complete input BALSAC returns to submenu CR. > > [M] selected from submenu CR allows you to redefine the periodicity transformation matrix of layer nl, see above. The prompt Input (2x2) matrix M11,M12,M21,M22 ("/"=esc) : asks for four numbers, m11, m12, m21, m22, defining all matrix components. Dummy input "/" leaves the present matrix components unchanged. After complete input BALSAC returns to submenu CR. > > [R] restructured selected from submenu CR allows you to rotate the layer no. nl about its layer plane normal by applying an additional rotation transformation on the present periodicity transformation matrix. The prompt Input matrix rotation angle : asks for an angle (in degrees) defining the rotation after which BALSAC returns to submenu CR. > > [,] selected from submenu CR returns immediately to the restructure menu C. __ 142 _________________ Sec. 6.2.5. _____________________________________ > [B] selected from submenu C allows you to redefine the atom basis assigned to layer nl. The basis menu CB reads ============================================================ Layer nl : rebuilt basis ( nb atom(s)) Xyz,R,Id( 1) : p1 p2 pz , nuc ... Xyz,R,Id( nb) : p1 p2 pz , nuc rad , rad , Basis: [N]ew [M]od [A]dd [D]el [?,]esc ====================================================== 69 == if a separate atom basis was defined before. Here layer basis vectors rt' = (p1, p2, pz) are given for each of the nb atoms assigned to the layer where rt' are described by multiples of the periodicity vectors R1'', R2'' of the restructured layer, and a layer normal vector Rn, see above, as rt' = p1 * R1'' + p2 * R2'' + pz * Rn Further, rad and nuc are respective atom radii and nuclear charges. If layer nl has no separate atoms assigned to it so far (indicated by nb = 0 in the layer listing of the restructure menu C, see above) the listing in the basis menu starts with Layer nl : original basis Xyz,R,Id( 1) : p1 p2 pz , rad , nuc ... giving the atom definition of the original layer without restructuring. > > [N] selected from submenu CB allows you to redefine the layer basis from scratch deleting the previous definition. The prompt New basis size NBSR (0 - 50) : asks for the size nb of the layer basis set to be used for layer nl. (At present, up to 50 layers can be restructured.) Choosing nb = 0 sets the layer basis identical to that of the unrestructured layer and returns to submenu C. For nb > 0, the prompts Input atom(s) 1 - nb : 1) P1,P2,PZ,RAD,NUC : ... nb) P1,P2,PZ,RAD,NUC : ask for nb sets of 5 numbers defining the components of each layer basis vector rt' = (p1 ,p2 ,pz ) together with the respective atom radius rad and nuclear charge nuc. Here vectors rt' are described by multiples of the periodicity ________________________ Sec. 6.2.5. ______________________________ 143 __ vectors R1'', R2'' of the restructured layer, and a layer normal vector Rn, see above. After complete input BALSAC returns to submenu C. Note that layer basis vectors depend on the transformation matrix M. As an example we mention a c(2x2) CO adsorbate layer on top of an fcc(001) surface which may be described by a transformation matrix M = ( 2.0 ( ( 0.0 0.0 ) ) 2.0 ) and a separate layer basis set C: O: C: O: (p1, (p1, (p1, (p1, p2, p2, p2, p2, pz), pz), pz), pz), rad, rad, rad, rad, nuc nuc nuc nuc (nb = 4) = = = = (0.0, (0.0, (0.5, (0.5, 0.0, 0.0, 0.5, 0.5, 2.0), 4.0), 2.0), 4.0), 0.5, 0.7, 0.5, 0.7, 6 8 6 8 while an alternative description would use a transformation matrix M = ( 1.0 ( (-1.0 1.0 ) ) 1.0 ) and a separate layer basis set C: O: > atom > [M] (nb = 2) (p1, p2, pz), rad, nuc = (p1, p2, pz), rad, nuc = (0.0, 0.0, 2.0), 0.5, 6 (0.0, 0.0, 4.0), 0.7, 8 selected from submenu CB allows you to modify a selected definition of the basis of layer nl. If for this layer no separate basis was defined so far (nb = 0) a message WARNING: layer basis not rebuilt ** Press [C], L-click to continue ** reminds you that you can modify basis atoms only after they have been defined (option [N] above) and BALSAC returns to submenu C. For nb > 0 the prompt Modify atom no. (1 - nb) : asks you to choose an atom na of the basis set where na lies inside the range [1,nb] after which the prompt New definition P1,P2,PZ,RAD,NUC : asks for 5 numbers defining the new components of the layer basis vector rt' = (p1 ,p2 ,pz ) together with a new atom radius rad and nuclear charge nuc assigned to atom no. na. Here rt' is described by multiples of the periodicity vectors __ 144 _________________ Sec. 6.2.5. _____________________________________ R1'', R2'' of the restructured layer, and a layer normal vector Rn, see above. After complete input BALSAC returns to submenu CB. > the > [A] selected from submenu CB allows you to add another atom to basis of layer nl. If for this layer no separate basis was defined so far (nb = 0) a message WARNING: layer basis not rebuilt ** Press [C], L-click to continue ** reminds you that you can add basis atoms only after a separate basis has been defined (option [N] above) and BALSAC returns to submenu C. For nb > 0 the prompt Add atom no. nb+1 : P1,P2,PZ,RAD,NUC : asks for 5 numbers defining components of a layer basis vector rt' = (p1 ,p2 ,pz ) together with an atom radius rad and nuclear charge nuc assigned to atom no. nb+1 increasing the basis size by 1. Here rt' is described by multiples of the periodicity vectors R1'', R2'' of the restructured layer, and a layer normal vector Rn, see above. After complete input BALSAC returns to submenu CB. > the > [D] selected from submenu CB allows you to delete an atom of basis of layer nl. If for this layer no separate basis was defined so far (nb = 0) a message WARNING: layer basis not rebuilt ** Press [C], L-click to continue ** reminds you that you can remove basis atoms only after a separate basis has been defined (option [N] above) and BALSAC returns to submenu C. For nb > 0 the prompt Delete atom no. (0, 1 - nb) : asks you to choose an atom na of the basis set where na lies inside the range [1,nb] after which atom no. na is removed from the layer basis set and BALSAC returns to submenu C. > > [,] selected from submenu CB returns immediately to the restructure menu C. > [U] selected from submenu C allows you to undo (cancel) restructuring of all or selected layers of the lattice section. This option is identical to option [U] of the restructure entry menu C' discussed above. ________________________ Sec. 6.2.5. ______________________________ 145 __ > [F] selected from submenu C allows you to copy the complete restructuring definition of a different layer to the present layer nl replacing its previous definition. This makes the construction of layers with identical restructuring very efficient. The prompt Get restructure info from layer N (1 - n3) : asks you to choose a layer number nf from which the restructuring definition will be taken and applied to the present layer no. nl after which BALSAC returns to submenu C. If layer no. nf was not restructured a warning WARNING: layer no. nf not restructured no action will be issued and layer no. nf will keep its present restructuring definition. > of [S] selected from submenu C allows you to shift the layer indices all restructuring definitions by a fixed amount. This shifts the complete restructuring scheme of a lattice section up or down by one or more layers. It becomes particularly useful if the number of layers of a given lattice section is changed and restructuring is to be kept fixed at the bottom or top of the section. The prompt nrtot layers restructured: Shift indices by nl1 nl2 ... dN ( ns1 - ns2 ) : shows the indices nl1 ... of all nrtot restructured layers and asks for a number n within the range [ns1,ns2] used to transfer restructuring information for all layers k to layers k + n after which BALSAC returns to submenu C. > [X] selected from submenu C plots the lattice section (switching to graphics mode (DOS) or opening a graphics window (Unix)) or lists its atom coordinates depending on the plot/list mode defined in the graphics option, see Sec. 6.2.7. > [D] selected from submenu C shows up to 10 lines of the most recent output generated by the graphic analysis option, see Sec. 6.2.14.2, by ============ Latest Graphics Output ================== 1: Xyz,R,Id( n1)= x y z rad nuc ... ====================================================== This allows you to look up and use numerical output from the analysis for input within submenu C. After the listing BALSAC returns to submenu C. __ 146 _________________ Sec. 6.2.6. _____________________________________ > [I] selected from submenu C lists all relevant data of the present lattice definition identical to the Miller adapted basis listing, option [M] of the analysis menu, see Sec. 6.2.14. Selecting [C] (or L-click (DOS)) returns to submenu R. > [,] option selected from submenu C returns to the BALSAC/LATTICE main menu, see Sec. 6.2.0. 6.2.6. [V] and VIEW OPTION, [V] This option allows you to define viewing directions, magnifications, projections used in the graphics output and is, except for option [V], identical to the view option of the BALSAC/CLUSTER session, see Sec. 6.3.4. The view option menu V reads ========== VIEW OPTIONS ====================================== [V]iew(miller) = ( vh, vk, vl / vq ) [T]heta,(dtheta) = theta ( dtheta ) [P]hi,(dphi) = phi ( dphi ) [R]ot,(drot) = rot ( drot ) [M]agnf,(dmagnf) = magnf ( dmagnf ) [Q]persp,(dpersp) = persp ( dpersp ) [F]ocus = nfoc ( xfoc yfoc zfoc ) [S]hift (pixels) = sx , sy [A]ll [W]orkb [D]ispla {[X]plot} [?,]esc ======================================================== 26 == giving values of all view parameters and option keys described below. If BALSAC is started from scratch the plot option "[X]plot" of this menu is not available and will not be shown. BALSAC allows two alternative methods to define viewing directions in the lattice section, (a) by direction indices (vh, vk, vl ) or (vl, vm, vn, vq) described by (real-valued) Miller indices (option [V]), (b) by viewing angles theta, phi with respect to the coordinate system of the lattice planes (options [T], [P]). Direction indices (vh, vk, vl) shown in submenu V are defined with respect to the reciprocal lattice basis (G1, G2, G3) also used to characterize the lattice planes. Here the viewing direction points along vector v with v = vh*G1 + vk*G2 + vl*G3. Thus, integer-valued indices (vh,vk,vl) correspond to Miller indexed crystal directions. For crystal lattices where Miller indices are based on the simple cubic reciprocal lattice, see Sec. 6.2.1, the direction indices (vh,vk,vl) is also defined with respect to the simple cubic ________________________ Sec. 6.2.6. ______________________________ 147 __ reciprocal lattice. Further, if the 4-index notation of lattice plane directions is chosen for hexagonal lattices, see Sec. 6.2.1, the direction indices have to be provided also in 4-index notation as (vl,vm,vn,vq) and the viewing direction points along vector v with v = vl*G1 - vn*G2 + vq*G3. Indices (vh,vk,vl) or (vl,vm,vn,vq) will be always renormalized internally such that the absolute value of the smallest nonvanishing index equals 1. Viewing angles theta, phi shown in submenu V are taken with respect to a cartesian coordinate system of the lattice planes with its origin at the section focus, see below, where the x axis points along R1' (first lattice plane periodicity vector, see Sec. 5.1) and the z axis points along the lattice plane normal vector. In this system, the unit vector of the viewing direction is defined by p = ( sin(theta)*cos(phi), sin(theta)*sin(phi), cos(theta) ) with theta giving the polar and phi giving the azimuthal angle. Since direction indices and viewing angles are equivalent definitions of the viewing direction they will be converted internally before shown in submenu V. The screen rotation angle rot shown in submenu V allows for an additional rotation of the plot about the viewing direction to achieve special effects. The magnification factor magnf shown in submenu V allows for enlargement (magnf > 1) or reduction (magnf < 1) of the actual plot size where magnf = 1 corresponds to plots where the lattice section fills the screen. The perspective parameter persp shown in submenu V defines both the projection mode and the perspective factor. Here persp = 0 or persp > 999 results in a parallel projection of the lattice section in plots while persp > 0 values lead to central projection with persp giving the distance of the viewer from the section focus in multiples of the section radius, see Sec. 5.1. The section focus shown in submenu V is defined by absolute cartesian coordinates (xfoc, yfoc, zfoc) as well as by an index nfoc where for nfoc = 0 the viewing focus coincides with the section center, nfoc > 0 the viewing focus coincides with the center of atom no. nfoc, nfoc = -1 a free definition of the focus by (xfoc, yfoc, zfoc) was given. The plot shift (sx,sy) shown in submenu V defines a rigid shift (in pixel units) of the plot which may be needed to center certain locations of a lattice section visually. __ 148 _________________ Sec. 6.2.6. _____________________________________ In submenu V all viewing angles (theta, phi, rot), the magnification (magnf), and the perspective parameter (persp) are listed together with incremental values (dtheta, dphi, drot, dmagnf, dpersp) which are used with the fast plot option, see below. > [V] selected from submenu V allows you to redefine the viewing direction by direction indices based on reciprocal lattice vectors, see above. The prompt Input Miller view VH,VK,VL : asks for three (real valued) indices vh, vk, vl after which BALSAC returns to submenu V. If 4-index notation of lattice plane directions is chosen in hexagonal lattices, see Sec. 6.2.3, the above prompt is replaced by Input Miller view VL,VM,VN,VQ : requiring four (real valued) indices vl, vm, vn, vq. Dummy input "/" will leave the present definition unchanged in both cases. > of [T] selected from submenu V allows you to redefine the polar angle the viewing direction, see above. The prompt Input polar angle + increment THETA,DTHETA : asks for two numbers defining the polar angle theta and its increment dtheta (used with the fast plot option) after which BALSAC returns to submenu V. Dummy input "/" will leave the present definition unchanged. Angle theta will be rescaled to lie inside the range [0, 180). > [P] angle selected from submenu V allows you to redefine the azimuthal of the viewing direction, see above. The prompt Input azimuthal angle + increment PHI,DPHI : asks for two numbers defining the azimuthal angle phi and its increment dphi (used with the fast plot option) after which BALSAC returns to submenu V. Dummy input "/" will leave the present definition unchanged. Angle phi will be rescaled to lie inside the range (-360, 360). > [R] rotation selected from submenu V allows you to redefine the screen angle, see above. The prompt Input rotation angle + increment ROT,DROT : asks for two numbers defining the screen rotation angle rot and its increment drot (used with the fast plot option) after which BALSAC ________________________ Sec. 6.2.6. ______________________________ 149 __ returns to submenu V. Dummy input "/" will leave the present definition unchanged. Angle rot will be rescaled to lie inside the range (-360, 360). > [M] selected from submenu V allows you to redefine the magnification used to display lattice sections. The prompt Input magnification + increment MAGNF,DMAGNF : asks for two numbers defining the magnification factor magnf and its increment dmagnf (used with the fast plot option) after which BALSAC returns to submenu V. Here magnf > 1 leads to enlargement and magnf < 1 to reduction of the actual plot size while magnf = 1 corresponds to plots where the lattice section fills the screen. Dummy input "/" will leave the present definition unchanged. > [Q] selected from submenu V allows you to redefine the perspective parameter used to display lattice sections in central projection geometry. The prompt Input perspective + increment PERSP,DPERSP : asks for two numbers defining the perspective parameter persp and its increment dpersp (used with the fast plot option) after which BALSAC returns to submenu V. Here persp = 0 or persp > 999 results in a parallel projection of the lattice section in plots while persp > 0 values lead to central projection with persp giving the distance of the viewer from the section focus in multiples of the section radius, see Sec. 5.1. Dummy input "/" will leave the present definition unchanged. > [F] focus selected from submenu V allows you to redefine the section (xfoc, yfoc, zfoc) used to display lattice sections in central projection geometry. The prompt Focus center NC,X,Y,Z ("nc,0,0,0"=atom, "-1,x,y,z"=abs, "0,0,0,0"=avg) : asks for four numbers, nfoc (integer), xfoc, yfoc, zfoc (real), defining the section focus where three different definitions can be used. For nfoc > 0 values xfoc, yfoc, zfoc are ignored and the focus is assumed to coincide with the center of atom no. nfoc, nfoc = 0 nfoc = -1 the focus is assumed to coincide with the section center (center of the rectangular block, see Sec. 6.2.4), the focus is assumed to be given by absolute cartesian coordinates xfoc, yfoc, zfoc of the lattice section. After complete input BALSAC returns to submenu V. Dummy input "/" __ 150 _________________ Sec. 6.2.6. _____________________________________ will leave the present definition unchanged. Note that the graphic analysis option offers a focus definition which is much more intuitive and faster, see Sec. 6.3.12. > the [S] selected from submenu V allows you to set a rigid shift to move plot on the screen. The prompt Input plot shift SHPIXX,SHPIXY : asks for two numbers defining the x and y coordinates sx, sy (in pixel units) of the plot shift after which BALSAC returns to submenu V. Here sx = sy = 0 defines the default where plots of lattice sections will be centered such that the image of the section center coincides with the screen center. Values sx sx sy sy > < > < 0 0 0 0 will will will will shift shift shift shift to the right, to the left, downwards, upwards, Dummy input "/" will leave the present definition unchanged. Note that the graphic analysis option offers a plot shift definition which is much more intuitive and faster, see Sec. 6.3.12. > [A] view selected from submenu V allows you to set the most important parameters (without increments) in one step. The prompt Input THETA,PHI,ROT,MAGNF,PERSP : asks for five numbers defining the polar and azimuthal view angles, theta, phi, the screen rotation angle rot, the magnification factor magnf, and the perspective parameter persp after which BALSAC returns to submenu V. Here incremental values previously defined (or default values) will be used. Dummy input "/" will leave the present definition unchanged. > [W] selected from submenu V moves to the color/shading workbench switching to graphics mode (DOS) or opening a graphics window (Unix). This allows you to change all basic and paint colors as well as ball shading angles in a very intuitive way using the mouse or a graphics pointer. Further details are given in Sec. 6.2.15.2. > [D] selected from submenu V shows up to 10 lines of the most recent output generated by the graphic analysis option, see Sec. 6.2.14.2, by ============ Latest Graphics Output ================== 1: Xyz,R,Id( n1)= x y z rad nuc ... ====================================================== This allows you to look up and use numerical output from the ________________________ Sec. 6.2.7. ______________________________ 151 __ analysis for input within submenu V. After the listing BALSAC returns to submenu V. > [X] section selected from submenu V (if available) plots the lattice (switching to graphics mode (DOS) or opening a graphics window (Unix)) or lists its atom coordinates depending on the plot/list mode defined in the graphics option, see Sec. 6.2.7. > [,] option selected from submenu V returns to the BALSAC/LATTICE main menu, see Sec. 6.2.0. The view parameters theta, phi, rot, magnf, and persp (and other option parameters) can be varied outside the view option menu immediately after a plot has been completed (or interrupted and finished incomplete by selecting [,]). The available option keys are shown in a menu line at the bottom of the screen (graphics/text window (Unix)) and are explained in detail in Sec. 6.2.9. 6.2.7. GRAPHICS OPTION, [G] [G] This option allows you to design the graphical/numerical screen (and PostScript file) output of a lattice section. It lets you choose different details of plots such as display mode (layer-by-layer, atom-by-atom, cell-by-cell), atom representations (points, circles, (shaded) balls, stereo duplication), layout (see Sec. 6.2.7.2), and colors. Further, you can define links (lines or cylindrical sticks) connecting atom pairs inside this option which serves to visualize bonds and neighbor relationships, see Sec. 6.2.7.1. The graphics option menu G reads ======= GRAPHICS OPTIONS =============================================== Graphs: [D]esign(gd) [S]tereo(st) [B]ackgr(nb) [P]alstart(np) [M]ode(gm) [C]link(nnc) [L]ayout(pl/xxl) c[T]abl [W]orkb {[X]plot} [?,]esc ================================================================== 29 == giving shorthand information about graphics options and parameters. In this menu parameter gd indicates the graphical representation of atoms in plots with gd = = = = = = = = = = "Nx" "Lx" "Px" "Cx" "Ax" "Rx" "Hx" "Fx" "Dx" "Gx" for for for for for for for for for for no plotting/listing (for testing only), coordinate listing, atoms shown as points, atoms shown as circles, atoms shown as filled circles (areas), atoms shown as red/blue stereo circles, atoms shown as hard-shaded balls, atoms shown as fuzzy-shaded balls, atoms shown as dither-shaded balls, atoms shown as glossy-shaded balls. __ 152 _________________ Sec. 6.2.7. _____________________________________ The lower case character in parameter gd and parameter st refer to stereo duplication in plots where x = "m", st = "off" = "s", st = "on" indicate mono views with one picture on the screen, indicate stereo views showing two slightly different (reduced) pictures of the structure on the screen. Parameter nb in the above menu denotes the index of the color used to paint the background in plots while np gives the starting value of the color palette used to paint atoms. Parameter gm in the above menu shows the display mode where gm = "A" = "L" = "C" elementary refers to atom-by-atom display mode, refers to layer-by-layer display mode, refers to cell-by-cell display mode (stacking of cells). Parameter nnc in the above menu gives the number of constraints used to define links (lines or cylindrical sticks) connecting atom pairs to visualize bonds or neighbor relationships, see Sec. 6.2.7.1. Parameter pl in the above menu refers to painting and labelling of atoms where pl = "E-" = "EN" = "EE" = "L-" = "LN" = "LE" paints atoms of different no labels, paints atoms of different atom number labels, paints atoms of different element labels, paints atoms of different no labels, paints atoms of different atom number labels, paints atoms of different element labels, elements differently, elements differently, elements differently, layers differently, layers differently, layers differently, Parameter xxl in the above menu refers to the plot layout and reads "off" or any combination of the four characters "T", "B", "F", "-" where "T" "B" "F" shows if a title line is included, shows if basis vectors are sketched in the plot, shows if the lattice section is enclosed by a "-" wire frame, is used only as a filling character. rectangular All parameters shown in the graphics option menu are predefined internally by meaningful defaults which are, however, overwritten if an external structure file is loaded in a BALSAC/LATTICE session. ________________________ Sec. 6.2.7. ______________________________ 153 __ > [D] shown in selected from submenu G allows you to define how atoms are subsequent plots or listings of a lattice section. The design submenu GD reads =================================================================== Design(gd): [N]one [L]ist [P]oint [C]ircle [A]rea [R]Bstereo balls: [H]ard [F]uzzy [D]ithered [G]lossy [S]tereodup(st) [X]plot [?,]esc ============================================================= 84 == where gd gives the present design code, see above, and parameter st reads "on" or "off" depending whether stereo duplication in plots is active or not, see option [S] below. Selecting from this menu option > > [N] will not show atoms by plots nor by listings but will calculate coordinates of all atoms of the lattice section if the execute option [X] is selected in the following. This option is meant only for testing purposes. > > [L] will list all atoms of the lattice section by Atom X Y Z Rad El/Nuc| Xp Yp Zp -------------------------------------------------------1) x y z rad nuc | xp yp zp ... if the execute option [X] is selected in the following. Here (x,y,z) are cartesian coordinates of each atom in real space, rad its atom radius, and nuc its element name and nuclear charge. Further, (xp,yp) are projected planar coordinates which can be directly used for a drawing, and zp denotes the height of the projected atom center above or below the drawing plane. Large listings (exceeding 18 atoms) will be interrupted and the prompt ** Press [C], L-click ([/], B-click) to continue; [,], R-click to escape ** allows you to continue (select [C], in single atom mode select [/], see Sec. 6.2.9) or finish listing (select [,]). This option value is useful if BALSAC runs on a PC or workstation without graphics adapter. It can also be used in exploratory studies when the actual number of atoms in a plot has to be selected and a graphical representation would look too busy or confusing. > > [P] will represent atoms of the lattice section by DOTS (very small circles) in subsequent plots. > > [C] will represent atoms of the lattice section by CIRCLES in subsequent plots. __ 154 _________________ Sec. 6.2.7. _____________________________________ > > CIRCLES [A] will represent atoms of the lattice section by FILLED (overlapping areas) in subsequent plots. > > STEREO [R] will represent atoms of the lattice section by RED/BLUE circles in subsequent plots. Each atom will be shown by two circles, a left (blue) circle and a right (red) circle, where the distance between the circles increases with decreasing distance from the viewer (depending on the perspective used, see Sec. 6.2.6). This rather fast plot mode allows you to get a true 3-dimensional impression of the lattice section when blue/red stereo filter glasses are used. The actual amount of stereo distortion may be modified in the basic parameter option, see Sec. 6.2.15. Note that any stereo picture produced by BALSAC yields meaningful results only for non-zero values of the perspective parameter persp, see Sec. 6.2.6. > > [H] will represent atoms of the lattice section by HARD-SHADED BALLS in subsequent plots. Shading is achieved by subdividing the visible ball area in two parts displayed by dark and light tones of paint color n as defined in the initialization file, see Secs. 6.2.15, 6.4.7. > > SHADED [F] will represent atoms of the lattice section by FUZZYBALLS in subsequent plots. Continuous shading is achieved by a statistical pattern using light and dark tones of paint color n as defined in the initialization file, see Secs. 6.2.15, 6.4.7. > > SHADED [D] will represent atoms of the lattice section by DITHERBALLS in subsequent plots. Continuous shading is achieved by a 2x2 tri-level dither pattern using black, light, and dark tones of paint color n as defined in the initialization file, see Secs. 6.2.15, 6.4.7. > > SHADED [G] will represent atoms of the lattice section by GLOSSYBALLS in subsequent plots. Continuous shading is achieved by using diffuse background color, Lambert shading and specular reflection with the relative contributions defined in the initialization file, see Secs. 5.4, 6.2.15, 6.4.7. This option is of limited quality in the DOS version of BALSAC due to the limited number of different colors available with VGA adapters. If BALSAC is run in color graphics mode atoms will be plotted with different color depending on the color mode option (see mode option [M] below). For circle and ball radii respective atom radii are used except for red/blue stereo display, option [R], where circle radii are given by respective atom radii reduced by a factor 0.4. ________________________ Sec. 6.2.7. ______________________________ 155 __ Shading of atoms represented by balls is used to enhance the 3-dimensional impression. The actual amount of shading and the direction of incident light may be modified in the basic parameter option, see Sec. 6.2.15. While fuzzy, dithered, and glossy balls can give a more natural view of a lattice section they can be rather time consuming and are not recommended in exploratory studies of a structure. After any of the above atom representations in plots/listings has been selected BALSAC returns to submenu G. > > [S] selected from submenu GD allows you to switch between mono view and full color stereo view where the present setting is indicated by parameter st in submenu GD (st = "off" for mono views, = "on" for stereo views). While a mono view displays the lattice section by one picture on the screen (or in a PostScript print output) the full color stereo view shows two pictures. The pictures are reduced by 50% in size with respect to their mono equivalents, are horizontally displaced and slightly different in their projection geometry reflecting the eye and viewer's distance (freely adjustable inside the parameter option, see stereo parameters pu, deye of Sec. 6.2.15.). This full color stereo mode allows you to get a 3-dimensional impression of the lattice section using optical stereo glasses. Note that any stereo picture produced by BALSAC yields meaningful results only for non-zero values of the perspective parameter persp, see Sec. 6.2.6. After some exercise the full color stereo impression can also be obtained without optical glasses. Try the following: Look exactly at the center of the screen (with the two separate stereo pictures). Then put one finger to the screen center and move it slowly towards your eyes focusing at the finger tip. This will generate the illusion of seeing 4 (defocussed and overlapping) pictures on the screen. Stop moving your finger when two of the pictures overlap in the center giving you the impression of seeing 3 pictures. Try to concentrate on the center picture and after some time (depending on talent and practice) it will be focussed and stereo-type (while the two pictures to the left and right remain defocussed). Note that this stereo viewing requires a negative value for the distance shift between the two pictures while positive shift values are needed if optical stereo glasses are used, see also Sec. 6.2.15. NOTE that the kind of cross-eyed viewing required to obtain a stereo impression without optical glasses may strain your eyes! No responsibility can be taken by the author of BALSAC. __ 156 _________________ Sec. 6.2.7. _____________________________________ > > [X] (switching selected from submenu GD plots the lattice section to graphics mode (DOS) or opening a graphics window (Unix)) or lists its atom coordinates depending on the plot/list mode defined in the graphics option, see Sec. 6.2.7. > > graphics [,] selected from submenu GD returns immediately to the option menu G. Note that all graphics screen output requires a VGA/EGA/CGA graphics adapter working correctly on your PC (BALSAC DOS version) or an Xwindows color graphics output device (X-terminal or workstation, BALSAC Unix version). Asking for graphics output on a PC without graphics facilities may lead to unpredictable results. If BALSAC (Unix version) is run on a terminal (workstation) without Xwindows capabilities processing graphics with the execute option [X] leads to an error message ERROR: can't open display {ddd:0.0} where ddd:0.0 is the name of the presently defined output device which is followed by the prompt [C]alculate atom centers [?,]esc Selecting [C] from this menu will calculate and list all atoms of the section analogous to option [L] above whereas selecting [,] will directly move to the main option menu. Calculating atom centers is essential for storing atom coordinates on output files, see Secs. 6.2.8, 6.2.16, 6.3.6, 6.3.14. > and [S] selected from submenu G allows you to switch between mono view full color stereo view where the present setting is indicated by parameter st in submenu G (st = "off" for mono views, = "on" for stereo views). This option is identical to option [S] of submenu GD described in detail above. > [B] color selected from submenu G allows you to define the background used in subsequent plots of the lattice section. The prompt Input background color NB ( nbold: 0 - nctot) : asks for a color code number nb within the range [0,nctot] where nbold gives the present value. The numbers refer to entries of the internal color table determined by the initialization file and generated when BALSAC is started, see Sec. 5.4. Possible colors can be inspected by the color table display, option [T] of submenu G, see below. The background color will be defaulted to nb = 0 ( = black) in red/blue stereo mode and for monochrome mode, see below. Background colors other than black may hide lines / circles / balls painted with the same color. Note that the graphic analysis option offers a background color selection which is much more intuitive and faster, see Sec. 6.3.12. ________________________ Sec. 6.2.7. ______________________________ 157 __ > [P] inside selected from submenu G allows you to set the starting point the color palette used in atom painting. The color palette consists of entries np(i), i=1...nptot pointing each at a paint color j (np(i) = j). This determines a basic sequence of paint colors which are used to discriminate between atoms of different layers or elements. The present option allows you to define the starting point npst inside the palette (of nptot entries) which will be used to choose the first color np(npst) for painting the first layer or atom type (element) to be plotted. Subsequent layers/elements use colors according to the palette sequence np(npst+1), np(npst+2),... The prompt Input color palette start NS ( npold: 0, 1 - nptot) : asks for a number defining the start value npst of the color palette used in subsequent plots where npold gives the present value. Here a value npst = 0 denotes black/white graphics while npst within the range [1,nptot] results in color graphics referring to the entry sequence of the color palette. The complete color palette can be inspected by the color table display, option [T] of submenu G, see below. The palette sequence of colors for subsequent layers/elements is continued periodically if the number of layers/elements exceeds the palette size nptot. The color palette can be redefined interactively and stored on separate initialization files using the basic parameter option, see Sec. 7.2.15.1. It is also redefined when atom colors are assigned in the graphic analysis, see Secs. 6.2.14.2, 6.2.12.1. > in [M] selected from submenu G allows you to set the display mode used plots of the lattice section. This offers different ways of watching the lattice building process. The mode submenu GM reads =================================================================== Mode (gm): [L]ayer-by-layer [A]tom-by-atom [C]ells [X]plot [?,]esc ============================================================= 83 == where gm shows the present value of the display mode. > > [L] selected from submenu GM sets layer-by-layer display mode where the lattice section will be built one lattice plane (layer) after the other. In interactive mode BALSAC stops after a layer is completed and shows ** Press [C], L-click ([/], B-click) to continue; [,], R-click to escape ** at the bottom of the screen (graphics window). This allows you to continue with the next layer (select [C], in single atom mode select [/], see Sec. 6.2.9) or finish the plot (select [,]). __ 158 _________________ Sec. 6.2.7. _____________________________________ Note that in layer-by-layer display mode each layer must not contain more than namax atoms (namax = 2001 for DOS, = 8000 for Unix). Otherwise, only namax atoms per layer will be displayed resulting in incomplete layers. Since the number of layers in a lattice section is not limited by BALSAC the total number of atoms displayed in layer-by-layer mode may be much larger than nmax. In layer-by-layer display mode the atoms of each layer are sorted with respect to their distance from the viewer to yield a correct perspective view but adjacent layers are NOT considered in this sorting process. This may lead to erroneously overlapping atom spheres, in particular, if viewing angles theta > 90 are used. Therefore, selecting layer-by-layer display mode with theta > 90 will lead to a warning WARNING: Layer-by-layer display mode, Theta = theta may give incorrect views, use Theta <= 90 or atom-by-atom mode In layer-by-layer display mode only atoms of the layer displayed last are accessible in the graphic analysis option, see Sec. 6.2.14.2. > > [A] selected from submenu GM sets atom-by-atom display mode where the lattice section will be built as a whole depending on the viewing angle. Here all atoms of the lattice section are sorted with respect to their distance from the viewer and then displayed in the order of decreasing distance. This enhances the 3-dimensional perspective impression. > > where [C] selected from submenu GM sets cell-by-cell display mode the lattice section will be built as in atom-by-atom display mode. However, in the section definition, see 6.2.4, the layer stacking has a different meaning. Here the number n3 of layers to be included in the lattice section refers to layers of complete elementary cells (containing more than one atom in non-primitive lattices) rather than to inequivalent lattice planes. This display mode guarantees that molecules included in the elementary cell will not be truncated at the bottom or top of the lattice section. They may, however, be cut off at the four sides of the block. Here the initial layer index ninit, see 6.2.4, has no meaning and layer restructuring, see Sec. 6.2.5, is ignored. > > [X] (switching selected from submenu GM plots the lattice section to graphics mode (DOS) or opening a graphics window (Unix)) or lists its atom coordinates depending on the plot/list mode defined in the graphics option, see Sec. 6.2.7. > > graphics [,] selected from submenu GM returns immediately to the option menu G. ________________________ Sec. 6.2.7. ______________________________ 159 __ > [C] atoms selected from submenu G allows you to define links connecting (represented in plots by straight lines or cylindrical sticks) which can be used to visualize bonds or neighbor relationships in the lattice section. Further details are given in Sec. 6.2.7.1. > [L] selected from submenu G allows you to define additional layout parameters (framing, painting, labelling, etc.) used in screen plots and for PostScript file output. Further details are given in Sec. 6.2.7.2. > [T] separate selected from submenu G displays a color test table (in a graphics window, Unix) showing all color definitions together with color numbers available inside BALSAC. The colors are described in the initialization file and generated when BALSAC is started, see Sec. 5.4. The first line from the top of the table shows blocks of the base colors together with their names where the DOS/VGA version of BALSAC lists four colors defining "black", "white", "stereo red", "stereo blue" by black white (st)red (st)blue and the Unix/X.11 version lists eight colors defining "black", "white", "background", "text", "bonds", "stereo red", "stereo blue", "stereo white" by blck wht bckg txt bnd srd sbl swt Then the dark and light tones of all paint colors in the sequence of the palette definition are shown together with a line colors: palette= nptot, total= nctot where nptot is the number of entries in the color palette and nctot is the total number of RGB colors defined at present. Next for each of the ncolb paint colors the sequence of nsh tones, see Sec. 5.4, is displayed by a row of blocks going from darkest to lightest tones. The line to the right of each block sequence reads j ( def.dark(j) , def.light(j) ) ns(j)+1 - ns(j)+nsh where j is the paint color index (to be used in the palette for painting (shaded) balls), def.dark(j) and def.light(j) are color table entries of the default dark and light tones, and ns(j)+1 denotes the darkest, ns(j)+nsh the lightest tone of paint color j. In addition the two default color tones are marked by crossing lines in the respective color blocks (def.dark = white lines, def.light = black lines). Pressing any key clears the window and returns to the previous menu. __ 160 _________________ Sec. 6.2.7. _____________________________________ The Unix/X.11 version of BALSAC shows in addition glossy-shaded balls next to each of the paint color rows using the respective color tones and demonstrating the incident light direction as well as diffuse, Lambert shading, and specular reflection contributions. > [W] selected from submenu G moves to the color/shading workbench switching to graphics mode (DOS) or opening a graphics window (Unix). This allows you to change all basic and paint colors as well as ball shading angles in a very intuitive way using the mouse or a graphics pointer. Further details are given in Sec. 6.2.15.2. > [X] selected from submenu G plots the lattice section (switching to graphics mode (DOS) or opening a graphics window (Unix)) or lists its atom coordinates depending on the plot/list mode defined in the present graphics option. > [,] selected from submenu G returns immediately to the BALSAC/LATTICE main option menu. Note that the graphics option menu G is the last menu which requires input if a lattice section is built from scratch. If BALSAC/LATTICE is started with a structure input file the above graphics parameters are given in compressed and number coded form in the file. Here the display mode, atom representation, and mono/stereo view option are combined in one compound index M where M = SF * (10 * K + L) with SF = 1 = -1 for mono viewing (option [S]), for stereo duplication (option [S]). K for layer-by-layer display mode (option [L]), for atom-by-atom display mode (option [A]), for cell-by-cell-display mode (option [C]). = = = 0 1 2 L [N]), = 0 for no plot/listing output (testing purposes, option = 1 for atom coordinate listing, no graphics = 2 for atoms plotted as color dots (small circles, option = 3 for atoms plotted as color circles (option = 4 for atoms plotted as color filled circles (option = 5 for atoms plotted as red/blue stereo circles (option = 6 for atoms plotted as hard-shaded balls (option = 7 for atoms plotted as fuzzy-shaded balls (option = 8 for atoms plotted as dither-shaded balls (option = 9 for atoms plotted as glossy-shaded balls (option (option [L]), [P]), [C]), [A]), [R]), [H]), [F]), [D]), [G]). Further, the background color index and the starting value of the color ________________________ Sec. 6.2.7.1. ____________________________ 161 __ palette used to paint atoms are combined in one compound index N where N = 100 * nb + npst where nb denotes the background color and npst denotes the palette start, see above. 6.2.7.1. SETTING LINKS/BONDS BETWEEN ATOMS Option [C] selected from the graphics option menu G, see Sec. 6.2.7, allows you to define links connecting atoms and shown in plots by straight lines or cylindrical sticks. This can be used to visualize chemical bonds or neighbor relationships inside the lattice section. The link option menu GC of BALSAC/LATTICE sessions reads == GRAPHICS OPTIONS =================================================== nl link(s) : Nuc1 Nuc2 Rmin Rmax 1) nuc1 nuc2 rmin rmax 2) ... Lcolor lcol Lrad lrad [N]ew [A]dd [E]rase [C]olrs [R]adii c[T]abl [D]ispla {[X]plot} [?,]esc ================================================================= 32 == where nl is the number of link constraints defined at present. For each constraint two nuclear charges nuc1, nuc2 (values nuc1/2 = 0 are meaningful, see below), a distance range [rmin, rmax], a line/stick color lcol, and a stick radius lrad are shown in the menu. Here a link constraint means that any two atoms of the lattice section will be connected by a line or cylindrical stick if one atom is of nuclear charge nuc1, the other of charge nuc2, and if the distance between the two atoms lies inside the distance range [rmin, rmax]. For stick radii rad = 0 atom pairs will be connected by thin lines of color lcol while rad > 0 uses cylindrical sticks of finite thickness (radius rad) and of color lcol. With atoms shown as (shaded) balls lines/sticks will connect ball surfaces thus enhancing the 3-dimensional impression. Charge values nuc1/2 = 0 ignore the respective charge constraint. Thus, nuc1 = nuc2 = 0 connects any pair of atoms with a distance inside the prescribed range while for example nuc1 = 14, nuc2 = 0 connects all Si atoms with any other atom A of the lattice section if the Si-A distance lies inside the distance range [rmin, rmax]. Note that in layer-by-layer display mode only atoms of the same layer will be connected by lines or sticks while for atom-by-atom mode every two atoms of the complete section may be connected. __ 162 _________________ Sec. 6.2.7.1. ___________________________________ > [N] from selected from submenu GC allows you to define link constraints scratch overriding any existing constraints. The prompt No. of links NL (0-nmax, -1=esc): asks for a (new) number nl of link constraints to be given in the following where present). Dummy definitions unchanged while submenu GC. For nmax gives the largest number (nmax = 20 at input nl = -1 leave all existing link nl = 0 erases all definitions and returns to nl > 0 the prompts Input nl link(s) : 1) NUC1,NUC2,RMIN,RMAX : ... nl) NUC1,NUC2,RMIN,RMAX : ask for nl sets of four numbers nuc1, nuc2, rmin, rmax defining the new link constraints as discussed above. For each constraint a default stick radius, rad = 0.0, and a default line/stick color, lcol = ICLBD (default line connect color, see Secs. 6.2.15, 6.4.7), will be assumed but can be redefined later on, see below. After input of all link constraints BALSAC returns to submenu GC. > [A] selected from submenu GC allows you to add another link constraint to the existing set. The prompt Add link NUC1,NUC2,RMIN,RMAX : asks for a set of four numbers nuc1, nuc2, rmin, rmax defining a link constraint as discussed above to be added to the existing ones. (Note that for nuc1 < nuc2 the nuclear charges will be swapped internally such that nuc1 > nuc2.) For the constraint a default stick radius, rad = 0.0, and a default line/stick color, lcol = ICLBD (default line connect color, see Secs. 6.2.15, 6.4.7), will be assumed but can be redefined later on, see below. After input of all link constraints BALSAC returns to submenu GC. > [E] selected from submenu GC allows you to erase link constraint from the existing set. The prompt Erase link no. N (1 - nl, 0=esc) : asks for a number n denoting the n-th constraint of the list shown in submenu GC to be removed from the set of constraints. Here n = 0 ignores the erase option while 0 < n <= nl removes the respective link constraint after which BALSAC returns to submenu GC. ________________________ Sec. 6.2.7.1. ____________________________ 163 __ > of [C] selected from submenu GC allows you to define line/stick colors all nl existing link constraint. The prompt Input nl link color(s) : asks for nl integers lcol(i), i= 1,... nl denoting code numbers of the color table (nctot colors, see Sec. 5.4) for each of the nl existing link constraints. All lines/sticks referring to a given constraint will be drawn with the same color lcol. This allows you to distinguish between different constraints in a plot. Possible colors can be inspected by the color table display, option [T], see below. After complete input BALSAC returns to submenu GC. > [R] all nl selected from submenu GC allows you to define stick radii of existing link constraint. The prompt Input nl link radii ( rlmin / rlmax ) : asks for nl values rad(i), i= 1,... nl denoting stick radii for each of the nl existing link constraints. All sticks referring to a given constraint will be drawn with the same thickness defined by radius radi. This allows you to distinguish between different constraints. Parameters rlmin, rlmax shown in the above prompt are minimum and maximum values of all atom radii of the lattice section helping to choose reasonable stick radii. No stick should be thicker than 70% of the diameter of the largest ball in the plot. Note that the use of sticks of finite thickness is meaningful only if atoms are represented by balls. After complete input BALSAC returns to submenu GC. > [T] separate selected from submenu GC displays a color test table (in a graphics window, Unix) showing all color definitions together with color numbers available inside BALSAC. The table is described in detail in the graphics option, see Sec. 6.2.7. > [D] recent selected from submenu GC shows up to 10 lines of the most output generated by the graphic analysis option, see Sec. 6.2.14.2, by ============ Latest Graphics Output ================== 1: Xyz,R,Id( n1)= x y z rad nuc ... ====================================================== This allows you to look up and use numerical output from the analysis for input within submenu GC. After the listing BALSAC returns to submenu GC. __ 164 _________________ Sec. 6.2.7.2. ___________________________________ > [X] section selected from submenu GC (if available) plots the lattice (switching to graphics mode (DOS) or opening a graphics window (Unix)) or lists its atom coordinates depending on the plot/list mode defined in the graphics option, see Sec. 6.2.7. > see [,] selected from submenu GC returns to the graphics option menu G, Sec. 6.2.7. 6.2.7.2. DEFINING THE PLOT LAYOUT Option [L] selected from the graphics option menu G, see Sec. 6.2.7, allows you to set the plot layout which includes a title line, a sketch of the lattice vectors, a wire frame enclosing the lattice section, the modes of painting and labelling atoms. The layout option menu GL of BALSAC/LATTICE sessions reads [T]itl(tt) [B]as(bb) [F]ram(ff) [P]aint(pp) [L]abl(ll) {[X]plot} [?,]esc where the present definition of each option is shown by a flag in parentheses. Here option flag tt reads "on" or "off" depending on whether plots are to include a title line (structure title, layer number, and viewing angle information). bb reads "on" or "off" depending on whether plots are to include a sketch of the (transformed) lattice periodicity vectors. ff wire reads "on" or "off" depending on whether plots are to include a frame enclosing the lattice section. pp reads "layer" or "elmnt" depending on whether atoms of different layers ("layer") or of different nuclear charge ("elmnt") are discriminated by color in plots. ll reads "none", "elmt", or "nmbr" depending on whether atoms are shown in plots without labels ("none"), labelled by their element names ("elmt"), or labelled by their internal numbers ("nmbr"). > [T] between selected from submenu GL switches the title line flag tt "on" and "off" and shows the updated submenu GL. For tt = "on" a title line giving the lattice section title, layer numbers, and viewing angle information is added to the plot at the top of the screen (graphics window) and included in PostScript file output. ________________________ Sec. 6.2.7.2. ____________________________ 165 __ > [B] between selected from submenu GL switches the basis vector flag bb "on" and "off" and shows the updated submenu GL. For bb = "on" plots will include a sketch of the (transformed) lattice periodicity vectors drawn as a triple of straight lines close to the center of the lattice section. With atoms shown as opaque balls the sketched vectors can be (partly) overlayed by atoms. This may result in a somewhat confusing view and should be avoided. Note that the graphic analysis option offers a basis vector sketch which is much more flexible, see Sec. 6.3.12. > [F] between selected from submenu GL switches the wire frame flag ff "on" and "off" and shows the updated submenu GL. For ff = "on" plots will include a rectangular wire frame of black or white lines (depending on the background color) enclosing the lattice section which is started at the beginning and completed at the end of the plot. The framing lines point parallel to the x, y, and z axes of the cartesian coordinate system used to describe the atom positions. > [P] "layer" selected from submenu GL switches the paint flag pp between and "elmnt" and shows the updated submenu GL. For pp = "layer" atoms of different layers will be painted by different colors while for pp = "elmnt" atoms of different nuclear charge (elements) are discriminated by color in plots. This allows for different visual grouping of elements and atom layers in plots. The sequence of paint colors used to paint atoms is defined by the internal color palette, see Secs. 5.4, 6.2.15. Note that BALSAC does not check nuclear charges for consistency. Therefore, they can be assigned values which do not correspond to real systems but may help the visual impression. > [L] selected from submenu GL switches the label flag ll periodically between "none", "elmt", and "nmbr" and shows the updated submenu GL. For ll = "none" no atom labelling will be included in plots while ll = "elmt" indicates that atoms are labelled by their element names ("H" for Hydrogen, "He" for Helium ...) in plots and ll = "nmbr" results in atoms being labelled by their internal number used to count the atoms inside the lattice section. The internal atom numbers are also used in the graphic analysis, see Sec. 6.2.14.2. > [X] section selected from submenu GL (if available) plots the lattice (switching to graphics mode (DOS) or opening a graphics window (Unix)) or lists its atom coordinates depending on the plot/list mode defined in the graphics option, see Sec. 6.2.7. > see [,] selected from submenu GL returns to the graphics option menu G, Sec. 6.2.7. The settings of the title line, basis vector, and wire frame flags, tt, bb, ff (options [T], [B], [F] above), are shown by a joint label xxl appearing in "lout= xxl" inside the BALSAC/LATTICE main option menu, see Sec. 6.2.0, and __ 166 _________________ Sec. 6.2.7.2. ___________________________________ in "[L]ayout(pl/xxl)" inside the graphics option menu, see Sec. 6.2.7. Further, the three flags are represented internally (and in structure input/output files, see Sec. 6.4.2) by an integer IBFT. The following table lists all values of tt, bb, ff together with their xxl and IBFT equivalents. --------------------------------------------------tt bb ff xxl IBFT --------------------------------------------------"off" "off" "off" "off" 0 "off" "off" " on" "--F" 1 "off" " on" "off" "-B-" 2 "off" " on" " on" "-BF" 3 " on" "off" "off" "T--" 4 " on" "off" " on" "T-F" 5 " on" " on" "off" "TB-" 6 " on" " on" " on" "TBF" 7 --------------------------------------------------The settings of the paint and label flags, cc, ll, (options [C], [L] above), are shown by a joint label pl appearing in "colr= nb/ np pl" inside the BALSAC/LATTICE main option menu, see Sec. 6.2.0, and in "[L]ayout(pl/xxl)" inside the graphics option menu, see Sec. 6.2.7. Further, the two flags are represented internally (and in structure input/output files, see Sec. 6.4.2) by an integer ICLC. The following table lists all values of cc, ll together with their pl and ICLC equivalents. ----------------------------------------cc ll pl ICLC ----------------------------------------"elmnt" "none" "E-" 1 "elmnt" "elmt" "EE" 2 "elmnt" "nmbr" "EN" 3 "layer" "none" "L-" 4 "layer" "elmt" "LE" 5 "layer" "nmbr" "LN" 6 ----------------------------------------- ________________________ Sec. 6.2.8. ______________________________ 167 __ 6.2.8. FILE OUTPUT OPTION, [O] [O] This option allows you to save all structure and graphics information of the present BALSAC/LATTICE session on output files. These files can be used as input to subsequent BALSAC/LATTICE runs or with other analysis or visualization software depending on the output format. Available formats are discussed below and in Sec. 6.4.2-6 and include encapsulated (color) PostScript file output for high quality graphics prints on PostScript laser printers. Since all structure output files are fixed format ASCII-type they can be easily modified with a text editor outside BALSAC. The file output menu O reads ========== FILE STORE OPTIONS ================================ [F]ilesave [Q]uicksave [I]nit(fin) l[O]go(flg) [?,]esc ======================================================== 44 == where the present settings of the initialization and logo option flags, fin and flg (reading "on" or "off", see below), are shown. > [F] external selected from submenu O allows you to give a name of an file which will be used for subsequent output. The prompt Output file name ("-"=esc): asks for a character string fname (up to 72 characters) defining the file name, e.g. "out.new". Note that BALSAC does not check and warn you if a file name denotes an existing file where there is a risk of overwriting data by BALSAC output. With the DOS version of BALSAC using "PRN" as file name will send the output directly to the default printer connected to the PC without storing in a file. Note that PostScript output format is meaningful only for true PostScript laser printers and other printers may produce lots of useless output. The file name input is confirmed by Open: fname after which the output file fname is opened and the file format menu OF reading =================================================================== Format: [L]at [E]xtlat [P]lt [S]ar sch[K]l [G]ps [C]olps [W]sc [B]z [I]nit(fin) l[O]go(flg) [?,]esc ============================================================= 45 == allows you to select the format of the output file (and change the initialization and logo option flags). __ 168 _________________ Sec. 6.2.8. _____________________________________ > data > [L] selected from submenu OF saves all structure and graphics of the present BALSAC/LATTICE session using standard LATUSE format (Cards 1-18), see Sec. 6.4.2. This is confirmed by Saving data on file : LATUSE format File output completed ** Press [C], L-click to continue ** (DOS only) after which the file is closed and BALSAC returns to its LATTICE main option menu. Output files of LATUSE format can be used as input to subsequent BALSAC/LATTICE sessions as well as to LATUSE ((C) Copyright 1991-5 K. Hermann), a PC based analysis and visualization tool for periodic structures and surfaces, see Sec. 1.3. The output file includes by default one batch option flag,"E", (see Card 1 of the LATUSE format) such that BALSAC/LATTICE batch runs using this file for input will only construct the lattice section and move to the main option menu, see also Sec. 3.4. > data > [E] selected from submenu OF saves all structure and graphics of the present BALSAC/LATTICE session using extended LATUSE format (Cards 1-20), see Sec. 6.4.2. This is confirmed by Saving data on file : Extended LATUSE format File output completed ** Press [C], L-click to continue ** (DOS only) after which the file is closed and BALSAC returns to its LATTICE main option menu. The extended LATUSE format differs from the standard LATUSE format only by the additional Cards 19, 20 which list coordinates, radii and nuclear charges of all atoms of the lattice section. > data > [P] selected from submenu OF saves all structure and graphics of the present BALSAC/LATTICE session using PLOT3D format, see Sec. 6.4.3. This is confirmed by Saving data on file : PLOT3D format File output completed ** Press [C], L-click to continue ** (DOS only) after which the file is closed and BALSAC returns to its LATTICE main option menu. Here the present lattice section will be interpreted as a fictitious cluster saving all its atom coordinates, radii, and nuclear charges but no information concerning the lattice periodicity will be saved in the file. ________________________ Sec. 6.2.8. ______________________________ 169 __ Output files of PLOT3D format can be used as input to subsequent BALSAC/CLUSTER sessions as well as to PLOT3D ((C) Copyright 1991-5 K. Hermann), a PC based analysis and visualization tool for non-periodic structures (clusters, molecules, disordered systems), see Sec. 1.3. > > [S] selected from submenu OF saves all structure data of the present BALSAC/LATTICE session using SARCH ASCII format, see Sec. 6.4.4. This is confirmed by Saving data on file : SARCH ASCII format File output completed ** Press [C], L-click to continue ** (DOS only) after which the file is closed and BALSAC returns to its LATTICE main option menu. Output files of SARCH ASCII format can be used as input to SARCH ((C) Copyright 1991-5 M. A. Van Hove), a PC based analysis and visualization program including LEED and STM simulation, see Sec. 1.3. BALSAC uses only a restricted SARCH ASCII format as described in Sec. 6.4.4. This format cannot account for all structural features available with SARCH. For further details consult the SARCH documentation. > > [K] selected from submenu OF saves all structure data of the present BALSAC/LATTICE session using SCHAKAL format, see Sec. 6.4.5. This is confirmed by Saving data on file : SCHAKAL format File output completed ** Press [C], L-click to continue ** (DOS only) after which the file is closed and BALSAC returns to its LATTICE main option menu. Output files of SCHAKAL format can be used as input to SCHAKAL ((C) Copyright 1992 E. Keller), a widely used crystal visualization tool. BALSAC uses only a restricted SCHAKAL format as described in Sec. 6.4.5. This format cannot account for all structural features available with SCHAKAL. For further details consult the SCHAKAL documentation. > > [G]/[C] selected from submenu OF stores the complete graphics information of the present BALSAC/LATTICE session using (encapsulated) gray scale ([G]) or color ([C]) PostScript format, see Sec. 6.4.6. If fuzzy-, dithered-, or glossy- shaded balls are used to represent atoms BALSAC prompts No. of PostScript tones (1-50) : asking for the number of tones nshps < 50 to be used for __ 170 _________________ Sec. 6.2.8. _____________________________________ shading in the PostScript output (see Sec. 5.4). The output is confirmed by Saving data on file : Gray scale PostScript format File output completed ** Press [C], L-click to continue ** (DOS only) or Saving data on file : Color PostScript format File output completed ** Press [C], L-click to continue ** (DOS only) after which the file is closed and BALSAC returns to its LATTICE main option menu. PostScript files can be printed on PostScript laser printers or typesetting systems yielding high quality graphics prints. On B/W PostScript printers colors and shading are simulated by gray levels using fixed dithering. Since PostScript files are ASCII-type they can be easily modified outside BALSAC with text editors to improve the print quality even further, see Secs. 6.4.6, 6.4.6.1. > > [W] selected from submenu OF allows you to create a gray scale PostScript plot file displaying the present 3-dimensional Wigner-Seitz elementary cell. The shape and orientation of the cell is determined by the actual viewing parameters theta, phi, rot, magnf, and persp, see Sec. 6.2.6, and is analogous to the Wigner-Seitz cell screen output with the graphic analysis, see Sec. 6.2.14.2. The prompt =================================================================== Wigner-Seitz cell layout: [F]rame [S]hade [B]oth [N]N+both [?,]esc ============================================================= 78 == asks for different layouts of the Wigner-Seitz cell plot where selecting [F] draws the cell as a transparent wire frame. [S] draws the cell as a shaded opaque polyhedron where only front polygon sections are visible. [B] draws the cell as a shaded transparent polyhedron where the edges are emphasized visually by black lines. [N] draws the cell as a shaded transparent polyhedron where the edges are emphasized visually by black lines and additional sticks point to nearest neighbor atoms. [,] returns immediately to the BALSAC/LATTICE main option menu without a file saved. ________________________ Sec. 6.2.8. ______________________________ 171 __ The output is confirmed by Saving data on file : Wigner-Seitz cell (PostScript) File output completed ** Press [C], L-click to continue ** (DOS only) after which the file is closed and BALSAC returns to its LATTICE main option menu. > > [B] selected from submenu OF allows you to create a gray scale PostScript plot file displaying the present 3-dimensional Brillouin zone (Wigner-Seitz of the reciprocal lattice). The orientation of the cell is determined by the actual viewing parameters theta, phi, rot, magnf, and persp, see Sec. 6.2.6, and is analogous to the Brillouin zone screen output with the graphic analysis, see Sec. 6.2.14.2. The prompt =================================================================== Brillouin zone layout: [F]rame [S]hade [B]oth [N]N+both [?,]esc ============================================================= 78 == asks for different layouts of the Brillouin zone plot where selecting [F] draws the zone as a transparent wire frame. [S] draws the zone as a shaded opaque polyhedron where only front polygon sections are visible. [B] draws the zone as a shaded transparent polyhedron where the edges are emphasized visually by black lines. [N] draws the zone as a shaded transparent polyhedron where the edges are emphasized visually by black lines and additional sticks point to nearest neighbor atoms of the reciprocal lattice. [,] returns immediately to the BALSAC/LATTICE main option menu without a file saved. The output is confirmed by Saving data on file : Brillouin zone (PostScript) File output completed ** Press [C], L-click to continue ** (DOS only) after which the file is closed and BALSAC returns to its LATTICE main option menu. __ 172 _________________ Sec. 6.2.8. _____________________________________ > > option [I] selected from submenu OF switches the initialization flag fin between "on" and "off" where the present setting is shown in the prompt "[I]nit(fin)" of submenu OF. For fin = "on" all PLOT3D or (extended) LATUSE format file output includes additional initialization information with parameters identical to those of the initialization file, see Sec. 6.4.7. This allows you to save all present color assignments and adapter/window parameters together with the structural data of the lattice section. Lattice sections where atom colors have been changed inside a BALSAC/LATTICE session, see Sec. 6.14.1, MUST be saved with fin = "on". Otherwise, all color assignments will be lost and replaced by defaults taken from the (default) initialization file. > > [O] selected from submenu OF switches the logo option flag flg between "on" and "off" where the present setting is shown in the prompt "l[O]go(flg)" of submenu OF. For flg = "on" all PostScript file output includes an additional logo "BALSAC plot" to be shown at the bottom right of the print. This allows you to indicate the origin of BALSAC graphics output which is a matter of curtesy to the author and may be needed to comply with legal requirements. > > in > [Q] [,] selected from submenu OF closes the open output file and returns to the BALSAC/LATTICE main option menu. selected from submenu O opens the quicksave file 'balsac.lat' your working directory and all structure and graphics data of the present BALSAC/LATTICE session are saved on this file (using standard LATUSE format). After this file 'balsac.lat' is closed and BALSAC returns to its LATTICE main option menu. The quicksave option offers a fast method to store structure data on a file for later retrieval. Quicksave files may be used for structure input to subsequent BALSAC/LATTICE sessions. > fin [I] selected from submenu O switches the initialization option flag between "on" and "off" where the present setting is shown in the prompt "[I]nit(fin)" of submenu O. This option is identical to option [I] of the file format menu OF discussed above. > [O] between selected from submenu O switches the logo option flag flg "on" and "off" where the present setting is shown in the prompt "l[O]go(flg)" of submenu O. This option is identical to option [O] of the file format menu OF discussed above. > [,] selected from submenu O returns immediately to the BALSAC/LATTICE main option menu without file output. ________________________ Sec. 6.2.8. ______________________________ 173 __ Note that file output in any format which includes atom coordinates requires BALSAC to have plotted/listed the lattice section at least once (using the execute option [X] which among other things calculates coordinates). Otherwise a warning NO file output : atoms undefined or incomplete is displayed and no output file is generated. Note further that in BALSAC/LATTICE sessions the complete set of atoms of a lattice section can be saved on files ONLY if atom-by-atom or cell-by-cell display mode was chosen, see Sec. 6.2.7. For layer-bylayer mode any file store (except standard LATUSE format) shows a warning prompt WARNING! [?,]esc layer-by-layer mode, atoms incomplete (?) : [S]tore Selecting [S] in this prompt saves only coordinates of the atoms included in the section layer displayed last which is confirmed by File output completed ** Press [C], L-click to continue ** (DOS only) while selecting [,] will not save atoms on file as indicated by NO file output : atoms undefined or incomplete If BALSAC/LATTICE is run in batch mode the format of possible file output is determined by parameter NFRM in the input file (Card 1 of the LATUSE format, see Sec. 6.4.2). The following table lists NFRM values for all output formats available in batch runs together with respective option keys of submenu OF. ---------------------------------------------------format key NFRM ---------------------------------------------------standard LATUSE [L] 0 extended LATUSE [E] 1 SARCH ASCII [S] 2 Gray scale PostScript [G] 3 PLOT3D [P] 4 SCHAKAL [K] 5 Color PostScript [C] 6 Wigner-Seitz cell (PostScript, frame) [W] 7 Brillouin zone (PostScript, frame) [B] 8 ---------------------------------------------------- __ 174 _________________ Sec. 6.2.9. _____________________________________ 6.2.9. EXECUTE OPTION, [X] [X] The execute option is available in the BALSAC/LATTICE main option menu and in most other BALSAC menus. It calculates coordinates of all atoms of the lattice section and depending on graphics parameters, see Sec. 6.2.7, the section will be PLOTTED switching to graphics mode (DOS) or opening a graphics window (Unix) or LISTED by its atom coordinates and attributes (radius, nuclear charge) in text mode (DOS) or in the text window (Unix). Plotting/listing stops after A) the complete lattice section has been processed (all display modes), or B) a complete lattice plane (other than the last) has been processed (layer-by-layer display mode), or C) any key or mouse button (inside graphics window only (Unix)) was pressed during the plot/list process, with different options being available as discussed in the following. (A) After a complete lattice section is plotted/listed an option menu line Replot[udlr][rRpPmM+] analyze[Q] stack[LS] trnsf[T] qmen[O] sho[EI] [?,]esc shows at the bottom of the screen (DOS) or text/graphics window (Unix) listing all available fast plot options. For numerical output (design option [L], see graphics option menu) the cursor key reminder "[udlr]" in the above lines is replaced by number keys "[8246]" which can be used alternatively. Selecting [down/up] in (cursor keys, see Sec. 5.5, indicated by "ud" or "82" the prompt line) replots/lists the lattice section with polar view angle theta decreased / increased by increment dtheta, see Sec. 6.2.6. [left/right] (cursor keys, see Sec. 5.5,, indicated by "lr" or "46" in the prompt line) replots/lists the lattice section with azimuthal view angle phi decreased / increased by increment dphi, see Sec. 6.2.6. [r/R] [p/P] parameter replots/lists the lattice section with rotation angle rot decreased / increased by increment drot, see Sec. 6.2.6. replots/lists the lattice section with perspective persp divided / multiplied by increment dpersp, see Sec. 6.2.6. [m/M] replots/lists the lattice section with magnification factor magnf divided / multiplied by increment dmagnf, see Sec. 6.2.6. ________________________ Sec. 6.2.9. ______________________________ 175 __ [+] replots/lists the lattice section with present viewing and graphics parameters. This becomes useful if a plot has been analyzed and too many additional lines or circles drawn in the analysis confuse the picture. [Q] enters the graphic analysis option allowing you to analyze geometric quantities (e.g. distances, angles, atom environments) in the lattice section directly from the graphics screen output using a mouse pointer, see Sec. 6.2.14.2. This option is NOT available for numerical output (design option [L]). [L] allows you to load a different lattice section from the file stack, see Secs. 6.2.16, 6.3.14. [S] allows you to save the present structure and graphics data of a lattice section on the file stack, see Secs. 6.2.16, 6.3.14. [T] allows you to transfer all structure and graphics data from the present LATTICE to a (new) CLUSTER session which has to be confirmed by pressing [T] in Fast transfer to CLUSTER: [T]ransfer [?,]esc Here the atoms of the lattice section are assumed to form a fictitious (non-periodic) cluster. This allows you to manipulate single atoms or groups of atoms of lattice sections. [O] shows an alternative option menu line at the bottom of the screen which lists all options of the BALSAC/LATTICE main option menu reading (in one line!) Structure[LCMSRA] [P]arms Graphics[VG] Cont[XNEU] Files[IOK] [?,]esc and allowing you to move immediately to the options of the main option menu, see Sec. 6.2.0. [E] saves (exports) the present graphics window output in an internal pixel array for later use. (Available only for BALSAC Unix/X.11 version.) Only one picture can be saved at a time and overwrites the previously saved picture. Pixel images cannot be transferred to external files. [I] loads (imports) previously saved graphics window output (pixel image, see option [e/E]) into the graphics window overwriting the present picture. (Available only for BALSAC Unix/X.11 version.) Note that imported pictures cannot be analyzed. The analysis may yield erroneous results. [,] clears the graphics screen and switches to text mode (DOS) or closes the graphics window (Unix)) returning to the BALSAC/LATTICE main option menu. __ 176 _________________ Sec. 6.2.9. _____________________________________ For mouse selection of menus (Unix/X.11 version), see Sec. 3.3.8, the menu window contains all entries of the above list in fields separated by black lines after a plot is finished. The options are selected by pointing inside the respective field and L-clicking. Note that when fast plot keys are used to incrementally change viewing angles of a given lattice section the visual movement of the displayed section will proceed in different directions depending on the value of the screen rotation angle rot, see Sec. 5.2. (B) After a complete lattice plane (other than the last) has been plotted/ listed in layer-by-layer display mode a prompt ** Press [C], L-click ([/], B-click) to continue; [,], R-click to escape ** shows at the bottom of the screen (DOS) or text/graphics window (Unix). Selecting [C] or L-click resumes plotting/listing in continuous mode processing all atoms of the following lattice plane until it is built and BALSAC stops. [/] or B-click resumes plotting/listing in single atom mode after which each atom of the lattice section is displayed only after a key is pressed or L-click. If [/] is pressed (or B-click) in single atom mode plotting will be continued in continuous mode. [,] or R-click in graphics output completes the wire frame about the (possibly incomplete) lattice section (if selected, see Sec. 6.2.7) and BALSAC assumes the plot to be completed showing the option menu line given above. In numerical output assumes the listing to be completed showing the option menu line given below. Note that using layer-by-layer display in a BALSAC/LATTICE batch run will not require manual input to initiate plotting/listing of the next layer after the previous one is completed. Here BALSAC waits between layer output only for a finite time defined by the delay parameter NDELAY in the input file, see Secs. 3.4, 6.4.2 (C) is After any key or mouse button (inside graphics window only (Unix)) pressed during the plot/list process the prompt ** Press [C], L-click ([/], B-click) to continue; [,], R-click to escape ** shows at the bottom of the screen (DOS) or text/graphics window (Unix) and allows the same selections as described for case (B) above. ________________________ Sec. 6.2.10. _____________________________ 177 __ On Unix systems where the display is not X.11 Windows compatible (indicated by "Terminal mode, no graphics display" at BALSAC startup) any graphics output will be suppressed and selecting the execute option [X] issues a warning prompt ERROR: can't open display dname [C]alculate atom centers [?,]esc shows where dname is the DISPLAY name that BALSAC has assumed when the program was started. Selecting [C] from this menu calculates and lists all atoms of the lattice section or cluster analogous to design option [L], see Sec. 6.2.7. Selecting [,] moves directly to the BALSAC/LATTICE main option menu. Calculating atom coordinates is essential for saving atom informations on output files, see Secs. 6.2.8, 6.2.16. 6.2.10. [N] SCRATCH OPTION, [N] This option causes BALSAC to reset most input parameters and restart building a lattice structure from scratch. This has to be confirmed in the prompt Confirm start from scratch : [N]ew [?,]esc where selecting [N] starts the initial buildup sequence of the LATTICE session: --> --> --> --> --> --> lattice option, Miller option, section option, view option, graphics option, BALSAC/LATTICE main option menu, Sec. Sec. Sec. Sec. Sec. Sec. 6.2.1 6.2.3 6.2.1 6.2.6 6.2.7 6.2.0 . Selecting [,] in the above prompt returns to the BALSAC/LATTICE main option menu keeping the old lattice section definition. __ 178 _________________ Sec. 6.2.11. ____________________________________ 6.2.11. FILE INPUT OPTION, [I] [I] This option allows you to restart the present BALSAC/LATTICE session with new structure and graphics input from an external (LATUSE format) file. The prompt Input file name ("+"=def,"-"=esc) : asks for a character string fname (up to 72 characters) defining the file name, e.g. "input.lat". Here the one-character filename "+" is interpreted as that of the quicksave file 'balsac.lat' of the present directory while dummy input "-" returns to the BALSAC/LATTICE main option menu. The file name input is confirmed by Open: fname after which BALSAC starts the initial buildup sequence of the LATTICE session with input taken from file fname and continues running in batch mode until all option flags provided by the input file are used, see Secs. 3.4, 6.2.0. If an incorrect file name fname is given in the above prompt an error message ERROR: opening file for structure input File = fname Input file name ("+"=def,"-"=esc) : is issued and BALSAC repeats the file name prompt. 6.2.12. MENU OPTION, [E] [E] This option refreshes the BALSAC/LATTICE main option menu and switches BALSAC from batch to interactive mode if necessary. It is needed only if BALSAC is running a LATTICE session in batch mode, see Sec. 3.4, and is to be continued in interactive mode requiring manual keyboard or mouse input. Here an option flag "E" is required in the input file (Card 1 of the LATUSE format, see Sec. 6.4.2) in order to start the interactive mode. Note that (for obvious reasons) this option is not mentioned explicitly in the BALSAC/LATTICE main option menu. ________________________ Sec. 6.2.13. _____________________________ 179 __ 6.2.13. EXIT AND TRANSFER OPTION, [,], [U] [,] selected from the BALSAC/LATTICE main option menu allows you to finish the session with or without saving the present structure and graphics data on a safety backup file. The finish menu F reads Confirm exit : [Q]uit [E]nd(save) [B]ackup(fbu) [?,]esc asking you to confirm exit or to set the safety backup flag whose present value is shown in the menu by fbu (reading "on" or "off"). > [Q] > [E] selected from submenu F closes any open output file and BALSAC finishes returning to the DOS or Unix command line. selected from submenu F stores all structural/graphics parameters of the present session on quicksave file 'balsac.lat' after which BALSAC finishes. The (LATUSE format) file 'balsac.lat' can be used as input to a subsequent BALSAC run, see Secs. 6.1, 6.2. > [B] flag selected from submenu F allows you to switch the safety backup fbu between "on" (default) and "off". For fbu = "on" any exit from a BALSAC/LATTICE session (both options [Q] and [E]) is preceded by saving the present structure/graphics data including a complete copy of the initialization file in the (LATUSE format) safety backup file 'balsac.svl'. This allows you to resume a previous BALSAC/LATTICE session exactly at the point where it was finished, see Secs. 6.1, 6.2. File 'balsac.svl' will be updated with every session exit or transfer, see below, or whenever an external input file is loaded in a BALSAC/LATTICE session. Thus, it represents always the latest state of a session. For fbu = "off" no safety backup will be performed. > [,] option selected from submenu F returns to the BALSAC/LATTICE main menu. Note that if BALSAC runs in batch mode the exit option (option flag "," in the input file) does not include the exit prompt (submenu F) but acts as if option [Q] were selected above. Thus, the safety backup file 'balsac.svl' will always be created whereas no quicksave file output is possible. __ 180 _________________ Sec. 6.2.13. ____________________________________ [U] selected from the BALSAC/LATTICE main option menu allows you to transfer to the BALSAC/CLUSTER part starting a CLUSTER session from scratch or passing all structure/graphics data of the previous LATTICE session to CLUSTER. The transfer option menu U reads =============================================================== Confirm CLUSTER transfer: [U]scratch [P]ass atoms [?,]esc ========================================================= 36 == > [U] selected from submenu U moves BALSAC to the initial BALSAC/CLUSTER startup menu, see Sec. 6.3 allowing you to start the session interactively, with an external structure input file (PLOT3D format), to return to BALSAC/LATTICE, or to quit altogether. > [P] format selected from submenu U saves all structure data in a PLOT3D transfer file 'balsac.trp' and starts the initial buildup sequence of the CLUSTER session with input taken from this file. This is concluded by showing the main option menu accepting interactive input, see Sec. 6.3.0. Here the present lattice section will be interpreted as a fictitious cluster (without periodicity) whose structure may be changed after transfer inside the BALSAC/CLUSTER session with the structure option, see Sec. 6.3.2. The set of atoms of a lattice section inside BALSAC/LATTICE may be incomplete. This can happen either in layer-by-layer display mode (calculating only atoms of one layer at a time), see Sec. 6.2.7, or if the execute option [X] (calculating section atoms) has not yet been used. In this case, trying to pass atom data to CLUSTER issues a warning ========================================================================= WARNING : atoms) structure incomplete, layer-by-layer display (?) ( nct Transfer: [W]ithout [I]ncomplete [?,]esc =================================================================== 37 == where nct gives the number of atoms available at present (nct = 0 if the execute option has not been used so far). This allows you to - transfer to CLUSTER without structure data (select [W]) which is analogous to option [U] above, - pass the incomplete atom set to CLUSTER (select [I],only for nct > 0), or - return to the BALSAC/LATTICE main option menu (select [,]). > [,] option selected from submenu U returns to the BALSAC/LATTICE main menu. ________________________ Sec. 6.2.14. _____________________________ 181 __ 6.2.14. ANALYSIS OPTION, [A], [Q] All geometric details of a lattice section can be analyzed and listed with the analysis option. This option comes in two versions, the text mode analysis and the graphic analysis, which serve different purposes and can give complementary information about the lattice section. The two analysis versions will be discussed separately in the following. 6.2.14.1. ANALYSIS IN TEXT MODE, [A] [A] This option allows you to obtain detailed information about the lattice section including the basic lattice definition, net plane adapted basis vectors, restructured layers, and atom geometries based on text output. This analysis mode does not require graphics to work on your system. Selecting [A] in the BALSAC/LATTICE main option menu shows the text mode analysis menu A which reads ========== ANALYSIS OPTIONS ======================================= [B]asic [M]iller [R]estructure [F]ull [A]nalyze [D]maxc( dc) [X]plot [?,]esc ============================================================= 31 == __ 182 _________________ Sec. 6.2.14.1. __________________________________ > [B] selected from submenu A lists the basic definition of the bulk lattice which is used to construct the present lattice section. The output reads BASIC LATTICE PARAMETERS : Title = ..title.. a = acon Vol = Lattice vectors X,Y,Z vol Pack= (real) / pack Gx,Gy,Gz (reciprocal) x1 y1 z1 / gx1 gy1 x2 y2 z2 / gx2 gy2 x3 y3 z3 / gx3 gy3 gz1 gz2 gz3 Lattice basis is Minkowski reduced Smallest lattice / atom distance = demin / Densest net plane = ( hmin kmin lmin ) nc lattice basis vector(s) : 1: Xyz,R,Id= xb yb 2: Xyz,R,Id= xb yb ... nco of nc zb zb rad rad nuc nuc atom(s) coincide(s) within ** Press [C], L-click to continue; dmin dc [,], R-click to escape ** after which pressing [C] or L-click (DOS only) returns to the text mode analysis menu A. The basic lattice output starts with the name "title" given to the lattice and lists values of the global lattice scaling constant, acon, of the volume of the elementary cell, vol, and of the packing ratio of the atom spheres, pack. Next, cartesian components of the lattice vectors of the real lattice R1 = (x1, y1, z1) R2 = (x2, y2, z2) R3 = (x3, y3, z3) and of the reciprocal lattice (given by respective vector products) G1 = 2pi/vol * (R2 x R3) = (gx1, gy1, gz1) G2 = 2pi/vol * (R2 x R3) = (gx2, gy2, gz2) G3 = 2pi/vol * (R2 x R3) = (gx3, gy3, gz3) are listed. If the real lattice is Minkowski reduced, i. e. if |Ri*Rj| < 1/2 * min(Ri**2,Rj**2) , (2,3) (i,j) = (1,2), (1,3), ________________________ Sec. 6.2.14.1. ___________________________ 183 __ then the above listing includes the sentence Lattice basis is Minkowski reduced Otherwise, the output Lattice basis is NOT Minkowski reduced Minkowski reduced basis vectors xm1 ym1 zm1 xm2 ym2 zm2 xm3 ym3 zm3 / Transformation : / m11 m12 m13 / m21 m22 m23 / m31 m32 m33 gives the Minkowski reduced lattice vectors together with the basis transformation Rm1 = (xm1, ym1, zm1) Rm2 = (xm2, ym2, zm2) Rm3 = (xm3, ym3, zm3) = = = m11*R1 + m12*R2 + m13*R3 m21*R1 + m22*R2 + m23*R3 m31*R1 + m32*R2 + m33*R3 Next, the smallest distance between translationally equivalent atoms (lattice nearest neighbors), demin, and between any two atoms of the lattice, dmin, is shown. Note that dmin = demin for all primitive lattices. The Miller indices ( hmin kmin lmin) refer to a lattice plane of highest density using the notation defined by the lattice option, see Secs. 6.2.1, 6.2.3. Next, cartesian components of the nc lattice basis vectors (xb, yb, zb) together with respective atom radii rad and nuclear charges / element names are listed. For nc > 2 the listing has to be initiated by answering the prompt [L]ist [?,]esc by selecting [L] while selecting [,] skips the lattice basis vector output. The list concludes by giving the number nco of lattice basis vectors which are translationally equivalent within a distance accuracy dc (defaulted to 1.D-5). For nco > 0 the lattice basis vector listing contains also nco lines of the format i: Xyz,R,Id= xb yb zb rad nuc => ieq indicating that lattice basis vectors i and ieq are translationally equivalent. __ 184 _________________ Sec. 6.2.14.1. __________________________________ > [M] basis selected from submenu A lists the net plane adapted lattice definition and all data relevant to net planes chosen with the Miller index option, see Sec. 6.2.3. The first of two output pages reads MILLER ADAPTED LATTICE PARAMETERS : Miller indices : ( h k l ) Net plane normal vector = ( xn Transformed lattice vectors : R1' : ijk= n11 n12 n13 R2' : ijk= n21 n22 n23 R3' : ijk= n31 n32 n33 Inverted transformation: R1o : ijko= p11 p12 p13 R2o : ijko= p21 p22 p23 R3o : ijko= p31 p32 p33 Net plane distance Inequivalent subplanes = = yn Xyz= Xyz= Xyz= zn ) x1' x2' x3' y1' y2' y3' z1' z2' z3' Orig. lattice vectors in ... Xyzp= xp1 yp1 zp1 Xyzp= xp2 yp2 zp2 Xyzp= xp3 yp3 zp3 dn, keq el. cell area = ea (A - x), plane locations : A: deq(1), B: deq(2), ... nc transformed lattice basis vector(s) : I) Lay Xo Yo Zo : Q1' Q2' Q3' / Rad 1) A q3' / rad 2) ... Nuc xo yo zo : q1' q2' nuc ** Press [C], L-click to continue; [,], R-click to escape ** after which pressing [C] or L-click (DOS only) moves to the second page of output describing symmetry and section size as discussed below. The net plane adapted lattice output starts with Miller index definitions of the net plane stacking direction (h k l) (net plane normal vector) using the notation defined by the lattice option, see Secs. 6.2.1, 6.2.3. Then the net plane normal vector is also given in absolute cartesian coordinates (xn, yn, zn). Next, the output lists net plane adapted lattice vectors R1', R2', R3' (where R1', R2' characterize the periodicity of the (h k l) net planes) given in absolute cartesian coordinates as well as by linear combinations of the original lattice vectors R1' = (x1', y1', z1') R2' = (x2', y2', z2') R3' = (x3', y3', z3') = = = n11*R1 + n12*R2 + n13*R3 n21*R1 + n22*R2 + n23*R3 n31*R1 + n32*R2 + n33*R3 together with the inverted vector transformation where the original lattice vectors are given both as multiples of (R1', R2', R3') R1o R2o R3o = = = p11*R1' + p12*R2' + p13*R3' p21*R1' + p22*R2' + p23*R3' p31*R1' + p32*R2' + p33*R3' ________________________ Sec. 6.2.14.1. ___________________________ 185 __ and in components (X, Y, Z) of the internal coordinate system, see Sec. 5.1. Next, the output gives the distance dn between adjacent (translationally) equivalent lattice planes, and the area ea of the net plane unit cell. Then all keq (<= nc) inequivalent lattice subplanes together with their subplane indices (A, B, ...) and relative locations (along the net plane normal axis) deq(l), l=1,...keq are shown. The first page of the net plane adapted lattice output concludes with a listing of all nc transformed lattice basis vectors (nc =1 for primitive lattices). For nc > 2 the listing has to be initiated by answering the prompt [L]ist [?,]esc by selecting [L] while selecting [,] skips the lattice basis vector output and moves to the second output page, see below. The listing shows each vector in absolute cartesian coordinates and as a linear combination of the net plane adapted lattice vectors r' = (xo, yo, zo) = q1'*R1' + q2'*R2' + q3'*R3' where rad, nuc denote atom radii and nuclear charges / element names assigned to the basis vectors. The second page of the net plane adapted lattice output reads nsur of nstot symmetry elements survive : 1) element nsy : labl vsx, vsy, vsz 2) ... Section size X,Y,Z = " N1,N2,N3 = Initial layer NINIT = lx, n1, ninit ly, n2, ** Press [C], L-click to continue ** lz n3 after which pressing [C] or L-click (DOS only) returns to the text mode analysis menu A. This second page starts with listing all nsur point symmetry elements of the lattice (of a total of nstot symmetry elements) which survive for the selected (h k l) lattice planes. The symmetry elements are characterized by their internal number nsy used in the original assignment, see Sec. 6.4.2, by symmetry labels labl (given in ASCII format), and ny vectors (vsx, vsy, vsz) defined according to the symmetry element type where labels "Cn" (vsx,vsy,vsz) define an n-fold rotational axis with vector pointing along the axis (note that only n = 2, 3, 4, 6 are meaningful), __ 186 _________________ Sec. 6.2.14.1. __________________________________ "M" define mirror planes with vector (vsx,vsy,vsz) defining the mirror plane normal vector. Note that point symmetry elements of lattices are not implemented internally for free lattices and general Bravais lattices where the above symmetry text is replaced by the line No symmetry elements defined Point symmetry elements can, however, be provided with LATUSE format file input, see Sec. 6.4.2. The following two lines give the size of the selected lattice section in absolute units (lx,ly,lz) and in multiples of atomic distances (n1,n2,n3), see Sec. 6.2.4. The final line shows the index ninit defining the number of the lattice plane used as the starting layer in the stacking procedure when the lattice section is built. Note that ninit is meaningful only for non-primitive lattices where keq > 1, see above and Sec. 6.2.4, while for primitive lattices ninit = 1. > [R] selected from submenu A lists all data relevant to restructuring of selected layers of the present lattice section, see Sec. 6.2.5. The output reads either RESTRUCTURING: No layer restructured ** Press [C], L-click to continue ** if no layer restructuring is defined or RESTRUCTURING: nrtot layer(s) restructured Layr Basis Relax (S1, S2, S3) | Reconstruct (M11,M12,M21,M22) nl nb s1 s2 s3 | m11 m12 m22 Xyz,R,Id( 1) : p1 p2 pz , nuc ..... ..... m21 rad , ** Press [C], L-click to continue ** if layers of the lattice section have been restructured. Pressing [C] or L-click (DOS only) returns to the text mode analysis menu A. In the above listing of nrtot restructured layers each layer is described by its layer index nl within the range [1,n3] where n3 is the number of layers defined in the section option, see Sec. 6.2.4. Then, the number nb of separate atoms assigned to this layer is shown where nb = 0 denotes the original basis of the bulk lattice. In addition, vector s = (s1, s2, s3) defines the layer shift vector given in multiples of the (unmodified) layer periodicity vectors R1', R2' and of a layer normal vector Rn. Vector Rn is of length dn equal to the distance between equivalent layers of the (unmodified) bulk and points from layer nl towards layer nl+1. Further, the 2x2 ________________________ Sec. 6.2.14.1. ___________________________ 187 __ transformation matrix with components (m11, m12, m21, m22) defines the changed layer periodicity. The following nb lines list the redefined layer basis set where rt' = (p1, p2, pz) are layer basis vectors given in multiples of the (modified) layer periodicity vectors (R1'',R2'') and of the layer normal vector Rn, see above. Finally, rad and nuc are respective atom radii and nuclear charges. > [F] selected from submenu A combines the basic and the net plane adapted lattice output with the restructuring output, options [B], [M], [R] above, in one output sequence and returns to the text mode analysis menu A. > [A] selected from submenu A allows you to analyze directions, distances, angles, and environments of selected atoms of the lattice section. This analysis requires internal numbers of respective atoms which are obtained from a preceding plot or listing. Atom numbers are shown in plots with the number labeling on (see Sec. 6.2.7.2) and in the numeric listing of all atoms (design option [L], see Sec. 6.2.7). Atom numbers can also be directly obtained from graphics output using the graphic analysis option, see Sec. 6.2.14.2. The prompt Input atom numbers for analysis (N,NA,NB: 1-nct) : asks for three atom numbers n, na, nb within the range [1,nct]. These atoms are evaluated in their geometric properties and listed by Vectors for analysis : 1: Xyz,R,Id( n )= 2: Xyz,R,Id( na)= 3: Xyz,R,Id( nb)= x xa xb Difference vectors : V1(2-1): (hkl)= ( i1 V2(3-1): (hkl)= ( i2 |V1|= l1, |V2|= l2, V1xV2 (hkl)= ( hf kf y ya yb j1 k1 j2 k2 Angle= lf ) z za zb rad rad rad ), Xyz= ( x1 y1 ), Xyz= ( x2 y2 ang12, |V1xV2|= nuc nuc nuc z1 ) z2 ) ar12 Neighbor shells of atom no. n : 1) r1 ( m1 ) 2) r2 ( m2 ) ... 3) r3 ( m3 ) ** Press [C], L-click to continue ** after which pressing [C] or L-click (DOS only) returns to the text mode analysis menu A. The above listing starts by coordinates and attributes of atoms n at r = (x, y, z), na at ra = (xa, ya, za), and nb at rrb = (xb, yb, zb) confirming the input. Then difference vectors between the atom centers are given in absolute cartesian __ 188 _________________ Sec. 6.2.14.1. __________________________________ coordinates and by linear combinations of the lattice vectors v1 = ra - r = ( x1 v2 = rb - r = ( x2 y1 y2 z1 ) = i1*R1 + j1*R2 + k1*R3 z2 ) = i2*R1 + j2*R2 + k2*R3 together with their lengths l1, l2, the angle ang12 between them, and the area ar12 of the parallelogram spanned by v1, v2. Then the normal direction of lattice planes spanned by v1, v2 (given by the vector product v1 x v2) is shown as a combination of reciprocal lattice vectors defined by normalized Miller indices (hf kf lf) where the notation defined by the lattice option is used, see Secs. 6.2.1, 6.2.3. Note that for non-primitive lattices Miller direction indices (hf kf lf) may assume non-integer values. Last, neighbor shells of atom no. n (chosen as the first atom of the above analysis input) are listed by their radii, ri, and number of shell members, mi, where up to 30 shells are considered. Note that only atoms inside the present lattice section are included in the shell counting which may result in incomplete shells compared to the extended bulk/surface. Note that before performing the above analysis the present lattice section has to be calculated using the execute option [X] at least once. Otherwise, a message WARNING: no atoms available for analysis, calculate section ([X]) ** Press [C], L-click to continue ** shows where pressing [C] or L-click (DOS only) returns to the text mode analysis menu A allowing you to calculate the lattice section. If in the above analysis input atom numbers are used which lie outside the section range [1,nct] a message WARNING: input / n na nb / out of range [ 1,nct], NO analysis ** Press [C], L-click to continue ** will be issued listing the incorrect numbers n, na, nb and the available range [1,nct] and BALSAC returns to the text mode analysis menu A. > [D] selected from submenu A allows you to reset the coincidence distance determining the maximum distance between two lattice basis vectors to be considered translationally equivalent, see above. The prompt Atom coincidence distance ( dcold) : shows the present value of the coincidence distance dcold (also given in the text mode analysis menu, default = 1.D-5) and asks for ________________________ Sec. 6.2.14.2. ___________________________ 189 __ a new value dc after which BALSAC returns to the text mode analysis menu A. > [X] selected from submenu A plots the lattice section (switching to graphics mode (DOS) or opening a graphics window (Unix)) or lists its atom coordinates depending on the plot/list mode defined in the graphics option, see Sec. 6.2.7. > [,] selected from submenu A returns to the BALSAC/LATTICE main option menu, see Sec. 6.2.0. 6.2.14.2. ANALYSIS IN GRAPHICS MODE, [Q] [Q] The graphic analysis allows you to analyze directions, distances, angles between atoms and more based on direct information from the graphics screen/window output. It becomes available by selecting [Q] in the main graphics menu showing at the bottom of the graphics screen/window after a plot is completed, see Sec. 6.2.9. Selecting [Q] shows the graphic analysis menu Q of the BALSAC/LATTICE session at the bottom of the graphics screen/window which reads Analyze[DVRAEMN_B_WG] build[L_CK] draw/view[Z_IJ_FSQ+] [?,]esc and gives key codes of all available options grouped according to their use. For mouse selection of menus (Unix/X.11 version), see Sec. 3.3.8, the menu window contains all entries of the above list. Note that the graphic analysis menu is NOT available if design option [L] (atom listing), see Sec. 6.2.7, is applied. Most of the analysis options require input of one or more atom definitions to work. This is indicated by an explanatory line which shows after the option has been selected reading basically Explanation text (r1,r2,...) : where the number of ri's given in parenthesis denotes the number of atoms needed for the analysis. Alternatively, explanatory lines of the type Explanation text (x1,x2,...) : indicate that screen pixel input (independent of atom positions) is wanted. Atoms or screen pixels are selected with the graphic pointer which shows as an arrow if a mouse device is connected to your system or as a "+" at the center of the screen/window. The graphic pointer is moved inside the screen/window using cursor keys [up], [down], [left], [right] or moving the mouse up/down/left/right on the table, see Sec. 5.5. Selecting [+] or [-] increases/decreases the step size of the pointer movement by a factor 2 which can speed up the pointing process. __ 190 _________________ Sec. 6.2.14.2. __________________________________ After an analysis option requiring atom input has been chosen, any visible atom on the screen/window can be selected for analysis by placing the center of the graphic pointer, "+" or mouse "hot" spot, at the surface of the respective atom sphere and pressing [enter] or L-click. This marks the atom by a white cross "+" and shows an information line i: Xyz,R,Id ( nn )= xa ya za rad nc/el pc at the bottom of the screen/window characterizing the atom by its internal number nn, its cartesian coordinates (xa, ya, za), its atom radius rad, its nuclear charge nc, and its element name el. Further, pc gives internal number of the lattice basis vector used to construct the atom which allows you to identify the atom in the radii/charge and the restructure options, see Secs. 6.2.2, 6.2.5. Finally, number i denotes the number of atoms which have been selected for the present analysis. After n atoms required for the analysis have been selected, indicated by i = n in the above atom information line, the analysis is carried out by selecting [X] or R-click (R-click on Unix/X.11 Windows systems uses the middle of three mouse buttons!) which shows the respective analysis result at the bottom of the screen/window. After this the analysis can be repeated using different atoms. Pointing at atoms and obtaining atom information selecting [enter] or L-click can be repeated as many times as needed. If more than n atoms required for the present analysis are selected BALSAC uses those n atoms which have been selected last. Selecting [M] with any analysis option active returns to the graphic analysis menu Q allowing other analysis options. Selecting [,] or R-click returns to the main graphics menu, see Sec. 6.2.9. Note that in layer-by-layer display mode, see Sec. 6.2.7, only atoms of the layer displayed last are accessible in the graphic analysis option while all other atoms are shown but not visible to the graphic pointer. Note further that if stereo duplication of graphics was chosen, see Sec. 6.2.7, the atom selection with the graphic pointer works only on one of the two pictures (right picture by default, depending on the sign of the stereo shift, see Sec. 6.2.15). After an analysis option requiring screen pixel input has been chosen, any pixel of the screen/window can be selected by placing the center of the graphic pointer, "+" or mouse "hot" spot, appropriately and pressing [enter] or L-click. This shows an information line Select .. > X1= or Select .. > X1= nx1 ny1 Define X2: nx1 ny1 X2= nx2 nx ny2 ny Evaluate or correct: nx ny depending on whether one, or more than one pixel points have been selected so far where (nx1, ny1) and (nx2, ny2) are the coordinates of pixel points selected last while (nx, ny) gives the present pixel position on the screen/window. After enough pixel points required for the analysis have been chosen the analysis is carried out by selecting ________________________ Sec. 6.2.14.2. ___________________________ 191 __ [X] or R-click (R-click on Unix/X.11 Windows systems uses the middle of three mouse buttons!) which shows the respective analysis line at the bottom of the screen/window. After this the analysis can be repeated where selecting [M] returns to the graphic analysis menu Q allowing other analysis options while selecting [,] or R-click returns to the main graphics menu, see Sec. 6.2.9. > [D] selected from submenu Q allows you to determine coordinates and distances between two visible atoms. The prompt Distance (r1,r2) : asks for two different atoms n1, n2 to be selected with the pointer after which selecting [X] or R-click shows an analysis line (X,Y,Z),LV = ( xv yv zv ) lv where vector v = (xv, yv, zv) in cartesian coordinates points from atom center n1 to n2 and lv = |v| gives the vector length. > [V] selected from submenu Q allows you to determine distances and angles defined by three visible atoms. The prompt Lengths,Angle (r0,r1,r2) : asks for three different atoms n0, n1, n2 to be selected with the pointer after which selecting [X] or R-click shows an analysis line R1,R2,Angl,Area = l1 l2 ang12 ar where l1, l2 are lengths of the vectors v1, v2 pointing from atom center n0 to n1 and n2 respectively, ang12 is the angle between vectors v1, v2, and ar gives the area of the parallelogram spanned by v1, v2. > [R] of an selected from submenu Q allows you to determine the distances atom from a plane defined by three visible atoms. The prompt Directed plane distance (r0,r1,r2/r3) : asks for four different atoms n0, n1, n2 (defining the plane), and n3 (defining the single atom) to be selected with the pointer after which selecting [X] or R-click shows an analysis line Directed plane distance = dd where the directed distance is given by dd = v3 * (v1 x v2) / |v1 x v2| with vectors v1, v2, v3 pointing from atom n0 to atoms n1, n2, n3 respectively. The absolute distance of atom n3 is always obtained by |dd|. In addition, positive dd values indicate that atom n3 lies __ 192 _________________ Sec. 6.2.14.2. __________________________________ "above" the plane through atoms n0, n1, n2 (the plane normal vector defined by v1 x v2 points towards atom n3) whereas for negative dd values atom n3 lies "below" the plane (vector v1 x v2 points away from atom 3). Note that this analysis option can also be used to determine distances between parallel planes (atoms n0, n1, n2 referring to plane 1, atom n3 to plane 2). Further, it can be used to find out whether four atoms are co-planar (dd = 0). > [A] selected from submenu Q allows you to determine the average position of a set of atoms. The prompt Average (r1...rn) : asks for n >= 1 different atoms n1, ...nn to be selected with the pointer after which selecting [X] or R-click shows an analysis line (XAV,YAV,ZAV) = ( xav yav zav ) where vav = (xav, yav, zav) gives cartesian components of the coordinate average vector of the selected n atoms defined by vav = ( r(n1) + ... + r(nn) ) / n where r(ni) are the vectors pointing to atoms ni. This information becomes useful for example if central high symmetry sites of a net plane are to be determined. > [E] shells selected from submenu Q allows you to determine environment of a visible atom. The prompt Environment shells (r1) : asks for one atom n1 to be selected with the pointer after which selecting [X] or R-click shows an analysis line NN= r1 / m1 r2 / m2 r3 / m3 r4 / m4 r5 / m6 where r1 ... r5 give the radii of the first to 5th neighbor shells with respect to the selected atom and m1 ... m5 are the number of atoms in the shells (shell multiplicity). Neighbor shells beyond the 5th shell can be obtained with the analysis option in text mode, see Sec. 6.2.14.1. Note that only atoms inside the present lattice section are included in the shell counting which may result in incomplete shells compared to the extended bulk/surface. Further, in layer-by-layer display mode, see Sec. 6.2.7, only atoms of the layer displayed last are included in the shell counting yielding planar shell definitions. ________________________ Sec. 6.2.14.2. ___________________________ 193 __ > [M] between selected from submenu Q allows you to determine directions two visible atoms expressed by respective Miller indices. The prompt Miller direction (r1,r2) : asks for two different atoms n1, n2 to be selected with the pointer after which selecting [X] or R-click shows an analysis line Miller (hkl)= ( hv kv lv ) where vector v pointing from atom center n1 to n2 is shown as a linear combination of the reciprocal lattice vectors v = hv * G1 + kv * G2 + lv * G3 where for (hv, kv, lv) notations of the respective lattice type are used, see Secs. 6.2.0, 6.2.3. > net [N] selected from submenu Q allows you to determine directions of planes defined by three visible atoms. The prompt Miller net plane (r0,r1,r2) : asks for three different atoms n0, n1, n2 to be selected with the pointer after which selecting [X] or R-click shows an analysis line Miller (hkl)= ( hv kv lv ) where (hv, kv, lv) are Miller indices of a lattice plane through atoms n0, n1, n2 where notations of the respective lattice type are used, see Secs. 6.2.0, 6.2.3. This allows you to examine lattice subplanes or to visually decompose surfaces into steps and terrace parts. Note that for non-primitive lattices Miller indices of any three lattice atoms may yield non-integer values. > [B] vectors selected from submenu Q allows you to visualize periodicity of the lattice and of restructured lattice layers. The prompt Basis vectors (r1) : asks for one atom n1 to be selected with the pointer. If the chosen atom is built by the original 3-dimensional lattice selecting [X] or R-click shows an analysis line 3-D basis ( x y z ) 1=(x00), 2=(xy0), 3=(xyz) where vector (x, y, z) describes the center of atom n1 in cartesian coordinates. Further, a triple of lines originating from atom center n1 is drawn and shows the three net plane adapted lattice vectors R1', R2', R3' labelled by "1", "2", "3". The text at the __ 194 _________________ Sec. 6.2.14.2. __________________________________ end of the analysis line reminds you that R1' points along the x axis of the present lattice section, R2' has a vanishing z component, while R3' may be most general. If the chosen atom belongs to a restructured layer selecting [X] or R-click shows an analysis line 2-D basis ( x y z ) rebuilt layer no. nr where vector (x, y, z) describes the center of atom n1 in cartesian coordinates. Further, two lines originating from atom center n1 are drawn showing the (modified) lattice vectors R1'', R2'' of the restructured layer labelled by "1", "2". The text at the end of the analysis line indicates that the layer is rebuilt using the restructuring scheme no. nr where nr refers to the order used in the restructure option, see Sec. 6.2.5, 6.2.14.1. > [W] selected from submenu Q allows you to visualize 2- and 3-dimensional Wigner-Seitz elementary cells inside the lattice section. The prompt Wigner-Seitz cells (r1) : asks for one atom n1 to be selected with the pointer after which selecting [X] or R-click shows an analysis line Wigner-Seitz cell at ( x y z ) where vector (x, y, z) describes the center of atom n1 in cartesian coordinates. Further, a 3-dimensional Wigner-Seitz cell about the respective atom is sketched in the plot by red (foreground) and blue (background) lines. In addition the 2-dimensional WignerSeitz cell of the present (h k l) lattice plane is drawn by white lines. Note that the cell sketches become more obvious if the respective atom radii are reduced in size, see Sec. 6.2.2. > [G] selected from submenu Q allows you to visualize 3-dimensional Brillouin zones (Wigner-Seitz cells of the reciprocal lattice) inside the lattice section. The prompt Brillouin zones (r1) : asks for one atom n1 to be selected with the pointer after which selecting [X] or R-click shows an analysis line Brillouin zone at ( x y z ) where vector (x, y, z) describes the center of atom n1 in cartesian coordinates. Further, a 3-dimensional Brillouin zone about the respective atom is sketched in the plot by red (foreground) and blue (background) lines. Note that the cell sketches become more obvious if the respective atom radii are reduced in size, see Sec. 6.2.2. ________________________ Sec. 6.2.14.2. ___________________________ 195 __ > [L] links selected from submenu Q allows you to interactively define connecting atoms by straight lines in subsequent plots. These lines can be expanded later to sticks of finite thickness and may be given any color to visualize atom coordination or bonding relations, see below and Sec. 6.2.7.1. The prompt Links between atoms (r1,r2) : asks for two different atoms n1, n2 to be selected with the pointer after which selecting [X] or R-click shows an analysis line k-th link (Nuc1,Nuc2,Rmin,Rmax) : nuc1 nuc2 rmin rmax giving a link definition described by the nuclear charges of the two selected atoms, nuc1, nuc2, and a distance range [rmin, rmax] determined from the distance lv between the atoms by rmin = lv - eps, rmax = lv + eps with eps = 0.01. This indicates that BALSAC has added a k-th link definition (connection constraint) to the k-1 existing ones as shown in the link option, see Sec. 6.2.7.1. From now on any two atoms of the lattice section will be connected by a line if one atom is of nuclear charge nuc1, the other of charge nuc2, and if the distance between the two atoms lies inside the distance range [rmin, rmax]. The lines will be painted by the default link color defined in the initialization file, see Secs. 5.4, 6.4.7. Note that in layer-by-layer display mode only atoms of the same layer will be connected by lines or sticks while for atom-byatom mode every two atoms of the complete section may be connected. If the maximum number of link definitions (20 at present) is exceeded with the present option any attempt to construct another connection constraint will result in a warning WARNING: maximum no. of links ( 20) exceeded : link ignored without any further action. > [C] selected from submenu Q allows you to interactively redefine background and atom sphere colors from the available palette. The prompt Assign colors: atoms,background (r1) : asks for one atom n1 to be selected with the pointer after which selecting [X] or R-click opens a color box on the left side of the screen/window. The left part of this box displays color blocks of all basic paint colors (palette used to paint atoms) while the right part shows blocks of the full range of available color tones (used for background colors). __ 196 _________________ Sec. 6.2.14.2. __________________________________ Pointing at one of the LEFT BLOCKS of the color box and selecting [X] or L-click assigns this basic color nc to the selected atom n1 and all atoms of the same nuclear charge or layer depending on the paint mode, see Sec. 6.2.7.2. This changes the respective color palette entry, see Secs. 5.4, 6.4.7, after which the color box is overwritten by the present background color and the selection is confirmed by Element nuc/el : color nc selected in element paint mode where nuc/el denotes the nuclear charge / element name of atom n1 or by Layer nl : color nc selected in layer paint mode where nl denotes the layer number where atom n1 was chosen from. Pointing at one of the RIGHT BLOCKS of the color box and selecting [X] or L-click assigns this color nc as the background color in subsequent plots. Then the color box is overwritten by the new background color and the selection is confirmed by Background : color nc selected The modified background color can also be seen in the graphics line of the main option menu, see Sec. 6.2.0, and in the graphics menu, see Sec. 6.2.7. Note that new color assignments will be effective only after the lattice section has been replotted. > [K] colors selected from submenu Q allows you to interactively redefine of lines/sticks connecting atoms as determined by link definitions. The prompt Assign colors: links (r1,r2) : asks for two atoms n1, n2 which are connected by a visible link to be selected with the pointer. Then selecting [X] or R-click opens a color box on the left side of the screen/window. The right part of this box shows blocks of the full range of colors available for painting lines/sticks. Pointing at one of the RIGHT BLOCKS of the color box and selecting [X] or L-click assigns this color nc to all link definitions which apply to lines/sticks connecting the two atoms chosen before. Then the color box is overwritten by the present background color and the selection is confirmed by Links : color nc selected, no. i1 i2 ... where the list i1, i2, ... at the end of the line denotes all links which are affected by the color reassignment. ________________________ Sec. 6.2.14.2. ___________________________ 197 __ Note that new color assignments will be effective only after the lattice section has been replotted. > [Z] selected from submenu Q switches the line show/save flag of the analysis option between "off" (default) and "on". With this flag set to "on" (shown by a dot "." at the end of the graphic analysis menu line) every analysis involving more than one atom will result in the respective atoms being connected by white lines which enhances the visual impression. These connecting lines will show in any subsequent plot unless they are explicitly erased using option [J] below. Further, they will be adjusted if the plot view or perspective change. They will also be included as arrows connecting respective atoms in any subsequent PostScript output file as long as the line show/save flag is set to "on". Further, the PostScript output file will contain a comment line after each arrow definition which shows the analysis result as given by the analysis line. > at [I] selected from submenu Q allows you to include additional lines any location of the screen/window for labelling purposes or to aid the visual impression. The prompt Additional 2-D lines (x1,x2) : asks for two screen locations (nx1, ny1), (nx2, ny2) to be selected with the pointer (independent of any atom positions). During the selecting process the analysis line shows the present pixel position (nx, ny) of the pointer by Select line > Define X1: nx ny or Select line > X1= nx1 ny Define X2: Select line > X1= nx1 ny X2= nx ny or ny nx2 ny2 Evaluate or correct: nx depending on how many pixel points have been chosen. This allows an exact placement of lines on the screen. After two points are chosen, selecting [X] or R-click shows the analysis line Additional line (nll) : (nx1, ny1) -> (nx2, ny2) indicating that the nll-th line points from (nx1, ny1) to (nx2, ny2). Further, BALSAC draws a white or black line (depending on the tone of the background color) between the two points and labels the first point by a small circle. All additional lines will show in subsequent plots unless they are explicitly erased using option [J] below. They will keep their screen position even after plot views or perspectives have been changed. They will also be included as arrows connecting respective atoms in any subsequent PostScript output file as long as the line show/save flag is set to "on". Further, the PostScript output file will contain a comment line after each arrow definition with dummy text that can be easily converted into a text label, see Sec. 6.4.6.1. __ 198 _________________ Sec. 6.2.14.2. __________________________________ > [J] selected from submenu Q erases the last line which has been included in a plot by either analyzing with the line show/save flag set to "on", see option [Z] above, or by explicit line drawing, see option [I] above. Erasing is confirmed by overwriting black by white or white by black lines after which these lines will not show in subsequent plots. NOTE that erasing is final and does not have to be confirmed. > [F] view selected from submenu Q allows you to interactively reset the focus used in central projection. The prompt New view focus (r1) : asks for one atom n1 to be selected with the pointer after which selecting [X] or R-click resets the view focus such that it coincides with the center of atom n1. Then the lattice section is replotted with the new view focus placed at the center of the screen/window (if no additional plot shift is applied, see option [S] below) and BALSAC returns to the graphic analysis menu Q. The new focus is applied to all future plots until it is changed with option [F], [Q], or in the view menu, see Sec. 6.2.6. Refocussing can give a more natural perspective view of selected parts of a large lattice section. However, refocussing may move parts of the lattice section outside the screen/window which can be compensated by rigidly shifting the plot using option [S]. The present refocussing option is restricted to atom centers but is more direct than option [F] of the view menu, see Sec. 6.2.6. Note that refocussing requires central projection for meaningful results, see Sec. 6.2.6. > [S] lattice selected from submenu Q allows you to shift the plot of a section rigidly on the screen/window. The prompt Global 2-D plot shift (x1,x2) : asks for two screen locations (nx1, ny1), (nx2, ny2) to be selected with the pointer (independent of any atom positions). During the selecting process the analysis line shows the present pixel position (nx, ny) of the pointer by Select shift > Define X1: nx ny or Select shift > X1= nx1 ny Define X2: Select shift > X1= nx1 ny X2= nx ny or nx2 ny2 Evaluate or correct: ny depending on how many pixel points have been chosen. This allows an exact definition of the plot shift on the screen. After two points are chosen, selecting [X] or R-click replots the lattice section nx ________________________ Sec. 6.2.14.2. ___________________________ 199 __ with the plot being shifted rigidly by a pixel vector s = (sx, sy) = (nx2 - nx1, ny2 - ny1) after which BALSAC returns to the graphic analysis menu Q. The shift is applied to all future plots until it is changed with option [S], [Q], or in the view menu, see Sec. 6.2.6. Shifting plots may be necessary in order to center important parts of the plot, in particular, after refocussing the view with option [F] above. The present shift option is more intuitive than option [S] of the view menu, see Sec. 6.2.6. > [Q] selected from submenu Q allows you to reset the view focus and global plot shift to default values. The prompt Confirm default focus/shift : [Q]reset [?,]esc asks you to confirm the defaults where selecting [,] or R-click returns to submenu Q while selecting [Q] resets the view focus (default focus at center of lattice section) and the global plot shift (default shift vector s = 0) after which the lattice section is replotted. Resetting to defaults may become necessary in order to undo previous (unreasonable) refocussing or shifting. > [+] present selected from submenu Q replots the lattice section with viewing and graphics parameters. This becomes useful if a plot has been analyzed and too many additional lines or circles drawn in the analysis confuse the picture. > [,] BALSAC selected from submenu Q completes the graphic analysis and returns to the main option menu in graphics mode, see Sec. 6.2.9. The most recent (up to 10) analysis lines generated by the graphics analysis will be stored internally and may be recalled in several option menus. (Option [D]ispla in radii menu, see Sec. 6.2.2, in section menu, see Sec. 6.2.4, in restructure menu, see Sec. 6.2.5, in view menu, see Sec. 6.2.6, in graphics/links menu, see Sec. 6.2.7.1.) __ 200 _________________ Sec. 6.2.15. ____________________________________ 6.2.15. BASIC PARAMETER OPTION, [P] [P] This option allows you to redefine a number of basic control parameters provided by the initialization file (default name is 'balsac2.ini') when BALSAC is started. All control parameter values are valid until changed further or until the BALSAC session is finished. The complete set of (modified) control parameters can be saved on a separate file and may be used as initialization file for subsequent BALSAC sessions. In addition, control parameter sets can be read in from external files within this option. The basic parameter menu P reads ========== BASIC PARAMETER OPTIONS =================================== [M]ouse(fms) [H]elp(fhl) [T]each(ftc) me[N]u(fme) [E]ltb(fel) [I]ndex(fin) [O]rder(frd) [W]indow : (Ox,Oy)= ( ox, oy) (Lwx,Lwy)= ( lwx, lwy) Qyx= qyx [A]dapter : Int= int, Colmx= colmx, Chx,Chy= chx chy [P]aint : basic colors= ncb, tones= nsh, palette= nptot wor[K]b ste[R]eo [L]oadini [S]avini [B]ackup(fbu) [X]plot [?,]esc ================================================================ 38 == The first two lines of the menu include options characterized by flags given in parentheses and reading "on" or "off" depending on whether the respective option is set or unset. The line starting with "[W]indow ..." includes gives the complete window definition. This the origin (upper left corner) of the graphics window (ox, oy) which is relevant only for the Unix/X.11 version of BALSAC. Further, (lwx, lwy) gives the x/y (graphics) window size in pixels and qyx shows the y/x pixel distortion for screens with pixel shapes other than square. "[A]dapter ..." relevant gives the complete adapter information and is mostly for the DOS version of BALSAC. Here int denotes the interrupt number used to choose the graphics mode of the PC graphics adapter, colmx is the maximum number of colors available from the adapter, and chx/chy define the pixel width/length used for characters in graphics mode. "[P]aint ..." gives the number of basic colors, ncb, used to paint atoms and nsh denotes the number of tones available for each basic color. Further, nptot gives the number of entries in the color palette determining the sequence of paint colors used to paint atoms. Note that certain control parameter values can lead to unwanted results if defined incorrectly. Therefore, the choice of control parameters should be considered with care. All parameters are identical for BALSAC/LATTICE and BALSAC/CLUSTER sessions. ________________________ Sec. 6.2.15. _____________________________ 201 __ > [M] selected from submenu P switches the mouse selection flag fms between "on" and "off" (default is "off") and shows the updated submenu P. For fms = "on" (DOS/VGA version) selecting an option key, e.g. [x], becomes possible by pointing the mouse text cursor (black or white rectangle) at the character between the [ ] brackets and clicking the left mouse button. However, direct keyboard input is still possible. (Unix/X.11 version) a separate menu window named "Options Menu" is opened and will remain open until numerical input is requested, mouse selection mode is turned off, or BALSAC finishes. The menu window contains all entries of a given menu inside rectangles separated by black lines where the entries are given as " X: Option text " with X denoting the option key in keyboard mode and the option text being in most cases more explanatory than that of the keyboard menu, see Secs. 3.3.8, 10. Pointing and left clicking with the mouse inside a rectangle will select the respective key code. With this option direct keyboard input becomes impossible and can be reactivated only by setting the mouse select flag fms to "off". For further information on the mouse menu selection mode see Sec. 3.3.8. Note that mouse selection mode can also be reset by selecting [@] in any BALSAC option menu, see also Sec. 3.3.8. > [H] between selected from submenu P switches the on-line help flag fhl "on" and "off" (default is "on") and shows the updated submenu P. Selecting [H] with fhl = "on" switches the flag to "off" and on-line help becomes unavailable which is confirmed by On-line help off in the text window (Unix/X.11 version only) and the escape prompt of all option menus changes to "[,]Quit" and "[,]esc" respectively. Turning off on-line help may be needed if the on-line help file has become corrupt or if customized help file is to be loaded. Selecting [H] with fhl = "off" shows the prompt Help file name ("+"=def,"-"=esc): asking for a character string fname (up to 72 characters) which defines the file name, e.g. "myown.hlp", of an on-line help format file, see Sec. 6.4.8. Here the one-character filename "+" denotes the default on-line help file 'balsac2.hlp', see Sec. 6.4.8,1, while dummy input "-" returns to submenu P. After a valid file name is given the flag fhl is switched to "on" and on-line help becomes available as indicated by "... [?]Help [?,]Quit" in the main option menus and by "[?,]esc" in all other menus. For further details see Secs. 3.3.3, 3.3.8. __ 202 _________________ Sec. 6.2.15. ____________________________________ > [T] between selected from submenu P switches the teach mode flag ftc "on" and "off" (default is "off") and shows the updated submenu P. Selecting [T] (twice) with ftc = "on" switches the flag to "off" and returns to default run mode which is confirmed by Teach mode off, help active in the text window (Unix/X.11 version only) and the escape prompt of all option menus changes to "... [?]Help [?,]Quit" and "[?,]esc" respectively. Alternatively, teach mode can be turned off in any menu by selecting [%] with the same result as using option [T] of the present submenu P. Selecting [T] with ftc = "off" shows the prompt Teach file name ("+"=def,"-"=esc): asking for a character string fname (up to 72 characters) which defines the file name, e.g. "myteach.hlp", of an on-line help format file, see Sec. 6.4.8 used in teach mode. Here the one-character filename "+" denotes the default on-line help file 'balsac2.hlp', see Sec. 6.4.8,1, while dummy input "-" returns to submenu P. After a valid file name is given the flag ftc is switched to "on" and BALSAC runs in teach mode as indicated by "... (teach) [%,]Quit" in the main option menus and by "[%,]esc" in all other menus. Selecting an option in teach mode does not immediately execute the option. Instead, a short explanatory text taken from the online help file is shown and a prompt asks to confirm or reject the selection. For further details see Secs. 3.3.9, 3.3.8. > plot [N] selected from submenu P switches the immediate menu flag fme between "on" and "off" (default is "on") and shows the updated submenu P. For fme = "on" the main option menu in graphics mode shows at the bottom of the screen/window immediately after a is finished. For fme = "off" any plot finishes without showing the option menu waiting for keyboard or mouse input. Selecting [C] or L-click will then display the menu. This allows you to take photographic pictures of a plot or save the image with frame capturing tools without being disturbed by the menu line. > [E] between selected from submenu P switches the element table flag fel "on" and "off" (default is "off") and shows the updated submenu P. For fel = "on" plots of lattice sections or clusters will be completed by a table at the right top of the screen/window which contains color assignments to elements or layer numbers depending on the paint mode, see Sec. 6.2.7.2. Note that this table will not be shown on PostScript output. ________________________ Sec. 6.2.15. _____________________________ 203 __ > [I] between selected from submenu P switches the menu index flag fin "on" and "off" (default is "off") and shows the updated submenu P. For fin = "off" most menus will show with a double line =================================================== at the end for better readability. For fin = "on" menus finishing with a double line will include the internal menu index im inside the line reading ============================================= im == where im refers to an internal numbering scheme which is also used to address menu help text in the on-line help file, see Sec. 6.4.8. Further, for fin = "on" index im shows in all menu windows (Unix/X.11 version only) at the bottom entry reading " ?: LATTICE Menu No. im " or " ?: CLUSTER Menu No. im " The use of this option is meaningful only for testing purposes or if the on-line help file is to be modified. Note that all BALSAC menus which come with a double line at the end are shown in Section 6.0-3 with the menu index added. > [O] between selected from submenu P switches the menu order flag frd "on" and "off" (default is "on") and shows the updated submenu P. This option is meaningful ONLY for the Unix/X.11 version of BALSAC. For fin = "off" menu windows list options in an order determined by the internal programming sequence which may sometimes be confusing. For fin = "on" menu windows list options in alphabetic (ASCII) order of the key codes which helps to find options in long lists. The order means in particular that "[+] comes before [:] comes before [A] - [Z] comes before [a] - [z]". > [W] selected from submenu P allows you to redefine size and position of the graphics screen/window as well as compensate for pixel shapes other than square on your screen. This option is useful mainly for the Unix/X.11 version of BALSAC. The prompt Window definition OX,OY,LX,LY,QYX (ox,oy,lwx,lwy,qyx |"/"=esc) : asks for five numbers, ox, oy, lwx, lwy, qyx, defining graphics window parameters after which BALSAC returns to submenu P. Here (ox, oy) denotes the window origin (upper left corner) on the screen, lwx, lwy are window width and height, and qyx gives the y/x pixel distortion for screens with pixel shapes other than square. The present window parameter values are shown in the above prompt in parentheses and are conserved with dummy input "/". __ 204 _________________ Sec. 6.2.15. ____________________________________ A distortion value qyx = q assumes that a line of 100 pixels in y direction (up-down) is of the same length as one of 100*q pixels in x direction (left-right). Modifying qyx in an interactive BALSAC run may be required to correct for y/x distortions in the graphics output if different monitors are used or if graphics output is to be saved for subsequent printing on a printer with an x/y pixel size ratio different from that of the screen. > [A] selected from submenu P allows you to reset the basic adapter definition of the graphics screen. This option is useful and available ONLY with the DOS version of BALSAC. The prompt Adapter definition "/"=esc) : INT,COLMX,CHX,CHY (int,colmx,chx,chy | asks for four numbers int, colmx, chx, chy, defining basic parameters of your PC graphics adapter after which BALSAC moves to option [W] above allowing you to redefine size and position of the graphics screen/window. Here int denotes the interrupt number used to choose the graphics mode of the PC graphics adapter, colmx is the maximum number of colors available with the adapter, and chx/chy defines the pixel size (width/height) of characters used in graphics mode. The present adapter parameter values are shown in the above prompt in parentheses and are conserved with dummy input "/". Adapter parameters depend on each other and should be chosen with care. The following table gives standard values for the most common graphics modes which work with VGA adapters -------------------------------------------------mode lwx lwy int colmx chx chy -------------------------------------------------CGA 640 200 14 16 8 8 EGA 640 350 16 16 8 14 VGA 640 480 18 16 8 16 -------------------------------------------------Apart from these standard settings graphics modes with higher resolution and more colors are available with enhanced VGA adapters. For appropriate interrupt and parameter settings consult your adapter manual. Note that some enhanced graphics modes may require special mouse drivers for the graphical mouse analysis to work. NOTE that false interrupt values may lead to strange graphics results and may even destroy your adapter. > [P] selected from submenu P allows you to reset all relevant parameters defining color and fonts used in graphics screens/windows of BALSAC sessions. Details of the paint menu are described in Sec. 6.2.15.1. ________________________ Sec. 6.2.15. _____________________________ 205 __ > [K] selected from submenu P moves to the color/shading workbench switching to graphics mode (DOS) or opening a graphics window (Unix). This allows you to change all basic and paint colors as well as ball shading angles in a very intuitive way using the mouse or a graphics pointer. Further details are given in Sec. 6.2.15.2. > [R] selected from submenu P allows you to redefine distortion, plot shift and color codes used for stereo graphics of BALSAC. The stereo menu PR reads ====================================================================== Stereo: [D]istortion/shift (pu, deye) [R]ed/blue/white (isr isb isw) [?,]esc ================================================================ 43 == where pu, deye give the present values of the eye distance and picture shift parameters explained below. Further, isr, isb, isw, are color codes referring to colors red, blue, and white used in red/blue stereo mode, see Sec. 6.2.7. Full color stereo mode allows you to get a more realistic 3-dimensional impression of the lattice section or cluster using optical stereo glasses, see Sec. 6.2.7. In this mode, a lattice section or cluster is shown by two pictures on the screen. The pictures are reduced to 50% in size (with respect to their mono equivalents), are horizontally displaced by a picture shift deye, and differ slightly in their projection geometry reflecting the viewer's eye distance and his distance from the object. Here the eye distance pu is measured in units of the diameter D of the lattice section or cluster where meaningful values of pu lie between 0.1 and 1.0 (pu = 0.3 is default). The picture shift deye which determines the shift between the centers of the two stereo pictures on the screen/window can assume positive and negative values where for deye > 0 (right) the left (right) picture simulates the left eye view required for viewing with optical stereo glasses. deye < 0 the left (right) picture simulates the right (left) eye view required for cross eyed stereo viewing without glasses. Meaningful values for |deye| lie between 100 and 600 (deye = 320 is default). Red/blue stereo mode allows you to get a 3-dimensional impression of the lattice section or cluster using red/blue stereo filter glasses, see Sec. 6.2.7. In this mode, the atoms of a lattice section or cluster are shown by two horizontally shifted circles of equal radius and of colors blue (left circle) and red (right circle). The distance between the circles (stereo distortion) is determined by the distance z of the center from the viewer and the __ 206 _________________ Sec. 6.2.15. ____________________________________ eye distance of the viewer. Analogously, all lines of the plot are visualized as red and blue lines accounting for the stereo distortion. As in full color stereo mode the stereo impression is controlled, apart from the perspective projection, by the eye distance pu, see above. > > [D] selected from submenu PR allows you to redefine the eye distance and picture shift used for stereo views. The prompt Stereo distortion,shift PU,DEYE (pu, deye | "/"=esc) : asks for two numbers, pu, deye, defining new values of the eye distance and picture shift after which BALSAC returns to submenu PR. Dummy input "/" will keep the old values given with the prompt (in parenthesis). Note that parameter deye is ignored in red/blue stereo plots, see above. > > [R] selected from submenu PR allows you to redefine the color codes used for colors red, blue, and white in red/blue stereo mode. The prompt Stereo red/blue/white ISR,ISB,ISW ( isr, isb, isw | "/"=esc) : asks for three numbers, isr, isb, isw, defining new color codes for stereo red, blue, and white after which BALSAC returns to submenu PR. Dummy input "/" will keep the old values given with the prompt (in parenthesis). The stereo color codes refer to the full color table of nctot colors, see Sec. 5.4. However, only colors adjusted to the stereo filter glasses are meaningful. Otherwise, the plot looks very confusing and can even lead to headaches if viewed for an extended time. > > > [L] those [,] selected from submenu PR returns immediately to submenu P. selected from submenu P allows you to load an external initialization file replacing all basic parameter values by contained in the file. The prompt Init file name for input ("+"=def,"-"=esc): asks for a character string fname (up to 72 characters) which defines the file name, e.g. "myown.ini", of an external initialization file, see Sec. 6.4.7. Here the one-character filename "+" denotes the default initialization file on-line help file 'balsac2.ini', while dummy input "-" returns to submenu P without file input. After a valid file name is given BALSAC reads and replaces all basic parameter values and returns to submenu P. External initialization files may be created with option [S] below. ________________________ Sec. 6.2.15. _____________________________ 207 __ Note that structure input files may contain the complete initialization data, cp. option [I] of the file output menu, Sec. 6.2.8, which overwrite all defaults when the files are loaded at the beginning of a BALSAC session. The present option allows you to restore the parameter values of the default initialization file. > [S] selected from submenu P allows you to save all basic parameter values of the present BALSAC session in an external initialization file for later use. The prompt Init file name for output ("-"=esc): asks for a character string fname (up to 72 characters) which defines the file name, e.g. "myown.ini", of an external initialization file, see Sec. 6.4.7. Note that choosing the name 'balsac2.ini' in the above prompt defines the default initialization file for output which should be avoided. For a valid file name BALSAC stores all control parameter values of the present session in the file and returns to submenu P. The one-character dummy filename "-" returns to submenu P without file output. Alternatively, initialization information can also be saved with LATUSE and PLOT3D format structure files, see Secs. 6.2.8, 6.3.6, and 6.4.2-3. External initialization files may be read in by BALSAC with option [L], see above, or given on the command line when BALSAC is started, see Sec. 6.1. > [B] between selected from submenu P switches the safety backup flag fbu "on" and "off" (default is "on") and shows the updated submenu P. For fbu = "on" any exit from a BALSAC session by finish or transfer or loading a new structure file is preceded by saving the present structure/graphics data including a complete copy of the initialization file in the (LATUSE format) safety backup file 'balsac.svl' or in the (PLOT3D format) file 'balsac.svc'. This allows you to resume a previous BALSAC session exactly at the point where it was finished, see Secs. 6.1, 6.2. File 'balsac.svl' or 'balsac.svc' will be updated with every session exit or transfer, or whenever an external structure input file is loaded in a BALSAC session. Thus, it represents always the latest state of a session. For fbu = "off" no safety backup will be performed. > [X] selected from submenu P plots the lattice section (switching to graphics mode (DOS) or opening a graphics window (Unix)) or lists its atom coordinates depending on the plot/list mode defined in the present graphics option, see Sec. 6.2.7. > [,] selected from submenu P returns immediately to the BALSAC/LATTICE main option menu. NOTE that all parameter values modified inside the parameter option are valid only for the present BALSAC session unless they are saved on separate initialization files for input to a subsequent BALSAC session. __ 208 _________________ Sec. 6.2.15.1. __________________________________ Restarting BALSAC always results in control parameter values taken from the initialization file defined on the command line or defaulted to 'balsac2.ini'. 6.2.15.1. SETTING BASIC COLORS Option [P] selected from the basic parameter menu P, see Sec. 6.2.15, allows you to redefine all basic parameters connected with color painting in plots which includes color selection and shading. The paint menu PP reads ========== BASIC PARAMETER OPTIONS ======================================== Basic color table: ncolb colors, nsh tones Shading (Diff,Lamb,Spec/Theta,Phi) = qdiff, qlamb, qspec / thtsh, phish B/W/LC= ib iw ilc, palette= nptot, font= [ fontname ] Painting: [B]ascol [S]hade [C]odes [W]orkb [G]ray(fgr) c[T]abl [F]ont [X]plot [?,]esc =================================================================== 39 ==== Here ncolb is the total number of paint colors and nsh the number of tones of each paint color defined at present, see Sec. 5.4. Ball shading is determined by weights qdiff (diffuse background), qlamb (Lambert shading), qspec (specular reflection) which are relative values ranging between 0.0 and 1.0 with qdiff + qlam + qspc = 1.0. Further, thtsh and phish give the incident light direction with respect to the screen normal used for shading, see Sec. 5.4. The numbers ib, iw, ilc are the present color table entries of the base colors "black", "white" and of the default link color while nptot gives the number of entries in the color palette determining the sequence of paint colors used to paint atoms. The gray switch flag fgr reads "on" or "off" depending on whether screen colors are replaced by respective gray tones, see Sec. 5.4. > [B] selected from submenu PP allows you to reset and list all basic paint color definitions. The basic paint color menu PPB reads ======================================================================== Basic color table: ncolb colors, nsh tones Basic colors: [N]ew [M]od [A]dd [D]el t[O]ne [R]gbmx [L]ist c[T]abl [X]plot [?,]esc ================================================================== 40 == where ncolb is the total number of paint colors and nsh the number of color tones of each paint color defined at present, see Sec. 5.4. Note that existing colors can be changed also interactively with the color/shading workbench, see Sec. 6.2.15.2. ________________________ Sec. 6.2.15.1. ___________________________ 209 __ > > [N] selected from submenu PPB allows you to redefine all basic paint colors from scratch. The prompt No. of basic colors NCOLB ( <ncmax, 0=esc) : asks for the number ncolb of basic colors to be defined in the following where ncmax gives the maximum number of colors available. Dummy input ncolb = 0 returns to submenu PPB without affecting the present color definitions while for ncolb > 0, the prompts Input ncolb basic colors : 1) NR,NG,NB/Qbot,Qbas,Qenh,Qtop/Qgam : ... ncolb) NR,NG,NB/Qbot,Qbas,Qenh,Qtop/Qgam : ask for ncolb sets of eight numbers, nr, ng, nb, qbot, qbas, qenh, qtop, qgam, defining each new paint color after which BALSAC returns to submenu PPB. Here (nr, ng, nb) gives the RGB definition of the generating color where all values must lie within the range [0, rgb] with rgb = 63 for DOS/VGA and = 65635 for Unix. Further, qbot, qbas, qenh, qtop are factors determining the darkest, default dark, default light, and lightest tone of the paint color where all values must lie within the range [0, 1]. Finally, qgam is the gamma factor determining the distribution of color tones between darkest and lightest tone used for continuous shading. The color definitions are discussed in detail in Sec. 5.4. Note that the above input of 8*ncolb numbers may be tedious and editing the respective initialization file, see Sec. 6.4.7, may be faster and safer. > > [M] selected from submenu PPB allows you to modify a specific basic paint color from the present set. The prompt Modify selected basic color N (1- ncolb, 0=esc) : asks for the number n of a basic paint color within the range [1,ncolb] to be modified. Dummy input n = 0 returns to submenu PPB without affecting the present color definitions while for n > 0, the prompt Color( n)= nr ng nb / qbot qbas qenh qtop / qgam Redefine NR,NG,NB/Qbot,Qbas,Qenh,Qtop/Qgam ("/"=esc) : shows the present definition of paint color n and asks for eight numbers, nr, ng, nb, qbot, qbas, qenh, qtop, qgam, defining the modified paint color after which BALSAC returns to submenu PPB. The color parameters are explained in option [N] above and in Sec. 5.4. Dummy input "/" will keep the original definition of paint color n. __ 210 _________________ Sec. 6.2.15.1. __________________________________ > > [A] selected from submenu PPB allows you to add a basic paint color to the present set. The prompt Add basic color ("8*0"=esc) : NR,NG,NB/Qbot,Qbas,Qenh,Qtop/Qgam asks for eight numbers, nr, ng, nb, qbot, qbas, qenh, qtop, qgam, defining the new paint color to be added after which BALSAC returns to submenu PPB. The color parameters are explained in option [N] above and in Sec. 5.4. Dummy input "8*0" will return to submenu PPB without a color added. > > paint [D] selected from submenu PPB allows you to remove a basic color from the present set. The prompt Remove basic color N (1-ncolb, 0=esc) : asks for the number n of a basic paint color within the range [1,ncolb] to be removed. Dummy input n = 0 returns to submenu PPB without affecting the present color definitions while for n > 0 basic color no. n will be removed from the set after which BALSAC returns to submenu PPB. > of > [O] selected from submenu PPB allows you to change the number color tones generated for each basic paint color and used for ball shading as well as for background painting in plots. The prompt No. of tones NSH (nsho, max=nshmax, 0=esc) asks for an integer defining the number of color tones to be generated for each basic paint color. Here nsho gives the present value and nshmax (= nctot/ncolb) denotes the largest available value determined by the total number of colors nctot and the number of paint colors ncolb. Dummy input nsh = 0 keeps the present definition while for nsh > 0 the internal color table is modified according to the new number of tones after which BALSAC returns to submenu PPB. Values nsh > nshmax will be truncated to nsh = nshmax. > > [R] selected from submenu PPB allows you to change the global maximum value allowed for components (r, g, b) in RGB color settings. The prompt RGB maximum (rgbmaxo, 0=esc) : asks for an integer giving the new maximum value rgbmax where rgbmaxo in the prompt gives the old value. The input leads to a global rescaling of all RGB definitions by a factor rgbmax/rgbmaxo after which BALSAC returns to submenu PPB. Allowed values for rgbmax depend on the graphics adapter where the standard values are N = 63 (2**6-1) for DOS and N = 65535 (2**16-1) for Unix/X.11 Windows systems. RGB rescaling may ________________________ Sec. 6.2.15.1. ___________________________ 211 __ become necessary if BALSAC output files of LATUSE or PLOT3D type include initialization information and are transferred between DOS and Unix systems. WARNING: RGB rescaling can result in strange color definitions and should generally be avoided. > > paint [L] selected from submenu PPB allows you to list all basic color definitions of the present set. The prompt ncolb basic colors : list NA,NE : asks for a range [na, ne] of the set of ncolb basic paint colors to be listed. For < na <= ne <= ncolb the listing shows as na) ... ne) NR nr NG ng NB / nb / Qbot qbot Qbas qbas Qenh qenh Qtop / qtop / Qgam qgam nr ng nb / qbot qbas qenh qtop / qgam after which BALSAC returns to submenu PPB. The color parameters in this list are explained in option [N] above and in Sec. 5.4. > > [T] selected from submenu PPB displays a color test table (in a separate graphics window, Unix) showing all color definitions together with color numbers available inside BALSAC. The colors are described in the initialization file and generated when BALSAC is started, see Sec. 5.4. The first line from the top of the table shows blocks of the base colors together with their names where the DOS/VGA version of BALSAC lists four colors defining "black", "white", "stereo red", "stereo blue" by black white (st)red (st)blue and the Unix/X.11 version lists eight colors defining "black", "white", "background", "text", "bonds", "stereo red", "stereo blue", "stereo white" by blck wht bckg txt bnd srd sbl swt Then the dark and light tones of all paint colors in the sequence of the palette definition are shown together with a line colors: palette= nptot, total= nctot where nptot is the number of entries in the color palette and nctot is the total number of RGB colors defined at present. __ 212 _________________ Sec. 6.2.15.1. __________________________________ Next for each of the ncolb paint colors the sequence of nsh tones, see Sec. 5.4, is displayed by a row of blocks going from darkest to lightest tones. The line to the right of each block sequence reads j ( def.dark(j) , def.light(j) ) ns(j)+1 - ns(j)+nsh where j is the paint color index (to be used in the palette for painting (shaded) balls), def.dark(j) and def.light(j) are color table entries of the default dark and light tones, and ns(j)+1 denotes the darkest, ns(j)+nsh the lightest tone of paint color j. In addition the two default color tones are marked by crossing lines in the respective color blocks (def.dark = white lines, def.light = black lines). Pressing any key clears the window and returns to the previous menu. The Unix/X.11 version of BALSAC shows in addition glossy-shaded balls next to each of the paint color rows using the respective color tones and demonstrating the incident light direction as well as diffuse, Lambert shading, and specular reflection contributions. > > section [X] selected from submenu PPB plots the present lattice (switching to graphics mode (DOS) or opening a graphics window (Unix)) or lists its atom coordinates depending on the plot/list mode defined in the graphics option, see Sec. 6.2.7. > > > [S] [,] selected from submenu PPB returns to the paint menu PP. selected from submenu PP allows you to list and reset all parameters relevant for ball shading in plots. The shading menu PPS reads ================================================= Shading: [W]eights [A]ngles c[T]abl [?,]esc =========================================== 41 == > > relative [W] selected from submenu PPS allows you to redefine the weights of different contributions to shading. The prompt Shading weights DIFF,LAMB,SPEC (qdiff qlamb qspec|"3*- 1"=esc) : asks for three numbers, qdiff, qlamb, qspec, defining the relative weights of shading contributions due to the diffuse background, to Lambert shading, and to specular reflection as described in detail in Sec. 5.4. Meaningful values should range between 0 and 1 with qdiff + qlamb + qspec = 1 (defaults are qdiff = 0.1, qlamb = 0.35, qspec = 0.55). After the input BALSAC returns to submenu PPS. Dummy input "3*-1" will keep the present shading values. ________________________ Sec. 6.2.15.1. ___________________________ 213 __ > > [A] direction selected from submenu PPS allows you to redefine the of the incident light used for shading. The prompt Shading angles THETA,PHI (theta phi | "/"=esc) : asks for two numbers, theta, phi, defining the polar and azimuthal angles of the incident light. The angles are taken with respect to the screen normal direction where polar angle phi = 0 corresponds to the vertical y direction on the screen (defaults are theta, phi = 65, -25 degrees referring to light shining from the upper left front location relative to the viewer). For further details consult Sec. 5.4. After the input BALSAC returns to submenu PPS. Dummy input "/" will keep the present angle values. Note that shading angles can be changed also interactively with the color/shading workbench, see Sec. 6.2.15.2. > > [T] selected from submenu PPS displays a color test table (in a separate graphics window, Unix) showing all color definitions together with color numbers available inside BALSAC. This option is identical to option [T] of the basic paint color menu PPB described above. > > > [C] colors [,] selected from submenu PPS returns to the paint menu PP. selected from submenu PP allows you to redefine the default for "black", "white", and for links between atoms (base colors) as well as all entries of the color palette which determines the sequence of colors used to paint atoms. The color palette menu PPC reads ============================================================== Basic codes : B/W/LC= ib iw ilc gray= fgr Palette(nptot) : np(1) ... np(nptot) Palette description (partial) Colors: [B]lack/white/links [P]alette c[T]abl [?,]esc ======================================================== 42 == where the numbers ib, iw, ilc give the color codes (color table entries, see Sec. 5.4) of default colors for "black", "white", and for links between atoms. The gray switch flag fgr reads "on" or "off" depending on whether screen colors are replaced by respective gray tones. The next line lists the complete color palette of nptot entries np(i), i=1...nptot defined at present which determines the sequence of basic paint colors used to paint atoms. __ 214 _________________ Sec. 6.2.15.1. __________________________________ The line "Palette description (partial)" contains a listing of the palette part which is used in the present atom painting. For a BALSAC/LATTICE session producing plots where atoms are painted according to layer number the palette listing reads n3 layers: np(1) ... np(n3) where np(1) ... np(n3) are palette entries (pointing at a basic paint color) of each of the n3 layers of the lattice section. For a BALSAC/LATTICE or BALSAC/CLUSTER session where atoms are painted according to element (nuclear charge) the palette listing reads nel elements: El(np(1)) ... El(np(n3)) where np(1) ... np(n3) are palette entries of each of the nel different elements appearing in the lattice section or cluster with the element names given by El. Note that all base colors and the palette definition can be changed also interactively with the color/shading workbench, see Sec. 6.2.15.2. > > default [B] selected from submenu PPC allows you to redefine the colors used for "black", "white", and for links between atoms. The prompt Black/white/links color codes IB,IW,ILC ( ib, iw, ilc) : asks for three integers defining the color codes ib, iw, ilc (entries of the internal color table) used for default colors "black", "white", and for links between atoms where the values in parenthesis give the present settings. Colors "black" and "white" are used for circle/dot/ball drawings in graphics output, for the title line and for the wire frame about the lattice section or cluster. Lines/sticks connecting atoms are painted with default color ilc if not redefined by individual values, see Sec. 6.2.7.1. Resetting these colors may improve the visibility or can achieve special color effects. After complete input BALSAC returns to submenu PPC. > > complete [P] selected from submenu PPC allows you to redefine the color palette which determines the sequence of basic paint colors used to paint atoms. The prompt Palette description (partial) Input N, N color codes (0=esc) : gives a listing of the palette part which is used in the present atom painting, for the complete palette see above, and asks for a new (complete) color palette. The input starts with the palette size nptot (denoted N in the prompt) and is followed by nptot integers np(i), i=1,...nptot, defining the palette entries (pointing at basic paint colors). As an ________________________ Sec. 6.2.15.1. ___________________________ 215 __ example, a palette of three entries (paint colors 7, 4, 11) would be input as " 3, 7, 4, 11 ". Different entries in the palette can have the same color code value thus allowing e.g. to show different lattice planes with the same color. Note that the palette redefinition may contain more entries than actually needed for the present lattice section or cluster. After input of a new color palette BALSAC returns to submenu PPC. Dummy input nptot = 0 leaves the present palette definition unchanged. > > [T] selected from submenu PPC displays a color test table (in a separate graphics window, Unix) showing all color definitions together with color numbers available inside BALSAC. This option is identical to option [T] of the basic paint color menu PPB described above. > > > [W] [,] selected from submenu PPC returns to the paint menu PP. selected from submenu PP moves to the color/shading workbench switching to graphics mode (DOS) or opening a graphics window (Unix). This allows you to change all basic and paint colors as well as ball shading angles in a very intuitive way using the mouse or a graphics pointer. Further details are given in Sec. 6.2.15.2. > [G] between selected from submenu PP switches the gray switch flag fgr "on" and "off" and shows the updated submenu PP. For fgr = "on" all screen colors are replaced by respective gray tones determined by the RGB transformation (r,g,b) -> (s,s,s) with s = 0.30*r + 0.59*g + 0.11*b after which plots and PostScript file output will use gray tones rather than colors, see also Sec. 5.4. > [T] separate selected from submenu PP displays a color test table (in a graphics window, Unix) showing all color definitions together with color numbers available inside BALSAC. This option is identical to option [T] of the basic paint color menu PPB described above. > [F] font selected from submenu PP allows you to redefine the character used in graphics windows. NOTE that this option is available only with the Unix/X.11 version of BALSAC. The prompt Input font name [fontname] ("-"=esc) : asks for a character string fontname (up to 30 characters) defining the font name to be used for text in graphics windows after which BALSAC returns to submenu PP. The previous font name fontname is shown in the prompt where valid names have to be consistent with the X.11 Windows standard. Examples are "8x13","8x13bold","9x15". __ 216 _________________ Sec. 6.2.15.2. __________________________________ > [X] selected from submenu PP plots the present lattice section (switching to graphics mode (DOS) or opening a graphics window (Unix)) or lists its atom coordinates depending on the plot/list mode defined in the graphics option, see Sec. 6.2.7. > [,] selected from submenu PP returns to the basic parameter menu P. 6.2.15.2. USING THE COLOR/SHADING WORKBENCH The color/shading workbench is available from different option menus (option [W] in submenus V, G, PP, option [K] in submenu P) and allows you to change all basic and paint colors as well as ball shading angles in a very intuitive way using the mouse or a graphics pointer. Selecting this option switches to graphics mode (DOS) or opens a graphics window (Unix) which contains various rectangular areas (color fields) and a circular area (shading field) showing the present color/shading settings. The settings can be modified by moving the graphics pointer inside the respective area followed by L-click or [enter] (this will be called "selecting" in the following) as described below. The workbench is closed by R-click or [,] after which BALSAC returns to the menu from which the workbench was opened. The workbench shows the main color field (M) in its upper right part as ... -------------------------------------+ | _______________________ | | | | | | Base | |_____|_____|_____|_____| | | | (M) | | Paint | |_______|_______|_______| | | | | | | | | Palette | |___|___|___|___|___|___| | | | . where the field is subdivided into three rows of color boxes, the BASE COLOR ROW indicated by "Base" showing four boxes filled with the base colors defining "black", "white", "stereo red", and "stereo blue" (DOS/VGA version) or eight boxes filled with the base colors defining "black", "white", "background", "text", "bonds", "stereo red", "stereo blue", "stereo white" (Unix/X.11 version), the PAINT COLOR ROW indicated by "Paint" showing ncolb boxes filled with the paint colors defined at present, and the PALETTE ROW indicated by "Palette" showing nptot boxes filled with paint colors in the present palette sequence. ________________________ Sec. 6.2.15.2. ___________________________ 217 __ Further, a black/white rectangle inside one of the base or paint color boxes denotes the "active" color which can be modified as described below. (When the workbench is opened the first paint color will be used as active color.) Selecting any base or paint color box (moving the graphics pointer inside and L-click) in the main color field makes the respective color active. Selecting a palette box with an active paint color assigns the active color to the respective palette position changing the color of the palette box accordingly. With an active base color no palette box can be selected. WITH AN ACTIVE BASE COLOR the left part of the workbench shows the color selection field (CS) as +-------------------------------------------------------------------------+ | COLOR/SHADING WORKBENCH | | _______________________ | | | | | | | | | _______________________ | | |___|___|___|___|___|___| | | | | | Base | | | | | | | | | |_____|_____|_____|_____| | | |___|___|___|___|___|___| | | (M) | | Paint | | | | | | | | | |_______|_______|_______| | | |___|___|___|___|___|___| | | | | | | | Palette | | | | | | | | | |___|___|___|___|___|___| | . . . . . . (CS) . . . . . . | | | | | | | | | | |___|___|___|___|___|___| | | | | | | | | | | | |___|___|___|___|___|___| | | | | | | | | | |___|___|___|___________| | | | | | |L-click: base/paint color, palette, RGB, range, ball shading; R-click: esc| +-------------------------------------------------------------------------+ where the field is subdivided into color boxes showing all nctot colors defined at present. Selecting any color box (moving the graphics pointer inside and L-click) in the color selection field assigns this color to the presently active base color. This is confirmed by a smaller rectangle inside the respective base color box and filled with the new color. __ 218 _________________ Sec. 6.2.15.2. __________________________________ WITH AN ACTIVE PAINT COLOR the left part of the workbench gives an extended description of this color by the RGB selection field (RGB), the color range selection field (CR), and the (circular) shading selection field (SH) as +-------------------------------------------------------------------------+ | COLOR/SHADING WORKBENCH | | _______________________ | | | | | Red = nr _______________________ | | |__________|____________| | | | | | Base | | | (RGB) | | Green= ng |_____|_____|_____|_____| | | |______________|________| | | (M) | | Paint | | | | | Blue = nb |_______|_______|_______| | | |______|________________| | | | | | | | Palette | | |___|___|___|___|___|___| | | _______________________ | | | | | Qbot= qbot | | |___|___________________| _________________ | | | | (CR) | Qbas= qbas / \ | | |_______|_______________| / o \ | | | | | Qenh= qenh / _______ \ | | |____________|__________| / /:::::::\ \ | | | | | Qtop= qtop | /:::::::::\ | | | |__________________|____| | |::::::::::.| | | | | | | Qgam= qgam | |:::(SH)::..| | | | |_______________|_______| | |::::::::...| | | | | \:::::..../ | | | _______________________ \ \_______/ / | | | | | | | | | | | Tones= nsh \ / | | |__|__|__|__|__|__|__|__| \ / | | | | | Dark/Light Glossy \_________________/ | | |___________|___________| | | | |L-click: base/paint color, palette, RGB, range, ball shading; R-click: esc| +-------------------------------------------------------------------------+ > (RGB) The RGB selection field (RGB) gives the basic RGB definition (nr, ng, nb) of the active paint color by three boxes (RGB boxes) indicated by "Red= nr", "Green= ng", "Blue= nb", see Sec. 5.4. The boxes are partly filled (from left to right) with white color where complete filling corresponds to the global RGB maximum value rgbmax (defaults are rgbmax = 63 for DOS/VGA, = 65535 for Unix/X.11) assigned to the RGB component, nr, ng, or nb, while no filling denotes a value of zero with a linear variation in between. Further, the text to the right of each box gives the explicit numerical value of (nr, ng, nb). Selecting a point inside an RGB box redefines the respective RGB component of the active paint color using the lateral position of the selected point with respect to the left and right side of the box. This is confirmed (after a little while) by an updated white area in the RGB box and all fields containing the active color are repainted with the new color. ________________________ Sec. 6.2.15.2. ___________________________ 219 __ > of (CR) The color range selection field gives the complete definition all tones of the active paint color by five boxes (color range boxes). Each box contains a vertical (color, white) line which shows the numerical value of the respective factor varying linearly between 0 (left) and 1 (right) for the top four boxes and logarithmically between 0.05 (left) and 5.00 (right) for the fifth box. The first and forth boxes from the top (labelled "Qbot= qbot", "Qtop= qtop") describe factors qbot and qtop determining the darkest and lightest tones of a paint color used for continuous ball shading. Here the first box is partly filled (to the left) with the darkest tone while the fourth box is partly filled (to the right) with the lightest tone of the active paint color. Further, the complete set of nsh tones of the active paint color is shown in the display box labelled "Tones= nsh" below. The second and third boxes (labelled "Qbas= qbas", "Qenh= qenh") refer to the default dark and light tones of a paint color determined by qbas and qenh and used for hard ball shading. Here the vertical line inside the second (third) box is drawn with the default dark (light) tone of the active paint color. Further, both tones are shown in the display box labelled "Dark/Light" below. The fifth box (labelled "Qgam= qgam") quantifies the gamma factor determining the distribution of color tones between darkest and lightest tone used for continuous shading. Here the actual numerical value within [0.05, 5.00] varies on a logarithmic scale. All color definitions are discussed in detail in Sec. 5.4. Selecting a point inside any of the five color range boxes redefines the respective value (qbot, qbas, qenh, qtop, or qgam) of the active paint color using the lateral position of the selected point with respect to the left and right side of the box. This is confirmed (after a little while) by an updated white line (and painting) in the respective box and all fields containing the active color are repainted with the new set of color tones. Note that modifications of the range factors qbot, qbas, qenh, qtop are not completely independent. If a modification violates the order relation qbot < qbas < qenh < qtop BALSAC will reset the values accordingly. > (SH) ball The (circular) shading selection field shows a glossy-shaded labelled by "Glossy" to the lower left which illustrates continuous shading using the active paint color. The ball is surrounded by a larger white circle and an "o" inside the circle area quantifies the incident light direction used for shading. Here the position (x,y) of the "o" with respect to the ball/circle center is given by x = Rc * sin(theta) * sin(phi) y = Rc * sin(theta) * cos(phi) with Rc being the radius of the outer circle and theta, phi denoting the shading angles. __ 220 _________________ Sec. 6.2.16. ____________________________________ Selecting a point inside the outer circle evaluates the shading angles theta, phi according to the selected point and redraws the shaded ball with the "o" at its new position. Selecting a point inside the label field "Glossy" changes the ball design following the sequence given in the design option, see Sec. 6.2.7, and labelled by "Filled", "Stereo", "Hard", "Fuzzy", "Dither", "Glossy", "Filled", ... which allows you to inspect color changes with the different ball designs. Note that shading angles cannot be changed with design options "Filled", "Stereo". When the color/shading workbench is closed by R-click or [,] all color and shading parameters (which may have been modified with the workbench) are kept at their latest values and used in subsequent plots of lattice sections and clusters. 6.2.16. FILE STACK OPTION, [K] [K] This option allows you to save and retrieve lattice structure data in a very efficient way using a file stack. This consists of 10 files 'stckFFFn.lat', n = 0,...9, which can hold up to 10 different definitions of lattice sections. The file stack menu K reads ========== STACK OPTIONS ========================================= Pointer at sp Stack file titles : 0 ( 1) Title of structure # 0 (up to 60 characters) 1 ( 2) Title of structure # 1 (up to 60 characters) 2 ( 3) Title of structure # 2 (up to 60 characters) -> 3 ( 0) ** stack file empty ** 4 ( 0) ** stack file empty ** ... 9 ( 0) ** stack file empty ** Select: [?,]esc [U]p [D]own [S]ave [0123456789]get [X]plot ============================================================ 72 == listing titles of all lattice sections which have been put on the stack so far. The n-th title (n = 0,...9) has been taken from a (LATUSE format) stack file 'stckFFFn.lat' in your working directory where the dummy title "** stack file empty **" indicates that file 'stkFFFn.lat' does not exist at present. The present stack pointer position sp, also indicated by an arrow "->" in the menu (sp = 3 in the above example), denotes the stack file 'stckFFFn.lat', n = sp, in which BALSAC will stack save the next lattice section. > by [U]/[D] selected from submenu K moves the stack pointer up or down one position allowing you to select the position for the next stack saving. When BALSAC is started the stack pointer is set at position sp = 0. ________________________ Sec. 6.2.16. _____________________________ 221 __ > the [S] selected from submenu K saves the structure/graphics data of present BALSAC/LATTICE session at stack pointer position sp (position 3 above) updating the sp-th title line. This creates a stack file 'stckFFFn.lat', n = sp or, if the respective file exists, its content will be overwritten by the lattice section data. Then the stack pointer moves forward by one position sp -> sp+1 (moving from sp = 9 to sp = 0) and BALSAC returns to the main option menu. > [#] position selected from submenu K where "#" stands for any of the numbers 0 - 9 loads the respective structure/graphics data from the stack file overwriting the present lattice section definition. The loaded lattice section will then be plotted/listed depending on its graphics option. > [X] selected from submenu K plots the present lattice section (switching to graphics mode (DOS) or opening a graphics window (Unix)) or lists its atom coordinates depending on the plot/list mode defined in the graphics option, see Sec. 6.2.7. > [,] option selected from submenu K returns to the BALSAC/LATTICE main menu, see Sec. 6.2.0. Note that stack files will survive any BALSAC session (unless they are overwritten) and can be used also outside BALSAC. They will, however, be overwritten without a warning message in the stack saving process. The file stack can also be used in the option menu Replot[udlr][rRpPmM+] analyze[Q] stack[LS] trnsf[T] qmen[O] sho[EI] [?,]esc after a plot/listing is finished, see Sec. 6.2.9. > [L] selected from the above menu allows you to load a new lattice section from the file stack. The restricted file stack menu K' reads ========== STACK OPTIONS ====================================== Pointer at sp Stack file titles : 0 ( 1) Title of structure # 0 (up to 60 characters) 1 ( 2) Title of structure # 1 (up to 60 characters) 2 ( 3) Title of structure # 2 (up to 60 characters) -> 3 ( 0) ** stack file empty ** 4 ( 0) ** stack file empty ** ... 9 ( 0) ** stack file empty ** Select: [0123456789]get [X]plot [?,]esc ========================================================= 73 == listing titles of all lattice sections which have been put on the stack so far and which can be retrieved. __ 222 _________________ Sec. 6.2.16. ____________________________________ > > [#] selected from submenu K' where "#" stands for any of the position numbers 0 - 9 loads the respective structure/graphics data from the stack file overwriting the present lattice section definition. The loaded lattice section will then be plotted/listed depending on its graphics option. > > [X] selected from submenu K' plots the present lattice section again (switching to graphics mode (DOS) or opening a graphics window (Unix)) or lists its atom coordinates depending on the plot/list mode defined in the graphics option, see Sec. 6.2.7. > main > [,] selected from submenu K' returns to the BALSAC/LATTICE option menu, see Sec. 6.2.0. > [S] selected from the above menu allows you to save the structure/ graphics data of the present BALSAC/LATTICE session at stack pointer position sp completely analogous to option [S] in the file stack menu K above. However, if BALSAC is in graphics mode it will remain there allowing you to continue with other graphics options. Here stack saving has to be confirmed in the prompt Save structure on stack : [S]ave [?,]esc by selecting [S] while selecting [,] ignores stack saving and returns to the above menu. The stack file output may be inspected later by selecting the file stack option from the main option menu in text mode. ________________________ Sec. 6.3. ________________________________ 223 __ 6.3. INTERACTIVE OPTIONS: BALSAC/CLUSTER SESSION BALSAC/CLUSTER sessions can be initiated by starting BALSAC with the session parameter "c" and without structure file input or by selecting [C] from the interactive startup menu, see Sec. 6.1, after which the prompt ========================================================================= BALSAC/CLUSTER 2.00 by K. Hermann (C) Copyright 1991-6 /adapter info/ Select: [I]nteractive [R]esume [P]revious [F]ile ->[L]attice [?,]Quit =================================================================== == 2 shows. Here the adapter information reads "VGA graphics version" for DOS systems and "X.11 mode DISPLAY= nodeid" for Unix systems with nodeid giving the network name of the display. Note that nodeid will always be truncated to 32 characters while longer display names may be used internally. In the above menu option [I] starts BALSAC/CLUSTER in interactive mode to build a cluster from scratch going through the standard building sequence, see Sec. 3.3.2. [R] starts a BALSAC/CLUSTER session with structure and graphics input from the quicksave file 'balsac.plt'. If no file 'balsac.plt' exists in the working directory BALSAC complains with ERROR: opening file for structure input File= balsac.plt and prompts for the name of an external structure input file analogous to option [F]. [P] restores a previous BALSAC/CLUSTER session with structure and graphics input from the safety backup file 'balsac.svc'. This file is generated automatically whenever a BALSAC/CLUSTER session is finished correctly. It contains in addition to structure/graphics information also a complete copy of the initialization file. Thus, both structural data and the full graphics environment of the previous session can be restored. If no file 'balsac.svc' exists in the working directory BALSAC complains with ERROR: opening file for structure input File= balsac.svc and prompts for the name of an external structure input file analogous to option [F]. __ 224 _________________ Sec. 6.3.0. _____________________________________ [F] prompts for a name Input file name ("+"=def,"-"=esc): of a structure input file fname to be used for input starting a BALSAC/CLUSTER session in batch mode where option parameters are taken from file fname. Here a 1-character dummy name "+" can be used for the quicksave file 'balsac.plt' while giving "-" as a file name finishes the BALSAC session. If file fname does not exists in the working directory BALSAC complains with ERROR: opening file for structure input File= fname and prompts for a different file name. [L] the starts a BALSAC/LATTICE session showing a startup menu similar to present one, see Sec. 6.2. [,] finishes the BALSAC session returning to the DOS or Unix command line. 6.3.0. MAIN OPTION MENU The main option menu provides basic control in an interactive BALSAC/CLUSTER session. After each operation (except for structure file input [I], transfer to BALSAC/LATTICE [L], or finishing [,]) BALSAC/CLUSTER returns to this menu and requests input for the next interactive option. The menu has the general form ========== BALSAC/CLUSTER MENU ============================================== [T]itle = cluster title [S]tructure = nctv ( nct ) atoms in lx ly lz [R]ad/nuc = nel elements [V]iew = tt pp; rot= rr; mag= fm; per= fp; foc= nf [G]raphics = gm/gd; colr= nb/ np pl; lout= xxl; cnct= nnc; sy shft= sx [X]plot [A]nl [I]nput [O]utput stac[K] [N]ew >[L]at [P]arm [?]Help [,]Quit ======================================================================= 5 == showing the most important structure and viewing parameters. In this menu the line starting with "[T]itle ..." gives the structure title "cluster title". "[S]tructure..." shows the total number of atoms, nct, defined for the cluster while nctv gives the number of atoms which are visible at present and will be stored on structure output files, see Sec. 6.3.6. Further, this line lists the size of the rectangular block (lengths lx x ly x lz) enclosing the cluster. ________________________ Sec. 6.3.0. ______________________________ 225 __ "[R]ad/nuc ..." lists the number of different elements,nel, contained in the cluster. "[V]iew ..." pp, defines the viewing geometry used in plots. Here tt, rr give the viewing angles theta, phi and the rotation angle rr while the plot magnification is given by fm. The perspective geometry is defined using a distance factor fp where fp = 0 means parallel projection and fp > 0 central projection. Parameter nf refers to the focus used in central projection, see Sec. 6.3.4, 5.1. For nf = 0 the focus coincides with the section center (default focus), = -1 the focus is given in absolute cartesian coordinates, > 0 the focus coincides with the center of atom nf. "[G]raphics ..." shows the basic graphics parameters used in plots, see Sec. 6.2.7, 6.3.5. Parameter gm reads "A" defining atom-by-atom display mode which is the only display mode available with BALSAC/CLUSTER. Parameter gd defines the graphical representation of atoms in plots with gd = "Nx" for no plotting/listing (for testing only), = = = = "Lx" "Px" "Cx" "Ax" for for for for coordinate listing, atoms shown as points, atoms shown as circles, atoms shown as filled circles (areas), = "Rx" for atoms shown as red/blue stereo = = = = for for for for circles, "Hx" "Fx" "Dx" "Gx" atoms atoms atoms atoms shown shown shown shown as as as as hard-shaded balls, fuzzy-shaded balls, dither-shaded balls, glossy-shaded balls. The lower case character in gd refers to stereo duplication in plots where x = "m" for mono views with one picture on the screen, = "s" for stereo views showing two slightly different pictures of the structure on the screen, see Sec. 6.2.7, 6.3.5. Parameter nb denotes the color index of the color used to paint the background in plots while np gives the starting value of the color palette used to paint atoms. Parameter __ 226 _________________ Sec. 6.3.0. _____________________________________ pl refers to labelling of atoms where pl = "E-" defines no labelling, = "EE" defines labelling by element name, = "EN" defines labelling by atom number. Parameter xxl refers to the plot layout and reads "off" or any combination of the three characters "T", "F", "-" where "T" shows if a title line is included, "F" shows if the cluster is enclosed by a rectangular wire frame, "-" is used only as a filling character. Parameter nnc gives the number of constraints used to define links between atoms (selecting pairs of atoms to be connected by straight lines or cylindrical sticks visualizing bonds, see Sec. 6.2.7, 6.3.5. The shift quantities sx, sy (given in pixel units) define a shift of the plot origin with respect to the default origin (center of screen), see Sec. 6.2.7, 6.3.5. "[X]plot ... " available at the bottom of the menu lists various options with the menu. The end of this line reads " ... [?]Help [?,]Quit" if the on-line help is available inside BALSAC (default), see Sec. 3.3.3, " ... [,]esc" if the on-line help is NOT available inside BALSAC, " ... (teach) [%,]Quit" if BALSAC is in teach mode, see Sec. 3.3.9. From the main option menu of BALSAC/CLUSTER the user selects an option by pressing any of the character keys shown in square brackets "[]" (lower and upper case input is accepted) or using the mouse, see Sec. 5.5, 3.3.8. Then BALSAC * moves to the appropriate submenu (options [T], [S], [R], [V], [G], [A], [O], [K], [P]), * generates a plot or coordinate listing (option [X]), * starts the CLUSTER session from scratch deleting all present structure data (option [N], to be confirmed), ________________________ Sec. 6.3.1. ______________________________ 227 __ * restarts the CLUSTER session with a structure input file (option [I], file name prompted), * moves to a BALSAC/LATTICE session with/without the present structure being transferred (option [L], to be confirmed), or * quits the BALSAC session (option [,], to be confirmed). There is one hidden option, [E], in the main option menu which restarts the CLUSTER session with the quicksave file 'balsac.plt' for structure input (to be confirmed). This is equivalent to option [I] answering the file prompt with "balsac.plt". If BALSAC/LATTICE is started from scratch in interactive mode all parameters of options [S], [V], [G] have to be defined before the main option menu shows. 6.3.1. [T] CHANGING THE CLUSTER TITLE, [T] Selecting [T] from the main option menu of BALSAC/CLUSTER shows Title [ ... old title ... ] New (A60,"-"=esc) : the present title of the cluster and asks for a new title (up to 60 characters, longer text will be truncated). If this prompt is answered by the one character title "-" the old title will be left unchanged. After title (or dummy) input BALSAC returns to the BALSAC/CLUSTER main option menu. __ 228 _________________ Sec. 6.3.2. _____________________________________ 6.3.2. [S] of STRUCTURE OPTION, [S] This option allows you to modify, shift, add, hide, or remove atoms the cluster studied in a BALSAC/CLUSTER session. If BALSAC/CLUSTER is started from scratch in an interactive session (without a structure input file) this option defines the initial cluster where ====== STRUCTURE OPTIONS ============== Build structure from scratch Title (A60) : asks for a title (up to 60 ASCII characters) describing the cluster and No. of atoms N (>0, 0=esc) : asks for the total number nct of atoms to define the cluster. (Dummy input nct = 0 returns to the BALSAC/CLUSTER startup menu.) This is followed by nt prompts 1 ... nct (X,Y,Z,R,NUC) : (X,Y,Z,R,NUC) : requesting five numbers each defining the cluster atoms by their positions (x,y,z) in absolute cartesian coordinates, atom radii rad and nuclear charges nuc. Atomic radii do not need to be known at this point and can be determined later, see option [R] below and Sec. 6.3.3. The initial cluster definition is confirmed by nct (nel) different atoms (elements) where nel gives the number of elements (= atoms of different nuclear charge) after which BALSAC moves to the structure option menu. This startup input is not required if the structure option is chosen from the main option menu of BALSAC/CLUSTER. Selecting [S] from the main option menu of BALSAC/CLUSTER shows the structure option menu, submenu S ====== STRUCTURE OPTIONS ============================================= [T]it [R]ad/nuc [A]toms [G]rp [F]ilrd [L]ist [S]ymm [D]ispla [X]plot [?,]esc ================================================================ 9 == from which atoms of the cluster can be (re)defined, listed, or plotted in many different ways. ________________________ Sec. 6.3.2. ______________________________ 229 __ > by [T] selected from submenu S shows the present title of the cluster Title [ ... old title ... ] New (A60,"-"=esc) : asking for a new title (up to 60 characters, longer text will be truncated). Answering the prompt by a one character title "-" will leave the present title unchanged. After title (or dummy) input BALSAC returns to the structure option menu S. > [R] selected from submenu S moves to the radii/charge option menu allowing you to modify radii and nuclear charges of all atoms of the cluster. The options of this menu are explained in detail in Sec. 6.3.3. If the radii/charge option menu is closed by selecting [,] BALSAC returns to the structure option menu S. > [A] delete selected from submenu S allows you to add, hide, move, or cluster atoms. This option can be used to rebuild parts of the cluster. Details of the atom modify menu are described in Sec. 6.3.2.1. > of [G] selected from submenu S allows you to define and modify groups atoms of the cluster by changing their coordinates in simple geometric operations, store groups on external files for later use, and more. Details of the group modify menu are described in Sec. 6.3.2.2. > [F] from selected from submenu S allows you to include additional atoms an external (PLOT3D format) file in the present cluster. Examples are combinations of molecules and/or lattice sections built in separate BALSAC sessions and joined to form a compound system. The prompt File name for add ("-"=esc) : asks for the name (up to 72 characters) of a (PLOT3D format) file defining any cluster. Dummy input "-" will immediately return to submenu S while a valid file name fname containing a cluster of nn atoms shows submenu SF nn Atoms to add: [A]ddall [P]rompt [?,]esc asking for the include mode. > > [A] selected from submenu SF includes all cluster atoms of the external file in the present cluster (if possible) which is confirmed by nac ( nn ) atoms added from file name = [ fname ] giving the number nac of new atoms included and the number nn of atoms stored in the external file fname. The value nac __ 230 _________________ Sec. 6.3.2. _____________________________________ will be smaller than nn if the total number of atoms after the include process exceeds the internal maximum namax ( = 2001 (DOS) or = 8000 (Unix)). After all atoms are included BALSAC returns to the structure option menu S, see Sec. 6.3.2. > > [P] selected from submenu SF allows you to include selected cluster atoms from the external file in the present cluster. Here for each atom stored in the file a line Xyz,R,Id= x y z rad nuc : [A]cc [I]gn [?,]esc shows the atom position (x,y,z), its radius rad and nuclear charge nuc. This atom can then be included in the present cluster by selecting [A] which is confirmed by Atom accepted as no. ni where ni denotes the last atom of the present cluster list. Alternatively, the atom can be ignored by selecting [I] which is confirmed by Atom ignored After the atom has been accepted/ignored the next atom of the file is shown. After all atoms of the external file have been prompted or [,] was selected in the atom prompt the message nac ( nn ) atoms added from file name = [ fname ] gives the number nac of new atoms included in the cluster and the total number nn of atoms stored in the external file fname after which BALSAC returns to the structure option menu S, see Sec. 6.3.2. > menu > [,] selected from submenu SF returns to the structure option S, see Sec. 6.3.2, without atoms included in the present cluster. Note that all new atoms included from an external file will be automatically considered a new group of atoms overriding the former group definition (if it exists). Therefore, the complete set of new atoms may be subject to group operations such as translation or copying, see Sec. 6.3.2.2. This becomes particularly important if new atoms coincide with or come very close to existing atoms and need to be "moved out of the way" (shift the whole group by a large vector, group translate option). ________________________ Sec. 6.3.2. ______________________________ 231 __ > [L] atoms of selected from submenu S allows you to list all or selected a cluster. The line nct ( nel) different atoms (elements) , List (NA,NE) : shows the total number nct (nel) of atoms (different elements) of the cluster and prompts for a range of atoms [na,ne] (given as two integers) to be listed. For 0 < na <= ne <= nct the positions and attributes of atoms no. na to ne are listed in the form Atom X Y Z R El/Nuc Vis ---------------------------------------------------------na) na+1) x x y y z z r r nuc nuc visbl visbl x y z r nuc visbl ... ne) ** Press [C], L-click to continue; [,], R-click to escape ** where (x,y,z) are coordinates of atom no. i (i=na...ne), r its radius, nuc its nuclear charges, and visbl its visibility flag ("T" for visible or "F" for invisible, see Sec. 6.3.2.1). After this BALSAC returns to the structure option menu S. > on [S] selected from submenu S allows you to impose point symmetries the cluster where the cluster will be completed by adding atoms (if needed) to achieve the required symmetry. Details of the cluster symmetry menu are described in Sec. 6.3.2.3. > [D] selected from submenu S shows up to 10 lines of the most recent output generated by the graphic analysis option, see Sec. 6.3.12.2, by ============ Latest Graphics Output ================== 1: Xyz,R,Id( n1)= ... x y z rad nuc ====================================================== This allows you to look up and use numerical output from the analysis for input within submenu S. > [X] graphics selected from submenu S plots the cluster (switching to mode (DOS) or opening a graphics window (Unix)) or lists its atom coordinates depending on the plot/list mode defined in the graphics option, see Sec. 6.2.7. > [,] selected from submenu S moves to the view option menu, see Sec. 6.3.4, if the cluster is built from scratch or returns to the BALSAC/CLUSTER main option menu, see Sec. 6.3.0. __ 232 _________________ Sec. 6.3.2.1. ___________________________________ 6.3.2.1. MANIPULATING ATOMS Option [A] selected from the structure option menu S, see Sec. 6.3.2, allows you to add, hide, move, or delete cluster atoms. So this option can be used to rebuild parts of the cluster. The atom modify menu SA reads ======================================================================== Atoms: [IA]dd [M]od [H]ide [U]nhide [P]urg [T]ransl [C]opy [R]cnt [S]equ(rpt) [X]plot [?,]esc ================================================================== 15 == where the value of the sequential repeat flag rpt reads "on" or "off" depending on the repeat state (see options [T], [C], [S] below). > [I] internal selected from submenu SA adds an atom to the cluster where coordinates are used for its position. The prompt na-th atom N0,N1,N2,DIST,THETA,PHI,RAD,NUC ("8*0"=esc) : (with na denoting the number of the new atom) asks for eight numbers defining an atom to be added as no. na (= nct+1) to the cluster of nct atoms. Here n0, n1, n2 are numbers of existing cluster atoms, dist is a distance, and theta, phi are respective rotation angles defining the atom position (x,y,z). The following conventions are used for the atom position: (a) n0 = n1 = n2 = 0 : atom position are in absolute spherical coordinates with respect to the origin of the basic coordinate system (X,Y,Z) x = dist * sin(theta) * cos(phi) y = dist * sin(theta) * sin(phi) z = dist * cos(theta) (b) n0 > 0, n1 = n2 = 0 : atom position are in spherical coordinates with respect to atom no. n0 at r0 = (x0,y0,z0) x = x0 + dist * sin(theta) * cos(phi) y = y0 + dist * sin(theta) * sin(phi) z = z0 + dist * cos(theta) where theta and phi are angles in the basic coordinate system (X,Y,Z). ________________________ Sec. 6.3.2.1. ____________________________ 233 __ (c) n0 > 0, n1 >0, n2 = 0 : atom position are in spherical coordinates with respect to atom no. n0 at r0 = (x0,y0,z0) x = x0 + dist * sin(theta) * cos(phi) y = y0 + dist * sin(theta) * sin(phi) z = z0 + dist * cos(theta) where theta and phi are angles in a local cartesian coordinate system (X',Y',Z') with vector r1-r0 defining the Z'-axis. (d) n0 > 0, n1 >0, n2 > 0 : atom position are in spherical coordinates with respect to atom no. n0 at r0 = (x0,y0,z0) x = x0 + dist * sin(theta) * cos(phi) y = y0 + dist * sin(theta) * sin(phi) z = z0 + dist * cos(theta) where theta and phi are angles in a local cartesian coordinate system (X',Y',Z') with vector r1-r0 defining the Z'-axis. The plane through r0,r1,r2 contains the X'-axis such that vector r2 has a positive X' component. The above prompt requires in addition an atom radius rad and a nuclear charge nuc assigned to the new atom. Both values may be revised later. Correct input of the atom definition is confirmed by a message Xyz,R,Id,V( na)= x y z rad nuc T listing the (absolute cartesian) coordinates (x,y,z) of the new atom, its atom radius rad, its nuclear charge / element name, and its visibility flag value "T" ( = visible). Then BALSAC returns to submenu SA. Dummy input "8*0" in the above prompt returns immediately to submenu SA without an atom added. > [A] absolute selected from submenu SA adds an atom to the cluster where cartesian coordinates are used for its position. The prompt na-th atom X,Y,Z,RAD,NUC ("5*0"=esc) : (with na denoting the number of the new atom) asks for five numbers defining an atom to be added as no. na (= nct+1) to the cluster of nct atoms. Here (x,y,z) denotes the atom position in absolute cartesian coordinates, rad defines the atom radius, and nuc is the nuclear charge of the new atom. Correct input of the atom definition is confirmed by a message Xyz,R,Id,V( na)= x y z rad nuc T listing the (absolute cartesian) coordinates (x,y,z) of the new atom, its atom radius rad, its nuclear charge / element name, and __ 234 _________________ Sec. 6.3.2.1. ___________________________________ its visibility flag value "T" ( = visible). Then BALSAC returns to submenu SA. Dummy input "5*0" in the above prompt returns immediately to submenu SA without an atom added. > [M] selected from submenu SA modifies an atom of the cluster. This allows you to change coordinates of an atoms as well as its atom radius and nuclear charge in one step. The option becomes particularly useful if you have mistyped coordinates of a cluster in the initial input and want to change components. The prompt Modify n-th atom N (1- nct , 0=esc) : (with nct denoting the total number of cluster atoms) asks for the number n of an atom to be modified. Here dummy input n=0 returns immediately to submenu SA. For values n within the valid range [1, nct] coordinates and attributes of atom no. n are listed, see above, as Xyz,R,Id,V( n)= x y z rad nuc T together with a prompt Modified atom: X,Y,Z,R,NUC ("5*0"=esc) : requesting five numbers redefining the cluster atom by its position (x,y,z) in absolute cartesian coordinates, an atom radius, and a nuclear charge. The input is confirmed by Xyz,R,Id,V( n)= x y z rad nuc T showing the new atom definition after which BALSAC returns to submenu SA. > [H] atoms selected from submenu SA hides an atom of the cluster. Hidden are treated as invisible by setting their internal visibility flag to "F" and they and will not appear in subsequent plots. However, their coordinates and attributes are still contained in the atom definition list and hidden atoms can be revived in the same BALSAC/CLUSTER session by the unhide option [U] of submenu SA described below. Hidden atoms will not be stored on structure output files and, thus, will be lost in subsequent BALSAC/CLUSTER sessions. Note that the graphic analysis option offers atom hiding which is much more intuitive and faster, see Sec. 6.3.12. The prompt Hide n-th atom N (1- nct , 0=esc) : (with nct denoting the total number of cluster atoms) asks for the number n of an atom to be hidden. Here dummy input n=0 returns immediately to submenu SA. For values n within the valid range [1, nct] coordinates and attributes of atom no. n are listed, see ________________________ Sec. 6.3.2.1. ____________________________ 235 __ above, as Xyz,R,Id,V( n)= x y z rad nuc T together with a prompt =================================================== Confirm: [H]ide [?,]esc ========================================== 16 ===== to confirm hiding. Selecting [H] in this prompt hides atom no. n and shows Atom no. n hidden while [,] cancels the hiding process returning to submenu SA. > [U] selected from submenu SA shows the unhide submenu SAU ======================================================= Unhide atoms: [A]ll [S]el [L]ist [?,]esc ================================================= 71 == which allows you to revive all or selected cluster atoms which have been hidden in the present BALSAC/CLUSTER session. Note that the graphic analysis option offers atom unhiding which is much more intuitive and faster, see Sec. 6.3.12. > > [A] hidden in selected from submenu SAU revives all atoms that are the present BALSAC/CLUSTER session by using the graphical hide option (see Sec. 6.3.12), suboption [H] of menu SA (atom hide), or of menu SG (group hide). Here the visibility flags of all hidden atoms are set to "T" so that they become visible in plots and are stored in structure output files. The process is confirmed by a message nvis atom(s) unhidden where nvis denotes the number of atoms formerly hidden after which BALSAC/CLUSTER returns to submenu SA. > > [S] selected from submenu SAU revives selected atoms that are hidden in the present BALSAC/CLUSTER session by using the graphical hide option (see Sec. 6.3.12), suboption [H] of menu SA (atom hide), or of menu SG (group hide). The prompt Unhide n-th atom N (1- nct , 0=esc) : (with nct denoting the total number of cluster atoms) asks for the number n of an atom to be unhidden. Here dummy input n=0 returns immediately to submenu SA. For values n within the __ 236 _________________ Sec. 6.3.2.1. ___________________________________ valid range [1, nct] coordinates and attributes of atom no. n are listed, see above, as Xyz,R,Id,V( n)= x y z rad nuc V and for a hidden atom (V = "F") a line Atom no. n unhidden confirms unhiding setting its visibility flag to "T" while for a visible atom (V = "T") the line Atom is not hidden shows that the atom does not need to be unhidden. After this BALSAC returns to submenu SA. > > [L] attributes selected from submenu SAU lists all coordinates and of all nvis atoms that are presently hidden (invisible) by 1) Xyz,R,Id( p1) : ... nvis) Xyz,R,Id( pnvis) : x y z , rad , nuc x y z , rad , nuc nvis atom(s) hidden where (x,y,z) denotes the position of each atom, rad its atom radius, and nuc its nuclear charge (element name). If the number of hidden atoms exceeds 20 listing will be interrupted and the prompt ** Press [C], L-click to continue; [,], R-click to escape ** allows you to continue (select [C]) or finish listing (select [,]). After listing is finished BALSAC returns to submenu SA. > > > [P] present [,] selected from submenu SAU returns to submenu SA. selected from submenu SA removes all hidden atoms from the cluster which is confirmed by np atoms of nct survive where nct is the number of atoms before and np that after the purge process. Note that this option does NOT prompt to confirm purging so that all hidden atoms are definitely lost after the purge! If there are no hidden atoms the purge option has no effect. After purging BALSAC returns to submenu SA. ________________________ Sec. 6.3.2.1. ____________________________ 237 __ > [T] selected from submenu SA translates selected atoms by applying a shift vector. The prompt Translate n-th atom N (1- nct , 0=esc) : (with nct denoting the total number of cluster atoms) asks for the number n of an atom to be translated. Here dummy input n=0 returns immediately to submenu SA. For values n within the valid range [1, nct] coordinates and attributes of atom no. n are listed, see above, as Xyz,R,Id,V( n)= x y z rad nuc V and Shift X,Y,Z : asks for absolute cartesian coordinates (xs,ys,zs) defining a shift vector which will be added to the original coordinates of atom no. n to determine its new position (x',y',z') = (x,y,z) + (xs,ys,zs) listed by Xyz,R,Id,V( n)= x' y' z' rad nuc V to confirm translation. After this BALSAC returns to submenu SA if the sequential repeat flag (shown in submenu SA) is set to "off". If the repeat flag is set to "on" the prompt [R]epeat operation [?,]esc repeats the translation of atom no. n sequentially using the same shift vector (select [R]) or returns to submenu SA (select [,]). > [C] selected from submenu SA copies selected atoms after applying a shift vector. The prompt Copy from n-th atom N (1- nct , 0=esc) : (with nct denoting the total number of cluster atoms) asks for the number n of an atom to be used for the copy. Here dummy input n=0 returns immediately to submenu SA. For values n within the valid range [1, nct] coordinates and attributes of atom no. n are listed, see above, as Xyz,R,Id,V( n)= x y z rad nuc V and (nct+1)-th atom shift X,Y,Z : asks for absolute cartesian coordinates (xs,ys,zs) defining a shift __ 238 _________________ Sec. 6.3.2.1. ___________________________________ vector which is added to the coordinates of atom no. n to determine the position (xn,yn,zn) = (x,y,z) + (xs,ys,zs) of a new atom (no. nct+1) which is added to the cluster. The additional atom agrees in its attributes (atom radius, nuclear charge, visibility) with atom no. n as shown by the line Xyz,R,Id,V( nct+1)= xn yn zn rad nuc V to confirm the copy. After this BALSAC returns to submenu SA if the sequential repeat flag (shown in submenu SA) is set to "off". If the repeat flag is set to "on" the prompt [R]epeat operation [?,]esc repeats copying sequentially by applying the same shift vector on the atom copy generated last (select [R], resulting in chains of identical atoms if applied more than once) or returns to submenu SA (select [,]). > [R] selected from submenu SA recenters the cluster by shifting all cluster atoms by a fixed vector such that v = (vx,vy,vz) forms the new origin. Hence, the coordinates of all atom positions are transformed as (x,y,z) --> (x',y',z') = (x,y,z) - (vx,vy,vz) If v coincides with the position vector of an atom this atom center will form the origin (0,0,0) of the recentered cluster. The prompt New origin NC,X,Y,Z ("-1,0,0,0"=esc) : asks for four numbers defining the origin vector v given either in absolute coordinates (0,vx,vy,vz) or denoting the center of an existing atom nv by (nv,0,0,0). Dummy input "-1,0,0,0" returns immediately to submenu SA. Now all cluster atoms will be recentered which is confirmed by either Location ( vx vy vz ) will be new origin if the input was given as (0,vx,vy,vz) or by Atom no. nv will be new origin if the input was given as (nv,0,0,0). After this BALSAC returns to submenu SA. ________________________ Sec. 6.3.2.2. ____________________________ 239 __ > [S] selected from submenu SA switches the sequential repeat flag between "off" and "on" after which BALSAC returns to submenu SA. With the repeat flag set to "on" each atom copy/translate action is followed by a prompt, see above, allowing you to repeat the copying or translating process with identical shift vectors. > [X] graphics selected from submenu SA plots the cluster (switching to mode (DOS) or opening a graphics window (Unix)) or lists its atom coordinates depending on the plot/list mode defined in the graphics option, see Sec. 6.2.7. > [,] selected from submenu SA returns immediately to the structure option menu S, see Sec. 6.3.2. 6.3.2.2. MANIPULATING GROUPS OF ATOMS Option [G] selected from the structure option menu S, see Sec. 6.3.2, allows you to define and modify groups of atoms of the cluster by changing their coordinates in simple geometric operations, store groups on external files for later use, and more. So this option can be used to rebuild parts of the cluster beyond manipulating single atoms in the atom modify option, see Sec. 6.3.2.1. The group modify menu SG reads ========================================================================= == Group definition text Group: [G]def [L]ist [T]ransl [C]opy [U]n[H]ide [Z]defn [R]ot [A]rot+ [E]xpnd [F]xpnd+ m[I]rr m[J]rr+ c[P]fl m[V]fl [S]equ(rpt) [X]plot [?,]esc ===================================================================== 18 == where the group definition text reads Group of ng atom(s) defined (cluster total = nct) if a group of ng atoms is presently defined or No group defined and the value of the sequential repeat flag rpt reads "on" or "off" depending on the repeat state (see options [T], [C], [R], [A], [E], [F], [I], [J], [S] below). __ 240 _________________ Sec. 6.3.2.2. ___________________________________ > or [G] selected from submenu SG allows you to define a group of atoms modify the present group definition by adding or removing atoms. The group definition menu SGG reads =============================================== Group of ng atom(s) defined : p1 p2 ... png [G]new [A]dd [R]emove [?,]esc ========================================= 19 == if a group of ng atoms is presently defined where p1 p2 ... png are pointers denoting respective atom numbers. A missing group definition is indicated by "No group defined" above. Note that the graphic analysis option offers also group (re)definition which is much more intuitive and faster, see Sec. 6.3.12. > > [G] selected from submenu SGG defines a group of atoms from scratch overriding the present group definition (if it exists). The prompt Define new group: size NGRP (-1=esc) : asks for the number ng of atoms forming the group (dummy input ng = 1 will cancel the group definition) and then Define ng atom(s) asks for ng atom numbers p1 ... png (where invalid numbers are ignored). Values of atom numbers may obtained from atom listings (see suboption [L] of the structure option menu S) or from a graphic analysis of the cluster, see Sec. 6.3.12. After the group definition BALSAC returns to submenu SG. > If > [A] selected from submenu SGG adds atoms to an existing group. no group is defined this option is identical to option [G] of submenu SGG. The prompt Add to group (NADD, NADD atom(s)) : asks for the number nadd of atoms to be added to the group and for nadd atom numbers p1 ... pnadd (where invalid numbers or numbers of the present group definition are ignored). Values of atom numbers may obtained from atom listings (see suboption [L] of the structure option menu S) or from a graphic analysis of the cluster, see Sec. 6.3.12. After adding atoms BALSAC returns to submenu SG. ________________________ Sec. 6.3.2.2. ____________________________ 241 __ > > [R] selected from submenu SGG removes atoms from an existing group. If no group is defined this option has no effect. The prompt Remove from group (NREM, NREM atom(s)) : asks for the number nrem of atoms to be removed from the group and for nrem atom numbers p1 ... pnrem (where invalid numbers or numbers outside the present group definition are ignored). Values of atom numbers may obtained from atom listings (see suboption [L] of the structure option menu S) or from a graphic analysis of the cluster, see Sec. 6.3.12. After removing atoms BALSAC returns to submenu SG. > > [,] definition selected from submenu SGG leaves the present group unchanged and returns to submenu SG. > [L] atoms selected from submenu SG allows you to list all or selected of the present group definition. If no group is defined this option has no effect. The listing of ng atoms shows as 1) Xyz,R,Id( p1,V) : ... ng) Xyz,R,Id( png,V) : x y z , rad , nuc x y z , rad , nuc where p1 ... png gives the atom pointers, V denotes the visibility of each atom ("T" = visible, "F" = hidden), (x,y,z) denotes its position, rad its atom radius, and nuc its nuclear charge (element name). If the number of group atoms exceeds 20 the listing will be preceded by a prompt Group of ng atom(s) , List (NA,NE) : asking for two numbers na, ne with 0 < na <= ne <= ng after which the na-th to ne-th atom of the group definition will be listed as above. Large listings (exceeding 20 atoms) will be interrupted and the prompt ** Press [C], L-click to continue; [,], R-click to escape ** allows you to continue (select [C]) or finish listing (select [,]). After listing is finished BALSAC returns to submenu SG. > [T] group selected from submenu SG translates all atoms of an existing by a fixed shift vector s = (xs,ys,zs). The prompt Shift vector X,Y,Z ("0,0,0"=esc) : asks for the cartesian components xs, ys, zs of the shift vector to be added to the original coordinates of all group atoms. Dummy input "0,0,0" cancels the action while other vectors translate the __ 242 _________________ Sec. 6.3.2.2. ___________________________________ group which is confirmed by Group translated After this BALSAC returns to submenu SG if the sequential repeat flag (shown in submenu SG) is set to "off". If the repeat flag is set to "on" the prompt [R]epeat operation [?,]esc repeats the group translation sequentially using the same shift vector (select [R]) or returns to submenu SA (select [,]). Note that the repeated translation does not affect the group definition but the atom coordinates will be redefined with each translation. > and [C] selected from submenu SG copies all atoms of the present group translates all new atoms by a fixed shift vector s = (xs,ys,zs). The prompt Shift vector X,Y,Z ("0,0,0"=esc) : asks for the cartesian components xs, ys, zs of the shift vector to be added to the original coordinates of all new atoms. Dummy input "0,0,0" cancels the action while other vectors copy the group which is confirmed by Group copied (added and shifted) After this BALSAC returns to submenu SG if the sequential repeat flag (shown in submenu SG) is set to "off". If the repeat flag is set to "on" the set of new atoms produced by the operation forms a new group which replaces the previous definition and the prompt [R]epeat operation [?,]esc repeats the group copy applying the previous shift vector on the new group (select [R]) or returns to submenu SA (select [,]). Note that the repeated copy does affect the group definition while setting the repeat flag to "off" leaves the group definition unchanged. > [H]/[U] selected from submenu SG hides/unhides all atoms of the present group. Hidden atoms are treated as invisible by setting their internal visibility flag to "F" and they and will not appear in subsequent plots. However, their coordinates and attributes are still contained in the atom definition list and hidden atoms can be revived in the same BALSAC/CLUSTER session by the unhide option [U] of submenu SA described below. Hidden atoms will not be stored on structure output files and, thus, will be lost in subsequent BALSAC/CLUSTER sessions. Unhiding atoms sets their internal visibility flag to "T" and they and will appear again in subsequent plots. Note that the graphic analysis option offers atom hiding/ ________________________ Sec. 6.3.2.2. ____________________________ 243 __ unhiding which is much more intuitive and faster, see Sec. 6.3.12.2. The prompt Confirm group hide: [H]ide [U]nhide [?,]esc asks to confirm hiding (select [H]) which shows Group hidden or to confirm unhiding (select [U]) which shows Group unhidden while selecting [,] cancels the hiding process after which BALSAC returns to submenu SG. > to [Z] selected from submenu SG assigns the same (new) nuclear charge all atoms of the present group. Since atom painting depends on the nuclear charge this option allows you to assign the same color to a group of atoms which can help to emphasize parts of a cluster visually. The prompt ng atom(s): new charge Z (0=esc) = asks for a nuclear charge value 0 < zn <= 100 to be assigned to all group atoms. The charge (re)assignment is confirmed by Z= zn assigned to group atoms after which BALSAC returns to submenu SG. > [P]/[V] selected from submenu SG stores all atoms of the present group in an external file. The file is of PLOT3D format containing all graphics definitions of the present BALSAC session. Thus, it can be used as input to a subsequent BALSAC/CLUSTER session dealing only with the atoms of the group. The group definition remains unchanged by the file saving. However, option [P] leaves the visibility flag of all cluster atoms unchanged whereas [V] hides all atoms of the group (visibility flag set to "F"). The prompt File name for group save/move ("-"=esc): asks for the name (up to 72 characters) of a file to be used for output. Dummy input "-" will immediately return to submenu SG while a valid file name starts saving which is concluded by ng atom(s) saved if option [P] was chosen and by ng atom(s) moved if option [V] was chosen after which BALSAC returns to submenu SG. __ 244 _________________ Sec. 6.3.2.2. ___________________________________ > [R]/[A] selected from submenu SG rotates all atoms of the present group about a predefined axis (option [R]) or copies all atoms of the present group and rotates the new atoms about an axis (option [A]). The prompt Rotation origin NC,X,Y,Z ("-1,0,0,0"=esc) : asks for four numbers defining an origin of the rotation axis given either in absolute coordinates (0,x,y,z) or denoting the center of an existing atom n by (n,0,0,0). Dummy input "-1,0,0,0" returns immediately to submenu SG. After the origin is defined the prompt Rotation axis, angle (X,Y,Z,PHI) : asks for cartesian coordinates (xr, yr, zr) giving the direction of the rotation axis and a value phi for the rotation angle (in degrees). The direction vector does not need to be normalized. For option [R] all atoms of the group will be rotated about the rotation axis in a clockwise direction. This option does not affect the group definition but all atom coordinates will be redefined. The process is concluded by Group rotated [A] a new group of atoms is defined by rotating the original group and its atoms are added to the cluster. The set of new atoms produced by the rotation forms a new group which replaces the previous definition. The process is concluded by Group added and rotated After this BALSAC returns to submenu SG or asks to repeat the operation depending on the state of the sequential repeat flag, see options [T], [C] above. > of [E]/[F] selected from submenu SG expands (shrinks) the coordinates all atoms of the present group homogeneously with respect to a given center (option [E]) or copies all atoms of the present group and expands (shrinks) the new atom coordinates (option [F]). The prompt Expansion origin NC,X,Y,Z ("-1,0,0,0"=esc) : asks for four numbers defining an origin of the expansion/shrinking given either in absolute coordinates (0,x,y,z) or denoting the center of an existing atom n by (n,0,0,0). Dummy input "1,0,0,0" returns immediately to submenu SG. After the origin is defined the ________________________ Sec. 6.3.2.2. ____________________________ 245 __ prompt Expansion factor : asks for a value fac defining the expansion factor. For values fac > 1 all atoms of the group are subject to a homogeneous expansion such that their distance with respect to the expansion origin is increased. For values fac < 1 their distance is decreased. Negative fac values result in an additional inversion about the expansion origin with fac = -1 defining inversion only. For option [E] all atoms of the group will be expanded/shrunk. This option does not affect the group definition but all atom coordinates will be redefined. The process is concluded by Group expanded [F] a new group of atoms is defined by expanding/shrinking the original group and its atoms are added to the cluster. The set of new atoms produced by the operation forms a new group which replaces the previous definition. The process is concluded by Group added and expanded After this BALSAC returns to submenu SG or asks to repeat the operation depending on the state of the sequential repeat flag, see options [T], [C] above. > [I]/[J] selected from submenu SG mirrors the coordinates of all atoms of the present group with respect to a predefined plane (option [I]) or copies all atoms of the present group and mirrors the new atom coordinates (option [J]). The prompt Mirror origin NC,X,Y,Z ("-1,0,0,0"=esc) : asks for four numbers defining an origin of the mirror plane given either in absolute coordinates (0,x,y,z) or denoting the center of an existing atom n by (n,0,0,0). Dummy input "-1,0,0,0" returns immediately to submenu SG. After the origin is defined the prompt Mirror plane normal (X,Y,Z) : asks for cartesian coordinates (xn, yn, zn) giving the direction of the mirror plane normal vector. This vector does not need to be normalized. For option __ 246 _________________ Sec. 6.3.2.2. ___________________________________ [I] all atoms of the group will be mirrored. This option does not affect the group definition but all atom coordinates will be redefined. Note that repeating this operation reproduces the original coordinates. The process is concluded by Group mirrored [J] a new group of atoms is defined by the mirror operation acting on the original group and its atoms are added to the cluster. The set of new atoms produced by the operation forms a new group which replaces the previous definition. Note that repeating this operation may generate duplicate atoms of identical coordinates which have to be removed from the cluster, see Sec. 6.3.2.3. The process is concluded by Group added and mirrored After this BALSAC returns to submenu SG or asks to repeat the operation depending on the state of the sequential repeat flag, see options [T], [C] above. > [S] selected from submenu SG switches the sequential repeat flag between "on" and "off" (default) and returns to submenu SG. The present state of the flag is shown in the group modify menu SG. With the repeat flag set to "on" each of the atom group operations (translate, copy, rotate, expand, mirror) is followed by a prompt [R]epeat operation [?,]esc which allows you to repeat the operation on the group defined last using identical operation definitions (select [R]) or to return to submenu SG (select [,]). > [X] graphics selected from submenu SG plots the cluster (switching to mode (DOS) or opening a graphics window (Unix)) or lists its atom coordinates depending on the plot/list mode defined in the graphics option, see Sec. 6.2.7. > [,] selected from submenu SG returns immediately to the structure option menu S, see Sec. 6.3.2. ________________________ Sec. 6.3.2.3. ____________________________ 247 __ 6.3.2.3. IMPOSING SYMMETRY Option [S] selected from the structure option menu S, see Sec. 6.3.2, allows you to impose additional point symmetries on the cluster. The cluster will be completed by adding equivalent atoms (if needed) to achieve the required symmetry. Further, coinciding atoms produced by previous group operations may be removed with the present option. The cluster symmetry menu SS reads ==================================================================== Global symmetry: [C]axis [M]irror [I]nvers [R]educe [D]maxc(dc) [X]plot [?,]esc ============================================================== 81 == allowing to define an n-fold rotation axis, a mirror plane, inversion symmetry, and to reduce the cluster by removing coinciding atoms. The value dc determines the present coincidence distance which is the maximum distance between two atoms to be considered to coincide in the above point symmetry transformations. > the [C] selected from submenu SS imposes N-fold rotation symmetry on cluster. The rotation axis is defined by an origin (x,y,z) (on the axis) and a direction vector (xd,yd,zd). The prompt Rotation origin NC,X,Y,Z ("-1,0,0,0"=esc) : asks for four numbers defining the rotation origin given either in absolute coordinates (0,x,y,z) or denoting the center of an existing atom na by (na,0,0,0). Dummy input "-1,0,0,0" returns immediately to submenu SS. Then the prompt Rotation axis, order (X,Y,Z, N) : asks for four numbers defining the direction vector components (xd,yd,zd) and the order N of the rotation axis. The direction vector does not need to be normalized. > [M] cluster. selected from submenu SS imposes mirror symmetry on the The mirror plane is defined by an origin (x,y,z) (on the plane) and a plane normal vector (xn,yn,zn). The prompt Mirror origin NC,X,Y,Z ("-1,0,0,0"=esc) : asks for four numbers defining the mirror plane origin given either in absolute coordinates (0,x,y,z) or denoting the center of an existing basis atom na by (na,0,0,0). Dummy input "-1,0,0,0" returns immediately to submenu SS. Then the prompt Mirror plane normal (X,Y,Z) : asks for three numbers defining the vector components (xn,yn,zn) of the plane normal. The normal vector does not need to be normalized. __ 248 _________________ Sec. 6.3.2.3. ___________________________________ > [I] cluster. selected from submenu SS imposes inversion symmetry on the The inversion is defined by an origin (x,y,z). The prompt Inversion origin NC,X,Y,Z ("-1,0,0,0"=esc) : asks for four numbers defining the inversion origin given either in absolute coordinates (0,x,y,z) or denoting the center of an existing basis atom na by (na,0,0,0). Dummy input "-1,0,0,0" returns immediately to submenu SS. After successful definition of the symmetry the respective operation is applied to all atoms of the cluster and new atoms are added if needed which is concluded by Symmetry checked, no new atoms if the symmetry operation did not result in new atoms or by Symmetry operation yields nn new atom(s) if nn new atoms have been generated by the symmetry operation and BALSAC returns to the structure option menu S, see Sec. 6.3.2. If a new atom generated by the symmetry operation coincides with an existing cluster atom (within the limit given by the coincidence distance, see below) the new atom will not be included in the cluster. For coinciding atoms of different nuclear charge a warning WARNING: symmetry copy of XX atom (n1) and YY atom (n2) coincide no or partial symmetry applied to atom no. n1 will be issued where n1 denotes the number of the atom (XX its element name) where the symmetry operation was applied and n2 is the number of the existing cluster atom (YY its element name). > [R] selected from submenu SS checks all atoms of the cluster for coincidence and allows you to discard respective atoms. Here two atoms are considered to coincide if their relative distance is smaller than a limit given by the coincidence distance which can be set freely, see below. For each pair of coinciding atoms a prompt Xyz,R,Id( n1,V1) : Xyz,R,Id( n2,V2) : Discard atom: x x [F]irst y y z , z , [S]econd rad1 , rad2 , [A]utosec nuc1 nuc2 [?,]esc appears where n1/2 gives the atom pointers, V1/2 denotes the visibilities of the two atoms ("T" = visible, "F" = hidden), (x,y,z) denotes their (identical) positions, rad1/2 their atom radii, and nuc1/2 their nuclear charges (element names). Here selecting option ________________________ Sec. 6.3.2.3. ____________________________ 249 __ [F] removes the first atom of the pair, atom no. n1 (lower number), from the cluster. [S] removes the second atom of the pair, atom no. n2 (higher number), from the cluster. [A] continues in automatic discard mode where of all pairs of coinciding atoms the second, no. n2 (higher number), is discarded without prompting. [,] stops the search for coinciding atoms returning to the structure option menu S, see Sec. 6.3.2. The coincidence check is concluded by the message np atoms coincide, nrem atoms removed giving the number np of pairs of coinciding atoms and the number nrem of atoms removed from the cluster. If coincidence checking was interrupted by selecting [,] above the number np may be smaller than the actual number of coincidence pairs of the cluster. Note that the atom removal of this option is final and cannot be undone. > is [D] selected from submenu SS resets the coincidence distance which the maximum distance between two atoms to be considered to coincide in the above symmetry transformations. The prompt Atom coincidence distance ( dc) : shows the present value of the coincidence distance (default = 0.01) and asks for a new value after which BALSAC returns to submenu SS. > [X] graphics selected from submenu SS plots the cluster (switching to mode (DOS) or opening a graphics window (Unix)) or lists its atom coordinates depending on the plot/list mode defined in the graphics option, see Sec. 6.2.7. > [,] selected from submenu SS returns immediately to the structure option menu S, see Sec. 6.3.2. __ 250 _________________ Sec. 6.3.3. _____________________________________ 6.3.3. RADII AND NUCLEAR CHARGE OPTION, [R] [R] This option allows you to redefine or scale atom radii and nuclear charges of all cluster atoms. Nuclear charges together with atom radii are used by BALSAC to identify atoms. Since BALSAC can display atoms of equal charge with the same color reassigning charges to different atoms becomes useful if structural details in complex clusters need to be visualized. This is also true for modifications of atomic radii. If a cluster is built from scratch default values are used for both radii (defined by touching spheres) and nuclear charges (from an internal table) unless structural information is read in from an input file and meaningful (non-zero) values are provided for all radii and charges. Default values of atomic radii and nuclear charges are given in Sec. 5.3. The radii option menu R of the BALSAC/CLUSTER session reads ========== RADII/CHARGES OPTIONS ================================== nct atoms nel elements Nuc Rmin Rmax | 1) nc/el rmin rmax | 2) Nuc ... Rmin Rmax Modify radii : [A]ll [Z]select [S]elect [R]escale charges: a[L]l s[E]lect [T]abl [D]ispla [X]plot [?,]esc ============================================================= 10 == where for each of the nel different elements (described by their nuclear charge nc and element name el) which appear in the cluster (of nct atoms) smallest and largest atom radii, rmin and rmax respectively, are given. Here rmin and rmax differ only if different cluster atoms of the same element been assigned different radii, see below. > [A] selected from submenu R allows you to change all atom radii globally. The prompt ============================================================== Change all nct radii: [A]bs [R]el [?,]esc ======================================================== 11 == gives the total number nct of radii (= atoms) defined in the cluster and option > > [A] asks Input nct radii ("/"=esc) : for nct numbers defining radii (absolute values) of all cluster atoms. The order of the radii is identical to that of the atoms shown in the graphics or full analysis, see Sec. 6.3.12. If the option was selected erroneously it can be cancelled by the dummy input "/". After complete input BALSAC returns to submenu R. ________________________ Sec. 6.3.3. ______________________________ 251 __ > > [R] asks Global stretch factor Q : for a value of Q > 0.0 to scale all atom radii of the cluster after which BALSAC returns to submenu R. > > of > [Z] [,] returns immediately to submenu R. selected from submenu R allows you to change radii of all atoms a given nuclear (element) charge. The prompt Change radii of selected elements Nuc (0=esc) : asks for the nuclear charge nuc defining the element. If a charge nuc appearing in the list of menu R is chosen the prompt ============================================================== nel atoms(s) R= rmin/rmax: change radii [A]bs [R]el [?,]esc ======================================================== 12 == gives the number nel of different cluster atoms of charge nuc and lists the smallest and largest radii assigned to them and option > > [A] asks Radius : for a new radius to be assigned to all atoms of charge nuc after which BALSAC returns to submenu R. > > [R] asks Factor : asks for a factor q to scale the radii assigned to all atoms of charge nuc after which BALSAC returns to submenu R. > > > [S] [,] returns immediately to submenu R. selected from submenu R allows you to change radii of selected cluster atoms. The prompt Change radius of selected atom N (1- nct, 0=esc) : asks for the number n of any of the nct cluster atoms where the numbering is identical to that of the atoms shown in the graphics __ 252 _________________ Sec. 6.3.3. _____________________________________ or full analysis, see Sec. 6.3.12. For a valid atom number n the prompt =============================================== Xyz,R,Id,V( n)= x y z , rad , nuc , V Change radius [A]bs [R]el [?,]esc ========================================= 59 == lists coordinates (x,y,z), the atom radius rad, the nuclear charge / element name, and the visibility ("T" for visible or "F" for invisible) of the respective atom and option > > [A] asks Radius : for a new radius to be assigned to atom n after which BALSAC returns to submenu R. > > [R] asks Factor : asks for a factor q to scale the radius assigned to atom n after which BALSAC returns to submenu R. > > > [R] [,] returns immediately to submenu R. selected from submenu R rescales all atom radii of the cluster using a scaling factor such that highest packing without overlapping atom spheres is achieved. If (at least) one of the original radii was chosen to be zero then internal radii (derived from atom radii according to respective nuclear charges, see Sec. 5.3) will be used. Rescaling may take some time during which the message ... Rescaling ... shows. After all radii are rescaled BALSAC shows Radii rescaled: factor = qr / min ( n1 - n2 ) = dmin ** Press [C], L-click to continue ** the value of the computed rescaling factor qr. Further, n1, n2 denote the two atoms of smallest distance dmin in the cluster. For qr < 1.D-5 no renormalization is performed which is indicated by "NO rescaling" added to the above line. This may occur if duplicate atoms or atoms very close to each other have been generated which can be checked by dmin in the above message line. Coinciding atoms can be identified in the atom listing of the analysis option, see ________________________ Sec. 6.3.3. ______________________________ 253 __ Sec. 6.3.12. Removing coinciding atoms is possible with the reduction option (option [R] of the symmetry submenu, see Sec. 6.3.2.3). Selecting [C] in the above prompt (or L-click (DOS)) returns to submenu R. > [L] selected from submenu R allows you to assign new nuclear charges to all atoms of the cluster in one step (where atom radii and positions are kept fixed). The prompt Input nct nuclear charges ("/"=esc) : asks for nct nuclear charges to be assigned to each of the cluster atoms. The order of the radii is identical to that of the atoms shown in the graphics or full analysis, see Sec. 6.3.12. If the option was selected erroneously it can be cancelled by the dummy input "/". After complete input BALSAC returns to submenu R. > of [E] selected from submenu R allows you to change the nuclear charge selected cluster atoms. The prompt Change charge of selected atom N (1- nct, 0=esc) : asks for the number n of any of the nct cluster atoms where the numbering is identical to that of the atoms shown in the graphics or full analysis, see Sec. 6.3.12. For a valid atom number n the prompt Xyz,R,Id,V( n)= x y z , rad , nuc , V New charge : lists coordinates (x,y,z), the atom radius rad, the nuclear charge / element name, and the visibility ("T" for visible or "F" for invisible) of the respective atom and asks for a new nuclear charge value. After this BALSAC returns to submenu R. __ 254 _________________ Sec. 6.3.3. _____________________________________ > [T] selected from submenu R shows a table of all elements and atom radii defined internally. The default radii are close to covalent radii (given in Angstrom) except for rare gas atoms where Van der Waals radii were chosen, see Sec. 5.3. The table reads Element/radii table: H( 1): .4350 .9750 C( 6): .6550 Ne(10):1.6000 Na(11):1.8579 P(15):1.0600 S(16):1.0200 Ca(20):1.9758 Sc(21):1.6545 Mn(25):1.3500 Fe(26):1.2411 Zn(30):1.3325 Ga(31):1.3501 Br(35):1.1400 Kr(36):2.0000 Zr(40):1.6156 Nb(41):1.4318 Rh(45):1.3450 Pd(46):1.3755 Sn(50):1.5375 Sb(51):1.4000 Cs(55):2.6325 Ba(56):2.1705 Nd(60):1.8295 Pm(61):1.8090 Tb(65):1.8005 Dy(66):1.7951 Yb(70):1.9396 Lu(71):1.7515 Re(75):1.3800 Os(76):1.3676 Hg(80):1.5025 Tl(81):1.7283 At(85):1.4500 Rn(86):1.4300 Th(90):1.7975 Pa(91):1.6086 Am(95):1.6000 Cm(96):1.6000 He( 2):1.4000 Li( 3):1.5199 Be( 4):1.1430 N( 7): .7500 O( 8): .7300 F( 9): .7200 Mg(12):1.6047 Al(13):1.4318 Si(14):1.1758 Cl(17): .9900 Ar(18):1.9000 K(19):2.2620 Ti(22):1.4755 V(23):1.3090 Cr(24):1.2490 Co(27):1.2535 Ni(28):1.2460 Cu(29):1.2780 Ge(32):1.2248 As(33):1.2000 Se(34):1.1600 Rb(37):2.4700 Sr(38):2.1513 Y(39):1.8237 Mo(42):1.3626 Tc(43):1.3675 Ru(44):1.3529 Ag(47):1.4447 Cd(48):1.4894 In(49):1.6662 Te(52):1.3600 I(53):1.3300 Xe(54):2.2000 La(57):1.8725 Ce(58):1.8243 Pr(59):1.8362 Sm(62):1.8040 Eu(63):1.9840 Gd(64):1.8180 Ho(67):1.7886 Er(68):1.7794 Tm(69):1.7687 Hf(72):1.5973 Ta(73):1.4280 W(74):1.3705 Ir(77):1.3573 Pt(78):1.3873 Au(79):1.4419 Pb(82):1.7501 Bi(83):1.4600 Po(84):1.4600 Fr(87):2.5000 Ra(88):2.1400 Ac(89):1.8775 U(92):1.5683 Np(93):1.6000 Pu(94):1.6000 Bk(97):1.6000 Cf(98):1.6000 Es(99):1.6000 B( 5): ** Press [C], L-click to continue ** and selecting [C] (or L-click (DOS)) returns to submenu R. > [D] selected from submenu R shows up to 10 lines of the most recent output generated by the graphic analysis option, see Sec. 6.3.12.2, by ============ Latest Graphics Output ================== 1: Xyz,R,Id( n1)= x y z rad nuc ... ====================================================== This allows you to look up and use numerical output from the analysis for input within submenu R. After the listing BALSAC returns to submenu R. > [X] selected from submenu R plots the lattice section (switching to graphics mode (DOS) or opening a graphics window (Unix)) or lists its atom coordinates depending on the plot/list mode defined in the graphics option, see Sec. 6.2.7. > [,] option selected from submenu R returns to the BALSAC/CLUSTER main menu, see Sec. 6.3.0. ________________________ Sec. 6.3.4. ______________________________ 255 __ 6.3.4. [V] and VIEW OPTION, [V] This option allows you to define viewing directions, magnifications, projections used in the graphics output and is, except for option [V], identical to the view option of the BALSAC/LATTICE session, see Sec. 6.2.6. The view option menu V reads ========== VIEW OPTIONS ====================================== [V]iew (x, y, z) = ( vx, vy, vz ) [T]heta,(dtheta) = theta ( dtheta ) [P]hi,(dphi) = phi ( dphi ) [R]ot,(drot) = rot ( drot ) [M]agnf,(dmagnf) = magnf ( dmagnf ) [Q]persp,(dpersp) = persp ( dpersp ) [F]ocus = nfoc ( xfoc yfoc zfoc ) [S]hift (pixels) = sx , sy [A]ll [W]orkb [D]ispla {[X]plot} [?,]esc ======================================================== 26 == giving values of all view parameters and option keys described below. If BALSAC is started from scratch the plot option "[X]plot" of this menu is not available and will not be shown. BALSAC allows two alternative methods to define viewing directions in the cluster, (a) by direction vectors (vx, vy, vz ) given in absolute cartesian coordinates (option [V]), (b) by viewing angles theta, phi (options [T], [P]). Viewing angles theta, phi shown in submenu V are taken with respect to a cartesian coordinate system of the cluster with its origin at the cluster focus, see below, and the x, y, z axes being parallel to those of the absolute cartesian coordinate system of the cluster. In this system, the unit vector of the viewing direction is defined by p = ( sin(theta)*cos(phi), sin(theta)*sin(phi), cos(theta) ) with theta giving the polar and phi giving the azimuthal angle. Since direction vectors and viewing angles are equivalent definitions of the viewing direction they will be converted internally before shown in submenu V. The screen rotation angle rot shown in submenu V allows for an additional rotation of the plot about the viewing direction to achieve special effects. The magnification factor magnf shown in submenu V allows for enlargement (magnf > 1) or reduction (magnf < 1) of the actual plot size where magnf = 1 corresponds to plots where the cluster fills the screen. __ 256 _________________ Sec. 6.3.4. _____________________________________ The perspective parameter persp shown in submenu V defines both the projection mode and the perspective factor. Here persp = 0 or persp > 999 results in a parallel projection of the cluster in plots while persp > 0 values lead to central projection with persp giving the distance of the viewer from the cluster focus in multiples of the cluster radius, see Sec. 5.1. The cluster focus shown in submenu V is defined by absolute cartesian coordinates (xfoc, yfoc, zfoc) as well as by an index nfoc where for nfoc = 0 the viewing focus coincides with the cluster center (coordinate average), nfoc > 0 the viewing focus coincides with the center of cluster atom no. nfoc, nfoc = -1 a free definition of the focus by (xfoc, yfoc, zfoc) was given. The plot shift (sx,sy) shown in submenu V defines a rigid shift (in pixel units) of the plot which may be needed to center certain locations of a cluster visually. In submenu V all viewing angles (theta, phi, rot), the magnification (magnf), and the perspective parameter (persp) are listed together with incremental values (dtheta, dphi, drot, dmagnf, dpersp) which are used with the fast plot option, see Sec. 6.2.6. > [V] selected from submenu V allows you to redefine the viewing direction by a direction vector, see above. The prompt Input view vector X,Y,Z : asks for three numbers defining cartesian components vx, vy, vz of the direction vector after which BALSAC returns to submenu V. Dummy input "/" will leave the present definition unchanged. > of [T] selected from submenu V allows you to redefine the polar angle the viewing direction, see above. The prompt Input polar angle + increment THETA,DTHETA : asks for two numbers defining the polar angle theta and its increment dtheta (used with the fast plot option) after which BALSAC returns to submenu V. Dummy input "/" will leave the present definition unchanged. Angle theta will be rescaled to lie inside the range [0, 180). ________________________ Sec. 6.3.4. ______________________________ 257 __ > [P] angle selected from submenu V allows you to redefine the azimuthal of the viewing direction, see above. The prompt Input azimuthal angle + increment PHI,DPHI : asks for two numbers defining the azimuthal angle phi and its increment dphi (used with the fast plot option) after which BALSAC returns to submenu V. Dummy input "/" will leave the present definition unchanged. Angle phi will be rescaled to lie inside the range (-360, 360). > [R] rotation selected from submenu V allows you to redefine the screen angle, see above. The prompt Input rotation angle + increment ROT,DROT : asks for two numbers defining the screen rotation angle rot and its increment drot (used with the fast plot option) after which BALSAC returns to submenu V. Dummy input "/" will leave the present definition unchanged. Angle rot will be rescaled to lie inside the range (-360, 360). > [M] selected from submenu V allows you to redefine the magnification used to display lattice sections. The prompt Input magnification + increment MAGNF,DMAGNF : asks for two numbers defining the magnification factor magnf and its increment dmagnf (used with the fast plot option) after which BALSAC returns to submenu V. Here magnf > 1 leads to enlargement and magnf < 1 to reduction of the actual plot size while magnf = 1 corresponds to plots where the cluster fills the screen. Dummy input "/" will leave the present definition unchanged. > [Q] geometry. selected from submenu V allows you to redefine the perspective parameter used to display clusters in central projection The prompt Input perspective + increment PERSP,DPERSP : asks for two numbers defining the perspective parameter persp and its increment dpersp (used with the fast plot option) after which BALSAC returns to submenu V. Here persp = 0 or persp > 999 results in a parallel projection of the cluster in plots while persp > 0 values lead to central projection with persp giving the distance of the viewer from the section focus in multiples of the cluster radius, see Sec. 5.1. Dummy input "/" will leave the present definition unchanged. __ 258 _________________ Sec. 6.3.4. _____________________________________ > [F] focus selected from submenu V allows you to redefine the cluster (xfoc, yfoc, zfoc) used to display clusters in central projection geometry. The prompt Focus center NC,X,Y,Z ("nc,0,0,0"=atom, "-1,x,y,z"=abs, "0,0,0,0"=avg) : asks for four numbers, nfoc (integer), xfoc, yfoc, zfoc (real), defining the cluster focus where three different definitions can be used. For nfoc > 0 values xfoc, yfoc, zfoc are ignored and the focus is assumed to coincide with the center of cluster atom no. nfoc, nfoc = 0 nfoc = -1 the focus is assumed to coincide with the cluster center (coordinate average), the focus is assumed to be given by absolute cartesian coordinates xfoc, yfoc, zfoc of the cluster. After complete input BALSAC returns to submenu V. Dummy input "/" will leave the present definition unchanged. Note that the graphic analysis option offers a focus definition which is much more intuitive and faster, see Sec. 6.3.12. > the [S] selected from submenu V allows you to set a rigid shift to move plot on the screen. The prompt Input plot shift SHPIXX,SHPIXY : asks for two numbers defining the x and y coordinates sx, sy (in pixel units) of the plot shift after which BALSAC returns to submenu V. Here sx = sy = 0 defines the default where plots of clusters will be centered such that the image of the cluster center coincides with the screen center. Values sx sx sy sy > < > < 0 0 0 0 will will will will shift shift shift shift to the right, to the left, downwards, upwards, Dummy input "/" will leave the present definition unchanged. Note that the graphic analysis option offers a plot shift definition which is much more intuitive and faster, see Sec. 6.3.12. ________________________ Sec. 6.3.4. ______________________________ 259 __ > [A] view selected from submenu V allows you to set the most important parameters (without increments) in one step. The prompt Input THETA,PHI,ROT,MAGNF,PERSP : asks for five numbers defining the polar and azimuthal view angles, theta, phi, the screen rotation angle rot, the magnification factor magnf, and the perspective parameter persp after which BALSAC returns to submenu V. Here incremental values previously defined (or default values) will be used. Dummy input "/" will leave the present definition unchanged. > [W] selected from submenu V moves to the color/shading workbench switching to graphics mode (DOS) or opening a graphics window (Unix). This allows you to change all basic and paint colors as well as ball shading angles in a very intuitive way using the mouse or a graphics pointer. Further details are given in Sec. 6.2.15.2. > [D] selected from submenu V shows up to 10 lines of the most recent output generated by the graphic analysis option, see Sec. 6.3.12.2, by ============ Latest Graphics Output ================== 1: Xyz,R,Id( n1)= x y z rad nuc ... ====================================================== This allows you to look up and use numerical output from the analysis for input within submenu V. After the listing BALSAC returns to submenu V. > [X] selected from submenu V (if available) plots the cluster (switching to graphics mode (DOS) or opening a graphics window (Unix)) or lists its atom coordinates depending on the plot/list mode defined in the graphics option, see Sec. 6.2.7. > [,] option selected from submenu V returns to the BALSAC/CLUSTER main menu, see Sec. 6.2.0. The view parameters theta, phi, rot, magnf, and persp (and other option parameters) can be varied outside the view option menu immediately after a plot has been completed (or interrupted and finished incomplete by selecting [,]). The available option keys are shown in a menu line at the bottom of the screen (graphics/text window (Unix)) and are explained in detail in Sec. 6.3.7. __ 260 _________________ Sec. 6.3.5. _____________________________________ 6.3.5. [G] GRAPHICS OPTION, [G] This option allows you to design the graphical/numerical screen (and PostScript file) output of a cluster and is, except for option [L] and missing option [M], identical to the graphics option of the BALSAC/LATTICE session, see Sec. 6.2.7. It lets you choose different details of plots such as atom representations (points, circles, (shaded) balls, stereo duplication), layout (see Sec. 6.3.5.2), and colors. Further, you can define links (lines or cylindrical sticks) connecting atom pairs inside this option which helps to visualize bonds and neighbor relationships, see Sec. 6.3.5.1. The graphics option menu G reads ======= GRAPHICS OPTIONS =============================================== Graphs: [D]esign(gd) [S]tereo(st) [B]ackgr(nb) [P]alstart(np) [C]link(nnc) [L]ayout(pl/xxl) c[T]abl [W]orkb {[X]plot} [?,]esc ================================================================== 29 == giving shorthand information about graphics options and parameters, see Sec. 6.2.7. In this menu parameters gd, st, nb, np, nnc are identical in their form and meanings to those of the BALSAC/LATTICE graphics menu discussed in Sec. 6.2.7. Parameter pl in the above menu refers only to atom labelling (while cluster atoms of different elements are painted differently) where pl = "E-" = "EN" = "EE" does not label atoms, labels atoms by internal numbers. labels atoms by element name. Parameter xxl in the above menu refers to the plot layout and reads "off" or any combination of the four characters "T", "F", "-" where "T" "F" "-" shows if a title line is included, shows if the cluster is enclosed by a rectangular wire frame, is used only as a filling character. All parameters shown in the graphics option menu are predefined internally by meaningful defaults which are, however, overwritten if an external structure file is loaded in a BALSAC/LATTICE session. > [D] shown in selected from submenu G allows you to define how atoms are subsequent plots or listings of present setting is indicated by different choices are identical graphics menu discussed in Sec. a cluster where the where the parameter gd in submenu G. The to those of the BALSAC/LATTICE 6.2.7. ________________________ Sec. 6.3.5. ______________________________ 261 __ > and [S] selected from submenu G allows you to switch between mono view full color stereo view where the present setting is indicated by parameter st in submenu G. This option is identical to that of the BALSAC/LATTICE graphics menu discussed in Sec. 6.2.7. > [B] color selected from submenu G allows you to define the background used in subsequent plots of the cluster where parameter nb in submenu G gives the present setting. This option is identical to that of the BALSAC/LATTICE graphics menu discussed in Sec. 6.2.7. > [P] inside selected from submenu G allows you to set the starting point the color palette used in atom painting where parameter np in submenu G gives the present setting. This option is identical to that of the BALSAC/LATTICE graphics menu discussed in Sec. 6.2.7. > [C] atoms selected from submenu G allows you to define links connecting (represented in plots by straight lines or cylindrical sticks) which can be used to visualize bonds or neighbor relationships in the cluster. This option is identical to that of the BALSAC/LATTICE graphics menu discussed in Sec. 6.2.7.1. > [L] selected from submenu G allows you to define additional layout parameters (framing, labelling, etc.) used in screen plots and for PostScript file output. Further, details are given in see Sec. 6.3.5.2. > [T] separate selected from submenu G displays a color test table (in a graphics window, Unix) showing all color definitions together with color numbers available inside BALSAC. The colors are described in the initialization file and generated when BALSAC is started, see Sec. 5.4. > [W] selected from submenu G moves to the color/shading workbench switching to graphics mode (DOS) or opening a graphics window (Unix). This allows you to change all basic and paint colors as well as ball shading angles in a very intuitive way using the mouse or a graphics pointer. Further details are given in Sec. 6.2.15.2. > [X] graphics selected from submenu G plots the cluster (switching to mode (DOS) or opening a graphics window (Unix)) or lists its atom coordinates depending on the plot/list mode defined in the present graphics option. > [,] selected from submenu G returns immediately to the BALSAC/CLUSTER main option menu. Note that the graphics option menu G is the last menu which requires input if a cluster is built from scratch. If BALSAC/CLUSTER is started with a structure input file the above graphics and layout parameters are given in compressed and number coded form in the file (with the display mode being always layer-by-layer, K = 0). For further details see Sec. 6.2.7. __ 262 _________________ Sec. 6.3.5.1. ___________________________________ 6.3.5.1. SETTING LINKS/BONDS BETWEEN ATOMS Option [C] selected from the graphics option menu G, see Sec. 6.3.5, allows you to define links connecting atom pairs and shown in plots by straight lines or cylindrical sticks. This can be used to visualize chemical bonds or neighbor relationships inside the cluster. The link option menu GC of BALSAC/CLUSTER sessions reads == GRAPHICS OPTIONS =================================================== nl link(s) : Nuc1 Nuc2 Rmin Rmax 1) nuc1 nuc2 rmin rmax 2) ... Lcolor lcol Lrad lrad [N]ew [A]dd [E]rase [C]olrs [R]adii c[T]abl [D]ispla {[X]plot} [?,]esc ================================================================= 32 == where nl is the number of link constraints defined at present. For each constraint two nuclear charges nuc1, nuc2 (values nuc1/2 = 0 are meaningful, see below), a distance range [rmin, rmax], a line/stick color lcol, and a stick radius lrad are shown in the menu. Here a link constraint means that any two atoms of the cluster will be connected by a line or cylindrical stick if one atom is of nuclear charge nuc1, the other of charge nuc2, and if the distance between the two atoms lies inside the distance range [rmin, rmax]. For stick radii rad = 0 atom pairs will be connected by thin lines of color lcol while rad > 0 uses cylindrical sticks of finite thickness (radius rad) and of color lcol . With atoms shown as (shaded) balls lines/sticks will connect ball surfaces thus enhancing the 3-dimensional impression. Charge values nuc1/2 = 0 ignore the respective charge constraint. Thus, nuc1 = nuc2 = 0 connects any pair of atoms with a distance inside the prescribed range while for example nuc1 = 14, nuc2 = 0 connects all Si atoms with any other cluster atom A if the Si-A distance lies inside the distance range [rmin, rmax]. All options of the link option menu GC are identical to those of the BALSAC/LATTICE link option menu as discussed in detail discussed in Sec. 6.2.7.1. ________________________ Sec. 6.3.5.2. ____________________________ 263 __ 6.3.5.2. DEFINING THE PLOT LAYOUT Option [L] selected from the graphics option menu G, see Sec. 6.3.5, allows you to set the plot layout which includes a title line, a wire frame enclosing the cluster, and the modes labelling atoms. The layout option menu GL of BALSAC/CLUSTER sessions reads [T]itle(tt) [F]rame(ff) [L]abel(ll) {[X]plot} [?,]esc where the present definition of each option is shown by a flag in parentheses. This menu represents a restricted version of submenu GL of BALSAC/LATTICE sessions leaving out options which are meaningless for clusters. Option flag tt reads "on" or "off" depending on whether plots are to include a title line (cluster title, and viewing angle information). ff wire reads "on" or "off" depending on whether plots are to include a frame enclosing the cluster. ll reads "none", "elmt", or "nmbr" depending on whether atoms are shown in plots without labels ("none"), labelled by their element names ("elmt"), or labelled by their internal numbers ("nmbr"). > [T] between selected from submenu GL switches the title line flag tt "on" and "off" and shows the updated submenu GL. For tt = "on" a title line giving the cluster title and viewing angle information is added to the plot at the top of the screen (graphics window) and included in PostScript file output. > [F] between selected from submenu GL switches the wire frame flag ff "on" and "off" and shows the updated submenu GL. For ff = "on" plots will include a rectangular wire frame of black or white lines (depending on the background color) enclosing the cluster which is started at the beginning and completed at the end of the plot. The framing lines point parallel to the x, y, and z axes of the cartesian coordinate system used to describe the atom positions. > [L] selected from submenu GL switches the label flag ll periodically between "none", "elmt", and "nmbr" and shows the updated submenu GL. For ll = "none" no atom labelling will be included in plots while ll = "elmt" indicates that atoms are labelled by their element names ("H" for Hydrogen, "He" for Helium ...) in plots and ll = "nmbr" results in atoms being labelled by their internal number used to count the cluster atoms. The internal atom numbers are also used in the graphic analysis, see Sec. 6.3.12.2. > [X] selected from submenu GL (if available) plots the cluster (switching to graphics mode (DOS) or opening a graphics window (Unix)) or lists its atom coordinates depending on the plot/list mode defined in the graphics option, see Sec. 6.3.5. __ 264 _________________ Sec. 6.3.5.2. ___________________________________ > see [,] selected from submenu GL returns to the graphics option menu G, Sec. 6.3.5. The settings of the title line and wire frame flags, tt, ff (options [T], [F] above), are shown by a joint label xxl appearing in "lout= xxl" inside the BALSAC/CLUSTER main option menu, see Sec. 6.3.0, and in "[L]ayout(pl/xxl)" inside the graphics option menu, see Sec. 6.3.5. Further, the three flags are represented internally (and in structure input/output files, see Sec. 6.4.3) by an integer IBFT. The following table lists all values of tt, ff together with their xxl and IBFT equivalents. ---------------------------------------tt ff xxl IBFT ---------------------------------------"off" "off" "off" 0 "off" " on" "--F" 1 " on" "off" "T--" 4 " on" " on" "T-F" 5 ---------------------------------------The setting of the label flag ll, (option [L] above), is shown by label pl appearing in "colr= nb/ np pl" inside the BALSAC/CLUSTER main option menu, see Sec. 6.3.0, and in "[L]ayout(pl/xxl)" inside the graphics option menu, see Sec. 6.3.5. Further, the flag is represented internally (and in structure input/output files, see Sec. 6.4.3) by an integer ICLC. The following table lists all values of ll together with their pl and ICLC equivalents. ----------------------------ll pl ICLC ----------------------------"none" "E-" 1 "elmt" "EE" 2 "nmbr" "EN" 3 ----------------------------- ________________________ Sec. 6.3.6. ______________________________ 265 __ 6.3.6. FILE OUTPUT OPTION, [O] [O] This option allows you to save all structure and graphics information of the present BALSAC/CLUSTER session on output files. These files can be used as input to subsequent BALSAC/CLUSTER runs or with other analysis or visualization software depending on the output format. Available formats are discussed below and in Sec. 6.4.2-6 and include encapsulated (color) PostScript file output for high quality graphics prints on PostScript laser printers. The present option is in many details identical to the file output option of BALSAC/LATTICE sessions but offers a smaller selection of output formats, see Sec. 6.2.8. The file output menu O reads ========== FILE STORE OPTIONS ================================ [F]ilesave [Q]uicksave [I]nit(fin) l[O]go(flg) [?,]esc ======================================================== 27 == where the present settings of the initialization and logo option flags, fin and flg (reading "on" or "off", see below), are shown. > [F] external selected from submenu O allows you to give a name of an file which will be used for subsequent output. The prompt Output file name ("-"=esc): asks for a character string fname (up to 72 characters) defining the file name, e.g. "out.new". Note that BALSAC does not check and warn you if a file name denotes an existing file where there is a risk of overwriting data by BALSAC output. With the DOS version of BALSAC using "PRN" as file name will send the output directly to the default printer connected to the PC without storing in a file. Note that PostScript output format is meaningful only for true PostScript laser printers and other printers may produce lots of useless output. The file name input is confirmed by Open: fname after which the output file fname is opened and the file format menu OF reading =================================================================== Format: [P]lt [L]at sch[K]l [G]ps [C]olps [I]nit(fin) l[O]go(flg) [?,]esc ============================================================= 28 == allows you to select the format of the output file (and change the initialization and logo option flags). __ 266 _________________ Sec. 6.3.6. _____________________________________ > data > [P] selected from submenu OF saves all structure and graphics of the present BALSAC/CLUSTER session using PLOT3D format, see Sec. 6.4.3. This is confirmed by Saving data on file : PLOT3D format File output completed ** Press [C], L-click to continue ** (DOS only) after which the file is closed and BALSAC returns to its CLUSTER main option menu. Output files of PLOT3D format can be used as input to subsequent BALSAC/CLUSTER sessions as well as to PLOT3D ((C) Copyright 1991-5 K. Hermann), a PC based analysis and visualization tool for non-periodic structures (clusters, molecules, disordered systems), see Sec. 1.3. > data > [L] selected from submenu OF saves all structure and graphics of the present BALSAC/CLUSTER session using standard LATUSE format (Cards 1-18), see Sec. 6.4.2. This is confirmed by Saving data on file : LATUSE format File output completed ** Press [C], L-click to continue ** (DOS only) after which the file is closed and BALSAC returns to its CLUSTER main option menu. Here the atoms of the cluster are interpreted as forming the crystallographic unit cell of an orthorhombic lattice with lattice vectors (in cartesian coordinates) R1 = ( xtot * 1.5, 0.0 , 0.0 ) R2 = ( 0.0 , ytot * 1.5, 0.0 ) R3 = ( 0.0 , 0.0, ztot * 1.5 ) where xtot, ytot, ztot are the lengths of the rectangular block containing all cluster atoms. The lattice periodicity (as well as the atom basis) may be changed after transfer inside the BALSAC/LATTICE session with the lattice update option, see Sec. 6.2.1.2. If the total number nct of cluster atoms exceeds the maximum number nbmax of lattice basis vectors of a BALSAC/LATTICE session (nbmax = 201 at present) only nbmax atoms are used to build the elementary cell of the lattice. Output files of LATUSE format can be used as input to subsequent BALSAC/LATTICE sessions as well as to LATUSE ((C) Copyright 1991-5 K. Hermann), a PC based analysis and visualization tool for periodic structures and surfaces, see Sec. 1.3. ________________________ Sec. 6.3.6. ______________________________ 267 __ > > [K] selected from submenu OF saves all structure data of the present BALSAC/CLUSTER session using SCHAKAL format, see Sec. 6.4.5. This is confirmed by Saving data on file : SCHAKAL format File output completed ** Press [C], L-click to continue ** (DOS only) after which the file is closed and BALSAC returns to its CLUSTER main option menu. Output files of SCHAKAL format can be used as input to SCHAKAL ((C) Copyright 1992 E. Keller), a widely used crystal visualization tool. BALSAC uses only a restricted SCHAKAL format as described in Sec. 6.4.5. This format cannot account for all structural features available with SCHAKAL. For further details consult the SCHAKAL documentation. > > [G]/[C] selected from submenu OF stores the complete graphics information of the present BALSAC/CLUSTER session using (encapsulated) gray scale ([G]) or color ([C]) PostScript format, see Sec. 6.4.6. If fuzzy-, dither-, or glossy- shaded balls are used to represent atoms BALSAC prompts No. of PostScript tones (1-50) : asking for the number of tones nshps < 50 to be used for shading in the PostScript output (see Sec. 5.4). The output is confirmed by Saving data on file : Gray scale PostScript format File output completed ** Press [C], L-click to continue ** (DOS only) or Saving data on file : Color PostScript format File output completed ** Press [C], L-click to continue ** (DOS only) after which the file is closed and BALSAC returns to its CLUSTER main option menu. PostScript files can be printed on PostScript laser printers or typesetting systems yielding high quality graphics prints. On B/W PostScript printers colors and shading are simulated by gray levels using fixed dithering. Since PostScript files are ASCII-type they can be easily modified outside BALSAC with text editors to improve the print quality even further, see Secs. 6.4.6, 6.4.6.1. __ 268 _________________ Sec. 6.3.6. _____________________________________ > > option [I] selected from submenu OF switches the initialization flag fin between "on" and "off" where the present setting is shown in the prompt "[I]nit(fin)" of submenu OF. For fin = "on" all PLOT3D or LATUSE format file output includes additional initialization information with parameters identical to those of the initialization file, see Sec. 6.4.7. This allows you to save all present color assignments and adapter/window parameters together with the structural data of the lattice section. Clusters where atom colors have been changed inside a BALSAC/CLUSTER session, see Sec. 6.14.1, MUST be saved with fin = "on". Otherwise, all color assignments will be lost and replaced by defaults taken from the (default) initialization file. > > [O] selected from submenu OF switches the logo option flag flg between "on" and "off" where the present setting is shown in the prompt "l[O]go(flg)" of submenu OF. For flg = "on" all PostScript file output includes an additional logo "BALSAC plot" to be shown at the bottom right of the print. This allows you to indicate the origin of BALSAC graphics output which is a matter of curtesy to the author and may be needed to comply with legal requirements. > > in > [Q] [,] selected from submenu OF closes the open output file and returns to the BALSAC/CLUSTER main option menu. selected from submenu O opens the quicksave file 'balsac.plt' your working directory and all structure and graphics data of the present BALSAC/CLUSTER session are saved on this file (using PLOT3D format). After this file 'balsac.plt' is closed and BALSAC returns to its CLUSTER main option menu. The quicksave option offers a fast method to store structure data on a file for later retrieval. Quicksave files may be used for structure input to subsequent BALSAC/CLUSTER sessions. > fin [I] selected from submenu O switches the initialization option flag between "on" and "off" where the present setting is shown in the prompt "[I]nit(fin)" of submenu O. This option is identical to option [I] of the file format menu OF discussed above. > [O] between selected from submenu O switches the logo option flag flg "on" and "off" where the present setting is shown in the prompt "l[O]go(flg)" of submenu O. This option is identical to option [O] of the file format menu OF discussed above. > [,] selected from submenu O returns immediately to the BALSAC/CLUSTER main option menu without file output. ________________________ Sec. 6.3.7. ______________________________ 269 __ 6.3.7. EXECUTE OPTION, [X] [X] The execute option is available in the BALSAC/CLUSTER main option menu and in most other BALSAC menus. It calculates coordinates of all atoms of the cluster and depending on graphics parameters, see Sec. 6.3.5, the section will be PLOTTED switching to graphics mode (DOS) or opening a graphics window (Unix) or LISTED by its atom coordinates and attributes (radius, nuclear charge) in text mode (DOS) or in the text window (Unix). Plotting/listing stops after A) the complete cluster has been processed, or B) any key or mouse button (inside graphics window only (Unix)) was pressed during the plot/list process, with different options being available as discussed in the following. (A) After a complete cluster is plotted/listed an option menu line Replot[udlr][rRpPmMC+] analyze[Q] stack[LS] trnsf[T] qmen[O] sho[EI] [?,]esc shows at the bottom of the screen (DOS) or text/graphics window (Unix) listing all available fast plot options. For numerical output (design option [L], see graphics option menu) the cursor key reminder "[udlr]" in the above lines is replaced by number keys "[8246]" which can be used alternatively. Selecting [down/up] (cursor keys, see Sec. 5.5, indicated by "ud" or "82" in the prompt line) replots/lists the cluster with polar view angle theta decreased / increased by increment dtheta, see Sec. 6.2.6. [left/right] "46" (cursor keys, see Sec. 5.5,, indicated by "lr" or in the prompt line) replots/lists the cluster with azimuthal view angle phi decreased / increased by increment dphi, see Sec. 6.2.6. [r/R] decreased / replots/lists the cluster with rotation angle rot increased by increment drot, see Sec. 6.2.6. [p/P] replots/lists the cluster with perspective parameter persp divided / multiplied by increment dpersp, see Sec. 6.2.6. [m/M] replots/lists the cluster with magnification factor magnf divided / multiplied by increment dmagnf, see Sec. 6.2.6. [C] replots/lists a truncated cluster with previous viewing parameters. After a cluster plot is finished incomplete, pressing [C] will hide all atoms of the cluster that are not yet displayed. Hiding can be revised in the structure option, see Sec. 6.3.2.1. __ 270 _________________ Sec. 6.3.7. _____________________________________ [+] replots/lists the cluster with present viewing and graphics parameters. This becomes useful if a plot has been analyzed and too many additional lines or circles drawn in the analysis confuse the picture. [Q] enters the graphic analysis option allowing you to analyze geometric quantities (e.g. distances, angles, atom environments) in the cluster directly or even rebuild parts of a cluster from the graphics screen output using a mouse pointer, see Sec. 6.3.12.2. This option is NOT available for numerical output (design option [L]). [L] allows you to load a different cluster from the file stack, see Secs. 6.2.16, 6.3.14. [S] allows you to save the present structure and graphics data of a cluster on the file stack, see Secs. 6.2.16, 6.3.14. [T] allows you to transfer all structure and graphics data from the present CLUSTER to a (new) LATTICE session which has to be confirmed in Fast transfer to LATTICE: [T]ransfer (+[C]ell) [?,]esc Pressing [T] assumes the cluster atoms to form the elementary cell of a fictitious orthorhombic lattice while pressing [C] uses the lattice periodicity selected in a LATTICE session immediately before the present CLUSTER session. This allows you to build complex crystal lattices by first designing the appropriate elementary cell. Note that option [C] is available ONLY in CLUSTER sessions where atoms have been passed from a LATTICE session, see Sec. 6.2.9, 6.2.13. [O] shows an alternative option menu line at the bottom of the screen which lists all options of the BALSAC/CLUSTER main option menu reading (in one line!) Structure[SRA] [P]arms Graphics[VG] Cont[XNEL] Files[IOK] [?,]esc allowing you to move immediately to the options of the respective main option menu, see Sec. 6.3.0. [E] saves (exports) the present graphics window output in an internal pixel array for later use. (Available only for BALSAC Unix/X.11 version.) Only one picture can be saved at a time and overwrites the previously saved picture. Pixel images cannot be transferred to external files. [I] loads (imports) previously saved graphics window output (pixel image, see option [e/E]) into the graphics window overwriting the present picture. (Available only for BALSAC Unix/X.11 version.) Note that imported pictures cannot be analyzed. The analysis may yield erroneous results. ________________________ Sec. 6.3.7. ______________________________ 271 __ [,] clears the graphics screen and switches to text mode (DOS) or closes the graphics window (Unix)) returning to the BALSAC/CLUSTER main option menu. For mouse selection of menus (Unix/X.11 version), see Sec. 3.3.8, the menu window contains all entries of the above list in fields separated by black lines after a plot is finished. The options are selected by pointing inside the respective field and L-clicking. Note that when fast plot keys are used to incrementally change viewing angles of a given cluster the visual movement of the cluster will proceed in different directions depending on the value of the screen rotation angle rot, see Sec. 5.2. (B) is After any key or mouse button (inside graphics window only (Unix)) pressed during the plot/list process the prompt ** Press [C], L-click ([/], B-click) to continue; [,], R-click to escape ** shows at the bottom of the screen (DOS) or text/graphics window (Unix). Selecting [C] or L-click resumes plotting/listing in continuous mode processing all atoms of the cluster until it is complete and BALSAC stops. [/] or B-click resumes plotting/listing in single atom mode after which each atom of the cluster is displayed only after a key is pressed or L-click. If [/] is pressed (or B-click) in single atom mode plotting will be continued in continuous mode. [,] or R-click in graphics output completes the wire frame about the (possibly incomplete) cluster (if selected, see Sec. 6.3.5) and BALSAC assumes the plot to be completed showing the option menu line given above. In numerical output assumes the listing to be completed showing the option menu line given below. On Unix systems where the display is not X.11 Windows compatible (indicated by "Terminal mode, no graphics display" at BALSAC startup) any graphics output will be suppressed and selecting the execute option [X] issues a warning prompt ERROR: can't open display dname [C]alculate atom centers [?,]esc shows where dname is the DISPLAY name that BALSAC has assumed when the program was started. Selecting [C] from this menu calculates and lists all atoms of the lattice section or cluster analogous to design option [L], see Sec. 6.3.5. Selecting [,] moves directly to the BALSAC/CLUSTER main option menu. __ 272 _________________ Sec. 6.3.8. _____________________________________ 6.3.8. SCRATCH OPTION, [N] [N] This option causes BALSAC to reset most input parameters and restart building a cluster from scratch. This has to be confirmed in the prompt Confirm start from scratch : [N]ew [?,]esc where selecting [N] starts the initial buildup sequence of the CLUSTER session: --> --> --> --> structure option, view option, graphics option, BALSAC/CLUSTER main option menu, Sec. Sec. Sec. Sec. 6.3.2 6.3.4 6.3.5 6.3.0 . Selecting [,] in the above prompt returns to the BALSAC/CLUSTER main option menu keeping the old cluster definition. 6.3.9. FILE INPUT OPTION, [I] [I] This option allows you to restart the present BALSAC/CLUSTER session with new structure and graphics input from an external (PLOT3D format) file. The prompt Input file name ("+"=def,"-"=esc) : asks for a character string fname (up to 72 characters) defining the file name, e.g. "input.plt". Here the one-character filename "+" is interpreted as that of the quicksave file 'balsac.plt' of the present directory while dummy input "-" returns to the BALSAC/CLUSTER main option menu. The file name input is confirmed by Open: fname after which BALSAC starts the initial buildup sequence of the CLUSTER session with input taken from file fname. This is concluded by showing the main option menu accepting interactive input, see Sec. 6.3.0. If an incorrect file name fname is given in the above prompt an error message ERROR: opening file for structure input File = fname Input file name ("+"=def,"-"=esc) : is issued and BALSAC repeats the file name prompt. ________________________ Sec. 6.3.10. _____________________________ 273 __ 6.3.10. EXIT AND TRANSFER OPTION, [,], [L] [,] selected from the BALSAC/CLUSTER main option menu allows you to finish the session with or without saving the present structure and graphics data on a safety backup file. The finish menu F reads Confirm exit: [Q]uit [E]nd(save) [B]ackup(fbu) [?,]esc asking you to confirm exit or to set the safety backup flag whose present value is shown in the menu by fbu (reading "on" or "off"). > [Q] > [E] selected from submenu F closes any open output file and BALSAC finishes returning to the DOS or Unix command line. selected from submenu F stores all structural/graphics parameters of the present session on quicksave file 'balsac.plt' after which BALSAC finishes. The (PLOT3D format) file 'balsac.plt' can be used as input to a subsequent BALSAC run, see Secs. 6.1, 6.3. > [B] flag selected from submenu F allows you to switch the safety backup fbu between "on" (default) and "off". For fbu = "on" any exit from a BALSAC/CLUSTER session (both options [Q] and [E]) is preceded by saving the present structure/graphics data including a complete copy of the initialization file in the (PLOT3D format) safety backup file 'balsac.svc'. This allows you to resume a previous BALSAC/CLUSTER session exactly at the point where it was finished, see Secs. 6.1, 6.3. File 'balsac.svc' will be updated with every session exit or transfer, see below, or whenever an external input file is loaded in a BALSAC/CLUSTER session. Thus, it represents always the latest state of a session. For fbu = "off" no safety backup will be performed. > [,] option selected from submenu F returns to the BALSAC/CLUSTER main menu. [L] selected from the BALSAC/CLUSTER main option menu allows you to transfer to the BALSAC/LATTICE part starting a LATTICE session from scratch or passing all structure/graphics data of the previous CLUSTER session to LATTICE. The transfer option menu L reads ====================================================================== Confirm LATTICE transfer: [?,]esc [L]scratch [P]ass atoms (+[C]ell) ================================================================ 4 == > [L] selected from submenu L moves BALSAC to the initial BALSAC/LATTICE startup menu, see Sec. 6.2 allowing you to start the session interactively, with an external structure input file (LATUSE format), to return to BALSAC/CLUSTER, or to quit altogether. __ 274 _________________ Sec. 6.3.11. ____________________________________ > [P] format selected from submenu L saves all structure data in a LATUSE transfer file 'balsac.trl' and starts the initial buildup sequence of the LATTICE session with input taken from this file. This is concluded by showing the main option menu accepting interactive input, see Sec. 6.2.0. Here the atoms of the cluster are assumed to form the elementary cell of an orthorhombic lattice where the lattice periodicity (as well as the atom basis) may be changed after transfer inside the BALSAC/LATTICE session with the lattice update option, see Sec. 6.2.1.2. The total number of cluster atoms, nct, may exceed the maximum number nbmax of lattice basis vectors that can be handled in a BALSAC/LATTICE session (nbmax = 201 at present). In this case, trying to pass atom data to LATTICE issues a warning =========================================================== WARNING : structure incomplete, (NTOT = nct > nbmax atoms) Transfer: [W]ithout [I]ncomplete [?,]esc ===================================================== 53 == where nct gives the number of cluster atoms. This allows you to - transfer to LATTICE without structure data (select [W]) which is analogous to option [L] above, - pass an incomplete atom set of nbmax atoms as a crystallographic unit cell to LATTICE (select [I]), or - return to the BALSAC/CLUSTER main option menu (select [,]). > [C] [P]. selected from submenu L is identical in its action to option However, the atoms of the cluster are assumed to form the elementary cell of a lattice whose periodicity was chosen in a LATTICE session immediately before the present CLUSTER session. Note that this option is available ONLY in CLUSTER sessions where atoms have been passed from a LATTICE session, see Sec. 6.2.9, 6.2.13. > [,] option selected from submenu L returns to the BALSAC/CLUSTER main menu. 6.3.11. RESUME OPTION, [E] [I] This option allows you to restart the present BALSAC/CLUSTER session with new structure and graphics input from the quicksave file 'balsac.plt' of the present directory. The restart has to be confirmed in the prompt Confirm resume with quicksave file : r[E]sume [?,]esc where selecting [,] returns to the BALSAC/CLUSTER main option menu while ________________________ Sec. 6.3.12. _____________________________ 275 __ [E] opens file 'balsac.plt' indicated by Open: balsac.plt and starts the initial buildup sequence of the CLUSTER session with input taken from this file. This overrides any existing structure or graphics data of the CLUSTER session and is concluded by showing the main option menu accepting interactive input, see Sec. 6.3.0. If file 'balsac.plt' is incorrect or does not exist in the present directory an error message ERROR: opening file for structure input File = balsac.plt Input file name ("+"=def,"-"=esc) : is issued and BALSAC asks for the name of an alternative file analogous to the procedure described in Sec. 6.3.9. Note that this option is not mentioned explicitly in the BALSAC/CLUSTER main option menu. 6.3.12. ANALYSIS OPTION, [A], [Q] All geometric details of a cluster can be analyzed and listed with the analysis option. This option comes in two versions, the text mode analysis and the graphic analysis, which serve different purposes and can give complementary information about the cluster. The two analysis versions will be discussed separately in the following. 6.3.12.1. ANALYSIS IN TEXT MODE, [A] [A] This option allows you to obtain detailed information about the lattice section including all atom definitions and geometries based on text output. This analysis mode does not require graphics to work on your system. Selecting [A] in the BALSAC/CLUSTER main option menu shows the text mode analysis menu A which reads ========== ANALYSIS OPTIONS ======================================= [F]ull [A]nalyze [D]maxc( dc) [X]plot [?,]esc ============================================================= 46 == __ 276 _________________ Sec. 6.3.12.1. __________________________________ > [F] together selected from submenu A gives the basic cluster definition with the listing menu AF reading COMPLETE STRUCTURE OUTPUT : Title = ..title.. Cluster of nct atoms : nctv visible , (nct-nctv) invisible All atoms inside List atoms: [A]ll [ lx x ly [V]isible x lz ] [I]nvisible [?,]esc where "title" is the name given to the present cluster of nct atoms (nctv are visible, nct-nctv invisible). The atoms are enclosed in a rectangular block of lengths lx x ly x lz. > > [A] selected from submenu AF lists all atoms of the cluster (visible and invisible) in the format Atom listing (all atoms) : 1: Xyz,R,Id,V= x y z rad nuc vis 2: Xyz,R,Id,V= x y z rad nuc vis 3: ... ... ncoac of nac atom(s) coincide(s) within dc ** Press [C],L-click to continue; [,],R-click to escape ** where each atom is shown by its coordinates (x, y, z), atom radius rad, nuclear charge / element name nuc, and by its visibility flag vis (vis = "T" for visible, = "F" for invisible). After 20 atoms are listed the output stops with the above prompt where selecting [C] or L-click (DOS only) continues by listing (up to) 20 more atoms. After all atoms are listed or listing is cancelled by selecting [,] or Rclick (DOS only) BALSAC returns to submenu A. After each block of (up to) 20 atoms is listed the number ncoac of coinciding atoms amongst the nac atoms listed so far is given. Further, all atoms which are found to coincide (with atoms listed before) are listed with a label by i: Xyz,R,Id,V= x y z rad nuc vis => ieq where "=> ieq" indicates that atoms no. i and ieq coincide with a given distance accuracy dc, see below. Note that coinciding atoms can be removed with the reduce option of the structure / symmetry menu, see Sec. 6.3.2.3. ________________________ Sec. 6.3.12.1. ___________________________ 277 __ > > [V] selected from submenu AF lists all visible atoms of the cluster in the same format discussed before (option [A]) except that the statistics line about coinciding atoms is not included while coinciding visible atoms are labelled. After all atoms are listed or listing is cancelled by selecting [,] or R-click (DOS only) BALSAC returns to submenu A. > > [I] selected submenu AF prompt lists all invisible atoms of the cluster in the same format discussed before (option [A]) except that the statistics line about coinciding atoms is not included while coinciding visible atoms are labelled. After all atoms are listed or listing is cancelled by selecting [,] or R-click (DOS only) BALSAC returns to submenu A. > > > [A] [,] selected from submenu AF returns to the text mode analysis menu A without any atom listing. selected from submenu A allows you to analyze directions, distances, and angles of selected atoms of the cluster. This analysis requires internal numbers of respective atoms which are obtained from a preceding plot or listing. Atom numbers are shown in plots with the number labeling on (see Sec. 6.3.5.2) and in the numeric listing of all atoms (design option [L], see Secs. 6.3.5, 6.2.7). Atom numbers can also be directly obtained from graphics output using the graphic analysis option, see Sec. 6.3.12.2. The prompt Input atom numbers for analysis (N,NA,NB: 1-nct) : asks for three atom numbers n, na, nb within the range [1,nct]. These atoms are evaluated in their geometric properties and listed by Vectors for analysis : 1: Xyz,R,Id( 2: Xyz,R,Id( 3: Xyz,R,Id( n )= na)= nb)= Difference vectors : V1(2-1): Xyz= ( x1 V2(3-1): Xyz= ( x2 |V1|= l1, |V2|= l2, x xa xb y ya yb z za zb y1 z1 ) y2 z2 ) Angle= ang12, rad rad rad nuc nuc nuc |V1xV2|= ar12 ** Press [C], L-click to continue ** after which pressing [C] or L-click (DOS only) returns to the text mode analysis menu A. __ 278 _________________ Sec. 6.3.12.1. __________________________________ The above listing starts by coordinates and attributes of atoms n at r = (x, y, z), na at ra = (xa, ya, za), and nb at rrb = (xb, yb, zb) confirming the input. Then difference vectors between the atom centers are given in absolute cartesian coordinates v1 = ra - r = ( x1 v2 = rb - r = ( x2 y1 y2 z1 ) z2 ) together with their lengths l1, l2, the angle ang12 between them, and the area ar12 of the parallelogram spanned by v1, v2. If in the above analysis input atom numbers are used which lie outside the cluster range [1,nct] a message WARNING: input / n na nb / out of range [ 1,nct], NO analysis ** Press [C], L-click to continue ** will be issued listing the incorrect numbers n, na, nb and the available range [1,nct] and BALSAC returns to the text mode analysis menu A. > [D] selected from submenu A allows you to reset the coincidence distance determining the maximum distance between two atoms to be considered coinciding, see above. The prompt Atom coincidence distance ( dcold) : shows the present value of the coincidence distance dcold (also given in the text mode analysis menu, default = 1.D-5) and asks for a new value dc after which BALSAC returns to the text mode analysis menu A. > [X] selected from submenu A plots the lattice section (switching to graphics mode (DOS) or opening a graphics window (Unix)) or lists its atom coordinates depending on the plot/list mode defined in the graphics option, see Secs. 6.3.5, 6.2.7. > [,] selected from submenu A returns to the BALSAC/CLUSTER main option menu, see Sec. 6.3.0. ________________________ Sec. 6.3.12.2. ___________________________ 279 __ 6.3.12.2. ANALYSIS IN GRAPHICS MODE, [Q] [Q] The graphic analysis allows you to analyze directions, distances, angles between atoms and more and even to rebuild parts of the cluster based on direct information from the graphics screen/window output. This option is in its strategies and in many suboptions identical to that of a BALSAC/LATTICE session, see Sec. 6.2.14.2. The graphic analysis becomes available by selecting [Q] in the main graphics menu showing at the bottom of the graphics screen/window after a plot is completed, see Sec. 6.3.7. Selecting [Q] shows the graphic analysis menu Q of the BALSAC/CLUSTER session at the bottom of the graphics screen/window which reads Analyze[DVRAENB] build[L_GPMTO_HU_CK_Y:] draw/view[Z_IJ_FSQ+] [?,]esc and gives key codes of all available options grouped according to their use. For mouse selection of menus (Unix/X.11 version), see Sec. 3.3.8, the menu window contains all entries of the above list. Note that the graphic analysis menu is NOT available if design option [L] (atom listing), see Sec. 6.2.7, is applied. Most of the analysis options require input of one or more atom definitions to work. This is indicated by an explanatory line which shows after the option has been selected reading basically Explanation text (r1,r2,...) : where the number of ri's given in parenthesis denotes the number of atoms needed for the analysis. Alternatively, explanatory lines of the type Explanation text (x1,x2,...) : indicate that screen pixel input (independent of atom positions) is wanted. Atoms or screen pixels are selected with the graphic pointer which shows as an arrow if a mouse device is connected to your system or as a "+" at the center of the screen/window. The graphic pointer is moved inside the screen/window using cursor keys [up], [down], [left], [right] or moving the mouse up/down/left/right on the table, see Sec. 5.5. Selecting [+] or [-] increases/decreases the step size of the pointer movement by a factor 2 which can speed up the pointing process. After an analysis option requiring atom input has been chosen, any visible atom on the screen/window can be selected for analysis by placing the center of the graphic pointer, "+" or mouse "hot" spot, at the surface of the respective atom sphere and pressing [enter] or L-click. This marks the atom by a white cross "+" and shows an information line i: Xyz,R,Id ( nn )= xa ya za rad nc/el at the bottom of the screen/window characterizing the atom by its internal number nn, its cartesian coordinates (xa, ya, za), its atom __ 280 _________________ Sec. 6.3.12.2. __________________________________ radius rad, its nuclear charge nc, and its element name el. Number i denotes the number of atoms which have been selected for the present analysis. After n atoms required for the analysis have been selected, indicated by i = n in the above atom information line, the analysis is carried out by selecting [X] or R-click (R-click on Unix/X.11 Windows systems uses the middle of three mouse buttons!) which shows the respective analysis result at the bottom of the screen/window. After this the analysis can be repeated using different atoms. Pointing at atoms and obtaining atom information selecting [enter] or L-click can be repeated as many times as needed. If more than n atoms required for the present analysis are selected BALSAC uses those n atoms which have been selected last. Selecting [M] with any analysis option active returns to the graphic analysis menu Q allowing other analysis options. Selecting [,] or R-click returns to the main graphics menu, see Sec. 6.3.7. Note that if stereo duplication of graphics was chosen, see Sec. 6.2.7, the atom selection with the graphic pointer works only on one of the two pictures (right picture by default, depending on the sign of the stereo shift, see Sec. 6.2.15). After an analysis option requiring screen pixel input been chosen, any pixel of the screen/window can be selected by placing the center of the graphic pointer, "+" or mouse "hot" spot, appropriately and pressing [enter] or L-click. This shows an information line Select .. > X1= or Select .. > X1= nx1 ny1 Define X2: nx1 ny1 X2= nx2 nx ny2 ny Evaluate or correct: nx ny depending on whether one, or more than one pixel points have been selected so far where (nx1, ny1) and (nx2, ny2) are the coordinates of pixel points selected last while (nx, ny) gives the present pixel position on the screen/window. After enough pixel points required for the analysis have been chosen the analysis is carried out by selecting [X] or R-click (R-click on Unix/X.11 Windows systems uses the middle of three mouse buttons!) which shows the respective analysis line at the bottom of the screen/window. After this the analysis can be repeated where selecting [M] returns to the graphic analysis menu Q allowing other analysis options while selecting [,] or R-click returns to the main graphics menu, see Sec. 6.3.7. ________________________ Sec. 6.3.12.2. ___________________________ 281 __ > [D] selected from submenu Q allows you to determine coordinates and distances between two visible atoms. The prompt Distance (r1,r2) : asks for two different atoms n1, n2 to be selected with the pointer after which selecting [X] or R-click shows an analysis line (X,Y,Z),LV = ( xv yv zv ) lv where vector v = (xv, yv, zv) in cartesian coordinates points from atom center n1 to n2 and lv = |v| gives the vector length. > [V] selected from submenu Q allows you to determine distances and angles defined by three visible atoms. The prompt Lengths,Angle (r0,r1,r2) : asks for three different atoms n0, n1, n2 to be selected with the pointer after which selecting [X] or R-click shows an analysis line R1,R2,Angl,Area = l1 l2 ang12 ar where l1, l2 are lengths of the vectors v1, v2 pointing from atom center n0 to n1 and n2 respectively, ang12 is the angle between vectors v1, v2, and ar gives the area of the parallelogram spanned by v1, v2. > [R] of an selected from submenu Q allows you to determine the distances atom from a plane defined by three visible atoms. The prompt Directed plane distance (r0,r1,r2/r3) : asks for four different atoms n0, n1, n2 (defining the plane), and n3 (defining the single atom) to be selected with the pointer after which selecting [X] or R-click shows an analysis line Directed plane distance = dd where the directed distance is given by dd = v3 * (v1 x v2) / |v1 x v2| with vectors v1, v2, v3 pointing from atom n0 to atoms n1, n2, n3 respectively. The absolute distance of atom n3 is always obtained by |dd|. In addition, positive dd values indicate that atom n3 lies "above" the plane through atoms n0, n1, n2 (the plane normal vector defined by v1 x v2 points towards atom n3) whereas for negative dd values atom n3 lies "below" the plane (vector v1 x v2 points away from atom 3). __ 282 _________________ Sec. 6.3.12.2. __________________________________ Note that this analysis option can also be used to determine distances between parallel planes (atoms n0, n1, n2 referring to plane 1, atom n3 to plane 2). Further, it can be used to find out whether four atoms are co-planar (dd = 0). > [A] selected from submenu Q allows you to determine the average position of a set of atoms. The prompt Average (r1...rn) : asks for n >= 1 different atoms n1, ...nn to be selected with the pointer after which selecting [X] or R-click shows an analysis line (XAV,YAV,ZAV) = ( xav yav zav ) where vav = (xav, yav, zav) gives cartesian components of the coordinate average vector of the selected n atoms defined by vav = ( r(n1) + ... + r(nn) ) / n where r(ni) are the vectors pointing to atoms ni. This information becomes useful for example if central high symmetry sites of a cluster are to be determined. > [E] shells selected from submenu Q allows you to determine environment of a visible atom. The prompt Environment shells (r1) : asks for one atom n1 to be selected with the pointer after which selecting [X] or R-click shows an analysis line NN= r1 / m1 r2 / m2 r3 / m3 r4 / m4 r5 / m6 where r1 ... r5 give the radii of the first to 5th neighbor shells with respect to the selected atom and m1 ... m5 are the number of atoms in the shells (shell multiplicity). > [N] selected from submenu Q allows you to determine normal direction vectors of planes defined by three visible atoms. The prompt Normal direction (r0,r1,r2) : asks for three different atoms n0, n1, n2 to be selected with the pointer after which selecting [X] or R-click shows an analysis line Normal vec,area = xn yn zn ar listing the normal vector rn = (xn, yn, zn) of the plane through atoms n0, n1, n2 by its cartesian components where rn = (v1 x v2) / |v1 x v2| with vectors v1, v2 pointing from atom n0 to atoms n1, n2 ________________________ Sec. 6.3.12.2. ___________________________ 283 __ respectively. Further, ar gives the area of the parallelogram spanned by v1, v2. The present option can be used, among others, to determine useful view angles, see option [V] of Sec. 6.3.4. > [B] selected from submenu Q allows you to visualize the cartesian coordinate axis x, y, z in a cluster. The prompt Coordinate system (r1) : asks for one atom n1 to be selected with the pointer after which selecting [X] or R-click shows an analysis line Coordinate system XYZ at ( x y z ) where vector (x, y, z) describes the center of atom n1 in cartesian coordinates. Further, a triple of lines originating from atom center n1 is drawn and shows the three coordinate axes labelled by "X", "Y", "Z". > [L] links selected from submenu Q allows you to interactively define connecting atoms by straight lines in subsequent plots. These lines can be expanded later to sticks of finite thickness and may be given any color to visualize atom coordination or bonding relations, see below and Sec. 6.3.5.1, 6.2.7.1. The prompt Links between atoms (r1,r2) : asks for two different atoms n1, n2 to be selected with the pointer after which selecting [X] or R-click shows an analysis line k-th link (Nuc1,Nuc2,Rmin,Rmax) : nuc1 nuc2 rmin rmax giving a link definition described by the nuclear charges of the two selected atoms, nuc1, nuc2, and a distance range [rmin, rmax] determined from the distance lv between the atoms by rmin = lv - eps, rmax = lv + eps with eps = 0.01. This indicates that BALSAC has added a k-th link definition (connection constraint) to the k-1 existing ones as shown in the link option, see Sec. 6.2.7.1. From now on any two atoms of the cluster will be connected by a line if one atom is of nuclear charge nuc1, the other of charge nuc2, and if the distance between the two atoms lies inside the distance range [rmin, rmax]. The lines will be painted by the default link color defined in the initialization file, see Secs. 5.4, 6.4.7. If the maximum number of link definitions (20 at present) is exceeded with the present option any attempt to construct another connection constraint will result in a warning WARNING: maximum no. of links ( 20) exceeded : link ignored without any further action. __ 284 _________________ Sec. 6.3.12.2. __________________________________ > [G] group selected from submenu Q allows you to interactively define a of cluster atoms which can then be manipulated (translated, copied, rotated, redefined, hidden, saved, listed, and more) using the structure option [S] of the BALSAC/CLUSTER main option menu and options [T], [O] discussed below. The prompt Define group (r1...rn) : starts a new group definition (overriding the previous definition) and asks for n >= 1 different atoms n1, ...nn to be selected with the pointer. These atoms are confirmed by the analysis line reading Xyz,Id ( ni )= x y z nc/el added to group (ng) giving their coordinates and attributes and will be included in the group definition consisting of ng atoms afterwards. Selecting [X] or R-click finishes the group definition and returns to submenu Q. All details of the group definition may be listed with the group option [G] inside the structure menu, see Sec. 6.3.2.2. Note that the present option will always start a new group definition overriding the previous one independent of whether atoms are included. Thus, selecting [G] without including atoms will remove any group definition. > [P] selected from submenu Q allows you to interactively add visible atoms to the present group definition. The prompt Add to group (r1...rn) : asks for n >= 1 different atoms n1, ...nn to be selected with the pointer. These atoms are confirmed by the analysis line reading Xyz,Id ( ni )= x y z nc/el added to group (ng) giving their coordinates and attributes and will be added to the present group definition consisting of ng atoms afterwards. If no group was defined before this option starts a new group definition identical to option [G]. Selecting [X] or R-click returns to submenu Q. All details of the group definition may be listed with the group option [G] inside the structure menu, see Sec. 6.3.2.2. ________________________ Sec. 6.3.12.2. ___________________________ 285 __ > [M] visible selected from submenu Q allows you to interactively remove atoms from the present group definition. The prompt Remove from group (r1...rn) : asks for n >= 1 different atoms n1, ...nn to be selected with the pointer. If an atom is included in the present group definition its removal from the group is confirmed by the analysis line reading Xyz,Id ( ni )= x y z nc/el removed from group (ng) yielding a group of ng atoms afterwards while selecting atoms which do not belong the group are listed by Xyz,Id ( ni )= x y z nc/el not in group (ng) keeping the size ng of the group unchanged. Selecting [X] or R-click returns to submenu Q. All details of the group definition may be listed with the group option [G] inside the structure menu, see Sec. 6.3.2.2. Note that option [M] is available only if a group has been defined before. > [T] selected from submenu Q with a group defined allows you to translate all cluster atoms included in the group definition by a common shift vector s where s is given by a vector connecting the centers of two visible atoms. The prompt Translate group (r1,r2) : asks for two different atoms n1, n2 to be selected with the pointer after which selecting [X] or R-click shows an analysis line nn atoms moved (X,Y,Z)= ( xs ys zs ) where vector s = (xs, ys, zs) in cartesian coordinates points from atom center n1 to n2 and is used to shift the atom group. Note that the shifted group becomes visible only after the plot has been refreshed, for example by option [+] below. > all [O] selected from submenu Q with a group defined allows you to copy cluster atoms of the present group definition and add them to the cluster. The copied atoms will be shifted by a common shift vector s where s is given by a vector connecting the centers of two visible atoms. The prompt Copy group (r1,r2) : asks for two different atoms n1, n2 to be selected with the pointer after which selecting [X] or R-click shows an analysis line nn atoms copied (X,Y,Z)= ( xs ys zs ) where vector s = (xs, ys, zs) in cartesian coordinates points from __ 286 _________________ Sec. 6.3.12.2. __________________________________ atom center n1 to n2 and is used to shift the copied atom group. Note that the copied group becomes visible only after the plot has been refreshed, for example by option [+] below. > the [H] selected from submenu Q allows you to hide any visible atom of cluster. The prompt Hide atoms (r1...rn) : asks for n >= 1 different atoms n1, ...nn to be selected with the pointer. These atoms are confirmed by the analysis line reading Xyz,Id ( ni )= x y z nc/el atom hidden giving their coordinates and attributes and will be hidden which is indicated by painting the atoms with white stripes in the present plot. Hidden atoms are treated as invisible by setting their internal visibility flag to "F" and they and will not appear in subsequent plots. However, their coordinates and attributes are still contained in the atom definition list and hidden atoms can be revived in the same BALSAC/CLUSTER session by the unhide option [U] below or of the atom/group menu, see Sec. 6.3.2.1-2. Note that hidden atoms will not be stored on structure output files and, thus, will be lost in subsequent BALSAC/CLUSTER sessions. > [U] atoms selected from submenu Q allows you to revive (unhide) hidden of the cluster. The prompt Unhide atoms (r1...rn) : asks for n >= 1 different atoms n1, ...nn to be selected with the pointer. Since the atoms are hidden they will not show in the plot but they can be reached by L-clicking near their (assumed) center positions. This is confirmed by the analysis line reading Xyz,Id ( ni )= x y z nc/el atom unhidden which gives their coordinates and attributes and sketches the unhidden atoms by white stripes in the present plot. Unhidden atoms are treated as visible by setting their internal visibility flag to "T" and they and will they appear in subsequent plots. > [C] selected from submenu Q allows you to interactively redefine background and atom sphere colors from the available palette. The prompt Assign colors: atoms,background (r1) : asks for one atom n1 to be selected with the pointer after which selecting [X] or R-click opens a color box on the left side of the screen/window. The left part of this box displays color blocks of all basic paint colors (palette used to paint atoms) while the ________________________ Sec. 6.3.12.2. ___________________________ 287 __ right part shows blocks of the full range of available color tones (used for background colors). Pointing at one of the LEFT BLOCKS of the color box and selecting [X] or L-click assigns this basic color nc to the selected atom n1 and all atoms of the same nuclear charge. This changes the respective color palette entry, see Secs. 5.4, 6.4.7, after which the color box is overwritten by the present background color and the selection is confirmed by Element nuc/el : color nc selected where nuc/el denotes the nuclear charge / element name of atom n1. Pointing at one of the RIGHT BLOCKS of the color box and selecting [X] or L-click assigns this color nc as the background color in subsequent plots. Then the color box is overwritten by the new background color and the selection is confirmed by Background : color nc selected The modified background color can also be seen in the graphics line of the main option menu, see Sec. 6.3.0, and in the graphics menu, see Sec. 6.3.5. Note that new color assignments will be effective only after the cluster has been replotted. > [K] colors selected from submenu Q allows you to interactively redefine of lines/sticks connecting atoms as determined by link definitions. The prompt Assign colors: links (r1,r2) : asks for two atoms n1, n2 which are connected by a visible link to be selected with the pointer. Then selecting [X] or R-click opens a color box on the left side of the screen/window. The right part of this box shows blocks of the full range of colors available for painting lines/sticks. Pointing at one of the RIGHT BLOCKS of the color box and selecting [X] or L-click assigns this color nc to all link definitions which apply to lines/sticks connecting the two atoms chosen before. Then the color box is overwritten by the present background color and the selection is confirmed by Links : color nc selected, no. i1 i2 ... where the list i1, i2, ... at the end of the line denotes all links which are affected by the color reassignment. Note that new color assignments will be effective only after the lattice section has been replotted. __ 288 _________________ Sec. 6.3.12.2. __________________________________ > [Y] each selected from submenu Q allows you to shift atoms closest to other (touching atom spheres) along linear paths. The prompt Shift atom 1 nearest to atom 2 (r1,r2) : asks for two different atoms n1, n2 to be selected with the pointer after which selecting [X] or R-click shows an analysis line Atom n1 -> n2 : shift= ( xs ys zs ) which indicates that atom n1 has been shifted by a vector (xs, ys, zs) towards atom n2 such that the atom spheres of the two atoms touch. Note that the atom shift will be visible only after the plot is refreshed, for example by option [+] below. Further, the graphic analysis involving shifted atoms may become difficult without refreshing since the original plot shows these atoms at different positions compared to those after the shift is applied. > [:] selected from submenu Q allows you to reduce the cluster by hiding those atoms which do not show with the present viewing geometry. THIS OPTION IS STILL EXPERIMENTAL! The message Atom reduction in progress indicates that BALSAC is working on the reduction. Here the screen/window will be scanned for visible atoms on an equidistant pixel mesh where the mesh size is determined by the smallest atom ball appearing in the plot. After reduction is finished the prompt Atom reduction: nctv atoms of nct survive, [C] or L-click to refresh shows the number nctv of visible atoms left over from a total of nct cluster atoms. Selecting [C] or L-click refreshes the plot with the reduced number of atoms. Atom reduction has proven useful for very large clusters when the final plot used for the analysis of for PostScript file output shows only a minor portion of all cluster atoms. Here the reduced cluster will give the same visual impression as the full cluster but with much less computational effort. However, the reduction process applies only to the present viewing geometry and may lead to incomplete cluster views for other geometries. Further, the reduction process can be quite time consuming and may hide more atoms than wanted such that subsequent unhiding using option [U] above may become necessary. Note that atoms hidden by the reduction can be revived in the same BALSAC/CLUSTER session by the unhide option [U] above or of the atom/group menu, see Sec. 6.3.2.1-2. Hidden atoms will not be stored on structure output files and, thus, will be lost in subsequent BALSAC/CLUSTER sessions. ________________________ Sec. 6.3.12.2. ___________________________ 289 __ > [Z] selected from submenu Q switches the line show/save flag of the analysis option between "off" (default) and "on". With this flag set to "on" (shown by a dot "." at the end of the graphic analysis menu line) every analysis involving more than one atom will result in the respective atoms being connected by white lines which enhances the visual impression. These connecting lines will show in any subsequent plot unless they are explicitly erased using option [J] below. Further, they will be adjusted if the plot view or perspective change. They will also be included as arrows connecting respective atoms in any subsequent PostScript output file as long as the line show/save flag is set to "on". Further, the PostScript output file will contain a comment line after each arrow definition which shows the analysis result as given by the analysis line. > at [I] selected from submenu Q allows you to include additional lines any location of the screen/window for labelling purposes or to aid the visual impression. The prompt Additional 2-D lines (x1,x2) : asks for two screen locations (nx1, ny1), (nx2, ny2) to be selected with the pointer (independent of any atom positions). During the selecting process the analysis line shows the present pixel position (nx, ny) of the pointer by Select line > Define X1: nx ny or Select line > X1= nx1 ny Define X2: Select line > X1= nx1 ny X2= nx ny or nx2 ny2 Evaluate or correct: ny depending on how many pixel points have been chosen. This allows an nx exact placement of lines on the screen. After two points are chosen, selecting [X] or R-click shows the analysis line Additional line (nll) : (nx1, ny1) -> (nx2, ny2) indicating that the nll-th line points from (nx1, ny1) to (nx2, ny2). Further, BALSAC draws a white or black line (depending on the tone of the background color) between the two points and labels the first point by a small circle. All additional lines will show in subsequent plots unless they are explicitly erased using option [J] below. They will keep their screen position even after plot views or perspectives have been changed. They will also be included as arrows connecting respective atoms in any subsequent PostScript output file as long as the line show/save flag is set to "on". Further, the PostScript output file will contain a comment line after each arrow definition with dummy text that can be easily converted into a text label, see Sec. 6.4.6.1. __ 290 _________________ Sec. 6.3.12.2. __________________________________ > [J] selected from submenu Q erases the last line which has been included in a plot by either analyzing with the line show/save flag set to "on", see option [Z] above, or by explicit line drawing, see option [I] above. Erasing is confirmed by overwriting black by white or white by black lines after which these lines will not show in subsequent plots. NOTE that erasing is final and does not have to be confirmed. > [F] view selected from submenu Q allows you to interactively reset the focus used in central projection. The prompt New view focus (r1) : asks for one atom n1 to be selected with the pointer after which selecting [X] or R-click resets the view focus such that it coincides with the center of atom n1. Then the cluster is replotted with the new view focus placed at the center of the screen/window (if no additional plot shift is applied, see option [S] below) and BALSAC returns to the graphic analysis menu Q. The new focus is applied to all future plots until it is changed with option [F], [Q], or in the view menu, see Sec. 6.3.4. Refocussing can give a more natural perspective view of selected parts of a large cluster. However, refocussing may move parts of the cluster outside the screen/window which can be compensated by rigidly shifting the plot using option [S]. The present refocussing option is restricted to atom centers but is more direct than option [F] of the view menu, see Sec. 6.3.4. Note that refocussing requires central projection for meaningful results, see Sec. 6.3.4. > [S] cluster selected from submenu Q allows you to shift the plot of a rigidly on the screen/window. The prompt Global 2-D plot shift (x1,x2) : asks for two screen locations (nx1, ny1), (nx2, ny2) to be selected with the pointer (independent of any atom positions). During the selecting process the analysis line shows the present pixel position (nx, ny) of the pointer by Select shift > Define X1: nx ny or Select shift > X1= nx1 ny Define X2: Select shift > X1= nx1 ny X2= nx ny or nx2 ny2 Evaluate or correct: nx ny depending on how many pixel points have been chosen. This allows an exact definition of the plot shift on the screen. After two points are chosen, selecting [X] or R-click replots the cluster with the ________________________ Sec. 6.3.13. _____________________________ 291 __ plot being shifted rigidly by a pixel vector s = (sx, sy) = (nx2 - nx1, ny2 - ny1) after which BALSAC returns to the graphic analysis menu Q. The shift is applied to all future plots until it is changed with option [S], [Q], or in the view menu, see Sec. 6.3.4. Shifting plots may be necessary in order to center important parts of the plot, in particular, after refocussing the view with option [F] above. The present shift option is more intuitive than option [S] of the view menu, see Sec. 6.3.4. > [Q] selected from submenu Q allows you to reset the view focus and global plot shift to default values. The prompt Confirm default focus/shift : [Q]reset [?,]esc asks you to confirm the defaults where selecting [,] or R-click returns to submenu Q while selecting [Q] resets the view focus (default focus at center of lattice section) and the global plot shift (default shift vector s = 0) after which the cluster is replotted. Resetting to defaults may become necessary in order to undo previous (unreasonable) refocussing or shifting. > [+] viewing selected from submenu Q replots the cluster with present and graphics parameters. This becomes useful if a plot has been analyzed and too many additional lines or circles drawn in the analysis confuse the picture. > [,] BALSAC selected from submenu Q completes the graphic analysis and returns to the main option menu in graphics mode, see Sec. 6.3.7. The most recent (up to 10) analysis lines generated by the graphics analysis will be stored internally and may be recalled in several option menus. (Option [D]ispla in radii menu, see Sec. 6.3.3, in view menu, see Sec. 6.3.4, in graphics/links menu, see Sec. 6.2.7.1, 6.3.5.1.) 6.3.13. [P] BASIC PARAMETER OPTION, [P] This option allows you to redefine, save, and read a number of basic control parameters provided by the initialization file (default file is 'balsac2.ini') when BALSAC is started. Its features are identical to those of a BALSAC/LATTICE session and are explained in detail in Secs. 6.2.15, 6.2.15.1. __ 292 _________________ Sec. 6.3.14. ____________________________________ 6.3.14. FILE STACK OPTION, [K] [K] The file stack option of a BALSAC/CLUSTER session is almost identical to that of a BALSAC/LATTICE session. Here the stack consists of 10 files 'stckFFFn.plt', n = 0,...9, which can hold up to 10 different definitions of clusters. The file stack menus K and K' together with their options are discussed in detail in Sec. 6.2.16. 6.4. FILE INPUT/OUTPUT BALSAC interfaces with external files for - structure input/output using different standard formats, basic parameter initialization, on-line help, graphics output on PostScript files. All files are fixed format ASCII-type as described below and can be created interactively in BALSAC sessions or using a text editor. In the following "Cards" are defined as lines (records of up to 80 byte completed by cr, lf (DOS) or cr (Unix)) in a fixed format file. 6.4.1. USE OF EXTERNAL FILES, BATCH RUN MODE When BALSAC is started from the DOS or Unix command line two external files must be present in the calling subdirectory or linked appropriately. The first file is used for basic parameter initialization and its name is defaulted to 'balsac2.ini'. The second file provides on-line help text, see Sec. 6.4.8, and its name is defaulted to 'balsac2.hlp'. Other names for both files can be explicitly given on the command line, see Sec. 6.1, or with the basic parameter option, see Sec. 6.2.15. BALSAC can be run with input from external structure files, see Secs. 6.1, 6.2.11, 6.3.9. Here all structure information is loaded from the file after which BALSAC proceeds to the main option menu for interactive input. In addition, BALSAC/LATTICE sessions offer a batch run mode where instead of interactive input a fixed sequence of options (only options of the main option menu are available at present) is executed. This sequence is determined by option flags provided with the external input file, see Sec. 6.4.2. Names of structure input files are given on the command line, see Sec. 6.1, or with the file input options, see Secs. 6.2.11, 6.3.9. Structure files are generated interactively in BALSAC sessions (different formats are available, see Secs. 6.4.2-6) or can be created with a text editor. However, only LATUSE format (LATTICE session) or PLOT3D format files (CLUSTER session) are accepted for input to BALSAC. For file name conventions see also Sec. 5.6. ________________________ Sec. 6.4.2. ______________________________ 293 __ BALSAC file output includes PostScript format which allows you to generate high resolution gray scale or color PostScript prints of structure graphics on PostScript laser printers or typesetting devices to be used for publication. The PostScript format together with advise on simple modifications is described in detail in Secs. 6.4.6, 6.4.6.1. 6.4.2. LATUSE FORMAT (IN/OUTPUT FROM LATTICE/CLUSTER SESSION) This is the first of two file formats accepted for input by BALSAC and is used for structure/graphics/option parameter definitions in BALSAC/LATTICE sessions. The format is identical to the standard LATUSE format ((C) Copyright 1992 K. Hermann, version 3.0 or later) as proposed in the SARCH/LATUSE/PLOT3D ((C) Copyright 1992 M. A. Van Hove and K. Hermann) software package. Therefore, structure files generated with LATUSE can be used for input to BALSAC/LATTICE and vice versa. The LATUSE type structure file format is defined by 20 Cards given as follows: Card 1. (I6,I2,A20,I2,48A1) NDLAY,NFRM,FIL2O,NBATCH,(BOPT(I),I=1,NBATCH) or (I6,I2,A20,I2,24I2) NDLAY,NFRM,FIL2O,NBATCH,(IOPT(I),I=1,NBATCH) NDLAY := Delay parameter used in batch mode for waiting between subsequent layers in layer-by-layer plots. On an 100 MHz Pentium PC NDELAY = 100000 corresponds to a delay time of about 1.5 sec. NFRM := Parameter defining the output file format (FILE2O) used in LATTICE batch runs, see below. ----------------------------------------------NFRM format ----------------------------------------------0 standard LATUSE 1 extended LATUSE 2 SARCH ASCII 3 gray scale PostScript 4 PLOT3D 5 SCHAKAL 6 color PostScript 7 Wigner-Seitz cell (PostScript, frame) 8 Brillouin zone (PostScript, frame) ----------------------------------------------FILE2O Note := Name of output file used for file output in batch mode. that the file name is restricted to 20 characters. NBATCH := Number of options requested for a LATTICE batch run (default = 1). The internal maximum is 48 (24 for old input format). __ 294 _________________ Sec. 6.4.2. _____________________________________ BOPT(I) flags := Array of batch option flags (one character each). These determine the run sequence of a LATTICE session in batch mode. The following table lists all available options with their character codes BOBT, see Sec. 6.2.0. The codes MUST be given by upper case characters and double quotes in the list are NOT part of the codes. ------------------------------------------------main option BOPT IOPT ------------------------------------------------Finish BALSAC/LATTICE run "," 0 Lattice definition "L" 1 Radii / nuclear charge option "R" 2 Miller index definition "M" 3 Section definition "S" 4 Change layer structure "C" 5 View option "V" 6 Graphics option "G" 7 Output on structure file "O" 8 Execute (plot/list) "X" 9 New structure from scratch "N" 10 Input of structure file "I" 11 Refresh menu /interactive mode "E" 12 Transfer to CLUSTER (exit) "U" 13 Analyze lattice section "A" 14 Basic parameter option "P" 15 File stack option "K" 16 Define atoms without plotting "Y" 17 ------------------------------------------------After all option flags are used in batch mode BALSAC returns to interactive mode showing the LATTICE main option menu unless the last flag reads "," (exit) or "U" (transfer) after which BALSAC finishes. NOTE that in the old LATUSE format option flags are given by integers IOPT rather than characters BOPT. The values of IOPT corresponding to each option are included in the table above. BALSAC accepts both flag formats (no mixture of the two!). ________________________ Sec. 6.4.2. ______________________________ 295 __ Card 2. NTYPV possible (I5,F15.9,A40) NTYPV,ACON,GITNA := Lattice type parameter. The following table shows all values --------------------------------------------------------- ---NTYPV lattice type -----------------------------------------------------------1 2 (-2) 3 (-3) 4 (-4) 5 (-5) 6 (-6) 7 8 (-8) 9 (-9) 10 (-10) simple cubic fcc , cubic (Bravais) Miller indices bcc , cubic (Bravais) Miller indices hcp , Bravais (4-index) Miller indices diamond , cubic (Bravais) Miller indices NaCl , cubic (Bravais) Miller indices CsCl , cubic Miller indices Zincblende , cubic (Bravais) Miller indices Graphite , Bravais (4-index) Miller indices free Lattice , Bravais (4-index) Miller 10 all 14 Bravais lattices implemented in indices BALSAC -----------------------------------------------------------ACON (lattice := Global lattice constant. All structural parameters vectors, lattice basis vectors, radii; Cards 3,4,5) will be renormalized inside BALSAC by multiplying with the value of ACON. GITNA Cards 3. R(I,J) := Lattice type name, see Sec. 6.2.1. (3(3F15.9/)) ((R(I,J),I=1,3),J=1,3) := Lattice vectors (Ith component if Jth vector in cartesian coordinates). These data are ignored for standard lattices defined by code numbers NTYPV = 1 - 9 where the lattice geometry is provided internally but an appropriate number of (dummy) Cards has to be given, see Sec. 6.2.1. Card 4. (2I5) NBG,NSYEL NBG Both := Values |NBG| define the number of lattice basis vectors. positive and negative NBG values are possible, see Cards 5. For primitive lattices set NBG = 1, see Sec. 6.2.1. NSYEL := Number of point symmetry elements of the bulk lattice, see Secs. 6.2.1, 6.2.3. If NSYEL = 0 the internal definition of symmetry elements is used for standard bulk structures (NTYPV = 1...9) while no symmetry element is assumed for free bulk lattices (NTYPV = +/-10). For NSYEL > 0 additional input on Cards 5a must be provided (see below). __ 296 _________________ Sec. 6.4.2. _____________________________________ Card(s) 5. (4F15.9,I10) ((RBG(I,J),I=1,3),RKG(J),NUC(J),J=1,|NBG|) RBG(I,J) := Definition of lattice basis vectors. NBG > 0 : lattice basis vectors are given in absolute cartesian coordinates where RBG(I,J) denotes the Ith component of Jth lattice basis vector, J=1,NBG. For primitive lattices set RBG(I,1) = 0.0. NBG < 0 : RKG(J) basis lattice basis vectors are given by linear combinations of lattice vectors where RBG(I,J) denotes the weight of the Ith lattice vector contributing to the Jth lattice basis vector, J =1,NBG. := Atom radii defined for atoms assigned to the Jth lattice vector. If any of the RKG(J) = 0 all RKG values are ignored and (rescaled) default atomic radii are used such that maximum space filling is achieved (touching spheres geometry). Radii may be changed interactively, see Secs. 6.2.1-2. NUC(J) lattice := Nuclear (element) charge of atoms assigned to the Jth basis vector. These values may be changed interactively, see Secs. 7.2.1-2. Card(s) 5a. (3F15.9,A4) ((VSYEL(I,J),I=1,3),SYEL(J),J=1,NSYEL) These Cards are needed ONLY if NSYEL > 0. VSYEL(I,J) := Ith component (I=1,3) of Jth point symmetry element vector. These vectors are defined according to the symmetry elements given by SYEL(J), see below and Secs. 6.2.1, 6.2.3. SYEL(J) := Definition label of the Jth point symmetry element. Label "Cn " defines an n-fold rotational axis (n=1,2,3,4,6) with VSYEL(I,J), I=1,3 being the axis direction, "M " defines a mirror plane with VSYEL(I,J), I=1,3 being the mirror plane normal. The symmetry labels SYEL(J) are restricted to 4 characters where leading blanks can appear before the first character ("C" or "M"). ________________________ Sec. 6.4.2. ______________________________ 297 __ Card 6. (4I5) I1,I2,I3,I4S I1,I2,I3 := Miller indices of lattice net planes to be used for stacking to form the lattice block. I4S := In 4-index notation of hexagonal lattices (lattice options = -4,-9,-10) a meaningful I4S value has to be given, see Sec. 6.2.3. In the conventional 3-index notation I4S is ignored (set to 0) by default. Card 7. NZ1,NZ2 (4I5,5F10.3) NZ1,NZ2,NZ3,NINIT, XSPH,YSPH,ZSPH,RMIN,RMAX := Number of atoms along R1, R2 included in the basic lattice section (block of rectangular base area) used for graphical (numerical) output. NZ3 := Number of net planes included in the basic lattice section used for graphical (numerical) output. NINIT := Index number of the starting plane (termination plane, meaningful for non- primitive lattices, otherwise ignored). XSPH,YSPH,ZSPH := Cartesian coordinates of the center of a spherical shell used as an additional boundary, see Sec. 6.2.4. RMIN,RMAX := Inner/outer radii of a spherical shell used as an additional boundary, see Sec. 6.2.4. Card 8. (12I5) NRCLX,(IRR(I),I=1,NRCLX) NRCLX := Number of planes to be restructured (NRCLX < 11). For NRCLX = 0 no restructuring is assumed. IRR(I) := Layer index of Ith plane to be restructured. Valid numbers are between 1 and NZ3. NRCLX sets of Cards 9a, 9b follow. __ 298 _________________ Sec. 6.4.2. _____________________________________ Card(s) 9a. (I5,7F10.6) (NBSR(I),XSR1(I),XSR2(I),XSR3(I), RM11(I),RM12(I),RM21(I),RM22(I),I=1,NRCLX) These Cards are needed ONLY if NRCLX > 0. NBSR(I) := Restructure index of the Ith layer. For values NBSR(I) = 0 layer restructuring uses the unmodified planar lattice basis of the Ith layer, > 0 layer restructuring starts from a separate lattice basis set for the Ith layer with NBSR(I) inequivalent atoms to be described on Card(s) 9b. XSRj(I) shift := Components (j=1,2,3) of the layer shift vector used to the Ith layer rigidly (allowing for layer relaxation, see Sec. 6.2.5.) RMjk(I) := Components (j,k=1,2) of the 2x2 transformation matrix defining the modified periodicity vectors of the Ith restructured layer in terms of the unstructured layer basis, see Sec. 6.2.5. Here NBSR(I) Cards 9b follow. Card(s) 9b. (4F10.6,I5) (RBGR(J,K,I),J=1,3),RKGR(K,I),NUCR(K,I), K=1,NBSR(I)) These Cards are needed ONLY if NBSR(I) > 0. RBGR(J,K,I) := Components (J=1,2,3) of the Kth separate lattice basis vector assigned to the Ith plane to be restructured. The vectors are described as linear combinations of the two (modified) layer periodicity vectors (components J=1,2, see Card 9a) plus a coordinate perpendicular to the layer (component J=3) given in multiples of the distance between equivalent layers of the unperturbed lattice structure. RKGR(K,I) := Atom radius defined for atoms assigned to the Kth lattice basis vector of the Ith restructured layer. These values may be changed interactively, see Secs. 6.2.2, 6.2.5. NUCR(K,I) := Nuclear (element) charge associated with atoms located at the Kth lattice basis vector of the Ith restructured layer. These values may be changed interactively, see Secs. 6.2.2, 6.2.5. ________________________ Sec. 6.4.2. ______________________________ 299 __ Card 10. (5F12.5,12X,I5) THETA,PHI,ROT,MAGNF,PERSP,NFOC THETA,PHI := Polar and azimuthal angles of the viewing direction with respect to the lattice plane normal vector used in the graphical output. ROT := Rotation angle about the viewing direction used in the graphical output. MAGNF := Magnification factor used in the graphical output. PERSP := Perspective distance factor used in the graphical output. PERSP = 0 or PERSP >> 1 refer to parallel projection while PERSP > 0 means central projection. NFOC := Viewing focus definition. NFOC = 0 : The viewing focus coincides with the center of the lattice section, see Sec. 5.1. NFOC > 0 : After the lattice section is built the center of atom number NFOC will serve as center to set the viewing focus. Note that atom numbers depend on the section shape and size. Here Card 10a has to be included but its coordinates are used only if NFOC exceeds the maximum number of atoms in the section. NFOC = -1 : Card 10a. (3F12.5) The viewing focus is given explicitly by cartesian coordinates on Card 10a. ORX,ORY,ORZ This Card is needed ONLY if NFOC > 0 or NFOC < 0. ORX,ORY,ORZ := Cartesian coordinates of the viewing focus used for graphics output. The focus will project on to the center of the screen if no additional shifting is applied, cp. Card 11. __ 300 _________________ Sec. 6.4.2. _____________________________________ Card 11. M Sec. (8I5) M,N,ICLC,IBFT,NSHX,NSHY,ICON,INITSV := Compound index to define display and graphics mode, see 6.2.7. Here M = SF * (10 * K + L) where SF = 1 = -1 for mono viewing, for stereo duplication. K = = = 0 1 2 for layer-by-layer display mode, for atom-by-atom display mode, for cell-by-cell-display mode. L = = = 0 1 2 for no plot/listing output (testing purposes), for atom coordinate listing, no graphics, for atoms plotted as color dots (small = = = = = = = 3 4 5 6 7 8 9 for for for for for for for circles), N atoms atoms atoms atoms atoms atoms atoms plotted plotted plotted plotted plotted plotted plotted as as as as as as as color circles, color filled circles, red/blue stereo circles, hard-shaded balls, fuzzy-shaded balls, dither-shaded balls, glossy-shaded balls. := Compound index to define color codes for atom painting and background used in graphical output, see Sec. 6.2.7. Here N = 100 * B + C where B denotes the background color and C denotes the starting value of the color palette used to paint atoms. ICLC := Compound flag for discriminating atoms by colors and for labeling atoms. The definition is given in the following table -------------------------------------ICLC color discr. label -------------------------------------1 elements none 2 elements element symbol 3 elements number 4 layers none 5 layers element symbol 6 layers number -------------------------------------- ________________________ Sec. 6.4.2. ______________________________ 301 __ IBFT lattice := Compound flag for displaying a title line, sketching vectors, drawing a wire frame about the lattice section. The definition is given in the following table ------------------------------IBFT title basis frame ------------------------------0 no no no 1 no no yes 2 no yes no 3 no yes yes 4 yes no no 5 yes no yes 6 yes yes no 7 yes yes yes ------------------------------NSHX,NSHY := Horizontal and vertical shift of the plot origin in pixel units, see Sec. 6.2.7. ICON := Total number of link constraints used to connect atoms by straight lines or sticks in the plot. ICON = 0 will not connect while ICON > 0 requires ICON additional Cards 11a to define the constraints. INITSV LATUSE := Flag for including initialization information in the and PLOT3D format output files. = 0 no initialization information is included. = 1 initialization information is included in the output file. The parameters are contained on Cards 11b-f which are identical to Cards 1 - 5 of the initialization file, see Sec. 6.4.7. Here ICON > 0 Cards 11a follow. Card(s) 11a. (2I5,3D15.7,I5) NUCA(I),NUCE(I),RMIN(I),RMAX(I), RBOND(I),NBCOL(I),I=1,ICON These Cards appear only if ICON > 0. NUCA(I),NUCE(I) := NUCA > NUCE > 0 connects atoms of charge NUCA with those of charge NUCE within the defined distance range, NUCA > NUCE = 0 connects atoms of charge NUCA with all others within the defined distance range, NUCA = NUCE = 0 connects every two atoms within the defined distance range. __ 302 _________________ Sec. 6.4.2. _____________________________________ RMIN(I),RMAX(I) := Minimum and maximum distances used for connecting atoms by lines / sticks (Ith connection constraint). RBOND(I) := Radius of the cylindrical sticks connecting between atoms. If RBOND = 0 atoms are connected by straight lines. NBCOL(I) := Color code (absolute value) used to paint connecting lines / sticks. Cards 11b-f. are needed only for INITSV = 1, see Card 11. They are identical in format to Cards 1 - 5 of the initialization file, see Sec. 6.4.7. Cards 1. - 11f. form the complete input file to a LATTICE session. Batch options on the input file may require additional input added after this standard input set, see Sec. 3.4. If the LATUSE format file has been generated in a BALSAC/LATTICE session it will contain additional output (Cards 12-20) described in the following. Card 12. (7I5) I1,I2,I3,I1S,I2S,I3S,I4S I1,I2,I3 := Miller indices of the lattice planes in terms of the Bravais reciprocal lattice vectors. I1S,I2S,I3S := Miller indices in simple cubic notation for sc-, fcc-, bcc-derived lattices (options = 2,3,5,6,8). I4S Cards := 4th component of Miller indices in 4-index notation for hexagonal lattices (options =-4,-9,-10). For other lattices IS4=0. 13. (4F15.9,3(/3I5,3F15.9)) (GM(I),I=1,3),DN,((NN(I,J),I=1,3),(GZ(I,J),I=1,3),J=1,3) GM(I) := Ith cartesian component of the lattice net plane normal vector. DN := Distance between subsequent equivalent net planes. NN(I,J) net := Ith component of the Jth lattice vector defining lattice planes (NN(I,1) and NN(I,2) refer to vectors in the planes and NN(I,3) point between adjacent planes). This definition is with respect to the original lattice vectors of the direct lattice. ________________________ Sec. 6.4.2. ______________________________ 303 __ GZ(I,J) net := Ith component of the Jth lattice vector defining lattice planes ( GZ(I,1) and GZ(I,2) refer to vectors in the planes and GZ(I,3) point between adjacent planes). This definition is given in absolute cartesian coordinates. Card 14. (9I5) ((NNT(J,I),J=1,3),I=1,3) NNT(J,I) := Components of the original lattice vectors given in the basis of the transformed lattice vectors. The Ith original lattice vector is defined by components (NNT(I,1), NNT(I,2), NNT(I,3)). Card 15. (2I5) NEQ,NSYSUR NEQ := Number of non-equivalent net planes (subplanes) between subsequent main lattice net planes in the case of non-primitive lattices. For primitive lattices NEQ = 1. NSYSUR := Number of point bulk symmetry elements that survive in the (surface) lattice planes defined by I1, I2, I3. Card(s) 16. LAYP(I) C,...). DD(I) (3(A5,F15.9)) (LAYP(I),DD(I),I=1,NEQ) := ASCII label of the Ith non-equivalent subplane (A, B, := Distance of the Ith non-equivalent subplane from the main lattice plane. Card 17. (4F15.9,I5,A5) ((PP(I,J),I=1,3),RKG(J),NUC(J),LAY(J),J=1,NBG) PP(I,J) := Ith component of the Jth lattice basis vector in nonprimitive lattices defined with respect to the transformed lattice periodicity vectors GZ(I,J) (see Cards 13). RKG(J) := Atom radius of atoms assigned to the Jth lattice basis vector. NUC(J) := Nuclear charge of atoms assigned to the Jth lattice basis vector (see Card 5). LAY(J) := ASCII label of the Jth lattice basis vector denoting the non-equivalent subplane in non-primitive lattices (see Card 15). __ 304 _________________ Sec. 6.4.2. _____________________________________ Card(s) 18. (3F15.9,A4) ((VSYELS(I,J),I=1,3),SYEL(J),J=1,NSYSUR) These Cards appear ONLY if NSYSUR > 0. VSYELS(I,J) := Ith component of Jth surviving point symmetry element vector. Vectors are defined according to the symmetry elements given by SYEL(J). SYEL(J) := Definition label of the Jth point symmetry element. Here a label 'Cn ' defines an n-fold rotational axis (n=1,2,3,4,6) with VSYEL(I,J), I=1,3 along the axis, 'M ' defines a mirror plane with VSYEL(I,J), I=1,3 along the mirror plane normal. The symmetry labels SYEL(J) are restricted to 4 characters where leading blanks can appear before the first character ('C' or 'M'). Card 19. (I5,3F15.9) NKTOT,XTOT,YTOT,ZTOT This Card appears only if NFRM = 1 (Card 1) or if extended LATUSE output format was chosen in the LATTICE session. NKTOT := Number of atoms included in the section. XTOT,YTOT,ZTOT := Size of block (lengths along x, y, z) containing all atoms of the section. Card(s) 20. (4F15.9,I4) (XSRT(I),YSRT(I),ZSRT(I),RSRT(I),NCSRT(I), I=1,NKTOT) This Card appears only if NFRM = 1 (Card 1) or if extended LATUSE output format was chosen in the LATTICE session with NKTOT > 0. XSRT(I),YSRT(I),ZSRT(I) := Cartesian coordinates of the Ith atom included in the section. RSRT(I) := Sphere radius of the Ith atom included in the section. NCSRT(I) := Nuclear (element) charge of the Ith atom included in the section. ________________________ Sec. 6.4.2. ______________________________ 305 __ The following listing shows as an example the output file of an interactive BALSAC/LATTICE session with input similar to the one discussed in the tutorial. The sequence of lines refers to Cards no. 1, 2, 3, 3, 3, 4, 5, 5, 6, 7, 8, 9a, 9b, 10, 11, 11a,12, 13, 13, 13, 13, 14, 15, 16, 17, 17, 18, 18, 18, 19, 20, ..., 20. ---------------------------------------------------------------------------50 1 1E 8 1.000000000 Znblnde(fcc+2) lattice 0.000000000 0.500000000 0.500000000 0.500000000 0.000000000 0.500000000 0.500000000 0.500000000 0.000000000 2 0 0.000000000 0.000000000 0.000000000 0.139643663 30 0.250000000 0.250000000 0.250000000 0.293369039 16 0 0 1 0 3 4 7 1 0.000 0.000 0.000 0.000 0.000 1 4 1 0.000000 0.000000 0.000000 0.500000 1.000000 -0.500000 1.000000 0.000000 0.000000 0.000000 0.100000 8 0.00000 0.00000 0.00000 1.00000 0.00000 0 16 1 1 7 0 0 1 0 8 8 0.7000000D+00 0.8000000D+00 0.0000000D+00 7 1 1 0 0 0 1 0 0.000000000 0.000000000 1.000000000 0.500000000 0 0 1 0.500000000 0.500000000 0.000000000 1 -1 0 -0.500000000 0.500000000 0.000000000 1 0 0 0.000000000 0.500000000 0.500000000 0 0 1 0 -1 1 1 0 0 2 3 A 0.000000000 B 0.250000000 0.000000000 0.000000000 0.000000000 0.139643663 30 A 0.250000000 0.750000000 0.500000000 0.293369039 16 B 0.000000000 0.000000000 1.000000000 C2 1.000000000 1.000000000 0.000000000 M 1.000000000 -1.000000000 0.000000000 M 59 2.000951640 2.708058422 2.086738078 0.000000000 0.000000000 0.000000000 0.139643669 30 ... 1.060660172 1.767766953 1.500000000 .139643663 30 ---------------------------------------------------------------------------- __ 306 _________________ Sec. 6.4.3. _____________________________________ 6.4.3. PLOT3D FORMAT (IN/OUTPUT FROM CLUSTER/LATTICE SESSION) This is the second of two file formats accepted for input by BALSAC and is used for structure/graphics parameter definitions in BALSAC/CLUSTER sessions. The format is identical to the standard PLOT3D format ((C) Copyright 1992 K. Hermann, version 3.0 or later) as proposed in the SARCH/LATUSE/PLOT3D ((C) Copyright 1992 M. A. Van Hove and K. Hermann) software package. Therefore, structure files generated with PLOT3D can be used for input to BALSAC/CLUSTER and vice versa. The PLOT3D type structure file format is defined by 5 Cards given as follows: Card 1. (A60) TITLE Card TITLE := Title of the cluster. 2. (I5,3F15.9) NKTOT NKTOT,XTOT,YTOT,ZTOT := Number of atoms listed by coordinates below. XTOT,YTOT,ZTOT := Size of block (lengths along x, y, z) containing all atoms. Card(s) 3. (4F15.9,I4) X(I),Y(I),Z(I),RAD(I),NUC(I),I=1,NKTOT X(I),Y(I),Z(I) := Cartesian coordinates of the Ith atom in the cluster. RAD(I) := Sphere radius assigned to the Ith atom. NUC(I) := Nuclear (element) charge assigned to the Ith atom. Card 4. (5F12.5,12X,I5) THETA,PHI,ROT,MAGNF,PERSP,NFOC THETA,PHI := Polar and azimuthal angles of the viewing direction with respect to the coordinate system of the cluster used in the graphical output. ROT := Rotation angle about the viewing direction used in the graphical output. MAGNF := Magnification factor used in the graphical output. PERSP := Perspective distance factor used in the graphical output. PERSP = 0 or PERSP >> 1 refer to parallel projection while PERSP > 0 means central projection. ________________________ Sec. 6.4.3. ______________________________ 307 __ NFOC := Viewing focus definition. NFOC = 0 : The viewing focus coincides with the center of the lattice section, see Sec. 5.1. NFOC > 0 : After the cluster is built the center of atom number NFOC will serve as center to set the viewing focus. Here Card 4a has to be included but its coordinates are used only if NFOC exceeds the maximum number of atoms in the section. NFOC = -1 : Card 4a. (3F12.5) The viewing focus is given explicitly by cartesian coordinates on Card 4a. ORX,ORY,ORZ This Card is needed ONLY if NFOC > 0 or NFOC < 0. ORX,ORY,ORZ := Cartesian coordinates of the viewing focus used for graphics output. The focus will project on to the center of the screen if no additional shifting is applied, cp. Card 5. This Card is identical with Card 10a of the LATUSE file format, see Sec. 6.4.2. Card M Sec. 5. (8I5) M,N,ICLC,IBFT,NSHX,NSHY,ICON,INITSV := Compound index to define display and graphics mode, see 6.3.5. Here M = SF * (10 * K + L) where SF = 1 = -1 for mono viewing, for stereo duplication. K = 0, 1 L = 0 for atom-by-atom display mode, for no plot/listing output (testing purposes), = = 1 2 for atom coordinate listing, no graphics, for atoms plotted as color dots (small = = = = = = = 3 4 5 6 7 8 9 for for for for for for for circles), atoms atoms atoms atoms atoms atoms atoms plotted plotted plotted plotted plotted plotted plotted as as as as as as as color circles, color filled circles, red/blue stereo circles, hard-shaded balls, fuzzy-shaded balls, dither-shaded balls, glossy-shaded balls. __ 308 _________________ Sec. 6.4.3. _____________________________________ N := Compound index to define color codes for atom painting and background used in graphical output, see Sec. 6.3.5. Here N = 100 * B + C where B denotes the background color and C denotes the starting value of the color palette used to paint atoms. ICLC := Compound flag for discriminating atoms by colors and for labeling atoms. The definition is given in the following table -------------------------------------ICLC color discr. label -------------------------------------1 elements none 2 elements element symbol 3 elements number -------------------------------------IBFT := Compound flag for displaying a title line, drawing a wire frame about the lattice section. The definition is given in the following table ----------------------IBFT title frame ----------------------0 no no 1 no yes 4 yes no 5 yes yes ----------------------NSHX,NSHY := Horizontal and vertical shift of the plot origin in pixel units, see Sec. 6.3.5. ICON := Total number of link constraints used to connect atoms by straight lines or sticks in the plot. ICON = 0 will not connect while ICON > 0 requires ICON additional Cards 5a to define the constraints. INITSV LATUSE := Flag for including initialization information in the and PLOT3D format output files. = 0 no initialization information is included. = 1 initialization information is included in the output file. The parameters are contained on Cards 5b-f which are identical to Cards 1 - 5 of the initialization file, see Sec. 6.4.7. Here ICON > 0 Cards 5a follow. ________________________ Sec. 6.4.3. ______________________________ 309 __ Card(s) 5a. (2I5,3D15.7,I5) NUCA(I),NUCE(I),RMIN(I),RMAX(I), RBOND(I),NBCOL(I),I=1,ICON These cards appear only if ICON > 0. NUCA(I),NUCE(I) := NUCA > NUCE > 0 connects atoms of charge NUCA with those of charge NUCE within the defined distance range, NUCA > NUCE = 0 connects atoms of charge NUCA with all others within the defined distance range, NUCA = NUCE = 0 connects every two atoms within the defined distance range. RMIN(I),RMAX(I) := Minimum and maximum distances used for connecting atoms by lines / sticks (Ith connection constraint). RBOND(I) := Radius of the cylindrical sticks connecting between atoms. If RBOND = 0 atoms are connected by straight lines. NBCOL(I) := Color code (absolute value) used to paint connecting lines / sticks. Cards 5b-f. identical are needed only for INITSV = 1, see Card 5. They are in format to Cards 1 - 5 of the initialization file, see Sec. 6.4.7. Cards 5,5a-f are identical with Cards 11,11a-f of the LATUSE file format, see Sec. 6.4.2. __ 310 _________________ Sec. 6.4.3. _____________________________________ The following listing shows as an example the output file of an interactive BALSAC/CLUSTER session with input similar to the one discussed in the tutorial. Here the initialization parameters (Cards 5b-f.) are included in the file. The sequence of lines refers to Cards no. 1, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 5, 5a, 5a, 5b, 5c, 5d, 5e, 5e, 5f, 5f, 5f, 5f. ---------------------------------------------------------------------------Ni(CO)4 molecule 9 9.906002283 9.906002283 9.906002283 0.000000000 0.000000000 0.000000000 1.547001240 28 -2.164999960 -2.164999960 -2.164999960 1.016538620 6 -3.405999900 -3.405999900 -3.405999900 1.132936360 8 2.164999960 2.164999960 -2.164999960 1.016538620 6 3.405999900 3.405999900 -3.405999900 1.132936360 8 3.405999900 -3.405999900 3.405999900 1.132936360 8 2.164999960 -2.164999960 2.164999960 1.016538620 6 -2.164999960 2.164999960 2.164999960 1.016538620 6 -3.405999900 3.405999900 3.405999900 1.132936360 8 80.00000 -10.00000 0.00000 1.00000 3.00000 0 6 1 1 5 0 0 2 1 6 0 0.3700000D+01 0.3800000D+01 0.2000000D+00 8 8 6 0.2100000D+01 0.2200000D+01 0.1000000D+00 12 0 0 640 480 1.0000 63 4 3 18 16 8 16 .2000 .4000 .4000 65.0000 -25.0000 .3000 -320.0000 4 1 2 3 4 0 0 0 63 63 63 0 0 0 63 63 63 63 63 63 63 0 0 0 0 63 63 63 638x13bold 0 0 50 .3000 .4000 .7000 .8000 1.0000 0 63 0 .2000 .3000 .7000 .8000 1.0000 0 63 50 .3000 .4000 .7000 .8000 1.0000 63 0 0 .2000 .3000 .7000 .8000 1.0000 ---------------------------------------------------------------------------- ________________________ Sec. 6.4.4. ______________________________ 311 __ 6.4.4. SARCH ASCII FORMAT (OUTPUT FILES FROM LATTICE SESSION) This format is available only for output from a LATTICE session and can serve as structure input to SARCH ((C) Copyright 1992 M. A. Van Hove), an analysis and visualization program including LEED and STM simulation. BALSAC uses only a restricted set of the full SARCH ASCII format described in the following. This format cannot account for all structural features available with SARCH. For further details consult the SARCH manuals ((C) Copyright 1992 M. A. Van Hove). The SARCH type structure file format is defined by 4 Cards given as follows: Card 1. NKTOT NOFFST sections (2I5,A60) NKTOT,NOFFST,TITLE := Number of atoms listed by coordinates below. := Offset used to discriminate between different lattice (not used in BALSAC and set by default to NOFFST = 600). TITLE Card 2. := Title of the lattice section. (3F10.4) GV1,GV2,ANG12 GV1,GV2 := Lengths of two planar vectors v1, v2 describing the layer periodicity. ANG12 := Angle between v1, v2. Card 3. Mij (4F10.4,4I5) M11,M12,M21,M22, I1,I2,I3,I4 := 2x2 transformation matrix (i,j=1,2) describing the layer periodicity (BALSAC uses a unit matrix by default). I1,I2,I3 := Miller indices in simple cubic notation for sc-, fcc-, bcc-derived lattices (options = 2,3,5,6,8). I4 := 4th component of Miller indices in 4-index notation for hexagonal lattices (options =-4,-9,-10). For other lattices I4=0. __ 312 _________________ Sec. 6.4.4. _____________________________________ Card(s) 4. (3F10.4,2I5,F10.4) (X(I),Y(I),Z(I),NUC(I),NEQV(I),RAD(I), I=1,NKTOT) X(I),Y(I),Z(I) := Cartesian coordinates of the Ith atom in the lattice section. NUC(I) NEQV(I) the := Nuclear (element) charge assigned to the Ith atom. := Label characterizing the (layer) periodic equivalence of Ith atom. RAD(I) := Sphere radius assigned to the Ith atom. The following listing shows as an example the output file of an interactive BALSAC/CLUSTER session with input from the LATUSE format example file given in Sec. 6.4.2. The sequence of lines refers to Cards no. 1, 2, 3, 4, ..., 4, ..., 4. ---------------------------------------------------------------------------59 600( 0 0 1 )c Znblnde(fcc+2) lattice .7071 .7071 90.0000 1.0000 0.0000 0.0000 1.0000 0 0 1 0 -.7071 -1.0607 1.5000 30 607 .1396 ... -.3536 -1.0607 1.2500 16 606 .2934 ... .3536 .7071 .0000 30 607 .1396 ---------------------------------------------------------------------------- ________________________ Sec. 6.4.5. ______________________________ 313 __ 6.4.5. SCHAKAL FORMAT (OUTPUT FILES FROM LATTICE SESSION) This format is available only for output from a LATTICE session and can serve as structure input to SCHAKAL ((C) Copyright 1990 E. Keller), an alternative crystallographic visualization tool. BALSAC uses only a restricted set of the full SCHAKAL format described in the following. This format cannot account for all structural features available with SCHAKAL. For further details consult the SCHAKAL manuals ((C) Copyright 1990 E. Keller). The SCHAKAL type structure file format is defined by 4 Cards given as follows: Card 1. (' TIT ',A72) TITLE Card TITLE := Title of the lattice section. 2. (' CELL ',3F15.9) XTOT,YTOT,ZTOT XTOT,YTOT,ZTOT := Size of block (lengths along x, y, z) containing all atoms. Card(s) NAME 3. (' ATOM ',A6,3F15.9) NAME(I),XR(I),YR(I),ZR(I),I=1,NKTOT := Element symbol of the Ith atom in the lattice section. XRI),YR(I),ZR(I) := Coordinates of the Ith atom in multiples of XTOT, YTOT, ZTOT respectively. Card 4. (' END') := Last Card of SCHAKAL file. The following listing shows as an example the output file of an interactive BALSAC/CLUSTER session with input from the LATUSE format example file given in Sec. 6.4.2. The sequence of lines refers to Cards no. 1, 2, 3, ..., 3, ...,3, 4. ---------------------------------------------------------------------------TIT ( 0 0 1 )c Znblnde(fcc+2) lattice CELL 2.000951640 2.708058422 2.086738078 ATOM Zn .146614757 .108331872 .140587380 ... ATOM S .323307379 .108331872 .260391587 ... ATOM Zn .676692621 .761112085 .859412620 END ---------------------------------------------------------------------------- __ 314 _________________ Sec. 6.4.6. _____________________________________ 6.4.6. POSTSCRIPT FORMAT (OUTPUT FROM LATTICE/CLUSTER SESSION) NOTE that printing BALSAC PostScript files does NOT require a detailed understanding of this file format Files of this format are produced by BALSAC to be printed on PostScript laser printers or typesetting devices yielding high quality graphics prints. With the gray scale PostScript format colors and shading are simulated by gray levels using fixed dithering, see Sec. 5.4. Color PostScript uses appropriate RGB definitions, see Sec. 5.4, to reproduce colors. However, most b/w PostScript printers will convert color definitions to gray scales. The complete (encapsulated) PostScript file consists of a prologue %!PS-Adobe-2.0 %%Creator: BALSAC v.2 (C) Copyright by K. Hermann %%BoundingBox: 20 20 570 770 %%EndComments containing an internal creator title and a definition of the clipping area on the page which sets the lower left point at (x,y) = (20, 20) and the upper right point at (x,y) = (570, 770) in units of 1/72 of an inch. This is followed by a number of (copyright protected) PostScript macros used to define color tones and to produce elementary drawing objects to be discussed below. Then the plot is built by subsequent calls to the appropriate macros. The file finishes with the PostScript statements /#copies 1 def showpage %%EndDocument: setting the number of copies of the present plot (1). For details concerning the PostScript programming language consult the appropriate literature. It is, however, possible to make simple changes to the plot output by editing the output file with an ASCII text editor. This will be discussed in detail in Sec. 6.4.6.1 The definitions of the (copyright protected) elementary drawing macros used in BALSAC PostScript output files are given in the following in order to improve the readability of respective files and allow quick editing. All drawing macros refer to color PostScript (Level 1) but are accepted by gray scale PostScript devices where RGB colors are converted to gray values s according to (r,g,b) --> (s,s,s) with s = 0.30*r + 0.59*g + 0.11*b . Note that all lengths and coordinates are defined in units of 1/72 of an inch and RGB color definitions (nR, nG, nB) refer to the unit cube [0, 1] x [0, 1] x [0, 1]. In the following we list all PostScript macros available with BALSAC together with a short description of their use and input parameters. Note that all PostScript names in the following are case sensitive. ________________________ Sec. 6.4.6. ______________________________ 315 __ Coldef : basic defines a set of nosh color tones where (nR, nG, nB) is the color, qbot (qtop) denotes the bottom (top) tone, and qgam the gamma factor, see Sec. 5.4. Calling format is nR Lite : nG nB qbot qtop qgam Coldef . defines the incident light direction used for ball shading, see Sec. 5.4. Calling format is ey ez phi Lite where ey = sin(theta), ez = cos(theta), phi define the light direction with respect to the screen normal with phi = 0 pointing upwards. Boxd : defines a rectangular box given by the framing polygon (x1,y1) -> (x2,y1) -> (x2,y2) -> (x1,y2) -> (x1,y1). Calling format is x1 y1 x2 y2 Boxd Adding "0 setgray stroke" after this call draws a black rectangle while adding "r g b setrgbcolor fill" creates an (r,g,b) color filled rectangle. Adding "clip" clips a rectangular area allowing you to draw only inside. CLine : draws a line of width wd and color (nR, nG, nB) between coordinates (x1, y1) and (x2, y2). Calling format is x1 y1 x2 y2 nR nG nB wd CLine . Note that macros CLine, COLine, CArrow, and CArro2 use the same input parameter sequences. Therefore, changing the line type requires only to change the respective macro name. COLine : in does the same as CLine except that the color line is outlined white to emphasize its visibility. Calling format is x1 y1 x2 y2 nR nG nB wd COLine . Note that macros CLine, COLine, CArrow, and CArro2 use the same input parameter sequences. Therefore, changing the line type requires only to change the respective macro name. CDLine : wd draws a ("V" shaped) pair of lines with common origin of width and color (nR, nG, nB). The origin is given by coordinates (x1, y1) and the lines point to (x2, y2) and (x3, y3). Calling format is x1 y1 x2 y2 x3 y3 nR nG nB wd CDLine . For positive values of wd the double line is outlined in white to emphasize its visibility. For negative values of wd a double line of width -wd is drawn without outlining. Note that macros CDLine __ 316 _________________ Sec. 6.4.6. _____________________________________ and CDArrow use the same input parameter sequences. Therefore, changing between lines and arrows requires only to change the respective macro name. CArrow : draws an arrow line of width wd and color (nR, nG, nB) between coordinates (x1, y1) and (x2, y2). The arrow head is at (x2, y2). Calling format x1 y1 x2 y2 nR nG nB wd CArrow . For positive values of wd the arrow is outlined in white to emphasize its visibility. For negative values of wd an arrow of width -wd is drawn without outlining. Note that macros CLine, COLine, CArrow, and CArro2 use the same input parameter sequences. Therefore, changing the line type requires only to change the respective macro name. CArro2 : draws a double-headed arrow line (arrow heads at both ends) of width wd and color (nR, nG, nB) between coordinates (x1, y1) and (x2, y2). The arrow head is at (x2, y2). Calling format x1 y1 x2 y2 nR nG nB wd CArro2 . For positive values of wd the arrow is outlined in white to emphasize its visibility. For negative values of wd an arrow of width -wd is drawn without outlining. Note that macros CLine, COLine, CArrow, and CArro2 use the same input parameter sequences. Therefore, changing the line type requires only to change the respective macro name. CDArrow: wd draws a ("V" shaped) pair of arrows with common origin of width and color (nR, nG, nB). The origin is given by coordinates (x1, y1) and the arrows point to (x2, y2) and (x3, y3). Calling format is x1 y1 x2 y2 x3 y3 nR nG nB wd CDArrow . For positive values of wd the arrow pair is outlined in white to emphasize its visibility. For negative values of wd an arrow pair of width -wd is drawn without outlining. This macro can be used to insert additional basis vectors. Note that macros CDLine and CDArrow use the same input parameter sequences. Therefore, changing between lines and arrows requires only to change the respective macro name. CBond : draws a (perspective) stick of finite thickness between coordinates (x1, y1) and (x2, y2). The stick radii are rad1 at (x1, y1) and rad2 at (x2, y2) and qq is a perspective factor (qq = |cos(beta)| where beta defines the angle between the stick direction and the viewing plane normal vector). The stick will be painted with color (nR, nG, nB) and outlined with black color. Calling format is x1 y1 x2 y2 rad1 rad2 qq nR nG nB CBond . ________________________ Sec. 6.4.6. ______________________________ 317 __ COcir : draws a circle about (x, y) using a radius rad and a line color (nR, nG, nB). Calling format is x y rad nR nG nB COcir . Note that macros COcir, CFcir, CScir, CBall do not use the same input parameter sequence. However, only trivial parameter modifications are required to convert between them. CFcir a : draws a color filled circle about (x, y) using a radius rad and filling color (nR, nG, nB). Calling format is x y rad nR nG nB CFcir . Note that macros COcir, CFcir, CScir, CBall do not use the same input parameter sequence. However, only trivial parameter modifications are required to convert between them. CScir and : draws a hard-shaded color ball about (x, y) using a radius rad two colors, (nR, nG, nB) (darker) and (mR, mG, mB) (lighter). Calling format is x y rad nR nG nB mR mG mB CScir . The incident light direction has to be set by macro Lite before any call to CScir can be made. Note that macros COcir, CFcir, CScir, CBall do not use the same input parameter sequence. However, only trivial parameter modifications are required to convert between them. CBall : radius draws a continuous shaded color ball about (x, y) using a rad and a set of color tones given by basic color index icol. Calling format is x y rad icol CBall . The color index icol ranges between 0 and nc-1 where nc denotes the number of different basic colors for which shading color tones are generated. (For each basic color one macro call Coldef generates color tones and the indices reflect the order of Coldef calls.) The shading and the incident light direction has to be set by macros Coldef and Lite before any call to CBall can be made. Note that macros COcir, CFcir, CScir, CBall do not use the same input parameter sequence. However, only trivial parameter modifications are required to convert between them. __ 318 _________________ Sec. 6.4.6. _____________________________________ Mark text : writes a label "text" starting at (x, y) using black as the color with the rectangular text background painted white. Calling format is x y (text) Mark . Note that a calling sequence x y Marka (text) show Marke creates the same label without painting the text background white. Marka : moves to (x, y) and resets font and orientation to start writing a label. The background will not be changed. Calling format is x Marke : y Marka resets orientation to finish writing a label. Calling format is Marke Ssym the : allows you to use greek and mathematical symbols available with PostScript Symbol character set in any text or label. Calling format is (symbol text) Ssym where "symbol text" is any combination of characters given explicitly or in octal format (written as "\xxx" for each symbol). For a complete list consult the PostScript references. The following table lists only a few of the most important symbols. ---------------------------------------------------------------symbol character ---------------------------------------------------------------"A" - "Z" upper case greek alphabet with exceptions, e. g. "D" = Delta, "F" = Phi, "G" = Gamma, "P" = Pi, "J" = theta1 (curly), Psi, "Q" = Theta "Y" = "L" = Lambda, "S" = Sigma, "W" = lower "d" = "g" = "s" = with exceptions, e. g. "j" = phi1 (curly), "l" = lambda, "w" = omega. Omega. "a" - "z" case greek alphabet delta, "f" = phi, gamma, "p" = pi, sigma, "y" = psi, "\245" infinity symbol "\326" square root symbol "\261" plus/minus symbol "\136" perpendicular symbol "\345" summation symbol "\260" degree symbol ---------------------------------------------------------------- ________________________ Sec. 6.4.6. ______________________________ 319 __ An an example the text "Pd(111)-(sqrt(3) x sqrt(3))R30deg-CO" would read (Pd\(111\)-\() show (\326) Ssym (3 x ) show (3\)R30) show (\260) Ssym (-CO) show (\326) Ssym Yes, it is difficult but it works! Note that single parentheses "(" or ")" have to be preceded by "\" to conserve PostScript integrity (PostScript uses parentheses as syntactic elements). Sub : allows you to use subscripts in any text or label. The subscripted text is shifted down by 30% of the font height and reduced to 83% in size. Calling format is (subscript text) Sub An example the ethylene molecule formula (C2H4) would read (C) show Sup : (2) Sub (H) show (4) Sub allows you to use superscripts in any text or label. The superscripted text is shifted upwards by 30% of the font height and reduced to 83% in size. Calling format is (superscript text) Sup An example the CO+ molecule ion formula would read (CO) show Logo : Calling (+) Sup moves to (x, y) and writes the BALSAC logo "BALSAC plot". format is x y Logo The logo macro is added for copyright purposes and should be removed only if copyright protection of the respective PostScript file is guaranteed. __ 320 _________________ Sec. 6.4.6.1. ___________________________________ 6.4.6.1. EDITING POSTSCRIPT FILES The following discussion is meant only for those who want to further modify graphics details inside the (encapsulated) PostScript output file produced by BALSAC. The overall structure of this PostScript file together with all elementary macros is described in Sec. 6.4.6 and will be referred to in the following. For further details concerning the PostScript programming language consult the appropriate literature. Modifying PostScript output files can be made easier if PostScript previewing software (for example Ghostscript or Ghostview by the GNU Foundation, or xv by John Bradley (C)) is used in combination with the file editor. This allows you to see changes and errors without having to wait for print output and wasting (expensive color) printer paper. In the following we list a number of problems in graphics output that can be (more or less) easily solved by modifications in the PostScript file. * The plot title can be changed in lines ( Title of plot ... ) show by editing the text inside the brackets. Further modifications, including subscripts, superscripts, and greek/mathematical symbols are possible using the macros Sub, Sup, Ssym. As an example, a title line Pd(111) with C2H2 (3X1 state) adsorbed in di-sigma symmetry with all super- and subscripts would read (Pd\(111\) with C) show (2) Sub (H) show (2) Sub ( \() show (3) Sup (X) show (1) Sub ( state \) adsorbed in di-) show (s) Ssym ( symmetry) show inside the PostScript file. * The sizes and/or fonts of the plot title line (defaulted to TimesRoman, 20pt) can be modified in line /thi 20 def /Fnt1 /Times-Roman findfont thi scalefont def by resetting "20" to a different point size and/or replacing "Times-Roman" by any valid PostScript font. * can The sizes and/or fonts of all labels (defaulted to Helvetica, 20pt) be modified in line /mhi 20 def /Fnt2 /Helvetica findfont mhi scalefont def by resetting "20" to a different point size and/or replacing "Helvetica" by any valid PostScript font. ________________________ Sec. 6.4.6.1. ____________________________ 321 __ * Multiple copies of the plot can be produced by editing the line /#copies 1 def showpage replacing "1" by a different number of copies. * Removing the "%" character at the beginning of the first of the two lines % 20 20 570 770 Boxd .000 .000 .000 setrgbcolor fill % 20 20 570 770 Boxd 0 setgray stroke fills the background of the plot with black color. If you replace in this line "0.000, 0.000, 0.000" by any other triple of RGB values this color will be used for background. * Removing the "%" character at the beginning of the second of the two lines % 20 20 570 770 Boxd .000 .000 .000 setrgbcolor fill % 20 20 570 770 Boxd 0 setgray stroke frames the plot with a rectangle of black lines. Framing and background painting can be combined by removing the "%" characters of both the above lines. * Removing the "%" character at the beginning of line % 53 45 {dup mul exch dup mul add 1. exch sub } setscreen forces the printer to a 300dpi optimized dithering, which may be needed on some color printers to produce continuous shading. * The plot may be rotated and reduced with respect to its default orientation and magnification (landscape, fitting on a letter or A4 size page) to yield portrait orientation and reduction by 30% thus still fitting on a letter or A4 size page. This is achieved by a) changing the bounding box in the PostScript prologue from %%BoundingBox: 20 20 570 770 to %%BoundingBox: 40 315 565 700 b) removing the "%" character at the beginning of line % 26 714 translate -90 rotate .7 .7 scale This plot rotation / reduction is very useful and can save painful readjustments if BALSAC plots are to be inserted electronically into manuscripts produced with text processing systems such as Word or WordPerfect. __ 322 _________________ Sec. 6.4.6.1. ___________________________________ * You may place two BALSAC figures (reduced to 70% in size) in one figure (figure 1 at top, figure 2 at bottom) printing on one page. This is achieved by a) copying files file.1 (showing figure 1), file.2 (showing figure 2) one after another into one file file.all. b) editing file.all by b1) removing the first of two lines reading /#copies 1 def showpage b2) replacing the first line ending with "... Boxd clip" by a line 0 800 translate -90 rotate .7 .7 scale b3) replacing the second line ending with "... Boxd clip" by a line 500 0 translate * You may place four BALSAC figures (reduced to 50% in size) in one figure (figure 1 at top left, figure 2 at top right, figure 3 at bottom left, figure 4 at bottom right) printing on one page. This is achieved by a) copying files file.1 (showing figure file.2 (showing figure file.3 (showing figure file.4 (showing figure one after another into b) editing file.all by b1) 1), 2), 3), 4) one file file.all. removing the first three of four lines reading /#copies 1 def showpage b2) replacing the first line ending with "... Boxd clip" by a line .5 .5 scale b3) replacing the second line ending with "... Boxd clip" by a line 0 750 translate b4) replacing the third line ending with "... Boxd clip" by a line 600 -750 translate ________________________ Sec. 6.4.6.1. ____________________________ 323 __ b5) replacing the fourth line ending with "... Boxd clip" by a line 0 750 translate * PostScript colors and gray scales may be readjusted in the Coldef macro calls. As an examples, the basic color definition describing a set of blue tones of intensities between 0.45 and 0.88 reads .000 .000 1.000 .450 .880 1.000 Coldef Here replacing ".880" by ".980" widens the intensity range towards lighter blues yielding more shining balls. Replacing ".000 .000 1.000" by "1.000 1.000 .000" at the beginning of the line changes the basic color from blue to yellow. * The number of tones used for shading is defined by the parameter nosh in line /nosh 5 def /ncol 3 def ... of the PostScript file. Changing the value of nosh ( = 5 above) increases or decreases the number of tones used in ball shading. Note that the computational effort of the PostScript output scales linearly with nosh. Thus, for interactive testing with a PostScript previewer small nosh values ( < 6) are suggested while for final printing large values ( 10 < nosh < 20) are meaningful. * More basic colors (shading tones) can be added to a plot using shaded balls by including another Coldef macro call .... nR nG nB qbot qtop qgam Coldef after the existing sequence (of N Coldef calls) and increasing the value of the ncol parameter in line /nosh 5 def /ncol 3 def ... ( ncol = 3 ) by one. The added shading set is addressed by its color index number N in calls to CBall. * Two-dimensional lines added to the plot in an interactive BALSAC session show as arrows in the PostScript file (close to the file end). They are always combined with a commented line containing a label command at the beginning of the arrow, e. g. % 129.20 129.20 604.60 244.40 515.50 0. 0. 0. 1.5 CArrow 604.60 ( 1/ 1) Mark Here the arrow can be changed to a line, outlined line, or double headed arrow by replacing "CArrow" above by "CLine", "COLine", or "CArro2". Further, removing the "%" character at the beginning of the second line __ 324 _________________ Sec. 6.4.6.1. ___________________________________ above shows a label with dummy text "1/1" at the arrow end which can be edited to yield a meaningful label text. * Pairs of 2-dimensional lines or arrows which join at one end can look ugly at the joint due to overwriting, in particular if outlining is used. This can be "cleaned" using the CDLine or CDArrow macros. As an example, the pair of arrows 129.20 129.20 604.60 604.60 244.40 266.00 515.50 0. 0. 0. 1.5 CArrow 300.10 0. 0. 0. 1.5 CArrow describing a 2-dimensional periodicity basis looks more appealing if the above macro calls are replaced by 129.20 604.60 244.40 515.50 266.00 300.10 0. 0. 0. 1.5 CDArrow * due Polygons of 2-dimensional joining lines can look ugly at the joint to overwriting, in particular if outlining is used. This can be cleaned by first drawing all lines with outlining and then repeating the line drawing without outlining. As an example, the red triangle drawn by 100.00 200.00 300.00 100.00 200.00 100.00 200.00 300.00 100.00 200.00 100.00 100.00 1.0 1.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.5 0.5 0.5 COLine COLine COLine 200.00 100.00 100.00 200.00 100.00 100.00 1.0 1.0 1.0 1.0 1.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.5 0.5 0.5 0.5 0.5 0.5 COLine COLine COLine CLine CLine CLine looks more appealing with 100.00 200.00 300.00 100.00 200.00 300.00 100.00 200.00 100.00 100.00 200.00 100.00 200.00 300.00 100.00 200.00 300.00 100.00 repeating the COLine calls by CLine calls. Further, to achieve round joints connecting the lines the macro COLine may have to me modified in line moveto lineto 1 setlinejoin 0 setlinecap gsave lwi 3 add ... replacing "0 setlinecap" by "1 setlinecap". ________________________ Sec. 6.4.6.1. ____________________________ 325 __ * Labels appearing in BALSAC output use the macro Mark which writes label text in black color on a rectangular background painted white to emphasize its visibility. Using macros Marka, Marke instead of Mark suppresses the white background and adds more flexibility to the label text allowing for super/subscripts and greek symbols.As an example, the label call 129.20 604.60 (top site) Mark replaced by 129.20 604.60 Marka (top site) show Marke will suppress the white background. Further, the lines 129.20 604.60 Marka (C) show (2) Sub (H) show (2) Sub ( in di-) show (s) Ssym ( symmetry) show Marke create a label "C2H2 in di-sigma symmetry" with all subscripts and the greek symbol. * Outlining of shaded balls uses a line width 0.25 by default. This can be changed in line /COcir { setrgbcolor 0.25 setlinewidth newpath 0 360 arc ... replacing "0.25" by any other line width value. Note that this change acts on all balls and also on all circles created by the COcir macro. Outline changes of single balls are more difficult requiring PostScript language skills to modify the CBall and COcir macros. * Color filled circles use a default line width 0.25 for outlining. This can be changed in line /CFcir { setrgbcolor 0.25 setlinewidth newpath 0 360 arc ... replacing "0.25" by any other line width value. Note that this change acts on all filled circles. Outline changes of single circles are more difficult requiring PostScript language skills. * The outline color used for shaded balls and color filled circles is defined globally by RGB parameters Rol, Gol, Bol and the outline color for bond sticks is defined by Rbd, Gbd, Bbd. Here the defaults (.000, .000, .000) = black given in lines /Rol /Rbd .000 def /Gol .000 def /Gbd .000 def /Bol .000 def /Bbd .000 def .000 def can be overwritten for special effects. As an example, the line /Rol 1.000 def /Gol .000 def /Bol .000 def results in red outlining of all shaded balls. Different outline colors __ 326 _________________ Sec. 6.4.6.1. ___________________________________ used for single balls can be set by local redefinition. For example, the calling sequence ... /Rol 1.000 def /Gol 1.000 def /Bol 1.000 def 345.47 483.95 22.24 1 CBall % 8 /Rol .000 def /Gol .000 def /Bol .000 def ... creates a shaded ball with white outlining while all other balls are outlined black. * In BALSAC PostScript output files all atoms shown as points, (color filled) circles, or shaded balls are created by the appropriate macro calls COcir, CFcir, CBall where the number at the end of each calling line refers to the atom number which is identical to that used inside BALSAC and available in the graphic analysis. As an example, line 274.04 375.51 31.29 2 CBall % 3 creates a shaded ball for atom no. 3. The center numbers are useful for finding specific atoms (for modification) in the PostScript file: first, you search for the atom with the graphic analysis on the screen, identify its atom number, and then look for the atom number in the PostScript file. ________________________ Sec. 6.4.7. ______________________________ 327 __ 6.4.7. FORMAT OF INITIALIZATION FILES Running BALSAC requires an initialization file with its name provided on the command line or defaulted to 'balsac2.ini', see Sec. 6.1. This file is loaded at the beginning of each session or with the basic parameter option and contains basic parameter values used to initialize graphics windows, colors, and shading. All parameters are described in detail in Sec. 5.4 and may be changed interactively using the parameter option menu, see Sec.6.2.15. The file is defined by 5 Cards given as follows: Card 1. (4I5,F10.4,I10,6I5) LOWINX,LOWINY,LWINX,LWINY,QYX,MXRGB,NCOLB, NTONE,INTRPT,NCOLMX,LXCH,LYCH LOWINX,LOWINY := Absolute pixel position of the upper left corner of the graphics window. These parameters allow you to reposition the graphics window (Unix/X.11 version) but are ignored in the DOS/VGA version of BALSAC. Default values are (230, 0) to avoid overlap with the menu window at (0, 0). LWINX,LWINY := Size of the graphics window in pixels. Default values are (640, 480) for both DOS/VGA and Unix/X.11 versions. QYX pixels := Pixel ratio y/x. This defines the ratio of numbers of corresponding to the same length in y (up-down) and x (left-right) direction on the screen. QYX can be used to adjust graphic distortions on monitors of different screen size. The default value (1.00) assumes square shaped pixels. MXRGB colors, := Maximum of allowed RGB values used to rescale basic see below. This parameter depends on the type of graphics adapter where default values rgb = 63 (DOS/VGA version), = 65535 (Unix/X.11 version) are meaningful. NCOLB := Total number of paint colors defined below, see Sec. 5.4. Default values are ncolb = 4 (DOS/VGA), = 16 (Unix/X.11 version) respectively. NTONE for := Number of tones (nsh tones, see Sec. 5.4) to be generated each paint color. The total number of different tones defined inside BALSAC, nsh*ncolb, may not exceed 12 (DOS/VGA version) or 240 (Unix/X.11 version). Default values are nsh = 3 (DOS/VGA), = 15 (Unix/X.11 version) respectively. INTRPT := Interrupt code of the graphics mode used in the DOS/VGA version of BALSAC, see below. In the Unix/X.11 version this parameter is ignored. NCOLMX := Maximum number of different colors allowed by different graphics modes and adapters, see below. __ 328 _________________ Sec. 6.4.7. _____________________________________ LXCH,LYCH := Numbers of pixels per character along x and y used in the DOS/VGA version of BALSAC, see below. In the Unix/X.11 version this parameter is ignored. With the DOS version of BALSAC different graphics modes and resolutions are available depending on the graphics adapter. The parameters INTRPT, LWINX, LWINY, NCOLMX, LXCH, LYCH are dependent and may lead to unpredictable results if set without consideration. The following table gives standard values for the most common modes which have been found to work with typical VGA adapters. ----------------------------------------------------------mode INTRPT LWINX, LWINY NCOLMX LXCH, LYCH ----------------------------------------------------------CGA 14 640, 200 16 8, 8 EGA 16 640, 350 16 8, 14 VGA 18 640, 480 16 8, 16 ----------------------------------------------------------Apart from these standard settings graphics modes with higher resolution and larger color palettes may be available with enhanced VGA adapters but are not officially supported by BALSAC. For appropriate interrupt settings consult your adapter manual. Note that some enhanced graphics modes may require special mouse drivers for mouse use in the graphic analysis. The Unix/X.11 version of BALSAC does not use different graphics modes and definitions of INTRPT, NCOLMX, LXCH, LYCH are ignored. Card 2. (7F10.4) QDIFF,QLAMB,QSPEC,THTSH,PHISH,PU,DEYE QDIFF,QLAM,QSPEC := Shading weights for diffuse background (qdiff), Lambert shading (qlamb), and specular reflection (qspec). These weights determine the relative amounts of the shading contributions where qdiff+qlamb+qspec=1, see Sec. 5.4. Default values are qdiff = 0.1, qlamb = 0.35, qspec = 0.55. THTSH, PHISH := Direction of the incident light (polar angle thtsh, azimuthal angle phish) used for ball shading. Default values are thtsh = 50, phish = -35 degrees, see Sec. 5.4. PU := Eye distance factor used in red/blue and full color stereo mode. Default is pu = 0.3, see Sec. 6.2.15. Larger pu values reduce the stereo impression. DEYE color := Distance between the centers of the two pictures in full stereo mode (given in pixels). Positive values result in left/right eye positioned pictures (use optical stereo glasses). Negative values result in a reversed picture order (stereo view by cross-eyed viewing). The default setting is shift = -lwinx/2 = 320, see Sec. 6.2.15. ________________________ Sec. 6.4.7. ______________________________ 329 __ Card 3. NPTOT (24I3) NPTOT,(NP(I),I=1,NPTOT) := Number of entries, nptot, of the color palette which determines the sequence of paint colors used to paint atoms differently according to element or layer. The palette size nptot must not exceed 32. NP(I) Each := entries np(i), i=1,...nptot defining the color palette. entry np(i) points at a paint color j (np(i) = j) within the range [1,ncolb]. The natural sequence np(i) = i (default definition) uses paint colors in the sequence given by the paint color definition on Cards 5. The color palette can redefined interactively with the basic parameter option, see Sec. 6.2.15, and with the graphic analysis, see Secs. 6.2.14.2, 6.2.12.1. Cards 4. (15I5/9I5,A30) ((IBRGB(I,J),I=1,3),J=1,8),FONTNM IBRGB(I,J) := RGB definitions of the elementary colors used by BALSAC with IBRGB(1-3,1) IBRGB(1-3,2) IBRGB(1-3,3) IBRGB(1-3,4) IBRGB(1-3,5) IBRGB(1-3,6) IBRGB(1-3,7) IBRGB(1-3,8) := := := := := := := := R, R, R, R, R, R, R, R, G, G, G, G, G, G, G, G, B B B B B B B B values values values values values values values values of of of of of of of of color "black" color "white" background color graphics text color default link color stereo red color stereo blue color stereo white color The DOS/VGA version of BALSAC uses only color definitions IBRGB(1-3,1), IBRGB(1-3,2), IBRGB(1-3,6), IBRGB(1-3,7) and sets IBRGB(1-3,3)= IBRGB(1-3,1), IBRGB(1-3,4)= IBRGB(1-3,1), IBRGB(1-3,5)= IBRGB(1-3,2), IBRGB(1-3,8)= IBRGB(1-3,2). FONTNM (used := Font name for text output inside X.11 graphics windows only with Unix/X.11 version, ignored in DOS/VGA version). Valid names follow the X.11 Windows standard and depend also on the output device. Examples are "8x13bold", "courb10" (typed without ""). __ 330 _________________ Sec. 6.4.7. _____________________________________ Card(s) 5. (3I5,5F10.4) ((IRGB(I,J),I=1,3),CBT(J),CBS(J),CEN(J),CTP(J),GAM(J),J=1,NPTOT) IRGB(I,J) := RGB definition used to determine paint color J with NTONE different tones, see Sec. 5.4. Up to 72 definitions are allowed. CBT(J) := Color factor of the darkest tone of paint color J. CBS(J) := Color factor of the default dark tone of paint color J. CEN(J) := Color factor of the default light tone of paint color J. CTP(J) := Color factor of the lightest tone of paint color J. GAM(J) := Gamma factor for tone distribution of paint color J. ________________________ Sec. 6.4.7. ______________________________ 331 __ The following listings show the default files 'balsac2.ini' for the DOS/VGA and the Unix/X.11 versions of BALSAC. (A) DOS/VGA version ---------------------------------------------------------------------------0 0 640 480 1.0000 63 4 3 18 16 8 16 0.1000 0.3500 0.5500 50.0000 -35.0000 0.3000 -320.0000 4 1 2 3 4 0 0 0 63 63 63 0 0 0 63 63 63 63 63 63 63 0 0 0 0 63 63 63 638x13bold 0 0 50 0.3000 0.4000 0.7000 0.8000 1.0000 0 63 0 0.2000 0.3000 0.7000 0.8000 1.0000 0 63 50 0.3000 0.4000 0.7000 0.8000 1.0000 63 0 0 0.2000 0.3000 0.7000 0.8000 1.0000 ---------------------------------------------------------------------------(B) Unix/X.11 version ---------------------------------------------------------------------------230 0 640 480 1.0000 65535 16 15 18 256 8 16 .1000 .3500 .5500 50.0000 -35.0000 .3000 -320.0000 16 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 0 0 0652806528065280 0 0 0652806528065280394176553544830 65280 0 0 0 0652806528065280652808x13bold 0 060000 .4500 .5500 .7750 .8800 1.0000 671858264 7012 .3000 .3500 .7250 .8300 1.7200 31683354834206 .2400 .3600 .7000 .8250 1.1600 55403 8874 8494 .3100 .3300 .6950 .8400 1.0000 596603429612278 .5500 .5600 .7000 .8750 1.0000 6243862613 8995 .5250 .5600 .7000 .7050 .9000 634426343465499 .2500 .4700 .8350 .8850 1.0000 482385159265535 .4000 .5000 .7000 .9000 1.0000 572175765165396 .7650 .9000 .9200 .9900 1.0000 650006500065000 .2000 .3000 .5000 .6550 1.0000 650006500065000 .4000 .5000 .7000 .9000 1.0000 650006500065000 .3000 .4000 .8000 .9900 1.0000 650006500065000 .5000 .6000 .8000 .9900 1.0000 650006500065000 .6000 .7000 .9000 .9900 1.0000 650006500065000 .7700 .8600 .9500 .9900 .8100 650006500065000 .9800 .9900 .9900 .9900 1.0000 ---------------------------------------------------------------------------- __ 332 _________________ Sec. 6.4.8. _____________________________________ 6.4.8. FORMAT OF ON-LINE HELP FILES The format of on-line help files is of interest only for those who want to modify the default help file provided with the software for customization or translation purposes. Running BALSAC and using on-line help for option menus requires a help file with its name provided on the command line or defaulted to 'balsac2.hlp', see Sec. 6.1. This file is loaded at the beginning of each session or with the basic parameter option and contains all help text in ASCII format. This file can, therefore, be easily customized by the user. (Do NOT overwrite the original file provided with the software.) On-line help files are defined by 2 Cards given as follows: Card 1. (70X,I5,I3) LINES,NOPT LINES := Total number of lines in the help file, 1176 at present. NOPT := Total number of option key menus, 85 at present. Card 2. HTEXT IOPT shown by (A70,I5,I3) HTEXT,IOPT,ISUBO := Help text line (up to 70 characters) := Code number of the option key menu. These numbers are BALSAC if the index flag is set to "on" (with the control parameter option) - in most option menus (DOS/VGA and Unix/X.11 Windows, see Sec. 6.2.15) which finish with a line ============================================= IOPT == at the bottom. - at the bottom of any menu window (Unix/X.11 Windows only, see Sec. 3.3.8) reading __ |__| ?: LATTICE Menu No. IOPT | or __ |__| ?: CLUSTER Menu No. IOPT | - after help is requested (DOS/VGA and Unix/X.11 Windows, see Sec. 3.3.3) and BALSAC asks for the next option by IOPT> Select options from [ABC...,?] : ________________________ Sec. 6.4.8.1. ____________________________ 333 __ ISUBO := Sequence number of the specific option in the menu. The sequence of options is shown by BALSAC after help is requested (DOS/VGA and Unix/X.11 Windows, see Sec. 3.3.3) and BALSAC asks for the next option by IOPT> Select options from [ABC...,?] : Here the character string in square brackets "[ABC...,?]" lists option sequence by the respective key codes (ISUBO=1 for option "A", ISUBO=2 for option "B", etc.). Help text for a given option key can extend over several lines. In this case the lines must appear in correct order in the file with each line having the same values for IOPT,ISUBO. As an example Section 6.4.8.1 lists the content of the default help file provided with the BALSAC package. 6.4.8.1. LISTING OF THE DEFAULT HELP FILE The following listing shows all help messages of the default help file provided as 'balsac2.hlp' with the BALSAC system. 1269 87 Start LATTICE session for periodic lattices in interactive mode or 1 1 with input file. 1 1 Start CLUSTER session for clusters/molecules in interactive mode or 1 2 with input file. 1 2 Turn on/off option menu input with mouse. If turned off, press [x] to 1 3 select option (DOS and Unix). If turned on (DOS), point at [x] and 1 3 L-click or press [x]. If turned on (Unix), select from menu window, 1 3 no keyboard input available. 1 3 Turn on/off teach option. If turned on all option keys have to be 1 4 selected twice where after the first selection a help text shows. This 1 4 is slow but useful for learning new BALSAC features. 1 4 Build a cluster/molecule interactively. Requires atom coordinates, 2 1 viewing geometry, and graphics information (prompted interactively). 2 1 Resume a CLUSTER session with input from file 'balsac.plt' created 2 2 with the quick save option. 2 2 Resume the previous CLUSTER session with input from file 'balsac.svc' 2 3 created by the automatic safety backup. 2 3 Start a CLUSTER session with input from a structure file created 2 4 before (in a previous CLUSTER session or externally). The file name 2 4 will be prompted. 2 4 Move to the LATTICE session for periodic lattices. 2 5 Confirm interactive CLUSTER session from scratch. 3 1 All present structure data will be saved on file 'balsac.svc'. 3 1 Save all CLUSTER structure data on file 'balsac.trl' and start a 4 1 LATTICE session using 'balsac.trl' for input. The cluster forms the 4 1 lattice basis and fictitious orthorhombic lattice vectors are used to 4 1 build the lattice. All present structure data will also be saved on 4 1 file 'balsac.svc'. 4 1 Move to a LATTICE session. All present structure data will be saved 4 2 on file 'balsac.svc'. 4 2 __ 334 _________________ Sec. 6.4.8.1. ___________________________________ Save all CLUSTER structure data on file 'balsac.trl' and start a 4 3 LATTICE session using 'balsac.trl' for input. The cluster forms the 4 3 lattice basis and lattice vectors of the previous LATTICE session are 4 3 used to build the lattice. All present structure data will also be 4 3 saved on file 'balsac.svc'. 4 3 Define of cluster/molecule by atom coordinates, radii etc. 5 1 Redefine radii and charges; manipulate (translate, copy, rotate, 5 1 include) atoms and groups of atoms; add atoms from external files. 5 1 Define/redefine radii and nuclear charges of all atoms. 5 2 Radii of each atom may be shrunk, expanded, redefined while charges 5 2 can be redefined only. Internal atomic radii are (in Angstroms) : 5 2 H 1/0.435 He 2/1.400 Li 3/1.520 Be 4/1.143 B 5/0.975 C 6/0.655 5 2 N 7/0.750 O 8/0.730 F 9/0.720 Ne10/1.600 Na11/1.858 Mg12/1.605 5 2 Al13/1.432 Si14/1.176 P 15/1.060 S 16/1.020 Cl17/0.990 Ar18/1.900 5 2 K 19/2.262 Ca20/1.976 Sc21/1.655 Ti22/1.476 V 23/1.309 Cr24/1.249 5 2 Mn25/1.350 Fe26/1.241 Co27/1.254 Ni28/1.246 Cu29/1.278 Zn30/1.333 5 2 Ga31/1.350 Ge32/1.225 As33/1.200 Se34/1.160 Br35/1.140 Kr36/2.000 5 2 Rb37/2.470 Sr38/2.151 Y 39/1.824 Zr40/1.616 Nb41/1.432 Mo42/1.363 5 2 Tc43/1.368 Ru44/1.353 Rh45/1.345 Pd46/1.376 Ag47/1.445 Cd48/1.489 5 2 In49/1.666 Sn50/1.538 Sb51/1.400 Te52/1.360 I 53/1.330 Xe54/2.200 5 2 Cs55/2.633 Ba56/2.171 La57/1.873 Ce58/1.824 Pr59/1.836 Nd60/1.830 5 2 Pm61/1.809 Sm62/1.804 Eu63/1.984 Gd64/1.818 Tb65/1.801 Dy66/1.795 5 2 Ho67/1.789 Er68/1.779 Tm69/1.769 Yb70/1.940 Lu71/1.752 Hf72/1.597 5 2 Ta73/1.428 W 74/1.371 Re75/1.380 Os76/1.368 Ir77/1.357 Pt78/1.387 5 2 Au79/1.442 Hg80/1.503 Tl81/1.728 Pb82/1.750 Bi83/1.460 Po84/1.460 5 2 At85/1.450 Rn86/1.430 Fr87/2.500 Ra88/2.140 Ac89/1.878 Th90/1.798 5 2 Pa91/1.609 U 92/1.568 93-100/1.0000 5 2 Define viewing parameters (direction, perspective, magnification). 5 3 Parameters are used for graphics output of the cluster/molecule. 5 3 Define graphics parameters (display mode, colors, layout, links). 5 4 Output structure data on external files for later use. 5 5 PLOT3D, LATUSE, (color) PostScript, SCHAKAL formats are available. 5 5 Display (list) cluster/molecule with given option parameters. 5 6 Display may be interrupted by pressing any key or L-click (press [C] 5 6 or L-click to continue, press [/] to continue in single atom mode, 5 6 press [R] or R-click to stop plotting). After a plot is finished 5 6 graphic analysis is possible (select [Q]). Move to main option menu 5 6 in text mode by [,] or R-click. 5 6 Start interactive CLUSTER session from scratch (to be confirmed). 5 7 All present structure data will be saved on file 'balsac.svc'. 5 7 Restart CLUSTER session with external input file (name is prompted). 5 8 All present structure data will be saved on file 'balsac.svc'. 5 8 Transfer to LATTICE session (to be confirmed). 5 9 Structure/graphics data may be transferred (using file 'balsac.trl'). 5 9 All present structure data will be saved on file 'balsac.svc'. 5 9 Numerical analysis of the cluster/molecule and selected atoms. 5 10 The graphic counter part is available after plotting is finished 5 10 (select [Q] for mouse/keyboard analysis). 5 10 Redefine basic control and graphics parameters. Caution! 5 11 Parameters concern screen mode and color definitions, (stereo) viewing 5 11 and stereo, mouse, help, etc. Be sure you know what you are doing! 5 11 Restart CLUSTER session with input file 'balsac.plt' (after confirm). 5 12 All present structure data will be saved on file 'balsac.svc'. 5 12 Move to stack option to load/save structure data from stack files. 5 13 Define/change structure title. 5 14 ________________________ Sec. 6.4.8.1. ____________________________ 335 __ Build a lattice section interactively. Requires lattice type, 6 1 net plane orientation (Miller indices), crystal section size, 6 1 viewing geometry, and graphics information (prompted interactively). 6 1 Resume a LATTICE session with input from file 'balsac.lat' created 6 2 with the quick save option. 6 2 Resume the previous LATTICE session with input from file 'balsac.svl' 6 3 created by the automatic safety backup. 6 3 Start a LATTICE session with input from a structure file created 6 4 before (in a previous LATTICE session or externally). The file name 6 4 will be prompted. 6 4 Move to CLUSTER session for clusters/molecules. 6 5 Confirm interactive LATTICE session from scratch. 7 1 All present structure data will be saved on file 'balsac.svl'. 7 1 Define lattice by lattice vectors, basis, and lattice constant. 8 1 Common lattices are predefined and may be selected by codes. 8 1 Define/redefine radii and nuclear charges of all atoms. 8 2 Radii of each symmetry inequivalent atom may be shrunk, expanded, 8 2 redefined while charges can be redefined only. Internal atomic radii 8 2 are (in Angstroms) : 8 2 H 1/0.435 He 2/1.400 Li 3/1.520 Be 4/1.143 B 5/0.975 C 6/0.655 8 2 N 7/0.750 O 8/0.730 F 9/0.720 Ne10/1.600 Na11/1.858 Mg12/1.605 8 2 Al13/1.432 Si14/1.176 P 15/1.060 S 16/1.020 Cl17/0.990 Ar18/1.900 8 2 K 19/2.262 Ca20/1.976 Sc21/1.655 Ti22/1.476 V 23/1.309 Cr24/1.249 8 2 Mn25/1.350 Fe26/1.241 Co27/1.254 Ni28/1.246 Cu29/1.278 Zn30/1.333 8 2 Ga31/1.350 Ge32/1.225 As33/1.200 Se34/1.160 Br35/1.140 Kr36/2.000 8 2 Rb37/2.470 Sr38/2.151 Y 39/1.824 Zr40/1.616 Nb41/1.432 Mo42/1.363 8 2 Tc43/1.368 Ru44/1.353 Rh45/1.345 Pd46/1.376 Ag47/1.445 Cd48/1.489 8 2 In49/1.666 Sn50/1.538 Sb51/1.400 Te52/1.360 I 53/1.330 Xe54/2.200 8 2 Cs55/2.633 Ba56/2.171 La57/1.873 Ce58/1.824 Pr59/1.836 Nd60/1.830 8 2 Pm61/1.809 Sm62/1.804 Eu63/1.984 Gd64/1.818 Tb65/1.801 Dy66/1.795 8 2 Ho67/1.789 Er68/1.779 Tm69/1.769 Yb70/1.940 Lu71/1.752 Hf72/1.597 8 2 Ta73/1.428 W 74/1.371 Re75/1.380 Os76/1.368 Ir77/1.357 Pt78/1.387 8 2 Au79/1.442 Hg80/1.503 Tl81/1.728 Pb82/1.750 Bi83/1.460 Po84/1.460 8 2 At85/1.450 Rn86/1.430 Fr87/2.500 Ra88/2.140 Ac89/1.878 Th90/1.798 8 2 Pa91/1.609 U 92/1.568 93-100/1.0000 8 2 Define/redefine Miller indices for net plane stacking. 8 3 Net plane stacking is used to build the lattice section. Both cubic 8 3 and Bravais definitions (for extended cubic lattices) and 4-index 8 3 notations (for hexagonal lattices) are available (select index type 8 3 with lattice definition). 8 3 Select size and shape of a lattice block to be displayed. 8 4 The block is defined by layer sections of N1 x N2 atoms where 8 4 N3 layers are stacked. The block has rectangular shape which can be 8 4 with spherical boundaries. 8 4 Change the structure of selected layers in the lattice section. 8 5 Restructuring includes relaxation, reconstruction, or complete 8 5 layer rebuilding. 8 5 Define viewing parameters (direction, perspective, magnification). 8 6 Parameters are used for graphics output of the lattice section. 8 6 Define graphics parameters (display mode, colors, layout, links). 8 7 Output structure data on external files for later use. 8 8 LATUSE, PLOT3D, (color) PostScript, SARCH, SCHAKAL formats are 8 8 available. 8 8 __ 336 _________________ Sec. 6.4.8.1. ___________________________________ Display (list) lattice section with given option parameters. 8 9 Display may be interrupted by pressing any key or L-click (press [C] 8 9 or L-click to continue, press [/] to continue in single atom mode, 8 9 press [R] or R-click to stop plotting). After a plot is finished 8 9 graphic analysis is possible (select [Q]). Move to main option menu 8 9 in text mode by [,] or R-click. 8 9 Start interactive LATTICE session from scratch (to be confirmed). 8 10 All present structure data will be saved on file 'balsac.svl'. 8 10 Restart LATTICE session with external input file (name is prompted). 8 11 All present structure data will be saved on file 'balsac.svl'. 8 11 Refresh menu display. Meaningful in batch mode only. 8 12 Transfer to CLUSTER session (to be confirmed). 8 13 Structure/graphics data may be transferred (using file 'balsac.trp'). 8 13 All present structure data will be saved on file 'balsac.svl'. 8 13 Numerical analysis of lattice section and selected atom centers. 8 14 The graphic counter part is available after plotting is finished 8 14 (select [Q] for mouse/keyboard analysis). 8 14 Redefine basic control and graphics parameters. Caution! 8 15 Parameters concern screen mode and color definitions, (stereo) viewing 8 15 and stereo, mouse, help, etc. Be sure you know what you are doing! 8 15 Move to stack option to load/save structure data from stack files. 8 16 Calculate atom coordinates and return to main menu (batch mode use). 8 17 Change definitions of radii and nuclear charges of all atoms. 9 1 Radii (all, selected elements, selected atoms) may be shrunk, 9 1 expanded, redefined while charges can be redefined only. Internal 9 1 atomic radii are (in Angstroms) : 9 1 H 1/0.435 He 2/1.400 Li 3/1.520 Be 4/1.143 B 5/0.975 C 6/0.655 9 1 N 7/0.750 O 8/0.730 F 9/0.720 Ne10/1.600 Na11/1.858 Mg12/1.605 9 1 Al13/1.432 Si14/1.176 P 15/1.060 S 16/1.020 Cl17/0.990 Ar18/1.900 9 1 K 19/2.262 Ca20/1.976 Sc21/1.655 Ti22/1.476 V 23/1.309 Cr24/1.249 9 1 Mn25/1.350 Fe26/1.241 Co27/1.254 Ni28/1.246 Cu29/1.278 Zn30/1.333 9 1 Ga31/1.350 Ge32/1.225 As33/1.200 Se34/1.160 Br35/1.140 Kr36/2.000 9 1 Rb37/2.470 Sr38/2.151 Y 39/1.824 Zr40/1.616 Nb41/1.432 Mo42/1.363 9 1 Tc43/1.368 Ru44/1.353 Rh45/1.345 Pd46/1.376 Ag47/1.445 Cd48/1.489 9 1 In49/1.666 Sn50/1.538 Sb51/1.400 Te52/1.360 I 53/1.330 Xe54/2.200 9 1 Cs55/2.633 Ba56/2.171 La57/1.873 Ce58/1.824 Pr59/1.836 Nd60/1.830 9 1 Pm61/1.809 Sm62/1.804 Eu63/1.984 Gd64/1.818 Tb65/1.801 Dy66/1.795 9 1 Ho67/1.789 Er68/1.779 Tm69/1.769 Yb70/1.940 Lu71/1.752 Hf72/1.597 9 1 Ta73/1.428 W 74/1.371 Re75/1.380 Os76/1.368 Ir77/1.357 Pt78/1.387 9 1 Au79/1.442 Hg80/1.503 Tl81/1.728 Pb82/1.750 Bi83/1.460 Po84/1.460 9 1 At85/1.450 Rn86/1.430 Fr87/2.500 Ra88/2.140 Ac89/1.878 Th90/1.798 9 1 Pa91/1.609 U 92/1.568 93-100/1.0000 9 1 Manipulate selected atoms (add, hide, unhide, copy, translate). 9 2 Manipulate selected groups of atoms (define, add, hide, unhide, 9 3 copy, translate, rotate, expand, list). 9 3 Read atoms from an external file (PLOT3D format, filename is 9 4 prompted). Include selected atoms or complete set from the file. 9 4 Graphics information of the external file cannot be included. 9 4 List all or selected atoms (coordinates, radii, charges, visibility) 9 5 of the cluster/molecule. 9 5 Change the title of the cluster/molecule. 9 6 List last (up to 10) lines of graphic analysis output. 9 7 ________________________ Sec. 6.4.8.1. ____________________________ 337 __ Impose symmetry constraints on structure. The cluster/molecule is 9 8 checked for symmetry elements (rotation axes, mirror planes, 9 8 inversion) and completed by additional atoms if needed. 9 8 Display (list) cluster/molecule with given option parameters. 9 9 Display may be interrupted by pressing any key or L-click (press [C] 9 9 or L-click to continue, press [/] to continue in single atom mode, 9 9 press [R] or R-click to stop plotting). After a plot is finished 9 9 graphic analysis is possible (select [Q]). Move to main option menu 9 9 in text mode by [,] or R-click. 9 9 Redefine all atom radii (Warning: Large systems may require lots of 10 1 manual input). 10 1 Redefine radii of all atoms of the same element (nuclear charge). 10 2 Redefine radius of a selected atom. Atom number is obtained from 10 3 a listing of the cluster/molecule (analysis option) or with the 10 3 graphic analysis. 10 3 Rescale radii of all atoms of the cluster/molecule to obtain maximum 10 4 sphere packing. 10 4 Redefine charges of all atoms of the cluster/molecule. (Warning: Large 10 5 systems may require lots of manual input). 10 5 Redefine charge of a selected atom. Atom number is obtained from 10 6 a listing of the cluster/molecule (analysis option) or with the 10 6 graphic analysis.. 10 6 List last (up to 10) lines of graphic analysis output. 10 7 List table of element names and nuclear charges. 10 8 Display (list) lattice section with given option parameters. 10 9 Display may be interrupted by pressing any key or L-click (press [C] 10 9 or L-click to continue, press [/] to continue in single atom mode, 10 9 press [R] or R-click to stop plotting). After a plot is finished 10 9 graphic analysis is possible (select [Q]). Move to main option menu 10 9 in text mode by [,] or R-click. 10 9 Redefine all atom radii (Warning: Large systems may require lots of 11 1 manual input). 11 1 Rescale all atom radii by a common factor. 11 2 Redefine radii of all atoms of the same element (nuclear charge). 12 1 Rescale radii of all atoms of the same element (nuclear charge) by a 12 2 common factor. 12 2 Redefine radius of a selected atom. Atom number is obtained from 13 1 listing of the cluster/molecule (analysis option) or with the graphic 13 1 analysis. 13 1 Rescale radius of a selected atom by a factor. Atom number is 13 2 obtained from listing of the cluster/molecule (analysis option) or 13 2 with the graphic analysis. 13 2 List all atoms (visible and invisible) of the cluster/molecule. 14 1 Coinciding atoms will be marked. Warning: may be lots of output! 14 1 List only visible atoms of the cluster/molecule. Warning: may be 14 2 lots of output! 14 2 List only invisible atoms of the cluster/molecule. Warning: may be 14 3 lots of output! 14 3 Add atom to cluster/molecule (cartesian coordinates): 15 1 x, y, z, atom radius, nuclear charge required. 15 1 Hide atoms of the cluster/molecule (atom number prompted, hide has 15 2 to be confirmed,). Hidden atoms may be unhidden (option [U]). 15 2 __ 338 _________________ Sec. 6.4.8.1. ___________________________________ Translate selected atom (requires shift vector). Atom number is 15 3 obtained from listing of the cluster/molecule (analysis option) or 15 3 with the graphic analysis. 15 3 Copy selected atom (requires shift vector). Atom number is obtained 15 4 from listing of the cluster/molecule (analysis option) or with the 15 4 graphic analysis. 15 4 Make all previously hidden atoms visible. 15 5 Shift all atoms rigidly so that atom nc (or (x,y,z) ) becomes the new 15 6 coordinate origin. 15 6 Turn on/off the sequential flag. If flag is "on" translate/copy may be 15 7 repeated with identical parameters for iterative action. 15 7 Remove all hidden atoms from the cluster/molecule. ATTENTION: this 15 8 is final, no confirm prompt! 15 8 Add atom to cluster/molecule (internal coordinates): atom 15 9 numbers n0 (for distance), n1 (n1-n0 forms axis for theta), n3 (sets 15 9 rotation angle phi), distance, theta, phi, atom radius, nuclear charge 15 9 required. 15 9 Modify selected atom. Complete definition (x,y,z,rad,nuc) of the 15 10 existing atom will be overwritten with its visibility flag set to "T" 15 10 (visible). 15 10 Display (list) cluster/molecule with given option parameters. 15 11 Display may be interrupted by pressing any key or L-click (press [C] 15 11 or L-click to continue, press [/] to continue in single atom mode, 15 11 press [R] or R-click to stop plotting). After a plot is finished 15 11 graphic analysis is possible (select [Q]). Move to main option menu 15 11 in text mode by [,] or R-click. 15 11 Hide atom, [,] ignores hiding. 16 1 Translate/copy is repeated with identical parameters starting from 17 1 the atom modified/generated last. 17 1 Define group of atoms, add to or remove atoms from group. Atom 18 1 numbers are obtained with the text or graphic analysis option. 18 1 Hide group of atoms of the cluster (hide to be confirmed). Hidden 18 2 atoms may be unhidden (option [U]). 18 2 Translate all atoms of a group (requires shift vector). The group 18 3 definition remains valid with shifted atoms. 18 3 Copy all atoms of a group (requires shift vector). The original group 18 4 definition remains valid. 18 4 Rotate all atoms of a group (requires origin coordinates, rotation 18 5 axis, angle). The original group definition remains valid with rotated 18 5 atoms. 18 5 Rotate all atoms of a group and add rotated group to structure 18 6 (requires origin coordinates, rotation axis, angle). The original 18 6 group definition remains valid. 18 6 Expand/compress all atoms of a group (requires origin, stretching 18 7 factor q >1 for expansion, <1 for compression). The original group 18 7 definition remains valid with modified coordinates. 18 7 List all atoms of the present group. 18 8 Assign the same nuclear charge to all atoms of a group. 18 9 Turn on/off sequential flag. If flag is "on" translate/copy/rotate/ 18 10 expand/mirror may be repeated with identical parameters to allow 18 10 iterative action where the group definition refers to the group 18 10 modified or generated last. 18 10 ________________________ Sec. 6.4.8.1. ____________________________ 339 __ Save all atoms of a group to separate file (PLOT3D format). File name 18 11 is prompted. Saved atoms remain in cluster/molecule 18 11 Move all atoms of a group to separate file (PLOT3D format). File name 18 12 is prompted. Saved atoms will be hidden. 18 12 Expand/compress all atoms of a group and add expanded group to 18 13 structure (requires origin, stretching factor q >1 for expansion, 18 13 <1 for compression). The original group definition remains valid with 18 13 original coordinates. 18 13 Mirror all atoms of a group (requires origin and normal vector of the 18 14 mirror plane). The original group definition remains valid. 18 14 Mirror all atoms of a group and add mirrored group to structure 18 15 (requires origin and normal vector of mirror plane). The original 18 15 group definition remains valid with original coordinates. 18 15 Unhide group of atoms of the cluster (to be confirmed). 18 16 Display (list) cluster/molecule with given option parameters. 18 17 Display may be interrupted by pressing any key or L-click (press [C] 18 17 or L-click to continue, press [/] to continue in single atom mode, 18 17 press [R] or R-click to stop plotting). After a plot is finished 18 17 graphic analysis is possible (select [Q]). Move to main option menu 18 17 in text mode by [,] or R-click. 18 17 Define group from scratch. Atom numbers are obtained with the text 19 1 or graphic analysis. 19 1 Add atom(s) to existing group definition. Atom numbers are obtained 19 2 with the text or graphic analysis. 19 2 Remove atom(s) from existing group definition. Atom numbers are 19 3 obtained with the text or graphic analysis. 19 3 Confirm to hide all atoms of the group. Group definition will not be 20 1 lost. 20 1 Confirm to unhide all atoms of the group. 20 2 Operation (translate/copy/rotate/expand/mirror) is repeated with 21 1 identical parameters starting from the group modified/generated last. 21 1 Increase polar view angle theta by dtheta and replot. 22 1 The polar view angle theta is taken with respect to the surface 22 1 normal or z axis. 22 1 Decrease polar view angle theta by dtheta and replot. 22 2 The polar view angle theta is taken with respect to the surface 22 2 normal or z axis. 22 2 Decrease azimuthal view angle phi by dphi and replot. 22 3 The azimuthal view angle phi is taken with respect to the surface 22 3 normal or z axis. 22 3 Increase azimuthal view angle phi by dphi and replot. 22 4 The azimuthal view angle phi is taken with respect to the surface 22 4 normal or z axis. 22 4 Rotate plot on screen to the right (by drot) and replot. 22 5 Rotate plot on screen to the left (by drot) and replot. 22 6 Increase perspective distance persp (multiply by dpersp) and replot. 22 7 The distance of the viewer is set at persp * section diameter. 22 7 NOTE that for perspective values 0 < persp < 1 the viewing geometry 22 7 may be strongly distorted and some atoms may not show. 22 7 Decrease perspective distance persp (divide by dpersp) and replot. 22 8 The distance of the viewer is set at persp * section diameter. 22 8 NOTE that for perspective values 0 < persp < 1 the viewing geometry 22 8 may be strongly distorted and some atoms may not show. 22 8 __ 340 _________________ Sec. 6.4.8.1. ___________________________________ Decrease plot magnification magnf (divide by dmagnf) and replot. 22 9 Increase plot magnification magnf (multiply by dmagnf) and replot. 22 10 Refresh plot with present parameter values. 22 11 Useful if plot details are obscured by analysis lines or plot was 22 11 finished incomplete. 22 11 Graphic analysis with mouse/keyboard pointer (graphics only). 22 12 The pointer may be moved with cursor keys (up, down, left,right) by 22 12 incremental steps ([+] increases, [-] decreases step size). 22 12 Press [enter] or L-click to select, press [X] or R-click to evaluate, 22 12 press [M] or R-click again to return to analysis menu, press [,] to 22 12 move to main graphics menu. 22 12 Load new lattice section from file stack (stack position prompted). 22 13 All present structure data will be saved on file 'balsac.svl'. 22 13 Save present lattice section on file stack. 22 14 The stack save position may be changed inside the stack option. 22 14 Transfer lattice section to CLUSTER part and move to CLUSTER session. 22 15 All present structure data will be saved on file 'balsac.svl'. 22 15 Access options of main menu (one-line form) in graphics mode. 22 16 X.11, UNIX ONLY: Export present plot image for later retrieval. 22 17 Only one picture may be exported. If the graphics window is closed 22 17 the exported picture is lost. 22 17 X.11, UNIX ONLY: Import a plot image previously exported inside the 22 18 same graphics window and overwrite present plot. The imported picture 22 18 may yield incorrect graphic analysis results depending on geometry 22 18 changes between export and import. 22 18 Add complete set of atoms from the add file without prompting. 23 1 Add selected atoms from add file. Each atom is prompted before adding. 23 2 Accept atom to be added from external file, [,] closes file. 24 1 Ignore atom for adding from external file, [,] closes file. 24 2 Store incomplete LATTICE session (one layer only) on file. Select [,] 25 1 to skip atom output. 25 1 Define viewing direction by direction vector (x,y,z, absolute 26 1 coordinates for CLUSTER session) or by Miller indices (h,k,l for 26 1 LATTICE session. Directions may be obtained in the graphic analysis. 26 1 Define viewing direction theta and increment dtheta (for direct plot 26 2 key input). 26 2 Define view direction phi and increment dphi (for direct plot key 26 3 input). 26 3 Define rotation angle rot to rotate plot on screen with increment drot 26 4 (for direct plot key input). 26 4 Define magnification factor mag to magnify plot on screen with 26 5 multiplicative increment dmag (for direct plot key input). 26 5 Define central perspective factor persp (=0 for parallel projection) 26 6 with multiplicative increment dpersp (for direct plot key input). 26 6 NOTE that for perspective values 0 < persp < 1 the viewing geometry 26 6 may be strongly distorted. 26 6 Redefine viewing focus. New focus will coincide with selected atom 26 7 center NC if NC>0 (coordinates X,Y,Z are ignored); NC=0 uses default 26 7 focus (center of structure, coordinates X,Y,Z are ignored); NC=-1 26 7 uses explicit focus coordinates X,Y,Z ( NOTE that for perspective 26 7 values 0 < persp < 1 the viewing geometry may be strongly distorted. 26 7 Combine prompts for view options [T], [P], [R], [M], [Q]. 26 8 List last (up to 10) lines of graphic analysis output. 26 9 ________________________ Sec. 6.4.8.1. ____________________________ 341 __ Shift complete plot by (nx, ny) pixels. Shifting may be required also 26 10 after a focus change. 26 10 Workbench to adjust all base, paint colors including tones, the color 26 11 palette, and shading angles interactively. Move graphics (mouse) 26 11 pointer with [up,down,left,right,+,-] or moving the mouse. Select new 26 11 values inside respective boxes with [enter] or L-click. Quit workbench 26 11 with [,] or R-click. 26 11 Display (list) cluster/molecule or lattice section with given option 26 12 parameters. Display may be interrupted by pressing any key or L-click 26 12 (press [C] or L-click to continue, press [/] to continue in single 26 12 atom mode, press [R] or R-click to stop plotting). After a plot is 26 12 finished graphic analysis is possible (select [Q]). Move to main 26 12 option menu in text mode by [,] or R-click. 26 12 Open output file and save CLUSTER structure/graphics data on 27 1 output file. Output format (PLOT3D, LATUSE, SCHAKAL, 27 1 (color) PostScript format) is prompted. 27 1 Save CLUSTER structure/graphics data on PLOT3D format quicksave 27 2 file 'balsac.plt'. 27 2 Turn on/off init option flag. A flag value "on" saves initialization 27 3 parameters (color settings, etc.) on structure file. This is important 27 3 if specific color assignment have been made in a plot. 27 3 Turn on/off logo flag. A flag value "on" adds a logo "BALSAC plot" to 27 4 every PostScript file output. 27 4 Store CLUSTER structure/graphics data on output file using PLOT3D 28 1 file format. 28 1 Store CLUSTER structure/graphics data on output file using SCHAKAL 28 2 file format. 28 2 Store CLUSTER structure/graphics data on output file using 28 3 gray scale PostScript file format. Number of tones may be prompted. 28 3 Store CLUSTER structure/graphics data on output file using 28 4 color PostScript file format. Number of tones may be prompted. 28 4 Store CLUSTER structure/graphics data on output file using LATUSE 28 5 file format. The cluster/molecule is used as an elementary cell 28 5 definition of a fictitious crystal with orthorhombic periodicity. 28 5 Turn on/off init option flag. A flag value "on" saves initialization 28 6 parameters (color settings, etc.) on structure file. This is important 28 6 if specific color assignment have been made in a plot. 28 6 Turn on/off logo flag. A flag value "on" adds a logo "BALSAC plot" to 28 7 every PostScript file output. 28 7 Reset display mode (layer-by-layer, atom-by-atom, elementary 29 1 cells). This option is useful only for LATTICE sessions. For CLUSTER 29 1 sessions only atom-by-atom display is available. 29 1 Define atom design (points, circles, balls, (differently) shaded 29 2 balls, or list by coordinates). 29 2 Set/unset stereo duplication. With duplication set to "on" two 29 3 slightly different pictures show on the screen reflecting the views 29 3 of your two eyes yielding a 3-dimensional impression with optical 29 3 stereo glasses or by cross-eyed viewing. Adjustments are possible 29 3 with the parameter option. 29 3 Set background color. Absolute color code values are required, see 29 4 also color table available with the graphics option. 29 4 __ 342 _________________ Sec. 6.4.8.1. ___________________________________ Set start value of the color palette used for the first atom type 29 5 (element) to be plotted. Subsequent atom types use colors according to 29 5 the palette sequence. A palette value = 0 uses one color only 29 5 (b/w mode). 29 5 Display color table for color inspection/selection. 29 6 Define links between atoms (lines, sticks of different color) using 29 7 distance range and atom charge constraints. 29 7 Define plot layout: include title line, basis vectors, wire frame 29 8 about section/cluster, paint/label atoms). 29 8 Workbench to adjust all base, paint colors including tones, the color 29 9 palette, and shading angles interactively. Move graphics (mouse) 29 9 pointer with [up,down,left,right,+,-] or moving the mouse. Select new 29 9 values inside respective boxes with [enter] or L-click. Quit workbench 29 9 with [,] or R-click. 29 9 Display (list) cluster/molecule or lattice section with given option 29 10 parameters. Display may be interrupted by pressing any key or L-click 29 10 (press [C] or L-click to continue, press [/] to continue in single 29 10 atom mode, press [R] or R-click to stop plotting). After a plot is 29 10 finished graphic analysis is possible (select [Q]). Move to main 29 10 option menu in text mode by [,] or R-click. 29 10 Get distances between 2 atoms: L-click r1,r2, R-click=result. 30 1 Get angles,distances from 3 atoms: L-click r0,r1,r2, R-click=result. 30 2 Define a group of atoms: L-click r1,r2,.., R-click=finish group def. 30 3 Add atoms to a group: L-click r1,r2,.., R-click=finish group add. 30 4 Remove atoms from a group: L-click r1,r2,.., R-click=finish remove. 30 5 Hide atoms in plots: L-click r1,r2,..; atoms can be unhidden later. 30 6 Get coordinate average of atoms: L-click r1,r2,.., R-click=result. 30 7 Get normal vector of 3 atom plane: L-click r0,r1,r2, R-click=result. 30 8 Connect atoms by links: L-click r1,r2, R-click=def. q1,q2,|r1-r2|. 30 9 Atoms at r1,r2 of charge q1,q2 and distance |r1-r2| will be connected 30 9 by links (lines, sticks) in subsequent plots. 30 9 Get environment shells (distances/membrs): L-click r1, R-click=result. 30 10 Switch line show/save flag: "." shows if flag is set. Then atoms at 30 11 r1,r2,... used in the analyses are connected by white lines. The lines 30 11 will show as arrows in PostScript output. 30 11 Assign colors to atoms/background: L-click r1, L-click inside palette. 30 12 Select from left color palette to set atom (element) color, from right 30 12 color palette to set background. 30 12 Translate atoms of a group by r2-r1: L-click r1,r2, R-click=translate. 30 13 Copy atoms of a group shifted by r2-r1: L-click r1,r2, R-click=copy. 30 14 Assign colors to links: L-click r1,r2, L-click inside palette. 30 15 Select (L-click) from right color palette to set link color. 30 15 Draw additional 2-dim. lines (arrows): L-click x1,x2, R-click=result. 30 16 Additional lines will show as (black) arrows in PostScript output. 30 16 Unhide hidden atoms: L-click r1,r2,.. if hidden. 30 17 Erase last 2-dim. line. Line will not show in future plots. 30 18 Shift atom at r1 closest to atom at r2: L-click r1,r2, R-click=shift. 30 19 The nearest approach is defined by touching spheres. 30 19 Set view focus at atom: L-click r1, R-click=define; refreshes plot. 30 20 New focus will coincide with selected atom center r1. NOTE that for 30 20 perspective values 0 < q < 1 the viewing geometry may be distorted. 30 20 Draw cartesian basis vectors at atom: L-click r1, R-click=draw basis. 30 21 ________________________ Sec. 6.4.8.1. ____________________________ 343 __ Shift plot by x1->x2: L-click x1,x2, R-click=define; refreshes plot. 30 22 Global shift is defined by coordinates (nx=x2-x1,ny=y2-y1) given in 30 22 screen pixels. Shifting may become necessary after focus reset. 30 22 Recenter and focus plot (foc=0, nx,ny=0,0): option refreshes plot. 30 23 This resets focusing and shifting back to default. 30 23 Replot without parameters changed and return to main option menu. 30 24 Useful if analysis has obscured plot details or analysis results 30 24 show only after replot. 30 24 Visible atom reduction. Reduction may need additional atom unhiding. 30 25 In progress: use with care! 30 25 Directed plane distance: L-click r0,r1,r2/r3, R-click=result. 30 26 Plane 1 is defined by r0,r1,r2 and (parallel) plane 2 goes 30 26 through r3. Value is positive if r3 above plane 1 else negative where 30 26 "above" is defined by (r3-r0)((r1-r0)x(r2-r0)) > 0. 30 26 List all basic lattice parameters (periodicity, basis, packing, etc.). 31 1 List all lattice parameters after Miller net plane adaptation 31 2 (transformation). 31 2 List relaxation/reconstruction parameters of all layers affected. 31 3 List complete set of lattice structure data: basic lattice parameters, 31 4 net plane adapted lattice parameters, relaxation/reconstruction 31 4 parameters. This option combines options [B,M,R]. 31 4 Analyze triples of atoms (distances, angles, neighbor shells, 31 5 etc.). Similar to graphic analysis options. 31 5 Set maximum distance where two atoms are considered to coincide. 31 6 Useful to identify coinciding atoms generated by loading, copying, or 31 6 symmetry operations. 31 6 Display (list) lattice section with given option parameters. 31 7 Display may be interrupted by pressing any key or L-click (press [C] 31 7 or L-click to continue, press [/] to continue in single atom mode, 31 7 press [R] or R-click to stop plotting). After a plot is finished 31 7 graphic analysis is possible (select [Q]). Move to main option menu 31 7 in text mode by [,] or R-click. 31 7 Build links connecting atoms from scratch. Number of links, 32 1 link charges and distance ranges required. 32 1 Add a link to existing links. Charges and distance range required. 32 2 Erase link from existing links. 32 3 Define colors for all links. Obtain color indices from table 32 4 (option [T]). 32 4 Define stick radii D for all links (D > 0 for sticks of finite 32 5 thickness, D = 0 for lines only). 32 5 Display color table for color inspection/selection. 32 6 List last (up to 10) lines of graphic analysis output. 32 7 Display (list) cluster/molecule or lattice section with given option 32 8 parameters. Display may be interrupted by pressing any key or L-click 32 8 (press [C] or L-click to continue, press [/] to continue in single 32 8 atom mode, press [R] or R-click to stop plotting). After a plot is 32 8 finished graphic analysis is possible (select [Q]). Move to main 32 8 option menu in text mode by [,] or R-click. 32 8 Turn on/off a title line to be included in each plot. 33 1 LATTICE ONLY: Turn on/off lattice basis vectors to be sketched in each 33 2 plot. 33 2 Turn on/off a wire frame (along x, y z directions) to be included in 33 3 each plot. 33 3 __ 344 _________________ Sec. 6.4.8.1. ___________________________________ LATTICE ONLY: Color switch to discriminate elements or layers 33 4 (net planes) by different colors. The present setting (elmnt/layer) 33 4 is shown in parenthesis. 33 4 Switch to label atoms by element labels or atom numbers. The present 33 5 setting (none/labl/nmbr) is shown in parenthesis. 33 5 Display (list) cluster/molecule or lattice section with given option 33 6 parameters. Display may be interrupted by pressing any key or L-click 33 6 (press [C] or L-click to continue, press [/] to continue in single 33 6 atom mode, press [R] or R-click to stop plotting). After a plot is 33 6 finished graphic analysis is possible (select [Q]). Move to main 33 6 option menu in text mode by [,] or R-click. 33 6 Confirm reset of focus (structure center) and plot shift (nx,ny= 0,0). 34 1 Save CLUSTER structure data on file 'balsac.plt' and quit BALSAC. 35 1 Safety backup on file 'balsac.svc' will occur if backup switch reads 35 1 "on". Select [,] to return to CLUSTER option menu. 35 1 Quit BALSAC. Safety backup on file 'balsac.svc' will occur if backup 35 2 switch reads "on". Select [,] to return to CLUSTER option menu. 35 2 Turn on/off automatic safety file backup. If "on" all structure/ 35 3 graphics data of the present LATTICE or CLUSTER session (including 35 3 initialization data) will be saved on files 'balsac.svl' and 35 3 'balsac.svc' respectively if the session is closed by finish or 35 3 transfer. The backup files can be used as input in subsequent BALSAC 35 3 sessions. 35 3 Save all LATTICE structure data on file 'balsac.trc' and start a 36 1 CLUSTER session using 'balsac.trc' for input. All present structure 36 1 data will also be saved on file 'balsac.svl'. 36 1 Move to a CLUSTER session. All present structure data will be saved 36 2 on file 'balsac.svl'. 36 2 Start CLUSTER session from scratch without structure/graphics data 37 1 transfer. All present structure data will be saved on file 37 1 'balsac.svl'. 37 1 Save only atoms of the last layer displayed/listed on file 37 2 'balsac.trp' and start a CLUSTER session using 'balsac.trp' for input. 37 2 All present structure/graphics data will be saved on file 37 2 'balsac.svl'. 37 2 Define window origin (OX,OY) window size (LWX x LWY pixels) and Y/X 38 1 pixel size ratio. Defaults are Y/X = 1.00000 (VGA), = 0.72860 (EGA), 38 1 = 0.41545 (CGA). 38 1 Enter paint/color definition option (all basic color definitions). 38 2 Enter stereo plot option (stereo distortion, colors). 38 3 Load parameter initialization file (file name prompted, default name 38 4 is 'balsac2.ini'). 38 4 Save all basic parameters on initialization file (file name prompted). 38 5 Use default name 'balsac2.ini' only if you want to overwrite the 38 5 default and you know what you are doing!). 38 5 Turn on/off option menu input with mouse. If turned off, press [x] to 38 6 select option (DOS and Unix). If turned on (DOS), point at [x] and 38 6 L-click or press [x]. If turned on (Unix), select from menu window, 38 6 no keyboard input available. 38 6 ________________________ Sec. 6.4.8.1. ____________________________ 345 __ Display (list) cluster/molecule or lattice section with given option 38 7 parameters. Display may be interrupted by pressing any key or L-click 38 7 (press [C] or L-click to continue, press [/] to continue in single 38 7 atom mode, press [R] or R-click to stop plotting). After a plot is 38 7 finished graphic analysis is possible (select [Q]). Move to main 38 7 option menu in text mode by [,] or R-click. 38 7 Turn on/off help option. If turned on get help on option [x] by 38 8 selecting [?]+[x] (DOS and Unix) or L-click bottom entry + L-click 38 8 option entry in menu window (Unix). Help is shown in the text window. 38 8 DOS ONLY: Select adapter mode (interrupt no. INT, no. of colors COLMX, 38 9 character pixel size CHX, CHY). DOS version only. Do not modify these 38 9 parameters without consulting the manual. False mode definitions may 38 9 lead to unpredictable results!! Standard values of INT,COLMX,CHX,CHY 38 9 are: 14, 16, 8, 8 (CGA 640x200); 15, 4, 8, 14 (EGA mono 640x350); 38 9 18, 16, 8, 16 (VGA 640x480); 16, 16, 8, 14 (EGA color 640x350). 38 9 Turn on/off switch for immediate menu. If "on" the graphics option 38 10 menu shows right after completion of a plot. For "off" the graphics 38 10 option menu shows only after pressing a key or L-click. This allows 38 10 to take pictures of a completed plot without the (possibly perturbing) 38 10 menu. 38 10 Turn on/off an element color table shown with graphics (at top right 38 11 of the screen). 38 11 Turn on/off teach option. If turned on all option keys have to be 38 12 selected twice where after the first selection a help text shows. This 38 12 is slow but useful for learning new BALSAC features. 38 12 Turn on/off automatic safety file backup. If "on" all structure/ 38 13 graphics data of the present LATTICE or CLUSTER session (including 38 13 initialization data) will be saved on files 'balsac.svl' and 38 13 'balsac.svc' respectively if the session is closed by finish or 38 13 transfer. The backup files can be used as input in subsequent BALSAC 38 13 sessions. 38 13 UNIX ONLY: Turn on/off mouse menu sort. If "on" all entries of a given 38 14 mouse menu will be sorted according to the alphabetic order of their 38 14 key codes. 38 14 Turn on/off menu index display. If "on" the internal menu indices will 38 15 be shown at the bottom of most option menus, in help prompts and at 38 15 the bottom of mouse option menus. Indices are important only for 38 15 changing help menu files or for testing purposes. 38 15 Workbench to adjust all base, paint colors including tones, the color 38 16 palette, and shading angles interactively. Move graphics (mouse) 38 16 pointer with [up,down,left,right,+,-] or moving the mouse. Select new 38 16 values inside respective boxes with [enter] or L-click. Quit workbench 38 16 with [,] or R-click. 38 16 Set basic color definitions (RGB definitions, range, normal/enhanced 39 1 color intensities). 39 1 Define shading (shading weights, light direction). 39 2 Redefine colors and color tables (palettes). 39 3 Turn on/off gray flag. If flag is "on" colors are replaced by gray 39 4 tones (RGB summation: Gray = 0.30 * R + 0.59 * G + 0.11 * B). 39 4 Display color table for color inspection/selection. 39 5 X.11 UNIX ONLY: Redefine font name to be used for graphics text. Names 39 6 are 39 (no 39 consistent with the X.11 standard, e.g. "8x13","8x13bold","9x15" 6 quotes!!). 6 __ 346 _________________ Sec. 6.4.8.1. ___________________________________ Display (list) cluster/molecule or lattice section with given option 39 7 parameters. Display may be interrupted by pressing any key or L-click 39 7 (press [C] or L-click to continue, press [/] to continue in single 39 7 atom mode, press [R] or R-click to stop plotting). After a plot is 39 7 finished graphic analysis is possible (select [Q]). Move to main 39 7 option menu in text mode by [,] or R-click. 39 7 Workbench to adjust all base, paint colors including tones, the color 39 8 palette, and shading angles interactively. Move graphics (mouse) 39 8 pointer with [up,down,left,right,+,-] or moving the mouse. Select new 39 8 values inside respective boxes with [enter] or L-click. Quit workbench 39 8 with [,] or R-click. 39 8 Redefine all basic colors (RGB values, bottom, basic, enhanced, top 40 1 intensity). Number of colors is prompted. 40 1 Modify selected basic color (RGB values, bottom, basic, enhanced, 40 2 top intensity). Color number is prompted. 40 2 Add a new basic color (RGB values, bottom, basic, enhanced, 40 3 top intensity). 40 3 Delete an existing basic color. Color number is prompted. Subsequent 40 4 colors will be renumbered. 40 4 Redefine number of tones per basic color. 40 5 Redefine maximum integer N used in RGB color settings. Global 40 6 rescaling of all RGB definitions will result. Note that values are 40 6 limited to 0 < N < 65536 (Unix) or 0 < N < 64 (DOS). Numbers outside 40 6 this range will lead to unpredictable results! 40 6 List part of or all basic colors by their RGB values, bottom, basic, 40 7 enhanced, and top intensities. 40 7 Display color table for color inspection/selection. 40 8 Display (list) cluster/molecule or lattice section with given option 40 9 parameters. Display may be interrupted by pressing any key or L-click 40 9 (press [C] or L-click to continue, press [/] to continue in single 40 9 atom mode, press [R] or R-click to stop plotting). After a plot is 40 9 finished graphic analysis is possible (select [Q]). Move to main 40 9 option menu in text mode by [,] or R-click. 40 9 Define shading weights (diffuse background qdiff, 41 1 Lambert shading qlamb, specular reflection qspec) 41 1 where 0 < qdiff+qlamb+qspec <= 1.0 . 41 1 Set angles theta, phi of incident light. Angles are defined with 41 2 respect to screen normal with phi = 0 pointing upwards and phi 41 2 counting clockwise. 41 2 Display color table for color inspection/selection. 41 3 Reset default color indices for black, white, and link colors. 42 1 Define new color code index table (palette of n colors I(i), i=1,n). 42 2 Display color table for color inspection/selection. 42 3 Set distortion and picture shift for color stereo viewing. Distortion 43 1 pu ( 0 < pu < 1 ) reflects the eye distance to object size ratio. The 43 1 picture shift deye (in pixels) gives the separation between the two 43 1 stereo pictures where deye > 0 (left picture for left eye) requires 43 1 viewing glasses and deye < 0 (separation = |deye|, left picture for 43 1 right eye) requires cross-eyed viewing. 43 1 Reset default color indices for stereo colors red, blue, white used 43 2 in red/blue stereo viewing. 43 2 Open output file and save LATTICE structure/graphics data on 44 1 output file. Output format ((extended) LATUSE, SARCH, PLOT3D, SCHAKAL, 44 1 (color) PostScript format) is prompted. 44 1 ________________________ Sec. 6.4.8.1. ____________________________ 347 __ Save LATTICE structure/graphics data on LATUSE format quicksave 44 2 file 'balsac.lat'. 44 2 Turn on/off init option flag. A flag value "on" saves initialization 44 3 parameters (color settings, etc.) on structure file. This is important 44 3 if specific color assignment have been made in a plot. 44 3 Turn on/off logo flag. A flag value "on" adds a logo "BALSAC plot" to 44 4 every PostScript file output. 44 4 Store LATTICE structure/graphics data on output file using PLOT3D 45 1 file format. Lattice section is used for definition of a fictitious 45 1 cluster allowing to manipulate single atoms and groups. 45 1 Store LATTICE structure/graphics data on output file using SCHAKAL 45 2 file format. 45 2 Store LATTICE structure/graphics data on output file using 45 3 gray scale PostScript file format. Number of tones may be prompted. 45 3 Store LATTICE structure/graphics data on output file using 45 4 color PostScript file format. Number of tones may be prompted. 45 4 Store LATTICE structure/graphics data on output file using LATUSE 45 5 file format. 45 5 Store LATTICE structure/graphics data on output file using 45 6 extended LATUSE file format (include explicit atom coordinates). 45 6 Store LATTICE structure/graphics data on output file using SARCH 45 7 file format. 45 7 Store a Wigner-Seitz cell graph on a gray scale PostScript file. 45 8 Store a Brillouin zone graph on a gray scale PostScript file. 45 9 Turn on/off init option flag. A flag value "on" saves initialization 45 10 parameters (color settings, etc.) on structure file. This is important 45 10 if specific color assignment have been made in a plot. 45 10 Turn on/off logo flag. A flag value "on" adds a logo "BALSAC plot" to 45 11 every PostScript file output. 45 11 Select full analysis of cluster/molecule. List complete set of 46 1 structure parameters. 46 1 Analyze triples of atoms (distances, angles, neighbor shells, etc.). 46 2 Similar to graphic analysis options. 46 2 Set maximum distance where two atoms are considered to coincide. 46 3 Useful to identify coinciding atoms generated by loading, copying, or 46 3 symmetry operations. 46 3 Display (list) cluster/molecule with given option parameters. 46 4 Display may be interrupted by pressing any key or L-click (press [C] 46 4 or L-click to continue, press [/] to continue in single atom mode, 46 4 press [R] or R-click to stop plotting). After a plot is finished 46 4 graphic analysis is possible (select [Q]). Move to main option menu 46 4 in text mode by [,] or R-click. 46 4 Confirm listing of all lattice basis vectors (all atoms in elementary 47 1 cell). Warning: may be lots of output! 47 1 Confirm listing of all net plane transformed lattice basis vectors 48 1 (all atoms in net plane adapted elementary cell). Warning: may be 48 1 lots of output! 48 1 Discard first atom of the pair of coinciding atoms. 49 1 WARNING: discarding cannot be undone. 49 1 Discard second atom of the pair of coinciding atoms. 49 2 WARNING: discarding cannot be undone. 49 2 Go to auto discard second mode: of each pair of coinciding atoms the 49 3 atom of higher number will be discarded without prompt. 49 3 WARNING: discarding cannot be undone. 49 3 __ 348 _________________ Sec. 6.4.8.1. ___________________________________ Select simple cubic lattice (sc, predefined internally). 50 1 Select face centered cubic lattice (fcc, predefined internally). 50 2 Miller indices will refer to sc reciprocal lattice. Examples are 50 2 (lattice constants in Angstroms) : 50 2 Ag(47,a=4.09) Al(13,a=4.05) Ar(18,a=5.26) Au(79,a=4.08) Ca(20,a=5.58) 50 2 Ce(58,a=5.16) Co(27,a=3.55) Cu(29,a=3.61) Ir(77,a=3.84) Kr(36,a=5.72) 50 2 La(57,a=5.30) Ne(10,a=4.43) Ni(28,a=3.52) Pb(82,a=4.95) Pd(46,a=3.89) 50 2 Pr(59,a=5.16) Pt(78,a=3.92) Pu(94,a=4.64) Rh(45,a=3.80) Sc(21,a=4.54) 50 2 Sr(38,a=6.08) Th(90,a=5.08) Xe(54,a=6.20) Yb(70,a=5.49) 50 2 Select body centered cubic lattice (bcc, predefined internally). 50 3 Miller indices will refer to sc reciprocal lattice. Examples are 50 3 (lattice constants in Angstroms) : 50 3 Ba(56,a=5.02) Cr(24,a=2.88) Cs(55,a=6.05) Fe(26,a=2.87) K (19,a=5.23) 50 3 Li( 3,a=3.49) Mo(42,a=3.15) Na(11,a=4.23) Nb(41,a=3.30) Rb(37,a=5.59) 50 3 Ta(73,a=3.31) Tl(81,a=3.88) V (23,a=3.02) W (74,a=3.16) Zr(40,a=3.61) 50 3 Select hexagonal closed packed lattice (hcp, predefined internally). 50 4 Miller indices will refer to Bravais reciprocal lattice. Examples are 50 4 (lattice constants in Angstroms) : 50 4 Be( 4,a/c=2.29/3.58) Cd(48,a/c=2.98/5.62) Ce(58,a/c=3.65/5.96) 50 4 Co(27,a/c=2.51/4.07) Dy(66,a/c=3.59/5.65) Er(68,a/c=3.56/5.59) 50 4 Gd(64,a/c=3.64/5.78) He( 2,a/c=3.57/5.83) Hf(72,a/c=3.20/5.06) 50 4 Ho(67,a/c=3.58/5.62) La(57,a/c=3.75/6.07) Lu(71,a/c=3.50/5.55) 50 4 Mg(12,a/c=3.21/5.21) Nd(60,a/c=3.66/5.90) Os(76,a/c=2.74/4.32) 50 4 Pr(59,a/c=3.67/5.92) Re(75,a/c=2.76/4.46) Ru(44,a/c=2.70/4.28) 50 4 Sc(21,a/c=3.31/5.27) Tb(65,a/c=3.60/5.69) Ti(22,a/c=2.95/4.69) 50 4 Tl(81,a/c=3.46/5.53) Tm(69,a/c=3.54/5.55) Y (39,a/c=3.65/5.73) 50 4 Zn(30,a/c=2.66/4.95) Zr(40,a/c=3.23/5.15) 50 4 Select diamond lattice (non-primitive fcc, predefined internally). 50 5 Miller indices will refer to sc reciprocal lattice. Examples are 50 5 (lattice constants in Angstroms) : 50 5 C ( 6,a=3.57) Ge(32,a=5.66) Si(14,a=5.43) Sn(50,a=6.49) 50 5 Select NaCl lattice (non-primitive fcc, predefined internally). 50 6 Miller indices will refer to sc reciprocal lattice. 50 6 Select CsCl lattice (non-primitive sc, predefined internally). 50 7 Select cubic Zincblende lattice (non-primitive fcc, predefined 50 8 internally). Miller indices will refer to sc reciprocal lattice. 50 8 Select graphite lattice (non-primitive hexagonal, predefined 50 9 internally). Miller indices will refer to Bravais reciprocal lattice. 50 9 Free lattice definition. Lattice vectors, lattice basis vectors, and 50 10 symmetries prompted interactively. Miller indices will refer to the 50 10 Bravais reciprocal lattice. 50 10 Select face centered cubic lattice (fcc, predefined internally). 50 11 Miller indices will refer to Bravais reciprocal lattice. Examples are 50 11 (lattice constants in Angstroms) : 50 11 Ag(47,a=4.09) Al(13,a=4.05) Ar(18,a=5.26) Au(79,a=4.08) Ca(20,a=5.58) 50 11 Ce(58,a=5.16) Co(27,a=3.55) Cu(29,a=3.61) Ir(77,a=3.84) Kr(36,a=5.72) 50 11 La(57,a=5.30) Ne(10,a=4.43) Ni(28,a=3.52) Pb(82,a=4.95) Pd(46,a=3.89) 50 11 Pr(59,a=5.16) Pt(78,a=3.92) Pu(94,a=4.64) Rh(45,a=3.80) Sc(21,a=4.54) 50 11 Sr(38,a=6.08) Th(90,a=5.08) Xe(54,a=6.20) Yb(70,a=5.49) 50 11 ________________________ Sec. 6.4.8.1. ____________________________ 349 __ Select body centered cubic lattice (bcc, predefined internally). 50 12 Miller indices will refer to Bravais reciprocal lattice. Examples are 50 12 (lattice constants in Angstroms) : 50 12 Ba(56,a=5.02) Cr(24,a=2.88) Cs(55,a=6.05) Fe(26,a=2.87) K (19,a=5.23) 50 12 Li( 3,a=3.49) Mo(42,a=3.15) Na(11,a=4.23) Nb(41,a=3.30) Rb(37,a=5.59) 50 12 Ta(73,a=3.31) Tl(81,a=3.88) V (23,a=3.02) W (74,a=3.16) Zr(40,a=3.61) 50 12 Select hexagonal closed packed lattice (hcp, predefined internally). 50 13 Miller indices use 4-index notation. Examples are (lattice constants 50 13 in Angstroms) : 50 13 Be( 4,a/c=2.29/3.58) Cd(48,a/c=2.98/5.62) Ce(58,a/c=3.65/5.96) 50 13 Co(27,a/c=2.51/4.07) Dy(66,a/c=3.59/5.65) Er(68,a/c=3.56/5.59) 50 13 Gd(64,a/c=3.64/5.78) He( 2,a/c=3.57/5.83) Hf(72,a/c=3.20/5.06) 50 13 Ho(67,a/c=3.58/5.62) La(57,a/c=3.75/6.07) Lu(71,a/c=3.50/5.55) 50 13 Mg(12,a/c=3.21/5.21) Nd(60,a/c=3.66/5.90) Os(76,a/c=2.74/4.32) 50 13 Pr(59,a/c=3.67/5.92) Re(75,a/c=2.76/4.46) Ru(44,a/c=2.70/4.28) 50 13 Sc(21,a/c=3.31/5.27) Tb(65,a/c=3.60/5.69) Ti(22,a/c=2.95/4.69) 50 13 Tl(81,a/c=3.46/5.53) Tm(69,a/c=3.54/5.55) Y (39,a/c=3.65/5.73) 50 13 Zn(30,a/c=2.66/4.95) Zr(40,a/c=3.23/5.15) 50 13 Select diamond lattice (non-primitive fcc, predefined internally). 50 14 Miller indices will refer to Bravais reciprocal lattice. Examples are 50 14 (lattice constants in Angstroms) : 50 14 C ( 6,a=3.57) Ge(32,a=5.66) Si(14,a=5.43) Sn(50,a=6.49) 50 14 Select NaCl lattice (non-primitive fcc, predefined internally). 50 15 Miller indices will refer to Bravais reciprocal lattice. 50 15 Select cubic Zincblende lattice (non-primitive fcc, predefined 50 16 internally). Miller indices will refer to Bravais reciprocal lattice. 50 16 Select graphite lattice (non-primitive hexagonal, predefined 50 17 internally). Miller indices use 4-index notation. 50 17 Free lattice definition. Lattice vectors, lattice basis vectors, and 50 18 symmetries prompted interactively. Miller indices use 4-index 50 18 notation. 50 18 Define lattice constant used to scale the lattice globally. 50 19 Define title for lattice structure. 50 20 Update free lattice (lattice vectors, basis vectors, symmetries). 50 21 Select from 14 Bravais lattices (predefined internally). 50 22 Display (list) lattice section with given option parameters. 50 23 Display may be interrupted by pressing any key or L-click (press [C] 50 23 or L-click to continue, press [/] to continue in single atom mode, 50 23 press [R] or R-click to stop plotting). After a plot is finished 50 23 graphic analysis is possible (select [Q]). Move to main option menu 50 23 in text mode by [,] or R-click. 50 23 Save LATTICE structure data on file 'balsac.lat' and quit BALSAC. 51 1 Safety backup on file 'balsac.svl' will occur if backup switch reads 51 1 "on". Select [,] to return to LATTICE option menu. 51 1 Quit BALSAC. Safety backup on file 'balsac.svl' will occur if backup 51 2 switch reads "on". Select [,] to return to LATTICE option menu. 51 2 Turn on/off automatic safety file backup. If "on" all structure/ 51 3 graphics data of the present LATTICE or CLUSTER session (including 51 3 initialization data) will be saved on files 'balsac.svl' and 51 3 'balsac.svc' respectively if the session is closed by finish or 51 3 transfer. The backup files can be used as input in subsequent BALSAC 51 3 sessions. 51 3 __ 350 _________________ Sec. 6.4.8.1. ___________________________________ Define layer to be restructured (relaxed, reconstructed) giving its 52 1 layer index i. The index ranges between 1 and N3 where N3 is the total 52 1 number of layers defined in the section option. 52 1 Select restructure options (relaxation, reconstruction): rigid shift 52 2 vector in absolute cartesian coordinates (XS,YS,ZS) or in multiples of 52 2 transformed layer basis (Q1, Q2) and layer distance QZ, new layer 52 2 periodicity by 2x2 transformation (M11,M12,M21,M22) of original layer 52 2 basis. 52 2 Redefine layer basis by new lattice basis vectors (reconstruction). 52 3 Undo layer restructuring returning to the original layer geometry. 52 4 Undo may be applied to all or to selected layers. 52 4 Transfer restructuring information from other layer. Complete scheme 52 5 (relaxation, reconstruction) will be transferred. This becomes 52 5 convenient in multiple layer restructuring or if section size (number 52 5 of layers) has been changed. 52 5 Shift layer indices of all restructured layers by a fixed amount. 52 6 Index shifts are needed if the total number of layers of the lattice 52 6 section is changed. 52 6 Display (list) lattice section with given option parameters. 52 7 Display may be interrupted by pressing any key or L-click (press [C] 52 7 or L-click to continue, press [/] to continue in single atom mode, 52 7 press [R] or R-click to stop plotting). After a plot is finished 52 7 graphic analysis is possible (select [Q]). Move to main option menu 52 7 in text mode by [,] or R-click. 52 7 List lattice definition and atom information. 52 8 List last (up to 10) lines of graphic analysis output. 52 9 Start LATTICE session from scratch without structure/graphics data 53 1 transfer. All present structure data will be saved on file 53 1 'balsac.svc'. 53 1 The maximum number NBGES of atoms per unit cell in LATTICE is exceeded 53 2 and only NBGES atoms will be saved on file 'balsac.trl'. This file is 53 2 then used for input to a LATTICE session. All present structure/ 53 2 graphics data will be saved on file 'balsac.svc'. 53 2 Undo restructuring of a specific layer. 54 1 Undo restructuring off all layers of the lattice section. 54 2 Confirm undo of all restructuring constraints, [,] keeps constraints. 55 1 Redefine radii of all inequivalent atoms of the lattice. 56 1 (Warning: Large systems may require lots of manual input). 56 1 Redefine radii of all atoms of the same element (nuclear charge). 56 2 Redefine radius of a selected atom. Atom number is obtained from 56 3 a listing of lattice basis vectors (analysis option) or with the 56 3 graphic analysis. 56 3 Rescale radii of all inequivalent atoms of the lattice to obtain 56 4 maximum sphere packing. 56 4 Redefine charges of all inequivalent atoms of the lattice. 56 5 (Warning: Large systems may require lots of manual input). 56 5 Redefine charge of selected atom. Atom number is obtained from 56 6 a listing of lattice basis vectors (analysis option) or with the 56 6 graphic analysis. 56 6 List lattice definition and atom information. 56 7 ________________________ Sec. 6.4.8.1. ____________________________ 351 __ Display (list) lattice section with given option parameters. 56 8 Display may be interrupted by pressing any key or L-click (press [C] 56 8 or L-click to continue, press [/] to continue in single atom mode, 56 8 press [R] or R-click to stop plotting). After a plot is finished 56 8 graphic analysis is possible (select [Q]). Move to main option menu 56 8 in text mode by [,] or R-click. 56 8 List last (up to 10) lines of graphic analysis output. 56 9 List table of element names and nuclear charges. 56 10 Redefine radii of all inequivalent atoms of the lattice. (Warning: 57 1 Large systems may require lots of manual input). 57 1 Rescale radii of all inequivalent atoms of the lattice by a common 57 2 factor. 57 2 Redefine radii of all lattice atoms of the same element (nuclear 58 1 charge). 58 1 Rescale radii of all lattice atoms of the same element (nuclear 58 2 charge) by a common factor. 58 2 Redefine radii of selected inequivalent lattice atoms. List of atoms 59 1 is given with the option menu or in the text analysis. 59 1 Rescale radii of selected inequivalent lattice atoms by a common 59 2 factor. List of atoms is given with the option menu or in the text 59 2 analysis. 59 2 Select size of rectangular block (N1 x N2 atom layers, stack N3 60 1 layers) of the lattice to be displayed. 60 1 Select index of initial plane for non-primitive lattices. Note that 60 2 for primitive lattices where NINIT= 1 this option is useless and, 60 2 thus, has no effect. 60 2 Set spherical boundary condition (origin, radii). All atoms within 60 3 spherical shell and inside the block are displayed. 60 3 Display (list) lattice section with given option parameters. 60 4 Display may be interrupted by pressing any key or L-click (press [C] 60 4 or L-click to continue, press [/] to continue in single atom mode, 60 4 press [R] or R-click to stop plotting). After a plot is finished 60 4 graphic analysis is possible (select [Q]). Move to main option menu 60 4 in text mode by [,] or R-click. 60 4 Define center of sphere by atom number ("nc,0,0,0") or 61 1 coordinates ("0,x,y,z") for spherical boundary constraint. 61 1 Define size of spherical shell by minimum/maximum radii. 61 2 Define full spherical boundary constraint by center of sphere (atom 61 3 number ("nc,0,0,0") or coordinates ("0,x,y,z")) and spherical shell 61 3 size (minimum/maximum radii). 61 3 Remove spherical boundary constraint. 61 4 Analyze spherical boundary condition. Spherical shells will be checked 61 5 for lying inside or intersecting the (rectangular) lattice section. 61 5 Note that meaningless sphere definitions (intersecting spheres, 61 5 spheres outside the section, extremely large or small radii) may 61 5 result in useless atom plots. 61 5 List last (up to 10) lines of graphic analysis output. 61 6 Update lattice vectors of the free lattice. 62 1 Update lattice basis vectors of the free lattice. 62 2 Confirm updating the lattice vectors . 63 1 Define lattice basis vectors, atom charges, and radii from scratch. 64 1 Add an atom to the basis (lattice basis vector, nucl. charge, radius). 64 2 Delete an atom from the basis (to be confirmed). 64 3 Modify an atom of the basis (lattice basis vector, charge, radius). 64 4 __ 352 _________________ Sec. 6.4.8.1. ___________________________________ Impose symmetry constraints on basis. The lattice basis is checked 64 5 for symmetry elements (rotation axes, mirror planes, inversion) and 64 5 completed by additional atoms if needed. 64 5 List all atoms of the basis (lattice basis vectors, charges, radii). 64 6 Give relative atom coordinates, i.e. in multiples of lattice vectors. 65 1 Give atom positions by absolute cartesian coordinates. 65 2 Confirm delete of an atom from the basis. 66 1 Give relative atom coordinates, i.e. in multiples of lattice vectors. 67 1 Give atom positions by absolute cartesian coordinates. 67 2 Confirm restart of CLUSTER session with quicksave file 'balsac.plt'. 68 1 All present structure data will be saved on file 'balsac.svc'. 68 1 (Re)define complete basis or restructured layer. Atom coordinates must 69 1 be given in multiples of (R1'',R2'',Rn) where (R1'',R2'') are the 69 1 (modified) layer periodicity vectors, Rn is the layer normal vector 69 1 of length D = distance between equiv. layers of the (unmodified) bulk. 69 1 Modify a specific atom position of the relaxed layer (atom number is 69 2 prompted). Coordinates must be given in multiples of (R1'',R2'',Rn) 69 2 where (R1'',R2'') are the (modified) layer periodicity vectors, Rn is 69 2 the layer normal vector of length D = distance between equiv. layers 69 2 of the (unmodified) bulk. 69 2 Add an atom to the relaxed layer basis. Atom coordinates must be given 69 3 in multiples of (R1'',R2'',Rn) where (R1'',R2'') are the (modified) 69 3 layer periodicity vectors, Rn is the layer normal vector of length 69 3 D = distance between equiv. layers of the (unmodified) bulk. 69 3 Delete an atom from the relaxed layer basis (atom number is prompted). 69 4 Apply full restructuring to layer: rel. shift vector (relaxation) and 70 1 (2x2) transformation matrix (reconstruction). Shift vector must be 70 1 given in multiples of (R1',R2',Rn) where (R1',R2') are the 70 1 (unmodified) layer periodicity vectors, Rn is the layer normal vector 70 1 of length D = distance between equiv. layers of the (unmodified) bulk. 70 1 Relax layer: shift vector in absolute cartesian coordinates. 70 2 Relax layer: shift vector in relative units given in multiples of 70 3 (R1',R2',Rn) where (R1',R2') are the (unmodified) layer periodicity 70 3 vectors, Rn is the layer normal vector of length D = distance between 70 3 equiv. layers of the (unmodified) bulk. 70 3 Reconstruct layer: (2x2) transformation matrix for layer periodicity. 70 4 Rotate (2x2) reconstruction matrix ( M -> R*M). Angle is prompted. 70 5 Unhide all hidden atoms (atoms hidden during the session). 71 1 Unhide selected hidden atoms (atoms hidden during the session). 71 2 Atom number will be prompted. 71 2 List all hidden atoms (atoms hidden during the session). 71 3 Move stack pointer up by one position. 72 1 Move stack pointer down by one position. 72 2 Save structure data in stack at position marked by -> . 72 3 Load structure data (PLOT3D/LATUSE format) from stack at position 0. 72 4 Load structure data (PLOT3D/LATUSE format) from stack at position 1. 72 5 Load structure data (PLOT3D/LATUSE format) from stack at position 2. 72 6 Load structure data (PLOT3D/LATUSE format) from stack at position 3. 72 7 Load structure data (PLOT3D/LATUSE format) from stack at position 4. 72 8 Load structure data (PLOT3D/LATUSE format) from stack at position 5. 72 9 Load structure data (PLOT3D/LATUSE format) from stack at position 6. 72 10 Load structure data (PLOT3D/LATUSE format) from stack at position 7. 72 11 Load structure data (PLOT3D/LATUSE format) from stack at position 8. 72 12 Load structure data (PLOT3D/LATUSE format) from stack at position 9. 72 13 ________________________ Sec. 6.4.8.1. ____________________________ 353 __ Display (list) cluster/molecule or lattice section with given option 72 14 parameters. Display may be interrupted by pressing any key or L-click 72 14 (press [C] or L-click to continue, press [/] to continue in single 72 14 atom mode, press [R] or R-click to stop plotting). After a plot is 72 14 finished graphic analysis is possible (select [Q]). Move to main 72 14 option menu in text mode by [,] or R-click. 72 14 Load structure data (PLOT3D/LATUSE format) from stack at position 0. 73 1 Load structure data (PLOT3D/LATUSE format) from stack at position 1. 73 2 Load structure data (PLOT3D/LATUSE format) from stack at position 2. 73 3 Load structure data (PLOT3D/LATUSE format) from stack at position 3. 73 4 Load structure data (PLOT3D/LATUSE format) from stack at position 4. 73 5 Load structure data (PLOT3D/LATUSE format) from stack at position 5. 73 6 Load structure data (PLOT3D/LATUSE format) from stack at position 6. 73 7 Load structure data (PLOT3D/LATUSE format) from stack at position 7. 73 8 Load structure data (PLOT3D/LATUSE format) from stack at position 8. 73 9 Load structure data (PLOT3D/LATUSE format) from stack at position 9. 73 10 Display (list) cluster/molecule or lattice section with given option 73 11 parameters. Display may be interrupted by pressing any key or L-click 73 11 (press [C] or L-click to continue, press [/] to continue in single 73 11 atom mode, press [R] or R-click to stop plotting). After a plot is 73 11 finished graphic analysis is possible (select [Q]). Move to main 73 11 option menu in text mode by [,] or R-click. 73 11 Get distances between 2 atom atoms: L-click r1,r2, R-click=result. 74 1 Get Miller directions between 2 atoms: L-click r1,r2, R-click=result. 74 2 Get angles,distances from 3 atoms: L-click r0,r1,r2, R-click=result. 74 3 Get (hkl)/lmnq/ of plane by 3 atoms: L-click r0,r1,r2, R-click=result. 74 4 Draw (layer) basis vectors at atom: L-click r1, R-click=draw basis. 74 5 Get environment shells (distances/membrs): L-click r1, R-click=result. 74 6 Get coordinate average of atoms: L-click r1,r2,.., R-click=result. 74 7 Connect atoms by links: L-click r1,r2, R-click=def. q1,q2,|r1-r2|. 74 8 Atoms at r1,r2 of charge q1,q2 and distance |r1-r2| will be connected 74 8 by links (lines, sticks) in subsequent plots. 74 8 Switch line show/save flag: "." shows if flag is set. Then atoms at 74 9 r1,r2,... used in the analyses are connected by white lines. The lines 74 9 will show as arrows in PostScript output. 74 9 Assign colors to atoms/background: L-click r1, L-click inside palette. 74 10 Select from left color palette to set atom (element) color, from right 74 10 color palette to set background. 74 10 Assign colors to links: L-click r1,r2, L-click inside palette. 74 11 Select (L-click) from right color palette to set link color. 74 11 Draw additional 2-dim. lines (arrows): L-click x1,x2, R-click=result. 74 12 Additional lines will show as (black) arrows in PostScript output. 74 12 Set view focus at atom: L-click r1, R-click=define; refreshes plot. 74 13 New focus will coincide with selected atom center r1. NOTE that for 74 13 perspective values 0 < q < 1 the viewing geometry may be distorted. 74 13 Erase last 2-dim. line. Line will not show in future plots. 74 14 Draw Wigner-Seitz cell about atom: L-click r1, R-click=plot. 74 15 Draw Brillouin zone about atom: L-click r1, R-click=plot. 74 16 Shift plot by x1->x2: L-click x1,x2, R-click=define; refreshes plot. 74 17 Global shift is defined by coordinates (nx=x2-x1,ny=y2-y1) given in 74 17 screen pixels. Shifting may become necessary after focus reset. 74 17 Recenter and focus plot (foc=0, nx,ny=0,0): option refreshes plot. 74 18 This resets focusing and shifting back to default. 74 18 Replot without parameters changed and return to main option menu. 74 19 __ 354 _________________ Sec. 6.4.8.1. ___________________________________ Useful if analysis has obscured plot details or analysis results 74 19 show only after replot. 74 19 Directed plane distance: L-click r0,r1,r2/r3, R-click=result. 74 20 Plane 1 is defined by r0,r1,r2 and (parallel) plane 2 goes 74 20 through r3. Value is positive if r3 above plane 1 else negative where 74 20 "above" is defined by (r3-r0)((r1-r0)x(r2-r0)) > 0. 74 20 Increase polar view angle theta by dtheta and replot. 75 1 The polar view angle theta is taken with respect to the surface 75 1 normal or z axis. 75 1 Decrease polar view angle theta by dtheta and replot. 75 2 The polar view angle theta is taken with respect to the surface 75 2 normal or z axis. 75 2 Decrease azimuthal view angle phi by dphi and replot. 75 3 The azimuthal view angle phi is taken with respect to the surface 75 3 normal or z axis. 75 3 Increase azimuthal view angle phi by dphi and replot. 75 4 The azimuthal view angle phi is taken with respect to the surface 75 4 normal or z axis. 75 4 Rotate plot on screen to the right (by drot) and replot. 75 5 Rotate plot on screen to the left (by drot) and replot. 75 6 Increase perspective distance persp (multiply by dpersp) and replot. 75 7 The distance of the viewer is set at persp * section diameter. 75 7 NOTE that for perspective values 0 < persp < 1 the viewing geometry 75 7 may be strongly distorted and some atoms may not show. 75 7 Decrease perspective distance persp (divide by dpersp) and replot. 75 8 The distance of the viewer is set at persp * section diameter. 75 8 NOTE that for perspective values 0 < persp < 1 the viewing geometry 75 8 may be strongly distorted and some atoms may not show. 75 8 Decrease plot magnification magnf (divide by dmagnf) and replot. 75 9 Increase plot magnification magnf (multiply by dmagnf) and replot. 75 10 Cut off (hide) all atoms not yet displayed and replot. 75 11 Refresh plot with present parameter values. 75 12 Useful if plot details are obscured by analysis lines or plot was 75 12 finished incomplete. 75 12 Graphic analysis with mouse/keyboard pointer (graphics only). 75 13 The pointer may be moved with cursor keys (up, down, left,right) by 75 13 incremental steps ([+] increases, [-] decreases step size). 75 13 Press [enter] or L-click to select, press [X] or R-click to evaluate, 75 13 press [M] or R-click again to return to analysis menu, press [,] to 75 13 move to main graphics menu. 75 13 Load new cluster/molecule from file stack (stack position prompted). 75 14 All present structure data will be saved on file 'balsac.svc'. 75 14 Save present cluster/molecule structure on file stack. 75 15 The file stack position may be changed inside the stack option. 75 15 Transfer cluster/molecule to LATTICE part and move to LATTICE session. 75 16 All present structure data will be saved on file 'balsac.svc'. 75 16 Access options of main menu (one-line form) in graphics mode. 75 17 X.11, UNIX ONLY: Export present plot image for later retrieval. 75 18 Only one picture may be exported. If the graphics window is closed 75 18 the exported picture is lost. 75 18 X.11, Unix only: Import a plot image previously exported inside the 75 19 same graphics window and overwrite present plot. The imported picture 75 19 may yield incorrect graphic analysis results depending on geometry 75 19 changes between export and import. 75 19 ________________________ Sec. 6.4.8.1. ____________________________ 355 __ Confirm to calculate atoms. Useful for subsequent PostScript output. 76 1 Confirm structure save on stack. 77 1 Wigner-Seitz cell or Brillouin zone on PostScript file shown as wire 78 1 frame. 78 1 Wigner-Seitz cell or Brillouin zone surface on PostScript file shown 78 2 as shaded polyhedron. 78 2 Wigner-Seitz cell or Brillouin zone on PostScript file shown as shaded 78 3 polyhedron with edges emphasized by black lines. 78 3 Wigner-Seitz cell or Brillouin zone on PostScript file shown as shaded 78 4 polyhedron with edges emphasized by black lines and sticks pointing to 78 4 nearest neighbors. 78 4 Select triclinic-P lattice. Three lattice constants (a,b,c) and three 79 1 angles ( a=<(b,c), b=<(a,c), c=<(a,b) ) are required. 79 1 Select monoclinic-P lattice. Vector c stands perpendicular to a, b. 79 2 Three lattice constants (a,b,c) and one angle ( c=<(a,b) ) are 79 2 required. 79 2 Select monoclinic-B lattice. Vector c stands perpendicular to a, b. 79 3 Plane a/c is centered rectangular. Three lattice constants (a,b,c) and 79 3 one angle ( c=<(a,b) ) are required. 79 3 Select orthorhombic-P lattice. Vectors a, b, c perpendicular to each 79 4 other. Three lattice constants (a,b,c) are required. 79 4 Select orthorhombic-C lattice. Vectors a, b, c perpendicular to each 79 5 other. Plane a/b is centered rectangular. Three lattice constants 79 5 (a,b,c) are required. 79 5 Select orthorhombic-I lattice. Vectors a, b, c perpendicular to each 79 6 other. One additional atom in cell center. Three lattice constants 79 6 (a,b,c) are required. 79 6 Select orthorhombic-F lattice. Vectors a, b, c perpendicular to each 79 7 other. Planes a/b, a/c, b/c are centered rectangular. Three lattice 79 7 constants (a,b,c) are required. 79 7 Select tetragonal-P lattice. Vectors a, b, c perpendicular to each 79 8 other with b=a. Two lattice constants (a,c) are required. 79 8 Select tetragonal-I lattice. Vectors a, b, c perpendicular to each 79 9 other with b=a. One additional atom in cell center. Two lattice 79 9 constants (a,c) are required. 79 9 Select hexagonal-P lattice. Vector c stands perpendicular to a, b with 79 10 b=a. Plane a/b is hexagonal. Two lattice constants (a,c) are required. 79 10 Select trigonal-R lattice. Vectors a, b, c form an equilateral 79 11 rhombohedron where a = b = c and <(a,b) = <(a,c) = <(b,c). One 79 11 lattice constant (a) and one angle ( <(a,b) < 120 ) are required. 79 11 Select cubic-P lattice. One lattice constant (a) is required. 79 12 Select cubic-I (bcc) lattice. One additional atom in cell center. 79 13 One lattice constant (a) is required. 79 13 Select cubic-F (fcc) lattice. Planes a/b, a/c, b/c are centered 79 14 square. One lattice constant (a) is required. 79 14 Confirm immediate transfer to LATTICE or CLUSTER session. 80 1 All present structure data will be saved on files 'balsac.svc' and 80 1 'balsac.svl' respectively. 80 1 Transfer CLUSTER atoms + lattice (prev. LATTICE session) to LATTICE. 80 2 The cluster forms the lattice basis and lattice vectors of the 80 2 previous LATTICE session are used to build the lattice. All present 80 2 structure data will also be saved on file 'balsac.svc'. 80 2 Impose rotation axis (center, axis direction, order prompted) and 81 1 complete cluster by adding atoms if needed. 81 1 __ 356 _________________ Sec. 6.4.8.1. ___________________________________ Impose mirror plane (center, plane normal prompted) and complete 81 2 cluster by adding atoms if needed. 81 2 Impose inversion center (center prompted) and complete cluster by 81 3 adding atoms if needed. 81 3 Set maximum distance where two atoms are considered to coincide. 81 4 Useful to identify coinciding atoms generated by loading, copying, or 81 4 symmetry operations. 81 4 Reduce cluster by checking all atoms for coincidence within an 81 5 accuracy range (coincidence distance, can be reset). Coinciding atoms 81 5 can be discarded manually or automatically (throw away atoms of higher 81 5 number). 81 5 Display (list) cluster/molecule with given option parameters. 81 6 Display may be interrupted by pressing any key or L-click (press [C] 81 6 or L-click to continue, press [/] to continue in single atom mode, 81 6 press [R] or R-click to stop plotting). After a plot is finished 81 6 graphic analysis is possible (select [Q]). Move to main option menu 81 6 in text mode by [,] or R-click. 81 6 Impose rotation axis (center, axis direction, order prompted) and 82 1 complete atom basis by adding atoms if needed. 82 1 Impose mirror plane (center, plane normal prompted) and complete 82 2 atom basis by adding atoms if needed. 82 2 Impose inversion center (center prompted) and complete atom basis by 82 3 adding atoms if needed. 82 3 Set maximum distance where two atoms are considered to coincide. 82 4 Display (list) lattice section layer-by-layer. After each layer is 83 1 completed press any key or L-click to continue. Selecting [,] or 83 1 R-click stops plotting immediately. 83 1 Display (list) lattice section atom-by-atom starting with those atoms 83 2 furthest away from the viewer. Display may be interrupted by pressing 83 2 any key or L-click (press [C] or L-click to continue, press [/] to 83 2 continue in single atom mode, press [R] or R-click to stop. 83 2 Display (list) lattice section as an array of elementary cells in 83 3 atom-by-atom mode starting with those atoms furthest away from the 83 3 viewer. Display may be interrupted by pressing any key or L-click 83 3 (press [C] or L-click to continue, press [/] to continue in single 83 3 atom mode, press [R] or R-click to stop. 83 3 Display (list) lattice section with given option parameters. 83 4 Display may be interrupted by pressing any key or L-click (press [C] 83 4 or L-click to continue, press [/] to continue in single atom mode, 83 4 press [R] or R-click to stop plotting). After a plot is finished 83 4 graphic analysis is possible (select [Q]). Move to main option menu 83 4 in text mode by [,] or R-click. 83 4 No atoms are displayed (listed). For testing purposes only. 84 1 Atoms are listed by their coordinates. Useful for interfacing with 84 2 other display software or numerical evaluations. 84 2 Atoms are displayed as (colored) points. 84 3 Atoms are displayed as (colored) circles. 84 4 Atoms are displayed as overlapping (colored) circular areas. 84 5 Atoms are displayed as red/blue stereo circles to be viewed with 84 6 red/blue stereo filter glasses. Colors may be adjusted with the 84 6 parameter option. 84 6 Atoms are displayed as hard-shaded (colored) balls using two color 84 7 tones (dark, light). 84 7 ________________________ Sec. 6.4.8.1. ____________________________ 357 __ Atoms are displayed as fuzzy-shaded (colored) balls using two color 84 8 tones and random dithering (dark, light). 84 8 Atoms are displayed as dither-shaded (colored) balls using three 84 9 color tones (black, dark, light color) with a 2x2 dither matrix. 84 9 Atoms are displayed as glossy (colored) balls using different 84 10 color tones with diffuse background light, Lambert shading and 84 10 specular reflection. This mode is most compute intensive. 84 10 Set/unset stereo duplication. With duplication set to "on" two 84 11 slightly different pictures show on the screen reflecting the views 84 11 of your two eyes yielding a 3-dimensional impression with optical 84 11 stereo glasses or by cross-eyed viewing. Adjustments are possible 84 11 with the parameter option. 84 11 Display (list) cluster/molecule or lattice section with given option 84 12 parameters. Display may be interrupted by pressing any key or L-click 84 12 (press [C] or L-click to continue, press [/] to continue in single 84 12 atom mode, press [R] or R-click to stop plotting). After a plot is 84 12 finished graphic analysis is possible (select [Q]). Move to main 84 12 option menu in text mode by [,] or R-click. 84 12 Select [C] or L-click to continue listing. 85 1 Continue atom listing in single atom mode, i.e. each atom shows 85 2 only after you press [C] or L-click. Single atom mode listing is 85 2 turned off by pressing [/] or L-click in the menu window. 85 2 Select [C] or L-click to continue listing. 86 1 Change the structure of selected layers in the lattice section. 87 1 Restructuring includes relaxation, reconstruction, or complete 87 1 layer rebuilding. 87 1 Undo layer restructuring returning to the original layer geometry. 87 2 Undo may be applied to all or to selected layers. 87 2 __ 358 _________________ Sec. 6.5. _______________________________________ 6.5. UTILITY PROGRAMS 6.5.1. TESTING INITIALIZATION FILE DEFINITIONS Color and shading definitions which are contained in the initialization file of BALSAC can be inspected and changed interactively using utility TSTCOL. The DOS/VGA and Unix/X.11 versions of TSTCOL are different and will be described separately in the following. 6.5.1.1. UTILITY TSTCOL (DOS/VGA VERSION) The DOS/VGA version of TSTCOL is started from the DOS command line using the command tstcol2 [initfile] where initfile is the name of an optional initialization file (up to 72 characters, the default file name used by BALSAC is 'balsac2.ini' in the calling directory, see below). Note that this utility generates graphical output requiring a graphics interface (VGA graphics adapter) which must be installed. If no initialization file name is provided on the command line TSTCOL starts with the initial startup screen ========================================================= | | | T S T C O L | | | | Test adapter/color/mouse modes for BALSAC | | initialization files (default = balsac.ini) | | | | (C) Copyright 1992-6 K. Hermann. All Rights Reserved | | Fritz-Haber-Institut Berlin | | | | Version 2.00 February 1996 | | | | VGA graphics version | | | ========================================================= and prompts Select: [F]ile input [S]cratch [,]esc allowing you to continue with input from an initialization file (type [F], ________________________ Sec. 6.5.1.1. ____________________________ 359 __ file name up to 72 characters is prompted), to start from scratch using default graphics options (type [S], defaults are given below), or to quit TSTCOL (type [,]). After an initialization file name fname (for example 'balsac2.ini') is given or default values are selected TSTCOL moves to its main option menu ========== TSTCOL MAIN MENU ============================================ File : [fname ] [W]indow : (Ox,Oy)= ( ox, oy) (Lwx,Lwy)= ( lwx,lwy) Qyx= qyx [A]dapter : Int= int, Colmx= colmx, Chx,Chy= chx xhy [P]aint : Basic colors= ncb, tones = nsh, gray= fgr B/W/LC= ib iw ilc, palette= nptot Diff,Lamb,Spec/Theta,Phi= qdiff, qlamb, qspec / thtsh, phish ste[R]eo : Distortion,shift= pu, deye, red/blue/white= isr isb isw [X]yscale [B]all [M]ouse c[T]abl [L]oad [S]ave [,]Quit ======================================================================== showing values of the most important parameters contained in Cards 1 - 5 of the initialization file as described in the following (see Sec. 6.4.7). The first line gives the name fname of the initialization file used for input when TSTCOL was started. If TSTCOL was started without an input file fname will be blanked. The line(s) starting with "[W]indow ..." gives the complete window definition. This includes the origin (upper left corner) of the graphics window (ox, oy) which is relevant only for the Unix/X.11 version of BALSAC. Further, (lwx, lwy) gives the x/y (graphics) window size in pixels and qyx shows the y/x pixel distortion for screens with pixel shapes other than square. "[A]dapter ..." the gives the complete adapter information and is relevant mostly for the DOS version of BALSAC. Here int denotes interrupt number used to choose the graphics mode of the PC graphics adapter, colmx is the maximum number of colors available from the adapter, and chx/chy define the pixel width/length used for characters in graphics mode. "[P]aint ..." atoms gives the number of basic colors, ncb, used to paint and nsh denotes the number of tones available for each basic color. The gray switch flag fgr reads "on" or "off" depending on whether screen colors are replaced by respective gray tones, see Sec. 5.4. Numbers ib, iw, ilc are the present color table entries of the base colors "black", "white" and of the default link color while nptot gives the number of entries in the color palette determining the sequence of paint colors used to paint atoms, see Sec. 5.4. __ 360 _________________ Sec. 6.5.1.1. ___________________________________ Ball shading is determined by weights qdiff (diffuse background), qlamb (Lambert shading), qspec (specular reflection) which are relative values ranging between 0.0 and 1.0. Further, thtsh and phish give the incident light direction with respect to the screen normal used for shading, see Sec. 5.4. "ste[R]eo ..." deye shows parameters relevant for stereo viewing where pu, give the present values of the eye distance and picture shift parameters. Further, isr, isb, isw, are color codes referring to colors red, blue, and white used in red/blue stereo mode, see Sec. 6.2.7. Note that certain control parameter values can lead to unwanted results if defined incorrectly. Therefore, the choice of control parameters should be considered with care. All parameters are identical for BALSAC/LATTICE and BALSAC/CLUSTER sessions. [W] selected from the main option menu allows you to redefine size and position of the graphics screen/window as well as compensate for pixel shapes other than square on your screen. The prompt Window definition OX,OY,LX,LY,QYX (ox,oy,lwx,lwy,qyx |"/"=esc) : asks for five numbers, ox, oy, lwx, lwy, qyx, defining graphics window parameters after which TSTCOL returns to the main option menu. Here (ox, oy) denotes the window origin (upper left corner) on the screen, lwx, lwy are window width and height, and qyx gives the y/x pixel distortion for screens with pixel shapes other than square. The present window parameter values are shown in the above prompt in parentheses and are conserved with dummy input "/". A distortion value qyx = q assumes that a line of 100 pixels in y direction (up-down) is of the same length as one of 100*q pixels in x direction (left-right). Modifying qyx may be required to correct for y/x distortions in the graphics output if different monitors are used or if graphics output is to be saved for subsequent printing on a printer with an x/y pixel size ratio different from that of the screen. [A] selected from the main option menu allows you to reset the basic adapter definition of the graphics screen. The prompt Adapter definition "/"=esc) : INT,COLMX,CHX,CHY (int,colmx,chx,chy | asks for four numbers int, colmx, chx, chy, defining basic parameters of your PC graphics adapter after which TSTCOL moves to option [W] above allowing you to redefine size and position of the graphics screen. Here int denotes the interrupt number used to choose the graphics mode of the PC graphics adapter, colmx is the maximum number of colors available with the adapter, and chx/chy defines the pixel size (width/height) of characters used in graphics mode. The present adapter parameter values are shown in the above prompt in parentheses and are conserved with dummy input "/". ________________________ Sec. 6.5.1.1. ____________________________ 361 __ Adapter parameters depend on each other and should be chosen with care. The following table gives standard values for the most common graphics modes which work with VGA adapters -------------------------------------------------mode lwx lwy int colmx chx chy -------------------------------------------------CGA 640 200 14 16 8 8 EGA 640 350 16 16 8 14 VGA 640 480 18 16 8 16 -------------------------------------------------Apart from these standard settings graphics modes with higher resolution and more colors are available with enhanced VGA adapters. For respective interrupt and parameter settings consult your adapter manual. Note that some enhanced graphics modes may require special mouse drivers for the graphical mouse analysis to work. NOTE that false interrupt values may lead to strange graphics results and may even destroy your adapter. [P] selected from the main option menu allows you to redefine all basic parameters connected with color painting in plots which includes color selection and shading. The paint menu P reads ========== TSTCOL COLOR MENU ======================================= Basic color table: ncolb colors, nsh tones Shading (Diff,Lamb,Spec/Theta,Phi) = qdiff,qlamb,qspec / thtsh,phish B/W/LC= ib iw ilc, palette= nptot [B]ascol [S]hade [C]odes/palette [G]ray(off) c[T]abl [W]orkb [,]esc ==================================================================== Here ncolb is the total number of paint colors and nsh the number of tones of each paint color defined at present, see Sec. 5.4. Ball shading is determined by weights qdiff (diffuse background), qlamb (Lambert shading), qspec (specular reflection) which are relative values ranging between 0.0 and 1.0 with qdiff + qlam + qspc = 1.0. Further, thtsh and phish give the incident light direction with respect to the screen normal used for shading, see Sec. 5.4. The numbers ib, iw, ilc are the present color table entries of the base colors "black", "white" and of the default link color while nptot gives the number of entries in the color palette determining the sequence of paint colors used to paint atoms. The gray switch flag fgr reads "on" or "off" depending on whether screen colors are replaced by respective gray tones, see Sec. 5.4. __ 362 _________________ Sec. 6.5.1.1. ___________________________________ > [B] selected from submenu P allows you to reset and list all basic paint color definitions. The basic paint color menu PB reads =============================================================== Basic color table: ncolb colors, nsh tones Basic colors: [N]ew [M]od [A]dd [D]el t[O]ne [R]gbmx [L]ist c[T]abl [,]esc =============================================================== where ncolb is the total number of paint colors and nsh the number of color tones of each paint color defined at present, see Sec. 5.4. > > [N] selected from submenu PB allows you to redefine all basic paint colors from scratch. The prompt No. of basic colors NCOLB ( <ncmax, 0=esc) : asks for the number ncolb of basic colors to be defined in the following where ncmax gives the maximum number of colors available. Dummy input ncolb = 0 returns to submenu PB without affecting the present color definitions while for ncolb > 0, the prompts Input ncolb basic colors : 1) NR,NG,NB/Qbot,Qbas,Qenh,Qtop/Qgam : ... ncolb) NR,NG,NB/Qbot,Qbas,Qenh,Qtop/Qgam : ask for ncolb sets of eight numbers, nr, ng, nb, qbot, qbas, qenh, qtop, qgam, defining each new paint color after which TSTCOL returns to submenu PB. Here (nr,ng,nb) gives the RGB definition of the generating color where all values must lie within the range [0, rgb] with rgb = 63 for DOS/VGA and = 65635 for Unix. Further, qbot, qbas, qenh, qtop are factors determining the darkest, default dark, default light, and lightest tone of the paint color where all values must lie within the range [0, 1]. Finally, qgam is the gamma factor determining the distribution of color tones between darkest and lightest tone used for continuous shading. The color definitions are discussed in detail in Sec. 5.4. Note that the above input of 8*ncolb numbers may be tedious and editing the respective initialization file, see Sec. 6.4.7, may be faster and safer. ________________________ Sec. 6.5.1.1. ____________________________ 363 __ > > basic [M] selected from submenu PB allows you to modify a specific paint color from the present set. The prompt Modify selected basic color N (1- ncolb, 0=esc) : asks for the number n of a basic paint color within the range [1,ncolb] to be modified. Dummy input n = 0 returns to submenu PB without affecting the present color definitions while for n > 0, the prompt Color( n)= nr ng nb / qbot qbas qenh qtop / qgam Redefine NR,NG,NB/Qbot,Qbas,Qenh,Qtop/Qgam ("/"=esc) : shows the present definition of paint color n and asks for eight numbers, nr, ng, nb, qbot, qbas, qenh, qtop, qgam, defining the modified paint color after which TSTCOL returns to submenu PB. The color parameters are explained in option [N] above and in Sec. 5.4. Dummy input "/" will keep the original definition of paint color n. > > color [A] selected from submenu PB allows you to add a basic paint to the present set. The prompt Add basic color ("8*0"=esc) : NR,NG,NB/Qbot,Qbas,Qenh,Qtop/Qgam asks for eight numbers, nr, ng, nb, qbot, qbas, qenh, qtop, qgam, defining the new paint color to be added after which TSTCOL returns to submenu PB. The color parameters are explained in option [N] above and in Sec. 5.4. Dummy input "8*0" will return to submenu PPB without a color added. > > paint [D] selected from submenu PB allows you to remove a basic color from the present set. The prompt Remove basic color N (1-ncolb, 0=esc) : asks for the number n of a basic paint color within the range [1,ncolb] to be removed. Dummy input n = 0 returns to submenu PB without affecting the present color definitions while for n > 0 basic color no. n will be removed from the set after which TSTCOL returns to submenu PB. > of > [O] selected from submenu PB allows you to change the number color tones generated for each basic paint color and used for ball shading as well as for background painting in plots. The prompt No. of tones NSH (nsho, max=nshmax, 0=esc) asks for an integer defining the number of color tones to be generated for each basic paint color. Here nsho gives the present value and nshmax (= nctot/ncolb) denotes the largest __ 364 _________________ Sec. 6.5.1.1. ___________________________________ available value determined by the total number of colors nctot and the number of paint colors ncolb. Dummy input nsh = 0 keeps the present definition while for nsh > 0 the internal color table is modified according to the new number of tones after which TSTCOL returns to submenu PB. Values nsh > nshmax will be truncated to nsh = nshmax. > > [R] selected from submenu PB allows you to change the global maximum value allowed for components (r, g, b) in RGB color settings. The prompt RGB maximum (rgbmaxo, 0=esc) : asks for an integer giving the new maximum value rgbmax where rgbmaxo in the prompt gives the old value. The input leads to a global rescaling of all RGB definitions by a factor rgbmax/rgbmaxo after which TSTCOL returns to submenu PB. Allowed values for rgbmax depend on the graphics adapter where the standard values are N = 63 (2**6-1) for DOS and N = 65535 (2**16-1) for Unix/X.11 Windows systems. RGB rescaling may become necessary if BALSAC output files of LATUSE or PLOT3D type include initialization information and are transferred between DOS and Unix systems. WARNING: RGB rescaling can result in strange color definitions and should generally be avoided. > > paint [L] selected from submenu PB allows you to list all basic color definitions of the present set. The prompt ncolb basic colors : list NA,NE : asks for a range [na, ne] of the set of ncolb basic paint colors to be listed. For < na <= ne <= ncolb the listing shows as NR NG NB / Qbot Qbas Qenh Qtop / na) nr ng nb / qbot qbas qenh qtop / ... ne) nr ng nb / qbot qbas qenh qtop / Qgam qgam qgam after which TSTCOL returns to submenu PB. The color parameters in this list are explained in option [N] above and in Sec. 5.4. > > showing [T] selected from submenu PB displays a color test table the present color definitions together with color numbers. This option is identical to option [T] of the main option menu described below. > > [,] selected from submenu PB returns to the paint menu P. ________________________ Sec. 6.5.1.1. ____________________________ 365 __ > [S] selected from submenu P allows you to list and reset all parameters relevant for ball shading in plots. The shading menu PS reads ================================================= Shading: [W]eights [A]ngles c[T]abl [,]esc ================================================= > > relative [W] selected from submenu PS allows you to redefine the weights of different contributions to shading. The prompt Shading weights DIFF,LAMB,SPEC (qdiff qlamb qspec|"3*- 1"=esc) : asks for three numbers, qdiff, qlamb, qspec, defining the relative weights of shading contributions due to the diffuse background, to Lambert shading, and to specular reflection as described in detail in Sec. 5.4. Meaningful values should range between 0 and 1 with qdiff + qlamb + qspec = 1 (defaults are qdiff = 0.1, qlamb = 0.35, qspec = 0.55). After the input TSTCOL returns to submenu PS. Dummy input "3*-1" will keep the present shading values. > > [A] direction selected from submenu PS allows you to redefine the of the incident light used for shading. The prompt Shading angles THETA,PHI (theta phi | "/"=esc) : asks for two numbers, theta, phi, defining the polar and azimuthal angles of the incident light. The angles are taken with respect to the screen normal direction where polar angle phi = 0 corresponds to the vertical y direction on the screen (defaults are theta = 65, phi = -25 degrees referring to light shining from the upper left front location relative to the viewer). For further details consult Sec. 5.4. After the input TSTCOL returns to submenu PS. Dummy input "/" will keep the present angle values. > > showing [T] selected from submenu PS displays a color test table the present color definitions together with color numbers. This option is identical to option [T] of the main option menu described below. > > [,] selected from submenu PS returns to the paint menu P. __ 366 _________________ Sec. 6.5.1.1. ___________________________________ > [C] colors selected from submenu P allows you to redefine the default for "black", "white", and for links between atoms as well as all entries of the color palette which determines the sequence of colors used to paint atoms. The color palette menu PC reads =========================================================== Basic codes : B/W/LC= ib iw ilc gray= fgr Palette(nptot) : np(1) ... np(nptot) Colors: [B]lack/white/links [P]alette c[T]abl [,]esc =========================================================== where the numbers ib, iw, ilc give the color codes (color table entries, see Sec. 5.4) of default colors for "black", "white", and for links between atoms. The gray switch flag fgr reads "on" or "off" depending on whether screen colors are replaced by respective gray tones. The next line lists the complete color palette of nptot entries np(i), i=1...nptot defined at present which determines the sequence of basic paint colors used to paint atoms. > > default [B] selected from submenu PC allows you to redefine the colors used for "black", "white", and for links between atoms. The prompt Black/white/links color codes IB,IW,ILC ( ib, iw, ilc) : asks for three integers defining the color codes ib, iw, ilc (entries of the internal color table) used for default colors "black", "white", and for links between atoms where the values in parenthesis give the present settings. Colors "black" and "white" are used for circle/dot/ball drawings in graphics output, for the title line and for the wire frame about the lattice section or cluster. Lines/sticks connecting atoms are painted with default color ilc if not redefined by individual values, see Sec. 6.2.7.1. Resetting these colors may improve the visibility or can achieve special color effects. After complete input TSTCOL returns to submenu PPC. > > complete [P] selected from submenu PC allows you to redefine the color palette which determines the sequence of basic paint colors used to paint atoms. The prompt Palette(nptot) : np(1) ... np(nptot) Input N, N color codes (0=esc) : gives a listing of the present color palette and asks for a new palette to be defined. The input starts with the palette size nptot (denoted N in the prompt) and is followed by nptot integers np(i), i=1,...nptot, defining the palette entries (pointing at basic paint colors). As an example, a palette of ________________________ Sec. 6.5.1.1. ____________________________ 367 __ three entries (paint colors 7, 4, 11) would be input as " 3, 7, 4, 11 ". Different entries in the palette can have the same color code value thus allowing e.g. to show different lattice planes with the same color. After input of a new color palette TSTCOL returns to submenu PC. Dummy input nptot = 0 leaves the present palette definition unchanged. > > showing [T] selected from submenu PC displays a color test table the present color definitions together with color numbers. This option is identical to option [T] of the main option menu described below. > > > [G] between [,] selected from submenu PC returns to the paint menu P. selected from submenu P switches the gray switch flag fgr "on" and "off" and shows the updated submenu P. For fgr = "on" all screen colors are replaced by respective gray tones determined by the RGB transformation (r,g,b) -> (s,s,s) with s = 0.30*r + 0.59*g + 0.11*b after which plots will use gray tones rather than colors, see also Sec. 5.4. > [T] selected from submenu P displays a color test table showing the present color definitions together with color numbers. This option is identical to option [T] of the main option menu described below. > [W] selected from submenu P moves to the color/shading workbench switching to graphics mode (DOS) or opening a graphics window (Unix). This allows you to change all basic and paint colors as well as ball shading angles in a very intuitive way using the mouse or a graphics pointer. Further details are given in Sec. 6.2.15.2. > [,] selected from submenu P returns to the main option menu. [R] selected from the main option menu allows you to redefine distortion, plot shift and color codes used for stereo graphics of BALSAC. The stereo menu R reads ====================================================================== Stereo: [D]istortion/shift (pu, deye) [R]ed/blue/white (isr isb isw) [?,]esc ================================================================ 43 == where picture shift codes stereo mode, pu, deye give the present values of the eye distance and parameters explained below. Further, isr, isb, isw, are color referring to colors red, blue, and white used in red/blue see Sec. 6.2.7. __ 368 _________________ Sec. 6.5.1.1. ___________________________________ Full color stereo mode allows you to get a more realistic 3dimensional impression of the lattice section or cluster using optical stereo glasses, see Sec. 6.2.7. In this mode, a lattice section or cluster is shown by two pictures on the screen. The pictures are reduced to 50% in size (with respect to their mono equivalents), are horizontally displaced by a picture shift deye, and differ slightly in their projection geometry reflecting the viewer's eye distance and his distance from the object. Here the eye distance pu is measured in units of the diameter D of the lattice section or cluster where meaningful values of pu lie between 0.1 and 1.0 (pu = 0.3 is default). The picture shift deye which determines the shift between the centers of the two stereo pictures on the screen/window can assume positive and negative values where for deye > 0 the left (right) picture simulates the left (right) eye view required for viewing with optical stereo glasses. deye < 0 the left (right) picture simulates the right (left) eye view required for cross eyed stereo viewing without glasses. Meaningful values for |deye| lie between 100 and 600 (deye = -320 is default). Red/blue stereo mode allows you to get a 3-dimensional impression of the lattice section or cluster using red/blue stereo filter glasses, see Sec. 6.2.7. In this mode, the atoms of a lattice section or cluster are shown by two horizontally shifted circles of equal radius and of colors blue (left circle) and red (right circle). The distance between the circles (stereo distortion) is determined by the distance z of the center from the viewer and the eye distance of the viewer. Analogously, all lines of the plot are visualized as red and blue lines accounting for the stereo distortion. As in full color stereo mode the stereo impression is controlled, apart from the perspective projection, by the eye distance pu, see above. > and [D] selected from submenu R allows you to redefine the eye distance picture shift used for stereo views. The prompt Stereo distortion,shift PU,DEYE (pu, deye | "/"=esc) : asks for two numbers, pu, deye, defining new values of the eye distance and picture shift after which TSTCOL returns to submenu R. Dummy input "/" will keep the old values given with the prompt (in parenthesis). Note that parameter deye is ignored in red/blue stereo plots, see above. > [R] used selected from submenu R allows you to redefine the color codes for colors red, blue, and white in red/blue stereo mode. The prompt Stereo red/blue/white ISR,ISB,ISW ( isr, isb, isw | "/"=esc) : asks for three numbers, isr, isb, isw, defining new color codes for stereo red, blue, and white after which TSTCOL returns to submenu ________________________ Sec. 6.5.1.1. ____________________________ 369 __ R. Dummy input "/" will keep the old values given with the prompt (in parenthesis). The stereo color codes refer to the full color table of nctot colors, see Sec. 5.4. However, only colors adjusted to the stereo filter glasses are meaningful. Otherwise, the plot looks very confusing and can even lead to headaches if viewed for an extended time. > [X] [,] selected from submenu R returns to the main option menu. selected from the main option menu moves to the monitor screen distortion test allowing you to inspect and adjust the distortion. The graphics screen shows two lines X/Y PIXEL DISTORTION TEST : [up] [down] [left] [right] [,]esc LY/LX = ly / lx QXY = qyx at the top of the screen where lx, ly are the present lengths (in pixels) of the rectangle shown below and qyx gives the y/x pixel ratio of the rectangle. The shape of the rectangle can be varied using the cursor keys [up], [down], [left], [right]. If the rectangle becomes square shaped the respective qyx value can be read off giving the correct pixel ratio of the screen to be used in the initialization file. Pressing [,] returns to the main option menu. [B] selected from the main option menu moves to the ball shading test allowing you to modify the different shading weights and incident light directions interactively. The graphics screen shows three lines BALL SHADE TEST : [udlr+-] [cC]ol q[dD]iff q[lL]amb q[sS]pec [,]esc Color/tones= ic / nsh Diff, Lamb, Spec/ Theta, Phi = qdiff, qlamb, qspec / theta, phi at the top of the screen where ic is the present basic color number, nsh the number of tones per color. Parameters qdiff, qlamb, qspec determine the present shading weights and theta, phi define the incident light direction, see above and Sec. 5.4. The numerical values will be updated by any of the options below. Further, the graphics screen shows a glossy-shaded ball in the center which illustrates all above listed color and shading values. The ball is surrounded by a larger circle and a "+" inside the circle area which serves as a graphical pointer. The pointer position (x,y) with respect to the ball/circle center defines the incident light direction theta, phi where x = Rc * sin(theta) * sin(phi) y = Rc * sin(theta) * cos(phi) with Rc being the radius of the outer circle. Selecting __ 370 _________________ Sec. 6.5.1.1. ___________________________________ > [up], [down], [left], [right] allows you to move the graphical pointer "+" up/down/left/right on the screen. If the graphics pointer lies inside the circle pressing [enter] evaluates the incident light direction theta, phi from the pointer position and redraws the shaded ball. This allows you to test different shading directions. > [+]/[-] by a increases/decreases the step size of the pointer movement factor 2 which can speed up the pointing process. > [c]/[C] decreases / increases the basic color number ic by 1 (with periodic continuation if ic reaches the maximum ncolb of allowed paint colors) after which the shaded ball is redrawn. > [d]/[D] decreases / increases the present weight of the diffuse background qdiff by 0.03 within the range [0.0, 1.0] after which the shaded ball is redrawn. > [l]/[L] decreases / increases the present weight of Lambert shading qlamb by 0.03 within the range [0.0, 1.0] after which the shaded ball is redrawn. > [s]/[S] reflection decreases / increases the present weight of specular qspec by 0.03 within the range [0.0, 1.0] after which the shaded ball is redrawn. > [M] [,] returns to the main option menu. selected from the main option menu moves to the mouse interface test showing the title line MOUSE POINTER TEST : L-click R-click [,]esc at the top of the graphics screen and framing the screen with a white line indicating the present window size settings. If a mouse device is correctly connected the mouse graphics pointer (white arrow) shows on the screen and can be moved by moving the mouse. Clicking the left mouse button (L-click) draws a glossy-shaded ball at the present pointer position showing its pixel position (x, y) and the paint color nc by "x y (nc)" at the top left of the screen. Clicking the right mouse button (R-click) or pressing [,] returns to the main option menu. > > showing [T] selected from submenu PC displays a color test table the present color definitions together with color numbers. This option is identical to option [T] of the main option menu described below. [T] selected from the main option menu displays a color test table showing the present color definitions together with color numbers. The numerical information on all colors can be inspected and changed inside the paint menu described above. ________________________ Sec. 6.5.1.1. ____________________________ 371 __ The first line from the top of the table shows color blocks of the four base colors "black", "white", "stereo red", "stereo blue" indicated by a line black white (st)red (st)blue to the left. Then the dark and light tones of all paint colors in the sequence of the palette definition are shown together with a line colors: palette= nptot, total= nctot where nptot is the number of entries in the color palette and nctot is the total number of RGB colors defined at present. Next for each of the ncolb paint colors the sequence of nsh tones, see Sec. 5.4, is displayed by a row of blocks going from darkest to lightest tones. The line to the right of each block sequence reads j ( def.dark(j) , def.light(j) ) ns(j)+1 - ns(j)+nsh where j is the paint color index (to be used in the palette for painting (shaded) balls), def.dark(j) and def.light(j) are color table entries of the default dark and light tones, and ns(j)+1 denotes the darkest, ns(j)+nsh the lightest tone of paint color j. In addition the two default color tones are marked by crossing lines in the respective color blocks (def.dark = white lines, def.light = black lines). Pressing any key clears the window and returns to the previous menu. [L] selected from the main option menu allows you to load an external initialization file replacing all basic parameter values by those contained in the file. The prompt Init file name for input ("+"=def,"-"=esc): asks for a character string fname (up to 72 characters) which defines the file name of an external initialization file, see Sec. 6.4.7. Here the one-character filename "+" denotes the default initialization file on-line help file 'balsac2.ini', while dummy input "-" returns to the main option menu without file input. [S] selected from the main option menu allows you to save all basic parameter values of the present TSTCOL session in an external initialization file. The prompt Init file name for output ("-"=esc): asks for a character string fname (up to 72 characters) which defines the file name of an external initialization file, see Sec. 6.4.7. Note that choosing the name 'balsac2.ini' in the above prompt defines the default initialization file for output which should be avoided. For a valid file name TSTCOL stores all control parameter values of the present session in the file and returns to the main option menu. The one-character dummy filename "-" returns without file output. __ 372 _________________ Sec. 6.5.1.2. ___________________________________ [,] has selected from the main option menu allows you to quit TSTCOL which to be confirmed in the prompt Confirm quit: [Q]uit [,]Remain where pressing [Q] moves to the DOS command line while [,] returns to the TSTCOL main option menu. NOTE that all parameter values modified inside TSTCOL are valid only for the present session unless they are saved on separate initialization files. 6.5.1.2. UTILITY TSTCOL (UNIX/X.11 VERSION) The Unix/X.11 version of TSTCOL can be used to adjust color / shading definitions of the BALSAC initialization file interactively but is also useful to test color map and adapter definitions of the X.11 Windows environment if problems arise in the graphics display part of BALSAC. TSTCOL is started from the command line using the command tstcol [initfile] where initfile is the name of an optional initialization file (up to 72 characters, the default file name used by BALSAC is 'balsac2.ini' in the calling directory, see below). Note that this utility generates X.11 Windows color graphics output requiring a color graphics interface (X-terminal, workstation). If TSTCOL is started without a file name on the command line the prompt NCOLSAV(5-30), NTONE(2-30) : asks for the number of different colors, ncsav (values between 5 and 50), and the number of tones per color, nsh (values between 2 and 50), to be used in the following which can be stored on external files inside TSTCOL. While ncsav can be modified interactively the value nsh is fixed for the following TSTCOL session. After meaningful input of ncsav, nsh the program opens a window and generates the work bench. TSTCOL started with a file name denoting a correct BALSAC initialization file, see Sec. 6.4.7, loads all file parameters and opens a window generating the work bench. ________________________ Sec. 6.5.1.2. ____________________________ 373 __ The work bench window shows as +-----------------------------------------------------------------------+ | __ __ __ ___ ___ ____ | | | | | | | | | | | | ________________ |quit| | | | | | | | | | | | | / /\ |____| | | | | | | | | | | / / \ | | | | | | | ( 2 ) | | | / / \ | | | | | | | | | | / / \ | | | | | | | | | | | | / / \ | | |__| |__| |__| |___| |___| / / \ | | +---------------+ ( 1 ) + | | \ \ / | | __ __ \ \ / | | ____ ____ ____ ____ | | | \ \ / | | |____|____|____|____| | | | \ \ / | | | | | \ \ / | | ______ ( 3 ) | | | \_______________/ | | / \ | | | | | | | | | | | | | | | | | | | \ ______ / |__|__| | | | | | | ____ ____ ____ ____ ____ ____ ____ __ ___ ____ ____ ____ ____ | | |____|____|____|____|____|____|____|__ ( 4 ) ___|____|____|____|____| | | | +-----------------------------------------------------------------------+ consisting of four main areas, - the color selection hexagon (1) at the upper right, - the color and tone fine tuning section (2) at the upper left, - the ball painting/shading section (3) at the lower left, -the color save/recall section (4) at the bottom. Input to TSTCOL is possible inside the workbench window by moving the mouse into one of the main areas, pointing at an option, and clicking the left or central mouse button for selection. Here it is assumed that the Unix system is equipped with a three button mouse where only the left and central buttons are used. For two-button mouses the right button replaces the central button in the text below. The different options of the main areas are explained in the following. RGB colors will be used in the following in normalized form (r,g,b) where 0 < r,g,b < 1 . Thus adapter RGB values (R,G,B) have to be multiplied by the range maximum defaulted to (2^16-1)= 65535 in TSTCOL. __ 374 _________________ Sec. 6.5.1.2. ___________________________________ (1) The COLOR SELECTION HEXAGON shows as ----------------------------------------------------------------------+ | GREEN ____________________ YELLOW _____ | / /\ |quit | | / / \ |_____| | / / \ | / / \ | / / \ | / / \ | / / \ | CYAN +-------------------+ WHITE (BLACK) + RED | \ \ / | \ \ / | \ \ / | \ \ / | \ \ / | \ \ / | \___________________/ | BLUE MAGENTA | | displaying the upper (lower) surface of the RGB cube as viewed along the cube diagonal where white =(1,1,1) or black =(0,0,0) is at the center. The basic RGB colors, green =(0,1,0), yellow =(1,1,0), red =(1,0,0), magenta =(1,0,1), blue =(0,0,1), cyan =(0,1,1) form the hexagon edges. Pointing inside the hexagon and clicking the central mouse button switches between top and bottom view of the RGB cube. Pointing inside the hexagon and clicking the left mouse button selects an appropriate RGB triple on the cube surface, i. e. points (1,g,b), (r,1,b), (r,g,1) for the cube top and (0,g,b), (r,0,b), (r,g,0) for the cube bottom. The selected point is marked inside the hexagon and the appropriate color is used as generic color to produce a set of color tones which are displayed in the color and tone fine tuning section and can be modified further, see below. Pointing inside the QUIT box at the upper right and clicking the left mouse button finishes the TSTCOL session by closing the workbench window and returning to the Unix command line. ________________________ Sec. 6.5.1.2. ____________________________ 375 __ (2) The COLOR AND TONE FINE TUNING SECTION shows as +----------------------------------------------------------------| | RGB= nr ng nb (r g b) | SAT/BOT,BAS,ENH,TOP/GAM = sa / qu def.dark def.light qt / gam | | ____ ____ ____ _____ _____ | | | | | | | |:::::| |:::::| | |____| |____| | | |:::::| |:::::| | |::::| |::::| | | |:::::| |:::::| | |::::| |----| |----| |-----| |-----| | |::::| |::::| |____| |:::::| |:::::| | |::::| |::::| |::::| |:::::| |:::::| | |::::| |----| |::::| |:::::| |:::::| | |::::| |::::| |::::| |-----| |:::::| | |::::| |----| |::::| |:::::| |:::::| | |::::| |____| |::::| |:::::| |:::::| | \ \ \ \ \ (2.1) (2.2) (2.3) (2.4) (2.5) listing the RGB value of the generic color selected at present both as an adapter color triple (nr, ng, nb) and in normalized form (r, g, b). The second text line shows the present color saturation value 0 < sa < 1, the darkness factors of the bottom and top color tones, qu and qt, those of the basic and enhanced color tones, def.dark and def.light (used for hard ball shading, see Secs. 6.2.7, 6.3.5), and the gamma factor value gam. The darkness factors are based on the color model discussed in detail in Sec. 5.4. The five rectangular boxes (2.1) - (2.5) allow you to inspect and modify the present color/shading selection interactively. Box (2.1) gives a graphical display of the present color saturation value sa. The horizontal line separating the white and black part of the box visualizes the actual value 0 < sa < 1 with sa = 0.0 (gray tones only) at the bottom and sa = 1.0 (maximum color saturation, default) at the top of the box. The color saturation can be redefined by pointing inside box (2.1) at the appropriate height and clicking the left mouse button. This modifies the generic color by admixing gray accordingly. The result is shown in boxes (2.4), (2.5) and the numerical RGB values of the generic color are updated in the two text lines. Box (2.2) gives a graphical display of the present darkness factor values qu, qt determining the color tone range and def.dark, def.light defining the basic/enhanced color tones. All values lie within the range [0,1] where 0 (1) corresponds to the bottom (top) of the box. Further, there is an order constraint qu < def.dark < def.light < qt . The value qu (qt) defines the bottom (top) line of the white area inside the box and def.dark (def.light) determines the lower (upper) black line inside the white area. __ 376 _________________ Sec. 6.5.1.2. ___________________________________ Pointing inside the box at a given height and clicking the left mouse button determines a new darkness factor qq corresponding to the height and used to redefine the color shading range. If qq is closer in absolute value to qu than to qt then qu will be replaced by qq. Otherwise qt will be replaced by qq. However, the above constraint forces qu < def.dark and qt > def.light. The new definition quantified in the text line is shown in box (2.2) by a changed white area and its consequences for the color shading in box (2.5). Pointing inside the box at a given height and clicking the right mouse button determines a new darkness factor qq corresponding to the height and used to redefine the basic/enhanced color tones. If qq is closer in absolute value to def.dark than to def.light then def.dark will be replaced by qq. Otherwise def.light will be replaced by qq. However, the above constraint forces def.dark > qu and def.light < qt. The new definition quantified in the text line is shown in box (2.2) by changed positions of the black lines and its consequences for the color shading in boxes (2.4), (2.5). Box (2.3) gives a graphical display of the present value of the gamma factor gam defined by the position of the white (black) horizontal line. The white area at the lower half of the box refers to values 0 < gam < 1 (linear scale with 0 = bottom, 1 = top) while the black area at the top gives values 1 < gam < 5 (linear scale with 1 = bottom, 5 = top). The gamma factor is used to determine the overall distribution of the tone values between darkest and lightest tones, see Sec. 5.4. Here gam = 1 corresponds to a homogeneous distribution whereas gam > 1 (gam < 1) emphasizes darker (lighter) tones. The gamma value can be redefined by pointing inside box (2.3) at the appropriate height and clicking the left mouse button. This sets the appropriate value and the result is shown in box (2.5). Box (2.4) gives a graphical impression of the present main color definition by three color rectangles from top to bottom. The topmost rectangle shows the generic color, the intermediate rectangle shows the basic color tone, and the bottom rectangle shows the enhanced color tone (used for hard ball shading, see Secs. 6.2.7, 6.3.5). Box (2.4) does not respond to mouse input. Box (2.5) gives a showing generic The generic line in this graphical impression of the present color definition all nsh different color tones produced from the present color as discussed in Sec. 5.4 by horizontal stripes. color itself is marked by a black (white) horizontal box. Box (2.5) does not respond to mouse input. ________________________ Sec. 6.5.1.2. ____________________________ 377 __ (3) | | | | | | | | | | | | | | | | | | | | | | | | | | | The BALL PAINTING/SHADING SECTION shows as Diff Lamb Spec ______ ______ ________ ________ ________ ________ | | | | | | | | | | | | SHAD | fuzz | dith | spec | | | | |________|________|________|________| | | | \ | | | (3.1) | | | _________ | | | /:::::::::::\ | | | /:::::::::::::::\ /| | | /:::::::::::::::::::\ (3.2) | .x. | |:::::::::::::::::::::| | . | .. | |...::::::::::::::::::| | . | .. | | .....:::::::::::::::|\ | . | .x | .....::::::::::::| (3.3) | . | | | .....::::::::::| |. | | \ .....:::::::/ x | | \ ....::::/ | | | \__________:/ | | | | | | |______|______| DIFF,LAMB,SPEC/SUM = THT,PHI = theta, qdiff qlamb qspec / sum phi listing the different ball shading weights and the direction of the incident light used for shading in BALSAC plots, see Secs. 6.2.7, 6.2.15, 6.3.5. Here qdiff, qlamb, qspec are the relative contributions of the diffuse background, the Lambert shading, and the specular reflection and sum gives the value of qdiff + qlamb + qspec. The second text line lists polar and azimuthal angles theta, phi of the incident light used for ball shading. The two rectangular boxes (3.1), (3.2) and the circular box (3.3) (showing an example of a shaded ball) allow you to inspect and modify the present shading definition interactively. Box (3.1) lists the four different shading modes as discussed in Secs. 6.2.7, 6.3.5 in respective subboxes shad fuzz dith spec : : : : hard ball shading (L = 6, default), fuzzy ball shading (L = 7), dithered ball shading (L = 8), full glossy shading (L = 9) where the present definition used for the ball painting in box (3.3) is shown in upper case characters. Pointing inside one of the four subboxes and clicking the left mouse button selects this shading mode (shown in upper cases in the following) and updates the ball painting in box (3.3). __ 378 _________________ Sec. 6.5.1.2. ___________________________________ Box (3.2) gives a graphical display of the present shading weights where all three values qdiff, qlamb, qspec lie within the range [0,1] with 0 (1) corresponding to the bottom (top) of the box. The actual values are given for qdiff at the left side, for qlamb at the vertical center line, and for qspec at the right side of the box and are connected by straight lines. Pointing inside the box at a given height close to the left side and clicking the left mouse button determines a new value qdiff corresponding to the height which replaces the old value of the diffuse background contribution. This updates the ball painting in box (3.3) and the new qdiff value is used in all subsequent ball drawings. Pointing inside the box at a given height close to the vertical center line and clicking the left mouse button determines a new value qlamb corresponding to the height which replaces the old value of the Lambert shading contribution. This updates the ball painting in box (3.3) and the new qlamb value is used in all subsequent ball drawings. Pointing inside the box at a given height close to the right side and clicking the left mouse button determines a new value qspec corresponding to the height which replaces the old value of the specular reflection contribution. This updates the ball painting in box (3.3) and the new qspec value is used in all subsequent ball drawings. Note that meaningful shading requires that the sum of all shading contributions sum = qdiff + qlamb + qspec should be of the order 1.0. Box (3.3) shows an example of a shaded ball with the present definition of color and shading parameters. Pointing inside the box at a given point and clicking the left/central mouse button selects the respective point at the ball surface which, together with the ball center, defines the new direction of the incident light used for ball shading. This is quantified by new values of the polar and azimuthal angles theta, phi in the text line and the ball painting is updated using the new definition. Pressing the left button will select the light source in front of the screen while pressing the right button assumes the light source behind the screen. ________________________ Sec. 6.5.1.2. ____________________________ 379 __ (4) The COLOR SAVE/RECALL SECTION shows as | | | ____ ____ ____ ____ ____ ____ ____ _____ ____ ___ ____ ____ ____ | | |____|____|____|____|____|____|____|____|____|____| |____|____|____| | | blk wht bak txt bnd srd sbl swt 1 2 ... ncsav save +/| | | +-----------------------------------------------------------------------+ giving a sequence of color subboxes which may be empty or filled with colors. The different boxes refer to generic colors which are defined in the initializa file, see Secs. 6.2.15, 6.4.7, 5.4 and are used inside BALSAC. The definitions are blk wht bak txt bnd srd sbl swt 1 - ncsav : : : : : : : : : default default default default default default default default generic color color color color color color color color color used for "black", used for "white", used for background painting, used for text, used for bonds connecting atoms, used for "stereo red", used for "stereo blue", used for "stereo white", definitions used for ball painting. Pointing inside one of the subboxes denoted blk - ncsav and clicking the left mouse button assigns the present color setting (generic color, see color selection above) to the respective definition which is confirmed by the generic color filling the appropriate subbox. This color assignment will be used in any subsequent initialization file store, see below. Pointing inside one of the subboxes denoted blk - ncsav and clicking the right mouse button recalls the color definition of the respective subbox replacing the present color setting which is confirmed by an update of boxes (2.1) - (2.4), (3.3) and by moving the mouse cursor to the respective point inside the color hexagon which defines the respective generic color. Pointing inside the subbox denoted "save" and clicking the left mouse button saves all present color definitions in an external output file using the BALSAC initialization file definition, see Sec. 6.4.7. If TSTCOL was started with an explicit initialization file named "initfile" the name of the output file will be "initfile$" for the first file store of the session, "initfile$$" for the second file store, etc. Otherwise, the output file will be named "tstcol.sav", "tstcol.sav$", etc. Pointing inside the subbox denoted "+/-" and clicking the left mouse button increases the number ncsav of different color definitions by 1 and adds a new subbox denoted "ncsav+1" to the existing palette. Pointing inside the subbox denoted "+/-" and clicking the right mouse button decreases the number ncsav of different color definitions by 1 and removes the subbox denoted "ncsav" from the existing palette. Any previous color definition of this subbox will be lost. __ 380 _________________ Sec. 7. _________________________________________ 7. IN CASE OF TROUBLE Due to the complexity of the program system a number of problems can arise if BALSAC is used with false or meaningless parameter settings or run with inappropriate hardware. Some problems and possible solutions are listed in the following where {DOS} refers to the DOS/VGA and {Unix} to the Unix/X.11 version. * GENERAL HARDWARE PROBLEMS: required hardware is {DOS} : - 560 KB free memory, CPU with math coprocessor (included with i486-DX2, Pentium systems), - VGA graphics adapter (256 KB memory), - Mouse with full Microsoft compatibility. {Unix} : - 16 MB memory, - X.11 Windows accessible graphics adapter. * BALSAC FINISHES WITH A RUN TIME ERROR MESSAGE {DOS}. run time error F6002: or run time error F6002 - floating-point support not loaded . You want to run BALSAC on a PC without floating-point hardware. Your system may not have a math coprocessor installed (Intel 80286, 80386, and Intel 80486-SX based systems) or the math coprocessor option may be disabled. :: Check your hardware. Your PC MUST be equipped with the math coprocessor option to be able to run BALSAC. * BALSAC DOES NOT START UP CORRECTLY {DOS} resulting in an error message Program size exceeds available memory or with similar indications of memory shortage. BALSAC uses 560 KB of memory and may not get it due to memory resident utilities or hardware drivers. :: Remove any unnecessary memory resident software (utilities, drivers) or load into high memory. ________________________ Sec. 7. __________________________________ 381 __ * BALSAC DOES NOT START UP CORRECTLY {DOS/Unix} resulting in an error message INIT FILE ERROR : F = balsac2.ini (or any other file name) WARNING: load new INIT file to continue and finishes after you press [enter]. The initialization file 'balsac2.ini' (or any other file name) does not exist in your directory or in the default directories of your path. Alternatively or in addition, the initialization file may contain incorrect parameter values or file format. :: Search your directory paths for the initialization file or obtain a copy from the original package. Check your initialization file for correct parameter settings and format, see Sec. 6.4.7. * ON-LINE HELP IS NOT AVAILABLE IN BALSAC {DOS/Unix} sessions which may be indicated by an error message WARNING: help file unaccessible, no on-line help available at startup. The on-line help file 'balsac2.hlp' (or any other file name defined in the command line) does not exist in your directory or in the default directories of your path. Alternatively or in addition, the help file may contain incorrect parameter values or file format. :: Search your directory paths for the on-line help file or obtain a copy from the original package. Check your on-line help file for correct parameter settings and format, see Sec. 6.4.8. * BALSAC DOES NOT START UP CORRECTLY {DOS/Unix} finishing with an error message ERROR: Input/output/init file . The structure output file given on the command line does not exist. :: Search for your input file. Check file name syntax. __ 382 _________________ Sec. 7. _________________________________________ * BALSAC FINISHES WITH A RUN TIME ERROR MESSAGE {DOS}. run time error F6xxx: READ(filename) BALSAC finds a format error during file input from a file "filename". :: Check the detailed format of your input file, see Secs. 6.4.2, 6.4.3. * BALSAC DOES NOT ACCEPT FILE NAMES USED FOR FILE OUTPUT {Unix} in interactive sessions or crashes upon quitting with an error message similar to The I/O operation on unit 2 cannot be completed (Permission denied). You may be running BALSAC in a directory where you do not have write permission. :: Check and change the settings appropriately. * BALSAC STARTS UP WITH THE MESSAGE {Unix} Terminal mode, no graphics display while you are running on an X terminal expecting graphics output {Unix}. Your display address may be incorrect and may need to be reset. :: On the Unix command line (c shell) use "setenv | grep DISPLAY" to obtain your present display setting. Redefine the setting by "setenv DISPLAY DDD" where DDD is the correct internet device address, e.g. "wagner:0.0". Consult you system administrator when you are in doubt about the address. * THE MOUSE POINTER DOES NOT WORK CORRECTLY WITH BALSAC {DOS}. The mouse interface software (drivers MOUSE.SYS or MOUSE.COM) has not been run before BALSAC was started or your mouse is not fully Microsoft compatible. For graphics resolutions other than standard CGA, EGA, VGA special mouse drivers are required to get the mouse to work. :: Load the mouse driver and restart BALSAC. Obtain the correct driver software applicable for your mouse device from your systems administrator or dealer. ________________________ Sec. 7. __________________________________ 383 __ * You get an ERROR MESSAGE {Unix} ERROR: can't open display DDD when you start graphics output inside a BALSAC session. Your display address may be incorrect and may need to be reset. :: On the Unix command line (c shell) use "setenv | grep DISPLAY" to obtain your present display setting. Redefine the setting by "setenv DISPLAY DDD" where DDD is the correct internet device address, e.g. "wagner:0.0". Consult you system administrator when you are in doubt about the address. * BALSAC GRAPHICS DOES NOT SHOW OR LOOKS INCORRECT {DOS/Unix}. You may be using an inappropriate adapter type or an adapter with incorrect PROM specifications {DOS}. The X.11 Windows implementation of your system does not work with your adapter {Unix}. :: For adapter problems check with your systems administrator or dealer. You may have to execute a warm restart of your PC system before you can continue {DOS}. * BALL SHADING (HARD, FUZZY, DITHERED, GLOSSY) DOES NOT SHOW OR LOOKS INCORRECT {DOS,Unix}. The contrast setting of your monitor may be inappropriate. The color definitions may be incorrect. :: Readjust the monitor contrast setting. Check the color tables inside your BALSAC session (with the basic parameter option) and in the initialization file, see Secs. 5.4, 6.2.15, 6.4.8. * PARTS OF THE GRAPHICS OUTPUT DO NOT APPEAR {DOS,Unix}. You may have chosen "black" as one of the element colors or as the background color. :: Check the color settings inside your BALSAC session (with the control parameter option) and in the initialization file, see Secs. 5.4, 6.2.15, 6.4.8. __ 384 _________________ Sec. 7. _________________________________________ * THE GRAPHICS OUTPUT EXCEEDS THE SCREEN/WINDOW AREA {DOS,Unix}. You may have chosen too large values of the magnification factor (View option, see Sec. 6.2.6) or of the y/x pixel ratio, see Sec. 6.2.15. If graphics output exceeds the screen area there may arise problems with memory resident screen capture utilities in combination with VGA compatible adapters {DOS}. Graphics windows exceeding the screen area can kill your present BALSAC session destroying all your structure information. Make sure that your graphics window lies always inside the screen area {Unix}. :: Check and readjust all window definitions inside your BALSAC session (with the basic parameter option) and in the initialization file, see Secs. 6.2.15, 6.4.8. * BALSAC CRASHES WITH AN ERROR MESSAGE "X.11 FATAL ERROR" {Unix}. Your X.11 Windows server has encountered a non-recoverable error in one of the BALSAC graphics windows, e. g. when a window was erased erroneously by another X.11 application. The additional message Error exit: session may be recovered with "balsac -Xp" (using file balsac.svX) allows you to resume the BALSAC session where "X" = l for a LATTICE and = c for a CLUSTER session. Note that this message appears only if your BALSAC session has generated a complete set of structure data. * BALSAC CRASHES WITH AN ERROR MESSAGE {Unix} X.11 color allocation error ncall) (colors required = nctot, allocated = BALSAC tries to allocate nctot colors for a graphics or menu window but gets only ncall colors from the X.11 Windows server since other X.11 applications take away too many color cells. The additional message Error exit: session may be recovered with "balsac -Xp" (using file balsac.svX) allows you to resume the BALSAC session where "X" = l for a LATTICE and = c for a CLUSTER session. Note that this message appears only if your BALSAC session has generated a complete set of structure data. :: Close some of your present X.11 applications and restart BALSAC. ________________________ Sec. 8. __________________________________ 385 __ 8. PROGRAMMING NOTES AND RESTRICTIONS The BALSAC ((C) Copyright 1991-6 K. Hermann) software package exists as a DOS PC and as a Unix workstation version. The PC version is developed to run on IBM PC/AT/XT, PS/2 or fully compatible personal computers using MS-DOS or PC-DOS 5.0 or later versions. The PC must be equipped with an Intel 8087 / 80287 / 80387 Math Coprocessor or an Intel 80487 / Pentium Processor. The BALSAC load module uses 560 kB of DOS memory. BALSAC can also be run as a full screen application inside MS Windows 3.x if the memory assigned to DOS exceeds 560 kB. Graphics require a CGA, EGA, or VGA graphics adapter. Compilation of the numerical parts was performed with the Microsoft (R) Fortran Compiler Version 5.1. Assembler graphics and interactive utilities were developed with the Microsoft (R) Macro Assembler Version 6.11. The workstation version is developed to run on Unix workstations and mainframes equipped with X.11 Windows (Release 3 or later) software. The workstation must include a color adapter and monitor allowing a minimum of 256 different colors. Compilation of the software requires a standard Fortran 77 compiler for the numerical part, an ANSI C compiler for the graphics interface, and the basic X.11 Windows library xlib. The system linker must be able to link Fortran and C objects together (language mixing feature). As compiled, the BALSAC can handle internally general lattices with up to - 201 - 27 (= nbmax) different atoms per unit cell. different point symmetry elements per lattice. and lattice sections, clusters with up to - namax different atoms, namax = 2001 (DOS/VGA), = 8000 (Unix/X.11). atoms 20 different restructured layers including up to 50 inequivalent of the layer primitive cell. - 20 different link constraints to connect atoms by lines/sticks. The size of meaningful lattice sections or clusters is restricted mainly by the resolution of the graphics adapter. A section of 35 x 35 atoms per lattice plane seems to be an upper limit (also depending on the view, view options, stereo mode etc.). If the total number of atoms of a layer / block exceeds the above maximum nmax a warning will be issued and only nmax atoms will be displayed resulting in incomplete structures. __ 386 _________________ Sec. 9. _________________________________________ 9. BIBLIOGRAPHY AND SOFTWARE General information on crystallographic data is available e. g. from [ ] New R.W.G. Wyckoff, "Crystal Structures" Vol. I-VI, Interscience Pub., York 1963. [ ] H.D. Megaw, "Crystal Structures: A Working Approach", W.B. Saunders Co., Philadelphia 1973. [ ] E.A. Wood, "The 80 Diperiodic Groups in Three Dimensions", Bell System Techn. Journ. 43 (Part 2), 541 (1964). For literature on surfaces structure methods and theory consult [ ] M.A. Van Hove, W.H. Weinberg, and C.M. Chan, "Low Energy Electron Diffraction", Springer Series in Surface Science, Vol. 6, Heidelberg 1986 [ ] M.A. Van Hove and G.A. Samorjai, Surf. Sci. 92 (1980) 489. [ ] G.A. Samorjai and M.A. Van Hove, Prog. Surf. Sci. 80 (1989) 201. [ ] Surf. H. Ohtani, C.-T. Kao, M.A. Van Hove and G.A. Somorjai, Progr. Sci. 23 (1986) 155. [ ] P. Jiang, F. Jona, and P.M. Marcus, Phys. Rev. B35 (1987) 7952. [ ] D.R. Eisner and T.L. Einstein, Surf. Sci. Letters 286 (1993) L559. [ ] D.P. Woodruff and T. A. Delchar, "Modern Techniques of Surface Science", Cambridge University Press 1986. [ ] J.F. Nicholas, "An Atlas of Models of Crystal Surfaces, Gordon and Breach, New York, 1965. (out of print) [ ] J.F. Nicholas in Landold-Boernstein, New Series, "Physics of Solid Surfaces, Subvolume a, Structure", Vol. III/24a, Springer 1993. Compilations of solved surface structures are provided by [ ] J.M. McLaren, J.B. Pendry, P.J. Rous, D.K. Saldin, G.A. Somorjai, M.A. Van Hove and D.D. Vvedensky "Surface Crystallographic Information Service (SCIS): A Handbook of Surface Structures", Reidel Publishing (Dordrecht 1987), The Netherlands, or Kluwer Academic Publishers Group, USA). This compilation lists structures only up to 1985 and is therefore outdated. [ ] P.R. Watson, "Critical Compilation of Surface Structures Determined By LEED Crystallography" J. Phys. Chem. Ref. Data 16 (1987) 953. ________________________ Sec. 9. __________________________________ 387 __ [ ] P.R. Watson, "Critical Compilation of Surface Structures Determined By Ion Scattering Compared with those from LEED Crystallography" J. Phys. Chem. Ref. Data 19 (1990) 85. [ ] P.R. Watson, "Critical Compilation of Surface Structures Determined By SEXAFS Compared with Those from LEED and Ion Scattering" J. Phys. Chem. Ref. Data 21 (1992) 123. [ ] P.R. Watson, M.A. Van Hove, and K. Hermann, "Atlas of Surface Structures", Vols. 1A,B, J. of Phys. and Chem. Ref. Data, Monograph No. 5 (1994). This is the book form of SSD Version 1, see below. [ ] P.R. Watson, M.A. Van Hove, and K. Hermann, "NIST Surface Structure Database (SSD Version 2), Users' Guide", NIST Standard Reference Database # 42, Washington 1996. This database is available for PCs and represents the most recent electronic compilation of surface structures up to mid 1995. To obtain further information and software copies: [ ] [ ] Hove BALSAC : contact the author K. Hermann, Fritz-Haber-Institut, Faradayweg 4-6, 1000 Berlin 33, Germany; SARCH/LATUSE/PLOT3D : contact either of the authors (M. A. Van or K. Hermann) listed at the beginning of this manual; [ ] SCIS : contact or order from D. Reidel Publ. Co., P.O. Box 17, NL-3300 AA Dordrecht, The Netherlands or Kluwer Academic Publishers Group, USA; [ ] SSD Version 2: contact Standard Reference Data (Standard Reference Database # 42), National Institute of Standards and Technology, Bldg. 221/Room A320, Gaithersburg, MD 20899 (USA). __ 388 _________________ Sec. 10. ________________________________________ 10. LIST OF OPTION MENUS This section contains a list of all option menus used inside BALSAC. The menus are shown in a form similar to that used for the menu windows of the Unix/X.11 version when the mouse option is activated, see Secs. 3.3.8, 6.2.15, 6.3.13. All menus are numbered according to an internal scheme also used in the on-line help file, see Sec. 6.4.8, and shown in menus and in interactive help prompts whenever the menu index flag is set, see Sec. 6.2.15. Options are shown as | X: option text | --> nn where X denotes the character key to be pressed in keyboard input mode (in mouse mode of the DOS/VGA version the character is selected by mouse pointing and left click) while in mouse mode of the Unix/X.11 version the option box is pointed at and selected by left click. Number nn refers to the menu which follows after the option was selected. This allows you to analyze the complete menu tree. The option menus are shown both with the entries ordered according to the ASCII sequence of the character codes (left menu, default ordering) and in the original sequence of entries (right menu). Different ordering can be obtained in BALSAC with the menu order flag, see Sec. 6.2.15. Entry "(section)" at the bottom right of each menu denotes the manual section where the menu appears and its options are explained. Note that menus no. 1, 2, 5, 6, or 8 are shown when BALSAC is started depending on the options selected on the command line. ordered menu original menu goto, (section) ---------------------------------------------------------------------------+- 1 | C: | L: | M: | T: ---------------------+ CLUSTER session | LATTICE session | Mouse menu (off) | Teach mode (off) | +- 1 | L: | C: | M: | T: ---------------------+ LATTICE session | CLUSTER session | Mouse menu (off) | Teach mode (off) | --> --> --> --> 6 2 1 1 | ,: Escape / Menu off | +-------------------------+ | ,: Escape / Menu off | --> exit +-------------------------+ (6.1) +- 2 ---------------------+ | F: File input | | I: Interactive session | | L: LATTICE session | | P: Previous session | | R: Resume (balsac.plt) | | ,: Escape / Menu off | +-------------------------+ +- 2 ---------------------+ | I: Interactive session | | R: Resume (balsac.plt) | | P: Previous session | | F: File input | | L: LATTICE session | | ,: Escape / Menu off | +-------------------------+ +- 3 ---------------------+ | N: New session confirm | | ,: Escape / Menu off | +-------------------------+ +- 3 ---------------------+ | N: New session confirm | --> 9 | ,: Escape / Menu off | --> 5 +-------------------------+ (6.3.8) --> 9 --> 5 --> 5 --> 5 --> 6 --> exit (6.3) ________________________ Sec. 10. _________________________________ 389 __ +- 4 ---------------------+ | C: Atoms+cell ->LATTICE | | L: LATTICE from scratch | | P: Atoms ->LATTICE | | ,: Escape / Menu off | +-------------------------+ +- 4 ---------------------+ | P: Atoms ->LATTICE | | L: LATTICE from scratch | | C: Atoms+cell ->LATTICE | | ,: Escape / Menu off | +-------------------------+ +- 5 ---------------------+ | A: Analyze structure | | E: Restart session | | G: Graphics parameters | | I: Input from file | | K: Stack option | | L: LATTICE transfer | | N: New session start | | O: Output to file | | P: Parameters (basic) | | R: Radii, charges | | S: Structure changes | | T: Title change | | V: Viewing parameters | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ (6.2.6,6.3.0) +- 5 ---------------------+ | S: Structure changes | | R: Radii, charges | | V: Viewing parameters | | G: Graphics parameters | | O: Output to file | | X: Plot/list structure | | N: New session start | | I: Input from file | | L: LATTICE transfer | | A: Analyze structure | | P: Parameters (basic) | | E: Restart session | | K: Stack option | | T: Title change | | ,: Escape / Menu off | +-------------------------+ +- 6 ---------------------+ | C: CLUSTER session | | F: File input | | I: Interactive session | | P: Previous session | | R: Resume (balsac.lat) | | ,: Escape / Menu off | +-------------------------+ +- 6 ---------------------+ | I: Interactive session | | R: Resume (balsac.lat) | | P: Previous session | | F: File input | | C: CLUSTER session | | ,: Escape / Menu off | +-------------------------+ +- 7 ---------------------+ | N: New session confirm | | ,: Escape / Menu off | +-------------------------+ +- 7 ---------------------+ | N: New session confirm | --> 50 | ,: Escape / Menu off | --> 8 +-------------------------+ (6.2.10) --> 6 --> 6 --> 6 --> 5 (6.3.10) --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> 9 10 26 29 27 75 3 5 4 46 38 68 72 5 5 --> 50 --> 8 --> 8 --> 8 --> 2 --> exit (6.2) __ 390 _________________ Sec. 10. ________________________________________ +- 8 ---------------------+ | A: Analyze structure | | C: Change/rebuild layer | | E: Refresh menu (batch) | | G: Graphics parameters | | I: Input from file | | K: Stack option | | L: Lattice definition | | M: Miller indices | | N: New session start | | O: Output to file | | P: Parameters (basic) | | R: Radii, charges | | S: Section size, shape | | U: CLUSTER transfer | | V: Viewing parameters | | X: Plot/list structure | | Y: Define atoms (batch) | | ,: Escape / Menu off | +-------------------------+ (6.2.0,6.2.6) +- 8 ---------------------+ | L: Lattice definition | | R: Radii, charges | | M: Miller indices | | S: Section size, shape | | C: Change/rebuild layer | | V: Viewing parameters | | G: Graphics parameters | | O: Output to file | | X: Plot/list structure | | N: New session start | | I: Input from file | | E: Refresh menu (batch) | | U: CLUSTER transfer | | A: Analyze structure | | P: Parameters (basic) | | K: Stack option | | Y: Define atoms (batch) | | ,: Escape / Menu off | +-------------------------+ +- 9 ---------------------+ | A: Atom options | | D: Display analysis txt | | F: File input (atoms) | | G: Group options | | L: List atoms | | R: Radii, charges | | S: Symmetry constraints | | T: Title change | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ +- 9 ---------------------+ | R: Radii, charges | | A: Atom options | | G: Group options | | F: File input (atoms) | | L: List atoms | | T: Title change | | D: Display analysis txt | | S: Symmetry constraints | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ --> 10 --> 15 --> 18 --> 23 --> 9 --> 9 --> 9 --> 81 --> 75 --> 5 (6.3.2) +- 10 --------------------+ | A: All radii changed | | D: Display analysis txt | | E: Selected charges | | L: All charges changed | | R: Rescale all radii | | S: Selected radii | | T: Table of el. radii | | X: Plot/list structure | | Z: Element radii | | ,: Escape / Menu off | +-------------------------+ +- 10 --------------------+ | A: All radii changed | | Z: Element radii | | S: Selected radii | | R: Rescale all radii | | L: All charges changed | | E: Selected charges | | D: Display analysis txt | | T: Table of el. radii | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ --> 11 --> 12 --> 13 --> 10 --> 10 --> 10 --> 10 --> 10 --> 75 --> 9 (6.3.2) +- 11 --------------------+ +- 11 --------------------+ --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> --> 50 56 8 (48) 60 53 26 29 44 22 7 8 8 36 46 38 72 8 51 | A: Absolute radii (all) | | R: Relative radii (all) | | ,: Escape / Menu off | +-------------------------+ | A: Absolute radii (all) | | R: Relative radii (all) | | ,: Escape / Menu off | +-------------------------+ --> 10 --> 10 --> 10 (6.3.2) ________________________ Sec. 10. _________________________________ 391 __ +- 12 --------------------+ | A: Abs. element radii | | R: Rel. element radii | | ,: Escape / Menu off | +-------------------------+ +- 12 --------------------+ | A: Abs. element radii | | R: Rel. element radii | | ,: Escape / Menu off | +-------------------------+ --> 12 --> 12 --> 10 (6.3.2) +- 13 --------------------+ | A: Abs. selected radii | | R: Rel. selected radii | | ,: Escape / Menu off | +-------------------------+ +- 13 --------------------+ | A: Abs. selected radii | | R: Rel. selected radii | | ,: Escape / Menu off | +-------------------------+ --> 13 --> 13 --> 10 (6.3.2) +- 14 --------------------+ | A: List all atoms | | I: List invisible atoms | | V: List visible atoms | | ,: Escape / Menu off | +-------------------------+ +- 14 --------------------+ | A: List all atoms | | V: List visible atoms | | I: List invisible atoms | | ,: Escape / Menu off | +-------------------------+ --> 46 --> 46 --> 46 --> 46 (6.3.12) +- 15 --------------------+ | A: Add atom (cartes.) | | C: Copy atom | | H: Hide atom(s) | | I: Add atom (intern.) | | M: Modify atom | | P: Purge hidden atoms | | R: Recenter structure | | S: Sequent.repeat (off) | | T: Translate atom | | U: Unhide atom(s) | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ +- 15 --------------------+ | A: Add atom (cartes.) | | H: Hide atom(s) | | T: Translate atom | | C: Copy atom | | U: Unhide atom(s) | | R: Recenter structure | | S: Sequent.repeat (off) | | P: Purge hidden atoms | | I: Add atom (intern.) | | M: Modify atom | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ --> 15 --> 16 --> 15,17 --> 15,17 --> 71 --> 15 --> 15 --> 15 --> 15 --> 15 --> 75 --> 9 (6.3.2) +- 16 --------------------+ | H: Hide atoms confirm | | ,: Escape / Menu off | +-------------------------+ +- 16 --------------------+ | H: Hide atoms confirm | --> 15 | ,: Escape / Menu off | --> 15 +-------------------------+ (6.3.2) +- 17 --------------------+ | R: Repeat operation | | ,: Escape / Menu off | +-------------------------+ +- 17 --------------------+ | R: Repeat operation | --> 17 | ,: Escape / Menu off | --> 15 +-------------------------+ (6.3.2) __ 392 _________________ Sec. 10. ________________________________________ +- 18 --------------------+ | A: Add rotated group | | C: Copy group | | E: Expand group | | F: Add expanded group | | G: Group definition | | H: Hide group | | I: Mirror group | | J: Add mirrored group | | L: List group | | P: Copy group to file | | R: Rotate group | | S: Seqent. repeat (off) | | T: Translate group | | U: Unhide group | | V: Move group to file | | X: Plot/list structure | | Z: Define group charge | | ,: Escape / Menu off | +-------------------------+ +- 18 --------------------+ | G: Group definition | | H: Hide group | | T: Translate group | | C: Copy group | | R: Rotate group | | A: Add rotated group | | E: Expand group | | L: List group | | Z: Define group charge | | S: Seqent. repeat (off) | | P: Copy group to file | | V: Move group to file | | F: Add expanded group | | I: Mirror group | | J: Add mirrored group | | U: Unhide group | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ --> 19 --> 20 --> 18,21 --> 18,21 --> 18,21 --> 18,21 --> 18,21 --> 18 --> 18 --> 18 --> 18 --> 18 --> 18,21 --> 18,21 --> 18,21 --> 20 --> 75 --> 9 (6.3.2) +- 19 --------------------+ | A: Add to group | | G: Group define (new) | | R: Remove from group | | ,: Escape / Menu off | +-------------------------+ +- 19 --------------------+ | G: Group define (new) | | A: Add to group | | R: Remove from group | | ,: Escape / Menu off | +-------------------------+ --> 18 --> 18 --> 18 --> 18 (6.3.2) +- 20 --------------------+ | H: Hide group confirm | | U: Unhide group confirm | | ,: Escape / Menu off | +-------------------------+ +- 20 --------------------+ | H: Hide group confirm | | U: Unhide group confirm | | ,: Escape / Menu off | +-------------------------+ --> 18 --> 18 --> 18 (6.3.2) +- 21 --------------------+ | R: Repeat operation | | ,: Escape / Menu off | +-------------------------+ +- 21 --------------------+ | R: Repeat operation | --> 18 | ,: Escape / Menu off | --> 18 +-------------------------+ (6.3.2) ________________________ Sec. 10. _________________________________ 393 __ +- 22 --------------------+ | +: Repeat same plot | | 2: Theta decrease | | 4: Phi decrease | | 6: Phi increase | | 8: Theta increase | | E: Export picture | | I: Import picture | | L: Load from stack | | M: Magnify | | O: Other (main) menu | | P: Perspective decrease | | Q: Analyze/change | | R: Rotate left | | S: Save to stack | | T: Transfer to CLUSTER | | m: Shrink | | p: Perspective increase | | r: Rotate right | | ,: Escape / Menu off | +-------------------------+ +- 22 --------------------+ | 8: Theta increase | | 2: Theta decrease | | 4: Phi decrease | | 6: Phi increase | | r: Rotate right | | R: Rotate left | | p: Perspective increase | | P: Perspective decrease | | m: Shrink | | M: Magnify | | +: Repeat same plot | | Q: Analyze/change | | L: Load from stack | | S: Save to stack | | T: Transfer to CLUSTER | | O: Other (main) menu | | E: Export picture | | I: Import picture | | ,: Escape / Menu off | +-------------------------+ --> 22 --> 22 --> 22 --> 22 --> 22 --> 22 --> 22 --> 22 --> 22 --> 22 --> 22 --> 74 --> 73 --> 22 --> 80,75 --> 8 --> 22 --> 22 --> 8 (4.3,6.2.9) +- 23 --------------------+ | A: Add all atoms | | P: Prompt atom input | | ,: Escape / Menu off | +-------------------------+ +- 23 --------------------+ | A: Add all atoms | | P: Prompt atom input | | ,: Escape / Menu off | +-------------------------+ --> 9 --> 24 --> 9 (6.3.2) +- 24 --------------------+ | A: Accept atom add | | I: Ignore atom | | ,: Escape / Menu off | +-------------------------+ +- 24 --------------------+ | A: Accept atom add | | I: Ignore atom | | ,: Escape / Menu off | +-------------------------+ --> 24 --> 24 --> 9 (6.3.2) +- 25 --------------------+ | S: Store incomplete set | | ,: Escape / Menu off | +-------------------------+ +- 25 --------------------+ | S: Store incomplete set | --> 8 | ,: Escape / Menu off | --> 8 +-------------------------+ (6.2.8) +- 26 --------------------+ | A: All view parameters | | D: Display analysis txt | | F: Focus of view | | M: Magnification | | P: Phi angle | | Q: Perspective | | R: Rotation angle | | S: Shift plot globally | | T: Theta angle | +- 26 --------------------+ | V: View vector (Miller) | | T: Theta angle | | P: Phi angle | | R: Rotation angle | | M: Magnification | | Q: Perspective | | F: Focus of view | | A: All view parameters | | D: Display analysis txt | --> --> --> --> --> --> --> --> --> 26 26 26 26 26 26 26 26 26 | V: View vector (Miller) | | W: Color/shd. workbench | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ (6.2.6,6.3.4) | S: Shift plot globally | | W: Color/shd. workbench | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ --> 26 --> 26 -->22,75 --> 8, 5 __ 394 _________________ Sec. 10. ________________________________________ +- 27 --------------------+ | F: File name for output | | I: Init data incl.(off) | | O: Logo include (off) | | Q: Quick save (default) | | ,: Escape / Menu off | +-------------------------+ +- 27 --------------------+ | F: File name for output | | Q: Quick save (default) | | I: Init data incl.(off) | | O: Logo include (off) | | ,: Escape / Menu off | +-------------------------+ --> 28 --> 5 --> 27 --> 27 --> 5 (6.3.6) +- 28 --------------------+ | C: Color PostScript | | I: Init data incl.(off) | | G: Gray tone PostScript | | K: SCHAKAL format | | L: LATUSE format | | O: Logo include (off) | | P: PLOT3D format | | ,: Escape / Menu off | +-------------------------+ +- 28 --------------------+ | P: PLOT3D format | | K: SCHAKAL format | | G: Gray tone PostScript | | C: Color PostScript | | L: LATUSE format | | I: Init data incl.(off) | | O: Logo include (off) | | ,: Escape / Menu off | +-------------------------+ --> 5 --> 5 --> 5 --> 5 --> 5 --> 28 --> 28 --> 5 (6.3.6) +- 29 --------------------+ | B: Background color | | C: Connect atoms (link) | | D: Design of atoms | | L: Layout of plot | | M: Mode (LATTICE only) | | P: Palette start (colr) | | S: Stereo dupl. (off) | | T: Table of colors | | W: Color/shd. workbench | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ (6.2.7,6.3.5) +- 29 --------------------+ | M: Mode (LATTICE only) | | D: Design of atoms | | S: Stereo dupl. (off) | | B: Background color | | P: Palette start (colr) | | T: Table of colors | | C: Connect atoms (link) | | L: Layout of plot | | W: Color/shd. workbench | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ --> --> --> --> --> --> --> --> --> --> --> 83 84 29 29 29 29 32 33 29 22,75 8, 5 ________________________ Sec. 10. _________________________________ 395 __ +- 30 --------------------+ | +: Replot and return | | :: Reduce atoms (test!) | | A: Average atom coords. | | B: Basis sketch (XYZ) | | C: Color atoms/backgrnd | | D: Distances | | E: Environment shells | | F: Focus change | | G: Group definition | | H: Hide atoms | | I: Include 2-dim lines | | J: Erase last line | | K: Color links (bonds) | | L: Links between atoms | | M: Remove group atoms | | N: Normal vector | | O: Copy group | | P: Add atoms to group | | Q: Default focus/shift | | R: Dir. plane distance | | S: Shift plot globally | | T: Translate group | | U: Unhide atoms | | V: Angles, distances | | Y: Shift atom nearest | | Z: Show/save lines(off) | | ,: Escape / Menu off | +-------------------------+ +- 30 --------------------+ | D: Distances | | V: Angles, distances | | G: Group definition | | P: Add atoms to group | | M: Remove group atoms | | H: Hide atoms | | A: Average atom coords. | | N: Normal vector | | L: Links between atoms | | E: Environment shells | | Z: Show/save lines(off) | | C: Color atoms/backgrnd | | T: Translate group | | O: Copy group | | K: Color links (bonds) | | I: Include 2-dim lines | | U: Unhide atoms | | J: Erase last line | | Y: Shift atom nearest | | F: Focus change | | B: Basis sketch (XYZ) | | S: Shift plot globally | | Q: Default focus/shift | | +: Replot and return | | :: Reduce atoms (test!) | | R: Dir. plane distance | | ,: Escape / Menu off | +-------------------------+ --> 30 --> 30 --> 30 --> 30 --> 30 --> 30 --> 30 --> 30 --> 30 --> 30 --> 30 --> 30 --> 30 --> 30 --> 30 --> 30 --> 30 --> 30 --> 30 --> 30 --> 30 --> 30 --> 34 --> 75 --> 30 --> 30 --> 75 (6.3.12) +- 31 --------------------+ | A: Analyze atoms | | B: Basic lattice | | D: Coincidence distance | | F: Full lattice listing | | M: Miller adapt lattice | | R: Restructuring | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ +- 31 --------------------+ | B: Basic lattice | | M: Miller adapt lattice | | R: Restructuring | | F: Full lattice listing | | A: Analyze atoms | | D: Coincidence distance | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ --> 86,31 --> 86,31 --> 31 --> 86,31 --> 31 --> 31 --> 22 --> 8 (6.2.14) +- 32 --------------------+ | A: Add atom link | | C: Colors of links | | D: Display analysis txt | | E: Erase atom link | | N: New atom links | | R: Radii of link sticks | | T: Display color table | +- 32 --------------------+ | N: New atom links | | A: Add atom link | | E: Erase atom link | | C: Colors of links | | R: Radii of link sticks | | T: Display color table | | D: Display analysis txt | --> --> --> --> --> --> --> 32 32 32 32 32 32 32 | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ | X: Plot/list structure | --> 22 | ,: Escape / Menu off | --> 29 +-------------------------+ (6.2.7) __ 396 _________________ Sec. 10. ________________________________________ +- 33 --------------------+ | B: Basis show (LAT,off) | | F: Frame by lines (on) | | L: Label atoms (none) | | P: Painting (LAT,layer) | | T: Title show (on) | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ (6.2.7,6.3.5) +- 33 --------------------+ | T: Title show (on) | | B: Basis show (LAT,off) | | F: Frame by lines (on) | | P: Painting (LAT,layer) | | L: Label atoms (none) | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ +- 34 --------------------+ | Q: Default view confirm | | ,: Escape / Menu off | +-------------------------+ (6.2.14,6.3.12) +- 34 --------------------+ | Q: Default view confirm | --> 74,30 | ,: Escape / Menu off | --> 74,30 +-------------------------+ --> --> --> --> --> --> --> 33 33 33 33 33 22 29 +- 35 --------------------+ | B: Backup file (on) | | E: End session (+ save) | | Q: Quit session | | ,: Escape / Menu off | +-------------------------+ +- 35 --------------------+ | E: End session (+ save) | | Q: Quit session | | B: Backup file (on) | | ,: Escape / Menu off | +-------------------------+ --> exit --> exit --> 35 --> 5 (6.3.10) +- 36 --------------------+ | P: Atoms ->CLUSTER | | U: CLUSTER from scratch | | ,: Escape / Menu off | +-------------------------+ +- 36 --------------------+ | P: Atoms ->CLUSTER | | U: CLUSTER from scratch | | ,: Escape / Menu off | +-------------------------+ --> 75 --> 2 --> 8 (6.2.13) +- 37 --------------------+ | I: Incomplete atom set | | W: Without atoms | | ,: Escape / Menu off | +-------------------------+ +- 37 --------------------+ | W: Without atoms | | I: Incomplete atom set | | ,: Escape / Menu off | +-------------------------+ --> 2 --> 25,75 --> 8 (6.2.13) +- 38 --------------------+ | A: Adapter parameters | | B: Backup file (on) | | E: Elmnt col list (off) | | H: Help option (on) | | I: Index menus (off) | | K: Color/shd. workbench | | L: Load init file | | M: Mouse menu (off) | | N: Immed. menu (on) | | O: Order mousmenu (on) | | P: Paint definitions | | R: Stereo parameters | +- 38 --------------------+ | W: Window definitions | | P: Paint definitions | | R: Stereo parameters | | L: Load init file | | S: Save in init file | | M: Mouse menu (off) | | X: Plot/list structure | | H: Help option (on) | | A: Adapter parameters | | N: Immed. menu (on) | | E: Elmnt col list (off) | | T: Teach mode (off) | --> --> --> --> --> --> --> --> --> --> --> --> 38 39 43 38 38 38 22,75 38 38 38 38 38 | S: Save in init file | | T: Teach mode (off) | | W: Window definitions | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ | B: Backup file (on) | | O: Order mousmenu (on) | | I: Index menus (off) | | K: Color/shd. workbench | | ,: Escape / Menu off | +-------------------------+ --> 38 --> 38 --> 38 --> 38 --> 8, 5 (6.2.15) ________________________ Sec. 10. _________________________________ 397 __ +- 39 --------------------+ | B: Basic colors | | C: Codes(B,W,L),palette | | F: Font name | | G: Gray shades (off) | | S: Shading of balls | | T: Table of colors | | W: Color/shd. workbench | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ +- 39 --------------------+ | B: Basic colors | | S: Shading of balls | | C: Codes(B,W,L),palette | | G: Gray shades (off) | | T: Table of colors | | F: Font name | | X: Plot/list structure | | W: Color/shd. workbench | | ,: Escape / Menu off | +-------------------------+ --> 40 --> 41 --> 42 --> 39 --> 39 --> 8, 5 --> 22,75 --> 39 --> 8, 5 (6.2.15) +- 40 --------------------+ | A: Add basic color | | D: Delete basic color | | L: List basic colors | | M: Modify basic color | | N: New basic color set | | O: Color tones | | R: RGB value maximum | | T: Table of colors | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ +- 40 --------------------+ | N: New basic color set | | M: Modify basic color | | A: Add basic color | | D: Delete basic color | | O: Color tones | | R: RGB value maximum | | L: List basic colors | | T: Table of colors | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ --> 40 --> 40 --> 40 --> 40 --> 40 --> 40 --> 40 --> 40 --> 22,75 --> 39 (6.2.15) +- 41 --------------------+ | A: Angles of shading | | W: Shading weights | | T: Table of colors | | ,: Escape / Menu off | +-------------------------+ +- 41 --------------------+ | W: Shading weights | | A: Angles of shading | | T: Table of colors | | ,: Escape / Menu off | +-------------------------+ --> 41 --> 41 --> 41 --> 39 (6.2.15) +- 42 --------------------+ | B: Black,white,linkcolr | | P: Color palette update | | T: Table of colors | | ,: Escape / Menu off | +-------------------------+ +- 42 --------------------+ | B: Black,white,linkcolr | | P: Color palette update | | T: Table of colors | | ,: Escape / Menu off | +-------------------------+ --> 42 --> 42 --> 42 --> 39 (6.2.15) +- 43 --------------------+ | D: Distort/shift stereo | | R: Red,blue stereo | | ,: Escape / Menu off | +-------------------------+ +- 43 --------------------+ | D: Distort/shift stereo | | R: Red,blue stereo | | ,: Escape / Menu off | +-------------------------+ --> 38 --> 38 --> 38 (6.2.15) +- 44 --------------------+ | F: File name for output | | I: Init data incl.(off) | | O: Logo include (off) | +- 44 --------------------+ | F: File name for output | --> 45 | Q: Quick save (default) | --> 8 | I: Init data incl.(off) | --> 44 | Q: Quick save (default) | | ,: Escape / Menu off | +-------------------------+ | O: Logo include (off) | --> 44 | ,: Escape / Menu off | --> 8 +-------------------------+ (6.2.8) __ 398 _________________ Sec. 10. ________________________________________ +- 45 --------------------+ | B: Brillouin zone (EPS) | | C: Color PostScript | | E: Ext. LATUSE format | | G: Gray tone PostScript | | I: Init data incl.(off) | | K: SCHAKAL format | | L: LATUSE format | | O: Logo include (off) | | P: PLOT3D format | | S: SARCH format | | W: Wigner-Seitz (EPS) | | ,: Escape / Menu off | +-------------------------+ +- 45 --------------------+ | P: PLOT3D format | | K: SCHAKAL format | | G: Gray tone PostScript | | C: Color PostScript | | L: LATUSE format | | E: Ext. LATUSE format | | S: SARCH format | | W: Wigner-Seitz (EPS) | | B: Brillouin zone (EPS) | | I: Init data incl.(off) | | O: Logo include (off) | | ,: Escape / Menu off | +-------------------------+ --> 8 --> 8 --> 8 --> 8 --> 8 --> 8 --> 8 --> 78 --> 78 --> 45 --> 45 --> 8 (6.2.8) +- 46---------------------+ | A: Analyze atoms | | D: Coincidence distance | | F: Full structure list | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ +- 46 --------------------+ | F: Full structure list | | A: Analyze atoms | | D: Coincidence distance | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ --> 14,46 --> 46 --> 46 --> 75 --> 5 (6.3.12) +- 47 --------------------+ | L: List atoms confirm | | ,: Escape / Menu off | +-------------------------+ (6.2.1,6.2.14) +- 47 --------------------+ | L: List atoms confirm | --> 31,64 | ,: Escape / Menu off | --> 31,64 +-------------------------+ +- 48 --------------------+ | L: List atoms confirm | | ,: Escape / Menu off | +-------------------------+ +- 48 --------------------+ | L: List atoms confirm | --> 86,31 | ,: Escape / Menu off | --> 31 +-------------------------+ (6.2.14) +- 49 --------------------+ | A: Auto remove second | | F: First atom removed | | S: Second atom removed | | ,: Escape / Menu off | +-------------------------+ +- 49 --------------------+ | F: First atom removed | | S: Second atom removed | | A: Auto remove second | | ,: Escape / Menu off | +-------------------------+ --> 49 --> 49 --> 9 --> 9 ________________________ Sec. 10. _________________________________ 399 __ +- 50 --------------------+ | A: simple cubic | | B: face centered cubic | | C: body centered cubic | | D: hexagonal close pckd | | E: diamond | | F: NaCl | | G: CsCl | | H: zincblende (cubic) | | I: graphite | | J: free lattice | | K: Bravais lattices | | L: fcc (Bravais hkl) | | M: bcc (Bravais hkl) | | N: hcp (lmnq) | | O: diamond (Brv. hkl) | | P: NaCl (Bravais hkl) | | Q: zincblende (Brv.hkl) | | R: graphite (lmnq) | | S: free lattice (lmnq) | | T: Title | | U: Update free lattice | | V: Lattice constant | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ +- 50 --------------------+ | A: simple cubic | | B: face centered cubic | | C: body centered cubic | | D: hexagonal close pckd | | E: diamond | | F: NaCl | | G: CsCl | | H: zincblende (cubic) | | I: graphite | | J: free lattice | | L: fcc (Bravais hkl) | | M: bcc (Bravais hkl) | | N: hcp (lmnq) | | O: diamond (Brv. hkl) | | P: NaCl (Bravais hkl) | | Q: zincblende (Brv.hkl) | | R: graphite (lmnq) | | S: free lattice (lmnq) | | V: Lattice constant | | T: Title | | U: Update free lattice | | K: Bravais lattices | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ --> 8 --> 8 --> 8 --> 8 --> 8 --> 8 --> 8 --> 8 --> 8 --> 62 --> 8 --> 8 --> 8 --> 8 --> 8 --> 8 --> 8 --> 62 --> 8 --> 8 --> 62 --> 79 --> 22 --> 8 (6.2.1) +- 51 --------------------+ | B: Backup file (on) | | E: End session (+ save) | | Q: Quit session | | ,: Escape / Menu off | +-------------------------+ +- 51 --------------------+ | E: End session (+ save) | | Q: Quit session | | B: Backup file (on) | | ,: Escape / Menu off | +-------------------------+ --> exit --> exit --> 51 --> 8 (6.2.13) +- 52 --------------------+ | B: Basis of layer | | D: Display analysis txt | | F: From layer copy defs | | I: Info lattice/atoms | | L: Layer index | | R: Rebuild parameters | | S: Shift layer indices | | U: Undo restructuring | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ +- 52 --------------------+ | L: Layer index | | R: Rebuild parameters | | B: Basis of layer | | U: Undo restructuring | | F: From layer copy defs | | S: Shift layer indices | | X: Plot/list structure | | I: Info lattice/atoms | | D: Display analysis txt | | ,: Escape / Menu off | +-------------------------+ --> 52 --> 70 --> 69 --> 54 --> 52 --> 52 --> 22 --> 86,52 --> 52 --> 8 (6.2.5) +- 53 --------------------+ | I: Incomplete atom set | +- 53 --------------------+ | W: Without atoms | --> 6 | W: Without atoms | | ,: Escape / Menu off | +-------------------------+ | I: Incomplete atom set | --> 25,22 | ,: Escape / Menu off | --> 5 +-------------------------+ (6.3.10) __ 400 _________________ Sec. 10. ________________________________________ +- 54 --------------------+ | A: All restructure undo | | S: Sel restructure undo | | ,: Escape / Menu off | +-------------------------+ +- 54 --------------------+ | S: Sel restructure undo | | A: All restructure undo | | ,: Escape / Menu off | +-------------------------+ +- 55 --------------------+ | A: All undo confirm | | ,: Escape / Menu off | +-------------------------+ +- 55 --------------------+ | A: All undo confirm | --> 52 | ,: Escape / Menu off | --> 52 +-------------------------+ (6.2.5) +- 56 --------------------+ | A: All radii changed | | D: Display analysis txt | | E: Selected charges | | I: Info lattice/atoms | | L: All charges changed | | R: Rescale all radii | | S: Selected radii | | T: Table of el. radii | | X: Plot/list structure | | Z: Element radii | | ,: Escape / Menu off | +-------------------------+ +- 56 --------------------+ | A: All radii changed | | Z: Element radii | | S: Selected radii | | R: Rescale all radii | | L: All charges changed | | E: Selected charges | | I: Info lattice/atoms | | X: Plot/list structure | | D: Display analysis txt | | T: Table of el. radii | | ,: Escape / Menu off | +-------------------------+ --> 57 --> 58 --> 59 --> 56 --> 56 --> 56 --> 56 --> 22 --> 56 --> 56 --> 8 (6.2.2) +- 57 --------------------+ | A: Absolute radii (all) | | R: Relative radii (all) | | ,: Escape / Menu off | +-------------------------+ +- 57 --------------------+ | A: Absolute radii (all) | | R: Relative radii (all) | | ,: Escape / Menu off | +-------------------------+ --> 56 --> 56 --> 56 (6.2.2) +- 58 --------------------+ | A: Abs. element radii | | R: Rel. element radii | | ,: Escape / Menu off | +-------------------------+ +- 58 --------------------+ | A: Abs. element radii | | R: Rel. element radii | | ,: Escape / Menu off | +-------------------------+ --> 58 --> 58 --> 56 (6.2.2) +- 59 --------------------+ | A: Abs. selected radii | | R: Rel. selected radii | | ,: Escape / Menu off | +-------------------------+ +- 59 --------------------+ | A: Abs. selected radii | | R: Rel. selected radii | | ,: Escape / Menu off | +-------------------------+ --> 59 --> 59 --> 56 (6.2.2) +- 60 --------------------+ | B: Block of crystal | | I: Initial plane | | S: Spherical constraint | | X: Plot/list structure | | ,: Escape / Menu off | +- 60 --------------------+ | B: Block of crystal | | I: Initial plane | | S: Spherical constraint | | X: Plot/list structure | | ,: Escape / Menu off | --> 8 --> 8 --> 61 --> 22 --> 8 --> 54 --> 55 --> 52 (6.2.5) +-------------------------+ +-------------------------+ (6.2.4) ________________________ Sec. 10. _________________________________ 401 __ +- 61 --------------------+ | A: All sphere paramtrs | | C: Center of sphere | | D: Display analysis txt | | E: Erase sphere | | N: Analyze sphere defs | | R: Radii of sphere | | ,: Escape / Menu off | +-------------------------+ +- 61 --------------------+ | C: Center of sphere | | R: Radii of sphere | | A: All sphere paramtrs | | E: Erase sphere | | N: Analyze sphere defs | | D: Display analysis txt | | ,: Escape / Menu off | +-------------------------+ --> 60 --> 60 --> 60 --> 60 --> 60 --> 61 --> 8 (6.2.4) +- 62 --------------------+ | B: Basis of lattice | | L: Lattice vectors | | ,: Escape / Menu off | +-------------------------+ +- 62 --------------------+ | L: Lattice vectors | | B: Basis of lattice | | ,: Escape / Menu off | +-------------------------+ --> 63 --> 47,64 --> 8 (6.2.1) +- 63 --------------------+ | L: Lattice updat confrm | | ,: Escape / Menu off | +-------------------------+ +- 63 --------------------+ | L: Lattice updat confrm | --> 62 | ,: Escape / Menu off | --> 62 +-------------------------+ (6.2.1) +- 64 --------------------+ | A: Add to lattice basis | | D: Delete from basis | | L: List lattice basis | | M: Modify component | | N: New lattice basis | | S: Symmetry constraints | | ,: Escape / Menu off | +-------------------------+ +- 64 --------------------+ | N: New lattice basis | | A: Add to lattice basis | | D: Delete from basis | | M: Modify component | | S: Symmetry constraints | | L: List lattice basis | | ,: Escape / Menu off | +-------------------------+ --> 62 --> 62 --> 66 --> 67 --> 82 --> 47,64 --> 62 (6.2.1) +- 65 --------------------+ | A: Abs. units for add | | R: Rel. units for add | | ,: Escape / Menu off | +-------------------------+ +- 65 --------------------+ | R: Rel. units for add | | A: Abs. units for add | | ,: Escape / Menu off | +-------------------------+ --> 47,64 --> 47,64 --> 47,64 (6.2.1) +- 66 --------------------+ | C: Confirm delete | | ,: Escape / Menu off | +-------------------------+ +- 66 --------------------+ | C: Confirm delete | --> 47,64 | ,: Escape / Menu off | --> 47,64 +-------------------------+ (6.2.1) +- 67 --------------------+ | A: Abs. units in modify | | R: Rel. units in modify | | ,: Escape / Menu off | +-------------------------+ +- 67 --------------------+ | R: Rel. units in modify | | A: Abs. units in modify | | ,: Escape / Menu off | +-------------------------+ +- 68 --------------------+ +- 68 --------------------+ --> 47,64 --> 47,64 --> 47,64 (6.2.1) | E: Confirm restart | | ,: Escape / Menu off | +-------------------------+ | E: Confirm restart | --> 5 | ,: Escape / Menu off | --> 5 +-------------------------+ (6.3.11) __ 402 _________________ Sec. 10. ________________________________________ +- 69 --------------------+ | A: Add layer atom | | D: Delete layer atom | | M: Modify layer atom | | N: New layer basis | | ,: Escape / Menu off | +-------------------------+ +- 69 --------------------+ | N: New layer basis | | M: Modify layer atom | | A: Add layer atom | | D: Delete layer atom | | ,: Escape / Menu off | +-------------------------+ --> 52 --> 52 --> 52 --> 52 --> 52 (6.2.5) +- 70 --------------------+ | A: All rebuild paramtrs | | H: Shift vector (rel) | | M: Matrix (basis trafo) | | R: Rotate trafo matrix | | S: Shift vector (abs) | | ,: Escape / Menu off | +-------------------------+ +- 70 --------------------+ | A: All rebuild paramtrs | | S: Shift vector (abs) | | H: Shift vector (rel) | | M: Matrix (basis trafo) | | R: Rotate trafo matrix | | ,: Escape / Menu off | +-------------------------+ --> 52 --> 52 --> 52 --> 52 --> 52 --> 52 (6.2.5) +- 71 --------------------+ | A: All atoms unhide | | L: List hidden atoms | | S: Sel. atoms unhide | | ,: Escape / Menu off | +-------------------------+ +- 71 --------------------+ | A: All atoms unhide | | S: Sel. atoms unhide | | L: List hidden atoms | | ,: Escape / Menu off | +-------------------------+ --> 15 --> 15 --> 15 --> 15 (6.3.2) +- 72 --------------------+ | 0: Get stack data #0 | | 1: Get stack data #1 | | 2: Get stack data #2 | | 3: Get stack data #3 | 75,22,72 | 4: Get stack data #4 | 75,22,72 | 5: Get stack data #5 | 75,22,72 | 6: Get stack data #6 | 75,22,72 | 7: Get stack data #7 | 75,22,72 | 8: Get stack data #8 | 75,22,72 | 9: Get stack data #9 | 75,22,72 | D: Down (pointer) | 75,22,72 | S: Save to stack | 75,22,72 | U: Up (pointer) | 75,22,72 | X: Plot/list structure | +- 72 --------------------+ | U: Up (pointer) | | D: Down (pointer) | | S: Save to stack | | 0: Get stack data #0 | --> 72 --> 72 --> 5, 8 --> | 1: Get stack data #1 | --> | 2: Get stack data #2 | --> | 3: Get stack data #3 | --> | 4: Get stack data #4 | --> | 5: Get stack data #5 | --> | 6: Get stack data #6 | --> | 7: Get stack data #7 | --> | 8: Get stack data #8 | --> | 9: Get stack data #9 | --> | X: Plot/list structure | --> 75,22 | ,: Escape / Menu off | +-------------------------+ | ,: Escape / Menu off | --> 5, 8 +-------------------------+ (6.2.16) ________________________ Sec. 10. _________________________________ 403 __ +- 73 --------------------+ | 0: Get stack data #0 | | 1: Get stack data #1 | | 2: Get stack data #2 | | 3: Get stack data #3 | | 4: Get stack data #4 | | 5: Get stack data #5 | | 6: Get stack data #6 | | 7: Get stack data #7 | | 8: Get stack data #8 | | 9: Get stack data #9 | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ +- 73 --------------------+ | 0: Get stack data #0 | | 1: Get stack data #1 | | 2: Get stack data #2 | | 3: Get stack data #3 | | 4: Get stack data #4 | | 5: Get stack data #5 | | 6: Get stack data #6 | | 7: Get stack data #7 | | 8: Get stack data #8 | | 9: Get stack data #9 | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ --> 22,73 --> 22,73 --> 22,73 --> 22,73 --> 22,73 --> 22,73 --> 22,73 --> 22,73 --> 22,73 --> 22,73 --> 22 --> 8 (6.2.16) +- 74 --------------------+ | +: Replot and return | | A: Average atom coord. | | B: Basis vector sketch | | C: Color atoms/backgrnd | | D: Distances | | E: Environment shells | | F: Focus change | | G: Brillouin zone | | I: Include 2-dim lines | | J: Erase last line | | K: Color links (bonds) | | L: Links between atoms | | M: Miller directions | | N: Net planes (Miller) | | Q: Default focus/shift | | R: Dir. plane distance | | S: Shift plot globally | | V: Angles, distances | | W: Wigner-Seitz cell | | Z: Show/save lines(off) | | ,: Escape / Menu off | +-------------------------+ +- 74 --------------------+ | D: Distances | | M: Miller directions | | V: Angles, distances | | N: Net planes (Miller) | | B: Basis vector sketch | | E: Environment shells | | A: Average atom coord. | | L: Links between atoms | | Z: Show/save lines(off) | | C: Color atoms/backgrnd | | K: Color links (bonds) | | I: Include 2-dim lines | | F: Focus change | | J: Erase last line | | W: Wigner-Seitz cell | | G: Brillouin zone | | S: Shift plot globally | | Q: Default focus/shift | | +: Replot and return | | R: Dir. plane distance | | ,: Escape / Menu off | +-------------------------+ --> 74 --> 74 --> 74 --> 74 --> 74 --> 74 --> 74 --> 74 --> 74 --> 74 --> 74 --> 74 --> 74 --> 74 --> 74 --> 74 --> 74 --> 34 --> 22 --> 22 --> 22 (6.2.14) __ 404 _________________ Sec. 10. ________________________________________ +- 75 --------------------+ | +: Repeat same plot | | 2: Theta decrease | | 4: Phi decrease | | 6: Phi increase | | 8: Theta increase | | C: Cut after plot | | E: Export picture | | I: Import picture | | L: Load from stack | | M: Magnify | | O: Other (main) menu | | P: Perspective decrease | | Q: Analyze/change | | R: Rotate left | | S: Save to stack | | T: Transfer to LATTICE | | m: Shrink | | p: Perspective increase | | r: Rotate right | | ,: Escape / Menu off | +-------------------------+ +- 75 --------------------+ | 8: Theta increase | | 2: Theta decrease | | 4: Phi decrease | | 6: Phi increase | | r: Rotate right | | R: Rotate left | | p: Perspective increase | | P: Perspective decrease | | m: Shrink | | M: Magnify | | C: Cut after plot | | +: Repeat same plot | | Q: Analyze/change | | L: Load from stack | | S: Save to stack | | T: Transfer to LATTICE | | O: Other (main) menu | | E: Export picture | | I: Import picture | | ,: Escape / Menu off | +-------------------------+ +- 76 --------------------+ | C: Calculate atoms | | ,: Escape / Menu off | +-------------------------+ +- 76 --------------------+ | C: Calculate atoms | --> 8, | ,: Escape / Menu off | --> 8, +-------------------------+ (4.3) +- 77 --------------------+ | S: Save to stack | | ,: Escape / Menu off | +-------------------------+ +- 77 --------------------+ | S: Save to stack | --> 22, 75 | ,: Escape / Menu off | --> 22, 75 +-------------------------+ (4.3) +- 78 --------------------+ | B: WSC/BZ frame+surface | | F: WSC/BZ frame | | N: WSC/BZ frame+surf+NN | | S: WSC/BZ shade surface | | ,: Escape / Menu off | +-------------------------+ +- 78 --------------------+ | F: WSC/BZ frame | | S: WSC/BZ shade surface | | B: WSC/BZ frame+surface | | N: WSC/BZ frame+surf+NN | | ,: Escape / Menu off | +-------------------------+ --> 75 --> 75 --> 75 --> 75 --> 75 --> 75 --> 75 --> 75 --> 75 --> 75 --> 75 --> 75 --> 30 --> 73 --> 77 --> 80 --> 5 --> 75 --> 75 --> 5 (4.3,6.3.7) --> 8 --> 8 --> 8 --> 8 --> 8 (6.2.8) 5 5 ________________________ Sec. 10. _________________________________ 405 __ +- 79 --------------------+ | A: Triclinic-P | | B: Monoclinic-P | | C: Monoclinic-B | | D: Orthorhombic-P | | E: Orthorhombic-C | | F: Orthorhombic-I | | G: Orthorhombic-F | | H: Tetragonal-P | | I: Tetragonal-I | | J: Hexagonal-P | | K: Trigonal-R | | L: Cubic-P | | M: Cubic-I | | N: Cubic-F | | ,: Escape / Menu off | +-------------------------+ +- 79 --------------------+ | A: Triclinic-P | | B: Monoclinic-P | | C: Monoclinic-B | | D: Orthorhombic-P | | E: Orthorhombic-C | | F: Orthorhombic-I | | G: Orthorhombic-F | | H: Tetragonal-P | | I: Tetragonal-I | | J: Hexagonal-P | | K: Trigonal-R | | L: Cubic-P | | M: Cubic-I | | N: Cubic-F | | ,: Escape / Menu off | +-------------------------+ --> 8 --> 8 --> 8 --> 8 --> 8 --> 8 --> 8 --> 8 --> 8 --> 8 --> 8 --> 8 --> 8 --> 8 --> 8 (6.2.1) +- 80 --------------------+ | C: Transf. atoms + cell | | T: Transfer atoms | | ,: Escape / Menu off | +-------------------------+ +- 80 --------------------+ | T: Transfer atoms | | C: Transf. atoms + cell | | ,: Escape / Menu off | +-------------------------+ --> 75,22 --> 75 --> 22,75 (4.3) +- 81 --------------------+ | C: Cn axis (rotation) | | D: Coincidence distance | | I: Inversion | | M: Mirror plane | | R: Reduce coinc. atoms | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ +- 81 --------------------+ | C: Cn axis (rotation) | | M: Mirror plane | | I: Inversion | | D: Coincidence distance | | R: Reduce coinc. atoms | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ --> 9 --> 9 --> 9 --> 81 --> 9 --> 75 --> 9 (6.3.2) +- 82 --------------------+ | C: Cn axis (rotation) | | D: Coincidence distance | | I: Inversion | | M: Mirror plane | | ,: Escape / Menu off | +-------------------------+ +- 82 --------------------+ | C: Cn axis (rotation) | | M: Mirror plane | | I: Inversion | | D: Coincidence distance | | ,: Escape / Menu off | +-------------------------+ --> 47,64 --> 47,64 --> 47,64 --> 82 --> 47,64 (6.2.1) +- 83 --------------------+ | A: Atom-by-atom plot | | C: Cells plot | | L: Layer-by-layer plot | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ +- 83 --------------------+ | L: Layer-by-layer plot | | A: Atom-by-atom plot | | C: Cells plot | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ --> 29 --> 29 --> 29 --> 22 --> 29 (6.2.7) __ 406 _________________ Sec. 10. ________________________________________ +- 84 --------------------+ | A: Area, filled circles | | C: Circles | | D: Dither-shaded balls | | F: Fuzzy-shaded balls | | G: Glossy-shaded balls | | H: Hard-shaded balls | | L: List atom coords | | N: No plot/listing | | P: Points | | R: Red/blue stereo | | S: Stereo dupl. (off) | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ +- 85 --------------------+ | /: Single atom mode | | C: Continue | | ,: Escape / Menu off | +-------------------------+ (6.2.9,6.3.7) +- 84 --------------------+ | N: No plot/listing | | L: List atom coords | | P: Points | | C: Circles | | A: Area, filled circles | | R: Red/blue stereo | | H: Hard-shaded balls | | F: Fuzzy-shaded balls | | D: Dither-shaded balls | | G: Glossy-shaded balls | | S: Stereo dupl. (off) | | X: Plot/list structure | | ,: Escape / Menu off | +-------------------------+ --> 29 --> 29 --> 29 --> 29 --> 29 --> 29 --> 29 --> 29 --> 29 --> 29 --> 84 --> 22 --> 29 (6.2.7) +- 85 --------------------+ | C: Continue | --> 22,75 | /: Single atom mode | --> 85 | ,: Escape / Menu off | --> 22,75 +-------------------------+ +- 86 --------------------+ | C: Continue | | ,: Escape / Menu off | +-------------------------+ +- 86 --------------------+ | C: Continue | --> various | ,: Escape / Menu off | --> various +-------------------------+ +- 87 --------------------+ | C: Change/rebuild layer | | U: Undo restructuring | | ,: Escape / Menu off | +-------------------------+ +- 87 --------------------+ | C: Change/rebuild layer | | U: Undo restructuring | | ,: Escape / Menu off | +-------------------------+ --> 52 --> 54 --> 8 (6.2.5) ________________________ Sec. 11. _________________________________ 407 __ 11. AA INDEX algorithm - basis vector transformation 5.1. - hidden surface 5.2, 6.2.7, 6.3.5. - color coding 5.4. analysis option 6.2.14, 6.3.12. angles - rotation 4.3, 6.2.6, 6.3.4. - viewing 4.3, 6.2.6, 6.3.4. area - graphics 6.2.15, 6.4.7 - of section 6.2.0, 6.2.4. - shading 5.4, 6.2.15. arrow keys 5.5, 6.2.6. ASCII file 6.2.8, 6.3.6, 6.4.1-8. atom - atom-by-atom construction 4.3, 6.2.7, 6.2.9. - construction 6.3.2. - charge 5.3, 6.2.2, 6.2.5, 6.2.7, 6.2.14, 6.3.2, 6.3.12, 6.4.2- 3. - number of atoms 6.2.0, 6.2.4, 6.3.0-1, 6.4.3, 9. - painting 5.4, 6.2.7, 6.3.5. - positions 6.2.1, 6.2.5, 6.2.14, 6.3.2, 6.3.12, 6.4.1-5. - sphere radius 4.1, 5.3, 6.2.2, 6.2.14, 6.3.2, 6.3.12, 6.4.2-3. authors 10. autosave option 6.2.0, 6.2.8-9, 6.3.0, 6.3.6-7. axis - coordinate 5.1, 6.2.5-6, 6.3.4. - symmetry 5.3, 6.2.1, 6.2.3, 6.2.14, 6.4.2. BB background color 6.2.7, 6.2.15, 6.3.5, 6.4.2-3, 6.4.7. backup file, see balsac.lat, balsac.plt balls - display mode 5.4, 6.2.7, 6.3.5, 7. - shading 5.4, 6.2.15, 6.4.7. balsac2.ini 5.4, 6.1, 6.2.15, 6.4.7, 6.5.1. balsac.lat 6.1, 6.2.8, 6.4.2. balsac.plt 6.1, 6.3.6, 6.4.3. basic control parameters 5.4, 6.2.15, 6.3.13, 6.4.7. basis vectors - defined 5.1, 5.3, 6.2.1, 6.2.14, 6.4.2. - displayed 6.2.1, 6.2.3, 6.2.7, 6.2.14, 6.4.2. - relaxed 6.2.5, 6.4.2. - transformation 5.1, 6.2.3, 7.2.5, 6.4.2. batch - input/output files 6.1, 6.2.8, 6.3.6, 6.4.1-6, - mode 6.1, 6.2.11, 6.3.9, 6.4.1. bcc, see lattices B-click 3.3.8. bibliography 9. black 5.4, 6.2.7, 6.2.15, 6.3.5, 6.3.13, 6.4.7, 6.5.1, 7. blue/red, see stereo mode __ 408 _________________ Sec. 11. ________________________________________ bond - distances 6.2.7, 6.3.5, 6.4.2-3. - visualization 6.2.7, 6.3.5. box, see wire frame Bravais lattice 5.1, 5.3, 6.2.1, 6.2.3, 6.2.14. buckling 6.2.5. bulk crystal - lattice constant 5.1, 5.3, 6.2.1, 6.2.5, 6.2.14, 6.4.2. - lattices 5.3, 6.2.1, 6.2.14, 6.4.2. - see basis vectors - termination 6.2.4. - user-defined 6.2.1, 6.4.2. CC camera 4.4. cancel - and transfer 6.2.13, 6.3.10. - session 6.1, 6.2.13, 6.3.10. capture screen output 4.2-3, 6.2.9, 6.3.7. cartesian coordinates 5.1, 6.2.1, 6.2.5, 6.2.14, 6.3.2, 6.3.12, 6.4.2-3. central projection, perspective 5.1-2, 6.2.6-7, 6.3.4-5, 6.4.2-3. center - of gravity 6.2.14, 6.3.12. - of perspective 5.1, 6.2.6, 6.3.4, 6.4.2-3. - of plot shift 6.2.7, 6.3.5. characterization of lattice planes 6.2.3. charges assigned to atoms 5.3, 6.2.1-2, 6.2.5, 6.2.14, 6.3.2, 6.3.12, 6.4.2-3. chemical elements 5.3, 6.2.2, 6.2.14, 6.3.2, 6.3.5, 6.3.12. circles/dots plot mode 6.2.7, 6.3.5. code numbers for lattices 5.3, 6.2.1, 6.4.2. code numbers for options 6.2.0, 6.4.2. code numbers for colors 5.4, 6.2.7, 6.2.15, 6.4.7. color/label atoms 6.2.0, 6.2.7, 6.3.0, 6.3.5, 6.4.2-3. colors 5.4, 6.2.7, 6.2.15, 6.3.5, 6.4.7. - atoms 6.2.7, 6.3.5, 6.4.2-3, 6.4.7. - background 6.2.7, 6.3.5, 6.4.1-2, 6.4.7. - bonds 6.2.7, 6.3.5, 6.4.1-2, 6.4.7. - problems 7. - stereo 6.2.7, 6.2.15, 6.3.5, 6.4.7. - test, see TSTCOL 6.5.1. commensurate layers 6.2.5. compatible - software 4.2. - systems 2.1.1, 2.2.1, 8, 9. computer requirements 2.1.1, 2.2.1, 8. conflicts 4.2, 7. connecting atoms 6.2.7, 6.3.5, 6.4.2-3. consistency - of Miller indices 6.2.3. - of nuclear charges 6.2.7, 6.3.5. continuous shading 6.2.7, 6.3.5, 6.2.15. ________________________ Sec. 11. _________________________________ 409 __ coordinate system - cartesian 5.1, 6.2.1, 6.2.5, 6.3.2. - crystal 5.1, 5.3, 6.2.1, 6.2.5, 6.2.14. - screen 5.1-2. - viewing 6.2.6, 6.3.4. coprocessor (8087, 80287, 80387) 2.1.1, 2.2.1, 8. copy to output file 6.2.8, 6.2.13, 6.3.10, 6.3.6. crystal lattice parameters 5.3. CsCl, see lattices cubic - definition of Miller indices 5.1, 6.2.3. - group 5.3, 6.2.14. cursor keys, see arrow keys DD default - backup file 'balsac.lat' 6.1, 6.2.8, 6.4.2. - backup file 'balsac.plt' 6.1, 6.3.6, 6.4.3. - initialization file 'balsac2.ini' 5.4, 6.1, 6.2.15, 6.4.7, 6.5.1. - lattice parameters 5.3. delay time for layer display 6.2.9, 6.4.2. diameter - of atom cluster 5.1, 6.3.4, 6.3.13. - of crystal section 5.1, 6.2.6, 6.2.15. - of smallest sphere 6.2.14. diamond, see lattices diatomic basis 5.3, 6.2.1. directions - viewing 5.1-2, 6.2.6, 6,3,2, 6.4.2-3. - x, y, z in coordinate system 5.1. - of lattice planes 6.2.3. 6.2.14. display (monitor) 5.4, 6.2.15, 7. - test, see TSTCOL 6.5.1. displaying structures - atom-by-atom 6.2.7. - layer-by-layer 6.2.7. - single atom 6.2.9, 6.3.7. diskettes 2.1.2, 6.0. distances - between atoms 6.2.14, 6.3.12. - between circles (stereo mode) 6.2.15, 6.4.7. - between lattice planes 6.2.3, 6.2.14. - nearest neighbor 6.2.1, 6.2.14. - viewing 5.1-2, 6.2.6-7, 6.3.4-5. distortion - x/y 6.2.15, 6.4.7. - stereo 6.2.7, 6.2.15, 6.4.7. dithering 5.4, 6.2.7, 6.3.5, 6.4.2-3. DOS - command line 6.1 - operating system 2.1, 8. __ 410 _________________ Sec. 11. ________________________________________ EE efficient usage 4. elements, see charges ellipses 6.2.7, 6.2.15, 7.3.3, 6.4.7. enlarged/reduced plot 4.3, 6.2.6, 6.2.9, 6.3.4, 6.4.2-3. exit 6.1, 6.2.13, 6.3.10, 6.4.2. exposure 4.4. extended LATUSE format 6.2.8, 6.4.2. eye distance 6.2.6-7, 6.2.15, 6.3.4-5, 6.4.7. FF fcc, see lattices files - input/output 6.2.8, 6.3.6, 6.4. - required 2.1-2, 6.0-1, 6.4.1. filled circles, see balls filter glasses, see stereo glasses finish 6.1, 6.2.13, 6.3.10, 6.4.2. focus 6.2.6, 6.3.4. format - of input/output files 6.2.8, 6.3.6, 6.4.1-8. - of keyboard input 5.5. fortran 77 2.2, 5.5, 8. frame, see wire frame free lattice, see lattices FRIEZE 4.2. full color stereo mode 5.1, 6.2.7, 6.2.14-15, 6.3.5, 6.3.0-13, 6.4.7. fuzzy balls 6.2.7, 6.2.15, 6.3.5, 6.5.1. GG geometry - viewing 5.1-2, 6.2.6, 6.3.4. - crystal 5.3, 6.2.1. glasses, see stereo glasses graphical/numerical output 6.2.7, 6.3.5. graphic analysis (LATTICE) 6.2.14.2. (CLUSTER) 6.3.12.2. graphite, see lattices gray tones 4.3.1, 5.4, 6.2.15. HH hardcopy 4.2. hardware requirements 2.1.1, 2.2.1, 7. help on graphics screen 6.2.6, 6.3.4. hidden surface algorithm 5.2, 6.2.7. hcp, see lattices hints for efficient usage 4. impression - stereo 6.2.7. 6.3.5. - 3-dimensional 6.2.6, 6.3.4. incommensurate layers 6.2.5. incorrect plots 6.2.7. II incremental values, indices, see Miller inequivalent atoms initialization, see viewing 6.2.6, 6.3.4. indices 5.3, 6.2.1. default ________________________ Sec. 11. _________________________________ 411 __ input - from ASCII files 6.1, 6.2.11, 6.3.9, 6.4.1-3. - from keyboard 5.5. installation 2.1-3, 6.0. interplanar spacings 6.2.3. invert Miller indices 5.2. KK keyboard input 5.5. keys for fast plot 6.2.6, 6.3.4. LL "L" graphics label 6.2.9, 6.3.7. labelling atoms 6.2.7, 6.2.14, 6.3.5, 6.3.12, 6.4.2-3. lattice constants, defaults 5.3. - scaling 6.2.1. lattices 5.3, 6.2.1, 6.2.2. lattice constants 5.3. lattice structures - defaults 5.3. - free definition 6.2.1. - selection 6.2.1. LATUSE format 6.2.8, 6.4.2. L-click 3.3.8. listing of atoms 6.2.1, 6.2.7, 6.3.2, 6.3.5. layer-by-layer display 6.2.7. layer reconstruction/relaxation 6.2.5. layout 6.2.7, 6.3.5. library of structures, see SCIS data base literature 9. MM magnification of plot 6.2.6, 6.3.4, 6.4.2-3. math coprocessor (8087, 80287, 80387) 2.1.1, 2.2.1, 8. matrix for reconstruction 6.2.5, 6.4.2. maximum number of atoms 8. memory requirements 8. menus - description of options 6.2-3. Miller indices - definitions 6.2.3. - cubic vs primitive axes 5.1, 6.2.1. - inverted values 5.2. - 4-index notation 6.2.3. mirror planes 5.3, 6.2.1, 6.2.14, 6.4.2. mode - interactive 6.2-3. - batch 6.2.11, 6.3.9, 6.4.1. monitor - test 6.5.1. mouse mode 3.3.8, 6.1, 6.2.15, 10. mouse pointer 6.2.14-15, 6.3.12-13, 7. movement of screen origin 6.2.7, 6.3.5. __ 412 _________________ Sec. 11. ________________________________________ NN NaCl, see lattices nearest neighbors 6.2.14. n-fold axis 5.3, 6.2.1, 6.2.14, 6.4.2. non-equivalent atoms 6.2.1, 6.2.14. non-integer Miller-indices 6.2.6, 6.2.14. non-primitive lattices 5.3, 6.2.1. nuclear charges 5.3, 6.2.2, 6.2.5, 6.3.2, 6.4.2-3. numbering of atoms 6.2.7, 6.2.14, 6.3.5, 6.3.12, 6.4.2-3. OO opening output files 6.2.8, 6.3.6. option menus 10. origin - of atom cluster 5.1, 6.3.2. - of crystal section 5.1, 6.2.1. - plot 5.1, 6.2.0, 6.3.0. - shift 7.2.0, 6.2.6-7, 6.3.0, 6.3.4-5, 6.4.2-3. - projection 5.1, 6.2.6, 6.3.4. output - of graphics 6.2.6, 6.2.9, 6.3.4, 6.3.7. - to ASCII files 6.2.8, 6.2.13, 6.3.6, 6.3.10. - of atom coordinates 6.2.8, 6.3.6. overwrite files 6.2.8, 6.3.6. PP packing ratio 5.3, 6.2.14. Paintbrush 4.2. paint/label atoms 6.2.7, 6.2.14, 6.3.5, 6.3.12, 6.4.2-3. parallel projection, perspective 5.1, 6.2.6, 6.3.4. PC/AT/XT 2.1.1, 8. perspective, central and parallel 5.1, 6.2.6, 6.3.4. photography 4.4. pixel ratio 6.2.15, 6.3.13, 6.4.7. PLOT3D format 6.2.8, 6.3.6, 6.4.3. plot keys 4.3, 5.5, 6.2.6, 6.3.4. PostScript - language 4.3.1, 5.4, 6.2.8, 6.3.6, 6.4.1, 6.4.6. - format 4.3.1, 5.4, 6.2.8, 6.3.6, 6.4.1, 6.4.6. predefined lattices 5.3, 6.2.1. primitive lattices 5.3, 6.2.1. printing 4.2. Professional FORTRAN 2.1, 8. programming restrictions 8. PS/2 2,1,1, 8. QQ questions 4., 4.5, 7. quitting 6.1, 6.2.13, 6.3.10. RR radii - changing 6.2.2. - default values 5.3. - renormalize 6.2.2, 6.3.2. R-click 3.3.8. reciprocal lattice 5.3, 6.2.3, 6.2.14, 6.4.2. reconstruct layer 6.2.5, 6.4.2. red/blue, see stereo mode ________________________ Sec. 11. _________________________________ 413 __ redefine colors 6.2.15, 6.3.13, 6.4.7. reduction/enlargement of plot 6.2.6, 6.3.4, 6.4.2-3. relax layer 6.2.5, 6.4.2. renormalized Miller indices 6.2.6, 6.2.14. restart from scratch 6.2.10, 6.3.8. restore structure information 6.1, 6.2.8, 6.2.13, 6.3.6, 6.3.10-13. restrictions 8. restructured layers 6.2.5, 6.4.2. resume 6.1, 6.3.11. rotation of plot 5.1-2, 6.2.6, 6.3.4, 6.4.2-3. SS SARCH ASCII format 6.2.8, 6.4.4. save structure data 6.2.8, 6.2.13, 6.3.6, 6.3.10. scaling of lattice 6.2.1, 6.4.2. SCHAKAL format 6.2.8, 6.4.5. SCIS data base 9. sc, see lattices section size 6.2.4, 6.2.14, 6.3.12, 6.4.2-3. shading 5.4, 6.2.7, 6.2.15, 6.3.5, 6.3.13, 6.4.7. shells, nearest neighbor 6.2.14. shift of plot 6.2.7, 6.3.5. size of section 6.2.4, 6.2.14, 6.3.12, 6.4.2-3. silicon, see lattices software requirements - DOS 2.1.1-2, 8. - Unix 2.2.1-2, 8. sorting of atoms 5.2, 6.2.7, 6.3.5. source of programs 9. spacing between planes 6.2.3, 6.2.14. spheres - display mode 6.2.7, 6.3.5. - radii 5.3, 6.2.2, 6.3.2. - boundaries 6.2.4. stack - files 6.2.16, 6.3.14. - option 6.2.16, 6.3.14. starting BALSAC 6.1. - CLUSTER part 6.1, 6.3. - LATTICE part 6.1, 6.2 stereo - full color 6.2.7, 6.3.5. - display mode 6.2.7, 6.2.15, 6.3.5. - distortion 6.2.6-7, 6.2.15, 6.3.4-5, 6.3.13, 6.4.7. - eye distance 6.2.6-7, 6.2.15, 6.3.4-5, 6.3.13, 6.4.7. - glasses (red/blue) 6.2.7, 6.3.5. storing atom coordinates 6.2.8, 6.2.13, 6.3.6, 6.3.10. structure - data, see lattice structures - files, see ASCII file - input/output files subplanes 6.2.3, 6.2.14. 6.1, 6.2.8, 6.2.11, 6.3.6, 6.3.9, 6.3.11, 6.4.1-6. __ 414 _________________ Sec. 11. ________________________________________ surface - reconstruction/relaxation 6.2.5, 6.2.14. - termination 6.2.4. symmetry elements 5.3, 6.2.1, 6.2.14, 6.4.2. system requirements 2.1.1, 2.2.1, 8. TT teach mode 3.3.9, 6.1, 6.2.15. terminal plane 6.2.4, 6.2.5, 6.2.14. terminating BALSAC 6.1, 6.2.13, 6.3.10. title of plot 6.2.1, 6.2.9, 6.3.2, 6.3.7, 6.4.2-3. transfer option 6.2.13, 6.3.10. transfer with structure 6.2.13. transformed basis vectors 5.1, 6.2.3, 6.2.14, 6.4.2. trouble and ways out 7. TSTCOL utility 6.5.1. tutorial 3. typing conventions 5.5. UU unit cell 6.2.1, 6.2.5, 6.2.14. Unix operating system 2.2, 5.5, 8. utility programs 6.5. VV VGA 2.1.1, 4.1-2, 5.4, 6.4.7, 7, 8. view focus 6.2.6, 6.3.4. viewing direction 5.1-2, 6.2.6, 6.3.4, 6.4.2-3. volume - elementary cell 6.2.1, 6.2.14. - total 6.2.1, 6.2.14, 6.3.2, 6.3.12. WW warning - Miller index conversion 6.2.3. - number of atoms exceeded 8. - false perspective 6.2.7. - output file problems 6.2.8. - input file problems 7. white 5.4, 6.2.7, 6.2.15, 6.3.5, 6.3.13, 6.4.7, 6.5.1, 7. width of section 6.2.4. wire frame 6.2.7, 6.3.5, 6.4.2-3. XX xlib 2.2.2, 8. X.11 Windows compatibility ZZ zincblende, see lattice 2.2.1-2, 7, 8.