3.3.2. A BALSAC/CLUSTER SESSION FROM SCRATCH

next, previous Section / Table of Contents / Index 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.16 by K. Hermann (C) Copyright 1991-2005 {graphics mode information} Select: [I]nteractive [R]esume [P]revious [F]ile ->[L]attice [?,]Quit ========================================================================== 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 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) O => ( b, b, b) => (-a,-a, a) => (-b,-b, b) => (-a, a,-a) => (-b, b,-b) => ( a,-a,-a) => ( 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 (X,Y,Z,R,NUC): " 0.0, 0.0, 0.0, 0.0, 28" + [enter] 2 (X,Y,Z,R,NUC): " 2.1651, 2.1651, 2.1651, 0.0, 6" + [enter] 3 (X,Y,Z,R,NUC): "-2.1651, -2.1651, 2.1651, 0.0, 6" + [enter] 4 (X,Y,Z,R,NUC): "-2.1651, 2.1651, -2.1651, 0.0, 6" + [enter] 5 (X,Y,Z,R,NUC): " 2.1651, -2.1651, -2.1651, 0.0, 6" + [enter] 6 (X,Y,Z,R,NUC): " 3.4064, 3.4064, 3.4064, 0.0, 8" + [enter] 7 (X,Y,Z,R,NUC): "-3.4064, -3.4064, 3.4064, 0.0, 8" + [enter] 8 (X,Y,Z,R,NUC): "-3.4064, 3.4064, -3.4064, 0.0, 8" + [enter] 9 (X,Y,Z,R,NUC): " 3.4064, -3.4064, -3.4064, 0.0, 8" + [enter] . This input is confirmed by BALSAC showing ========================================================================== 9 ( 3) different atoms (elements) [T]it [R]ad/nuc [A]toms [G]rp [F]ilrd [L]ist [S]ymm [D]ispla [?,]esc ========================================================================== 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 | Nuc Rmin Rmax 1) 28/Ni .00000 .00000 | 2) 6/ C .00000 .00000 3) 8/ O .00000 .00000 | Modify radii : [A]ll [Z]select [S]elect [R]escale charges: a[L]l s[E]lect [T]abl [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 | Nuc Rmin Rmax 1) 28/Ni 1.93422 1.93422 | 2) 6/ C 1.01678 1.01678 3) 8/ O 1.13321 1.13321 | Modify radii : [A]ll [Z]select [S]elect [R]escale charges: a[L]l s[E]lect [T]abl [D]ispla [?,]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 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 ( 90.00 ) [M]agnf,(dmagnf) = 1.0000 ( 1.5000 ) [Q]persp,(dpersp) = .0000 ( 1.5000 ) [F]ocus = 0 ( .000 .000 .000 ) [S]hift (pixels) = 0 , 0 [A]ll [W]orkb [D]ispla [?,]esc ========================================================================== 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 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) [S]tereo(off) [B]ackgr( 0) [P]alstart( 1) [C]link( 0) [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) [S]tereo(off) [B]ackgr( 0) [P]alstart( 1) [C]link( 0) [L]ayout(L-/T-F) c[T]abl [W]orkb [?,]esc ========================================================================== where "[D]esign(Hm)" confirms your choice. Next you define your plot layout. Pressing [L] shows the layout menu ========== GRAPHICS OPTIONS ============================================== [T]itle(on ) [B]hidat(off) [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, hidden atoms will not be sketched, 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], [B], [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 file = {} [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 [A]nl [I]nput [O]utput stac[K] [N]ew >[L]at [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.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 that you are viewing along the z axis. Finally, a menu line Replot[udlrV][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 NUCA,NUCE,RMIN,RMAX : 1) : 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 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'. 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 (X,Y,Z,R,NUC): " 0.0, 0.0, 0.0, 0.0, 28" + [enter] 2 (X,Y,Z,R,NUC): " 2.1651, 2.1651, 2.1651, 0.0, 6" + [enter] 3 (X,Y,Z,R,NUC): " 3.4064, 3.4064, 3.4064, 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 [A]toms [G]rp [F]ilrd [L]ist [S]ymm [D]ispla [?,]esc ========================================================================== 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 shows the group modify submenu ========================================================================== No group defined 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(off) [X]plot [?,]esc ========================================================================== then pressing [G], [G] shows Define new group: size NGRP (-1=esc,-2=all) : 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 [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(off) [X]plot [?,]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 [A]toms [G]rp [F]ilrd [L]ist [S]ymm [D]ispla [?,]esc ========================================================================== from which you choose symmetry properties by pressing [S]. This shows the symmetry properties menu ========================================================================== Global symmetry: [C]axis [M]irror [I]nvers [R]educe [D]max( 1.000D-02) [X]plot [?,]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 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. next, previous Section / Table of Contents / Index