pbc-guide

94
Solid State Calculations Using gaussian: The Definitive Guide to G09 PBC Calculations April 25, 2012

Upload: kalakkan-kollam

Post on 29-Dec-2015

117 views

Category:

Documents


0 download

DESCRIPTION

good

TRANSCRIPT

Page 1: PBC-Guide

Solid State Calculations Using gaussian:The Definitive Guide to G09 PBC Calculations

April 25, 2012

Page 2: PBC-Guide

Contents1 Conventions Used in this Document 6

1.1 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61.2 Additional Input Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2 Using the ICSD: Starting Structures 82.1 Performing A Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92.2 Saving the cif Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122.3 A Sample cif File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142.4 Opening the cif File in GaussView . . . . . . . . . . . . . . . . . . . . . . . 162.5 Saving a Job File Derived from a cif File . . . . . . . . . . . . . . . . . . . . 17

3 PBC Input Files 183.1 A Sample Input File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183.2 PBC Single Point Energy Calculations . . . . . . . . . . . . . . . . . . . . . 19

3.2.1 Link 0 Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193.2.2 The Route: Lines 1-3 . . . . . . . . . . . . . . . . . . . . . . . . . . . 193.2.3 Title and Coordinate Specifications . . . . . . . . . . . . . . . . . . . 20

3.3 Geometry Optimizations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223.3.1 Line-By-Line Description . . . . . . . . . . . . . . . . . . . . . . . . . 22

3.4 Constrained Geometry Optimizations . . . . . . . . . . . . . . . . . . . . . 233.5 Restarts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

4 Antiferromagnetic Guess Calculations 264.1 Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264.2 Example 1: H Triplet → Singlet . . . . . . . . . . . . . . . . . . . . . . . . . 274.3 Output File Info . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274.4 Example 2: Cr Triplet → Singlet . . . . . . . . . . . . . . . . . . . . . . . . 284.5 Example 3: LaTiO3 Ti Quintuplet → Singlet . . . . . . . . . . . . . . . . . . 29

5 Variable Magnetic Moment Calculations 305.1 Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305.2 Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305.3 Example 1: Linear Monostrand of Pd . . . . . . . . . . . . . . . . . . . . . . 315.4 Example 2: Uranium Nitrides . . . . . . . . . . . . . . . . . . . . . . . . . . 32

6 Spin-Orbit Calculations 336.1 Example 1: Ge with ECP . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336.2 Example 2: Hg with ECP . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

7 Dispersion Calculations 36

2

Page 3: PBC-Guide

8 Running Band Structure and PDOS Jobs 378.1 The Usual Case: PDOS and BS Simultaneously . . . . . . . . . . . . . . . . 378.2 PDOS Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

8.2.1 Input Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398.2.2 PDOS Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

8.3 Band Structure Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408.3.1 Example Input File . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408.3.2 Output Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

8.4 Obtaining BS/PDOS Later . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418.5 Detailed Description of BS/PDOS IOps . . . . . . . . . . . . . . . . . . . . . 42

9 Symmetry 439.1 A Sample band.inp File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449.2 Determining the SG for 3-D Systems . . . . . . . . . . . . . . . . . . . . . . 459.3 2-D Slabs/Films . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479.4 1-D Monolayers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

10 Plotting BS and PDOS 4810.1 A Basic PDOS Plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4810.2 A Sample PDOS *.gpt File . . . . . . . . . . . . . . . . . . . . . . . . . . . 4910.3 Plotting Band Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

10.3.1 Using gpband to Plot BS . . . . . . . . . . . . . . . . . . . . . . . . 5010.3.2 Default gpband Output . . . . . . . . . . . . . . . . . . . . . . . . . 5010.3.3 Annotated Default gp File . . . . . . . . . . . . . . . . . . . . . . . . 5110.3.4 Modified BS Output . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

10.4 Locating k-Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5310.4.1 Easy Indirect Gaps . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5310.4.2 Special Gaps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

11 Increasing the Accuracy and Efficiency of PBC Jobs 5411.1 Practical Tips for G09 PBC Calculations . . . . . . . . . . . . . . . . . . . . 5411.2 Diffuse Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5611.3 All PBC Keywords . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

11.3.1 Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5711.3.2 Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5711.3.3 Availability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

12 Submitting Jobs at Rice 5812.1 Modules: General Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . 5912.2 What You See: Logging In . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5912.3 Module Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

12.3.1 Module Avail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6012.3.2 Module Load . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

3

Page 4: PBC-Guide

12.3.3 Module List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6112.3.4 Module Unload . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6112.3.5 Modules & Submission . . . . . . . . . . . . . . . . . . . . . . . . . . 61

12.4 G09 Modules Available on STIC . . . . . . . . . . . . . . . . . . . . . . . . . 6212.4.1 Applications Modules on STIC . . . . . . . . . . . . . . . . . . . . . 63

12.5 Modules Available on Group Workstations . . . . . . . . . . . . . . . . . . . 64

13 Scripts 6513.1 PBS Submission Scripts (Rice-Specific) . . . . . . . . . . . . . . . . . . . . . 66

13.1.1 STIC Serial Job PBS Submission Script . . . . . . . . . . . . . . . . 6613.1.2 STIC Parallel (Linda) Job PBS Submission Script . . . . . . . . . . . 6713.1.3 DaVinci Parallel (Linda) Job PBS Submission Script . . . . . . . . . 6813.1.4 BioU Serial Job PBS Submission Script . . . . . . . . . . . . . . . . . 69

13.2 PDOS Vertical Template . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7013.3 PDOS Horizontal Template . . . . . . . . . . . . . . . . . . . . . . . . . . . 7113.4 Band Structure: gpband Default . . . . . . . . . . . . . . . . . . . . . . . . 7213.5 Band Structure: Modified AlSb (HISS) gpt File . . . . . . . . . . . . . . . . 7313.6 BS and PDOS Multiplot Example . . . . . . . . . . . . . . . . . . . . . . . . 74

13.6.1 Header and Multiplot Set-Up . . . . . . . . . . . . . . . . . . . . . . 7413.6.2 Band Structure Plot . . . . . . . . . . . . . . . . . . . . . . . . . . . 7513.6.3 Band Structure Plot–II . . . . . . . . . . . . . . . . . . . . . . . . . . 7613.6.4 The Rotated PDOS Plot-I . . . . . . . . . . . . . . . . . . . . . . . . 7713.6.5 The Rotated PDOS Plot-II . . . . . . . . . . . . . . . . . . . . . . . 78

14 PBC Functionals 8014.1 Scuseria Functionals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8014.2 Just-For-Solids Functionals . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8014.3 (Semi)Local Functionals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8114.4 Global Hybrids . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8114.5 Functional Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

15 Basis Sets for Extended Systems 8215.1 Example: The 6-311G Basis Set for Fluorine . . . . . . . . . . . . . . . . . . 8215.2 Modifying Basis Sets for PBC Calculations . . . . . . . . . . . . . . . . . . . 83

15.2.1 Basis Set Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . 8415.2.2 Example 1: Modified PBC Basis Sets with No ECPs . . . . . . . . . 8415.2.3 Example 2: Modified Arsenic Basis Set + ECP . . . . . . . . . . . . 8515.2.4 Example 3: Step-by-Step Modification for Cl . . . . . . . . . . . . . . 86

15.3 Using the EMSL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8815.3.1 Example: Ge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

15.4 Converting cry to gbs Files: gbsutil . . . . . . . . . . . . . . . . . . . . . . 89

4

Page 5: PBC-Guide

16 Backing Up Your Data 9016.1 Using rsync: Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

5

Page 6: PBC-Guide

1 Conventions Used in this Document

The following conventions will be used throughout:

• KEYWORDS when discussed in the text will be in Bold face font

• IOps when discussed in the text will be in red.

• Input and Output files for/from a G09 job, when discussed in the text, will be ingreen.

• External URL links will be in blue.

• Internal links to sections or files within this pdf file will be in a darker, navy blue.

• Directory paths on GUSCUS or any other machine will appear in, violet2.

• sgu1 is an imaginary Scuseria Group User with an ID in the style that Rice uses, whichis typically 3 initials from your name followed by a number. sgu1 appears in severalexamples...

1.1 Examples

Generally, the EXAMPLES will be in monospace font and indented, e.g.

Like this and thus ready to use for a G09 job.

Types of examples to expect include:

1. INPUT and or the ROUTES

2. OUTPUT and or the cmd line commands to watch/work-up a job

3. Scripts (PBS, etc.) if small enough, will be included in Section 13 of this documentor accessible locally by SCP from guscus:/projects/guscus/Manuals/scripts/.

4. Small Basis Sets for illustrative purposes will be included in Section 15. Links orpaths to a database, if one exists, will also be listed in this section. Note that the basissets are generally not small since we are not limited to H, He, Li and Be in the 21stcentury.

All of these files should be immediately useable via cut-N-paste from this document. AcrobatReader should allow this, Evince does not always work. If not, there will always be sometemplate, somewhere. (But Acrobat works pretty much most of the time.)

6

Page 7: PBC-Guide

Sec. 1: Conventions Used in this Document

1.2 Additional Input Examples

Please note that there are numerous additional examples of PBC jobs that are small enoughto run relatively quickly. Many of these may be taken from the Heyd 2005 paper on HSE,(#265).

The unmodified (HSE03) input files and basis sets from this paper are located at online.Simply replace the route line below in those *.com files, with the recommended route inSections 3.2.2-3.2.3).

%chk= file.chk#p HSEh1PBE/GenECP Int(Grid=UltraFine) Pop=Regular FMM=(print)IOp1=timestamp IOp(5/13=1,5/33=1)SCF=(NoVarAcc,NoIncFock,Tight)

A local version of the sc40 test set, implementing the aboveHSE-for-PBC route and including all basis sets is located at:guscus:/projects/guscus/Manuals/examples/sc40

Last Modified March 26, 2012

7

Page 8: PBC-Guide

2 Using the ICSD: Starting StructuresThe ICSD Web database is located at icsd.fiz-karlsruhe.de. For Rice users free access isavailable via IP address at icsd.fiz-karlsruhe.de.ezproxy.rice.edu.

• The red rectangle in the center shows you how you are logged in. If it does not show thatyou are logged in through Rice then you have access to the full database. You cannot accessthe full database at home, or remotely, since the license is via IP address.)

• The orange arrow to the right indicates how you can log in, and personalize your account.This feature allows you to save your searches, which is very handy.

• The yellow rectangle to the right shows you all of the options available for the differentsearches. Chemistry is the most frequently used option.

• NOTE: The contents of the center section change, depending upon the chosen option, whilethe choices to the far left and right remain the same.

8

Page 9: PBC-Guide

Sec. 2: Using the ICSD: Starting Structures

2.1 Performing A Search

Once you have logged in, you should see a page similar to that depicted in Figure 1. Go tothe left column and click “Chemistry,”as is delineated by the red arrow.

Figure 1: The ICSD page once you have logged in and are ready to begin a search.

Once you have clicked on “Chemistry” you will be provided with an empty form, as inFigure 2.

1. Type in the element/compound/alloy/system you are interested in the line marked bythered arrow This example is for bcc Cr.

2. Enter the number of elements in the system.orange arrow. (In this case “1”.)

3. Hit “Run Query” on the left. green arrow.

Figure 2: The ICSD page once you have logged in and are ready to begin a search.

Notice that the lower right of Figure 2 has saved searches, indicated by the blue arrow inthe lower left corner. You can save your searches and recall them as necessary.

9

Page 10: PBC-Guide

Sec. 2: Using the ICSD: Starting Structures

The various crystal structures for your system available in the database then appear, as inthe Cr example discussed and in Figure 3, below.

1. It is better to use the most recent and/or highest quality structures, but in this example,the “High Quality Data only” option does not reduce the number of structures. (Seethe red arrow to the far left.)

2. The ICSD generally reports only the Hermann-Mauguin notation (HMN) to report thesymmetry elements in the space groups. See the orange arrow to the left. (The spacegroup in HMN and as number(s) are in the *.cif files.)

• The 4th column has the Structure Type, which is also listed in the band.inp filenames. So, since, we know we want bcc-Cr and it is a metal like W (Tungsten)select the Im3̄m structure.

• - BUT - what if you do not know that much? Refer to Section ?? for moreinformation on determining symmetry in various dimensions.

3. Simply select the structure(s) with the space group(s) you need. See the Green arrow.

4. Click “Export Selected Data” at the top, right, as indicated by the blue arrow.

10

Page 11: PBC-Guide

Sec. 2: Using the ICSD: Starting Structures

Figure 3: Some of the many crystal structures available for Cr on the ICSD.

Note that if the “Show Detailed View” button is clicked once the structure has beenselected (purple arrow of Figure 3), that significantly more information about the structureappears, as shown in Figure 4.

1. The structure is a Jmol animation with free rotation in and out of the ICSD win-dow/tab.

2. The Experimental section summarizes what can be found in the articles of the Bibli-ography section.

3. TheWarnings and Comments may be helpful in determining the quality of the structure

4. Once satisfied, click the Export CIF File button. (Circled in red.)

11

Page 12: PBC-Guide

Sec. 2: Using the ICSD: Starting Structures

Figure 4: The detailed view for Cr cif file ID #44731.

2.2 Saving the cif Files

The Export Selected Data page is depicted in Figure 5.

1. Enter the name of the cif file(s) in the form (circled in red.)

2. Click either “Single CIF FIle” or Multiple CIF Files to export. (red arrows.)

• In the Cr example, there will be only one file saved, with the name Cr_bcc.cif

• If multiple files are selected, they are saved as a zip file, with the filenamesCr_bccX.cif , with X= 1, 2, 3, ... once they are extracted.

12

Page 13: PBC-Guide

Sec. 2: Using the ICSD: Starting Structures

3. Notice that there are two other formats: *.csv and *.xls, if tabulated data is desired.

Figure 5: The Export Selected Data page for Cr cif file ID #44731.

NOTE:GaussView can read *.cif files as is,

so once they are downloaded, you are ready to go!

Last Modified April 10, 2012

13

Page 14: PBC-Guide

Sec. 2: Using the ICSD: Starting Structures

2.3 A Sample cif File

This file has truncated symmetry equivalent positions.(See guscus:/projects/guscus/Manuals/Cr_44731.cif for the full file)

#(C) 2012 by Fachinformationszentrum Karlsruhe. All rights reserved.data_44731-ICSD_database_code_ICSD 44731_audit_creation_date 2000-12-16_audit_update_record 2006-04-01_chemical_name_systematic ’Chromium - alpha’_chemical_formula_structural Cr_chemical_formula_sum Cr1_chemical_name_structure_type W_exptl_crystal_density_diffrn 7.19_cell_measurement_temperature 293._publ_section_title

;The absorption and refraction corrections and the lattice constants ofchromium;loop__citation_id_citation_journal_full_citation_year_citation_journal_volume_citation_page_first_citation_page_last_citation_journal_id_ASTMprimary ’Zhurnal Eksperimental’noi i Teoreticheskoi Fiziki’ 1964 47 476 479ZETFA7loop__publ_author_name’Straumanis, M.E.’’Weng, C.-C.’_cell_length_a 2.88494(7)_cell_length_b 2.88494_cell_length_c 2.88494_cell_angle_alpha 90._cell_angle_beta 90._cell_angle_gamma 90._cell_volume 24.01_cell_formula_units_Z 2_symmetry_space_group_name_H-M ’I m -3 m’_symmetry_Int_Tables_number 229

14

Page 15: PBC-Guide

Sec. 2: Using the ICSD: Starting Structures

loop__symmetry_equiv_pos_site_id_symmetry_equiv_pos_as_xyz (TRUNCATED)1 ’z, y, -x’2 ’y, x, -z’3 ’x, z, -y’4 ’z, x, -y’5 ’y, z, -x’6 ’x, y, -z’7 ’z, -y, x’8 ’y, -x, z’9 ’x, -z, y’10 ’z, -x, y’11 ’y, -z, x’12 ’x, -y, z’13 ’-z, y, x’14 ’-y, x, z’15 ’-x, z, y’16 ’-z, x, y’17 ’-y, z, x’18 ’-x, y, z’19 ’-z, -y, -x’20 ’-y, -x, -z’

. . .

96 ’x+1/2, y+1/2, z+1/2’loop__atom_type_symbol_atom_type_oxidation_numberCr0+ 0loop__atom_site_label_atom_site_type_symbol_atom_site_symmetry_multiplicity_atom_site_Wyckoff_symbol_atom_site_fract_x_atom_site_fract_y_atom_site_fract_z_atom_site_B_iso_or_equiv_atom_site_occupancy_atom_site_attached_hydrogensCr1 Cr0+ 2 a 0 0 0 . 1. 0#End of data_44731-ICSD

15

Page 16: PBC-Guide

Sec. 2: Using the ICSD: Starting Structures

2.4 Opening the cif File in GaussView

Figure 6: The GaussView main console.

1. On the menu bar, select FILE → OPEN (See Figure 6.)

2. A window will appear as in the left of Figure 7

3. Select in the File type window “Crystallographic Information Files (*.cif)”

4. Go to the directory you want and select the cif file you want

5. The file name should appear in parentheses in the first box e.g., “BaTiO3.cif”

6. Click the blue Open button to the left and GaussView will open the structure

7. A new window will open with the crystal structure inside the box defined by the latticeparameters. (See the right image of Figure 7.)

• Note that the lower left corner contains information about the number of atoms, andelectrons as well as the charge and multiplicity.

• The information to the right will change upon selection of atoms or bonds.

8. Manipulate the file as you wish and then save.

Figure 7: GaussView for cif files. Left: The window to select and open a cif file in yourdirectory. Right: The periodic system with cell axes and atoms constructed from the ciffile by GaussView.

16

Page 17: PBC-Guide

Sec. 2: Using the ICSD: Starting Structures

2.5 Saving a Job File Derived from a cif File

Figure 8: The Calculation Menu to set up and save a gjf file.

1. On the menu bar, select CALCULATE → Gaussian Calculation Setup... (See Figure 8.)

2. If you have already save a calculation scheme, you may do this, instead.

3. A window will appear as in Figure 9

4. All requisite keywords/IOps discussed in Section 3 are input via the Additional Keywordsline.

5. Paths to basis sets or ECPs can be added via the Add. Input tab to the far right.

6. Store the file first by hitting the Retain button at the bottom (5th) from the left.

7. Save it as a *.gjf file by going to the main window under FIle → Save.

Figure 9: GaussView window for setting up a job.

17

Page 18: PBC-Guide

3 PBC Input Files

The example below contains the minimal input file you will need for runninga PBC job. Copying the route and using it should ensure that any small testPBC job will run reasonably smoothly.

3.1 A Sample Input File%chk=CdS-wu_x.chk#p HSEh1pbe/GenECP Int(Grid=UltraFine) pop=regular fmm=(print)IOp1=timestamp IOp(5/13=1,5/33=1,5/181=10,5/184=186)SCF=(NoVarAcc,NoIncFock,Tight)

CdS-Wurzite (hexagonal) using basis set from JJ Sowa xtal Solid StateSciences 2005 7 73 78

0 1Cd 0.00000000 2.38820939 0.00000000S 0.00000000 2.38820939 2.53193200Cd 2.06825000 1.19410469 3.35800000S 2.06825000 1.19410469 5.88993200Tv 4.13650000 0.00000000 0.00000000Tv -2.06825000 3.58231408 0.00000000Tv 0.00000000 0.00000000 6.71600000

@/projects/guscus/basis/cd-heyd.gbs/N@/projects/guscus/basis/s-mHeyd2005.gbs/N

Quick File Description

1. Link 0 commands: checkpoint file specification (%mem etc., added in *.pbs files)

2. The route

3. The title line(s)

4. Charge and multiplicity specifications

5. Coordinates (for a unit cell, now, not a molecule)

6. Three translation vectors, labeled by Tv

7. The basis set specification

18

Page 19: PBC-Guide

Sec. 3: PBC Input Files

3.2 PBC Single Point Energy Calculations

A detailed description of each line and/or section of the input file in Section 3.1is provided in the subsections that follow. Most requirements parallel what isnormally used for molecular calculations.

(See the Gaussian09 Online Users Manual.)

3.2.1 Link 0 Commands

1. A checkpoint, *.chk file is vital: PBC jobs run long, are prone to crash, and are necessaryfor BS/PDOS calculations.

2. %mem, %NProcShared, scratch file names/locations and other commands will be addedvia the various PBS scripts and are not necessarily PBC-related – other than that memoryrequirements will be much larger than those of molecules, and running in parallel becomesespecially useful.

3.2.2 The Route: Lines 1-3

1. #p – Requests more verbose print-out. *ALWAY* use.

2. HSEh1PBE – Functional specification

• HSEh1PBE is the HSE06h version of HSE – the most current and accurate “flavor” ofHSE. USE THIS FOR HSE.

• Frequently used functionals are SVWN5, PBE, TPSS, PBEsol, and HISS.

• All other functionals, the appropriate keywords and/or IOps are tabulated in the Func-tionals section, Section 14.

• References for the various functionals are also in Section 14 or may be found locally asbib file at guscus:/projects/guscus/Manuals/functionals.bib.

3. GenECP – Basis set specification: read in a basis set and and an ECP

• GenECP is equivalent to the combination of Gen and Pseudo=Read.

• If no ECP is required, use the keyword, Gen.

4. Int(Grid=Ultrafine) – always use, period.

• To make valid energy comparisons among two or more jobs, the same grid must be usedand the Ultrafine grid is generally better for PBC calculations...

• Note that there are numerous ways to specify this grid: consult the G09 Keyword pageto see the other variations. (G09 input is essentially free-format, so case usually DOESNOT matter.)

5. Pop=Regular – molecular orbital printing and several types of population analysis.

• Absolutely necessary for computing Band Structure and PDOS: leaving it out will resultin much distress. Section 8.1.

19

Page 20: PBC-Guide

Sec. 3: PBC Input Files

• Using the Pop=FULL option will result in an... overly large file.

6. FMM=Print and IOp1=timestamp are useful for debugging and timings

• Odds are, you will use these at some point: put them in your template and be gladlater.

7. Other important PBC IOps: (Check the G09 IOps Page for more details. These are allOverlay 5 → Direct link to Overlay 5)

• 5/13=1 – continue running even in spite of non-convergence, ILSW flag ON

• 5/33=1 – eigenvalues and MOs printed at end

• 5/181=10 – run a PDOS calculation (See Section 8.2.)

• 5/184=### – look for a band.inp file of space group ### and compute the bandstructure.

– e.g., 186 = Wurtzite/hexagonal; 216 = Zincblende; 227 = Diamond, ...– See Sections 8.3 and 9.1.

8. The SCF settings are key for both energy calculations and optimizations. Again,this is theminimal route for a PBC job. See the specific keyword pages for more details.

• NoVarAcc – Do not use the default of modest integral accuracy early in direct SCF,switching to full accuracy later on.

• NoIncFock – Prevents the use of incremental Fock matrix formation, and it is thedefault for conventional SCF

• Tight – SCF=Tight, should be default: SCF details.

– Note that "tight" varies by Gaussian version for PBC, so explicitly stating this isa safety measure.

– If in doubt, check your output file.– There is a definite difference between HSE03 and HSE06.

3.2.3 Title and Coordinate Specifications

Notice that very little differs from a molecular file specification...

1. Line 4 starts the Title Section

• Cannot exceed five (5) lines and must be preceded and followed by a blank line.

• Do not use @ # ! - _ \ or any control characters (especially Ctrl-G)

• Use for “notes” e.g., recording the name, symmetry, ICSD ID and lattice parameters ofthe compound, etc..

2. Charge and multiplicity specifications

• Charge is the number to the left, multiplicity the number to the right.

20

Page 21: PBC-Guide

Sec. 3: PBC Input Files

• For a neutral singlet, will usually see 0 1, but be aware of an older notation usingcommas: 0,1

3. The unit cell coordinates.

• xyz Cartesian coordinates

• Usually from a *.cif file downloaded from a database, like the ICSD, see Section 2.

• Can be aprimitive, the full unit cell or a supercell. NOTE:

• Databases generally provide the unit cell, not the primitive cell.

4. The translation vectors always follow the cell coordinates

• Labeled by Tv, or numerically as -2.

• Correspond to the x, y and z directions, respectively.

• Note that these directions/planes do not necessarily correlate with those for variousMiller Indices of interest: when going from 3-D to a 2-D slab or 1-D monolayer, simplydeleting one (or two) of the rows from the bulk structure may not result in the desiredlower dimensional structure.

• Always followed by a blank line.

5. The basis set specification using a path

• The/N prevents the basis set from being printed at the beginning if the output file

• Alternatively, the basis set and/or ECP can be added to the end of the file, as inmolecular calculations

6. There are cases where additional specifications may be added to a file. For examples, reviewthe sample input files in Sections 4, 5, and 6.

This example, with the complete input file (including both basis sets)and the corresponding output file is provided locally at:

guscus:/projects/guscus/Manuals/examples/CdS-wu/.

Last modified March 26, 2012

21

Page 22: PBC-Guide

Sec. 3: PBC Input Files

3.3 Geometry Optimizations

Note that both the lattice parameters *and* the atomic positionsare relaxed within a gaussian PBC optimization.

Below is an example route for a PBC Optimization:

%chk=CdS-wu_x.chk#p HSEh1pbe/GenEcp Int(Grid=UltraFine) Pop=Regular FMM=(Print)IOp1=timestamp IOpp(5/13=1,5/33=1,5/181=10,5/184=186)SCF=(NoVarAcc,NoIncFock,Tight) Opt Guess=(Read,Fock)

3.3.1 Line-By-Line Description

1. Keep the SCF=(NoVarAcc,NoIncFock,Tight) specification.

2. Add the keyword Opt

3. PBC optimizations benefit greatly from an initial guess, hence; Guess=(Read,Fock).

• Why Guess=(Read,Fock) and not just Guess=(Read)?

• According to Dr. Cristian V. Diaconu, reading from the Fock matrix is better because:

“Guess=Read uses the Fock matrix if NMtPBC in the chk file is the same asthat of the current calculation, otherwise, it uses the MO coefficients, foldedin the unit cell. The latter is good for weakly-interacting molecular solids,but becomes increasingly bad as the inter-cell interaction increases. For non-molecular solids I suggest always using Guess=(Read,Fock).”

4. The *chk files can become very, very large (hundreds of MB or even a tens of GB)

• If running a big job, back up the *chk file periodically. A corrupted checkpoint fileis an extremely sad thing

• The STIC/DaVinci/BlueBioU file systems can and *will* corrupt checkpoint files – suchis the price of cutting-edge computing.

22

Page 23: PBC-Guide

Sec. 3: PBC Input Files

3.4 Constrained Geometry OptimizationsThis information originates from an email exchange between Rich Martin fromLANL and Dr. Fernando R. Clemente of Gaussian Technical Support.

Check Section 11.3 for notes on additional PBC keyword usage.

The best way to apply constraints in these geometry optimizations would be to use the keywordOpt=ModRedundant, symbolic Z-matrices would not work well for PBC optimizations.

The trick in applying constraints to PBC geometry optimizations is to get the correctnumbering right. Note that the translation vectors count for the purpose of atom numbering eventhough they are obviously not atoms and thus their numbers cannot be used directly to apply aconstraint. So, for example, if one wants to freeze the length of a translation vector, the constraintwould be to freeze the interatomic distance between an atom in the origin cell and the same atomin the contiguous cell along the direction of the translation vector of interest.

In a 3-D periodic calculation, there are 8 cells to consider, the origin cell (O) and seven contiguouscells (one along each one of the three translation vector, T1, T2 and T3, plus the four contiguouscells along the diagonals, T1+T2, T1+T3, T2+T3, and T1+T2+T3). The following shows howthese cells are ordered for atom numbering purposes:

Cell Start EndO 1 NT3 N+1 2NT2 2N+1 3NT2+T3 3N+1 4NT1 4N+1 5NT1+T3 5N+1 6NT1+T2 6N+1 7NT1+T2+T3 7N+1 8N

where N is the number of entries in the input file, that is the number of "real" atoms plus the threetranslation vectors.

For instance, in the input file you sent here, you have 12 atoms plus the three translation vectors,that makes N=15. If you were to freeze the length of the first translation vector (T1), you couldfreeze, for instance, the interatomic distance between atom 1 (in cell O) and atom 61 (same atombut in cell T1).

In your case, I see that you would like to constrain the lengths of T1 and T2 to be the same, not justfreeze the length. Unfortunately, the redundant internal set does not allow to impose the identitycondition between two coordinates. However, for this particular case, it would still be possible todo what you are trying here.

In order to keep the lengths of T1 and T2 equal during the optimization, you could freeze the anglebetween an atom in cell T1, the same atom in cell O, and the same atom in cell T1+T2. This angle

23

Page 24: PBC-Guide

Sec. 3: PBC Input Files

should bisect the angle between T1-O-T2. So, given that your translation vectors form an angleof 90 degrees, the T1-O-T1+T2 angle should be frozen to be 45.0 degrees, exactly at the bisection(which implies that the two translation vectors will be equal in length). Below is an example of howto do this for your input file.

#p uTPSStpss/Gen PBC=(nkpoint=2000) pop=regularSCF=(convergence=7,maxcycles=64,NoVarAcc)Guess=(Read,Fock) OPT=modredun

V4O8 tetragonal rutile (high temperature); Towler V and O basis;

0 5V 1.27880629 4.44482660 -0.22374016O 0.27860530 0.95052300 0.87756065O 1.81959437 3.32683050 0.96076224V 3.48744003 2.18167660 1.19205909V 2.73205066 0.08147340 3.77512190V 0.52341693 2.34462340 2.35932265O 4.48764102 3.21367300 0.09075828O 3.73225165 3.57577700 2.67382109O -0.47678407 1.31262700 3.46062345O 2.94665196 1.06368050 0.00755669O 2.19126259 1.19946950 2.59061950O 1.06420500 3.46261950 3.54382505Tv 4.55460000 0.00000000 0.00000000Tv 0.00000000 4.55460000 0.00000000Tv 0.00000000 0.00000000 5.70280000

A 61 1 31 90.0 F ! T1-O-T2 angle 90 deg.A 61 1 91 45.0 F ! T1-O-T1+T2 angle bisects above angle

@v_towler.bas@o_towler.bas

Last Modified March 29, 2012

24

Page 25: PBC-Guide

Sec. 3: PBC Input Files

3.5 RestartsFor both energy calculations and optimizations, adding Restart is sufficient, i.e.,

• Energy Calculation: SCF=(NoVarAcc,NoIncFock,Tight,Restart)

• Optimization: SCF=(NoVarAcc,NoIncFock,Tight) OPT=Restart

See also Section 3.4 for instructions on how to run constrained geometry optimizations

Last modified March 27, 2012

25

Page 26: PBC-Guide

4 Antiferromagnetic Guess CalculationsThe "Antiferromagnetic Guess" or "Spin-Flip" code for PBCS "flips" the spindensity for a given set of atoms. It is useful for generating AFM (antiferromag-netic) guesses from FM (ferromagnetic) calculations.

NOTE: For version G09-b1-pbc-2.3 the IOps are:

1. 5/150=1 turn on the AFM guess

2. 5/150=0 turn off the AFM guess (default)

3. AGAIN: These IOps change by version, so check before running.

4.1 InputIf the AFM guess is turned on, a list of atoms whose spin densities are to be flipped should bespecified after a blank line from the input file. This is best accomplished by running a two-partcalculation using Link 1. (See Section 4.2 for more details.)

1. The first part of the input file should be the "unflipped" system

2. Add a blank space

3. Add –Link1–

4. The new route will include Guess=(Read,Fock), IOp(5/150=1) and NoSymm. TheNoSymm keyword prevents the reorientation and causes all computations to be performedin the input orientation.

5. Add the new spin multiplicity, e.g., 0 3 → 0 1

6. Input the coordinates again (could Geom=Allchk be used)

7. Input ONE (1) blank line after the last Tv

8. Add the list of atoms that will be spin flipped

• Specify according to the atom numbers

• Apparently vertically specified (See 4.5.)

26

Page 27: PBC-Guide

Sec. 4: Antiferromagnetic Guess Calculations

4.2 Example 1: H Triplet → Singlet

In the following example, the comments are actually *in* the G09 input file.

%chk=H.chk#p PBEPBE/cc-pvtz

PBE H note this starts out as a triplet and will be flipped

0,3H 0.0000 0.000 0.0000H 0.0000 0.000 1.1000TV 0.0000 0.000 2.2000

--Link1--%chk=H.chk#p PBEPBE/cc-pvtz Guess={Read,Fock} IOp(5/150=1) NoSymm

PBE H note that the total spin multiplicity is now 1

0,1H 0.0000 0.000 0.0000H 0.0000 0.000 1.1000TV 0.0000 0.000 2.2000

! LIST OF ATOMS WHERE THE SPIN SHOULD BE FLIPPED! Note only 1 linee between the Tv and the atom list1

4.3 Output File InfoAt the beginning of the SCF, the output file should contain the following message:

"AfmFkG: AFM guess by flipping spin density"

followed by the list of atoms and basis sets involved in the spin flipping.

The input and output files – with comments – are located locally at:guscus:/projects/guscus/Manuals/AFMGuess/Example1-H.

27

Page 28: PBC-Guide

Sec. 4: Antiferromagnetic Guess Calculations

4.4 Example 2: Cr Triplet → Singlet

%chk=Cr.chk#p PBEPBE/LANL2DZ

PBE Cr

0,3Cr 0.0000 0.000 0.0000Cr 0.0000 0.000 2.4000TV 0.0000 0.000 4.8000

--Link1--%chk=Cr.chk#p PBEPBE/LANL2DZ guess=read IOp(5/150=1)

PBE Cr

!! **** note that total spin multiplicity here is 1.!0,1Cr 0.0000 0.000 0.0000Cr 0.0000 0.000 2.4000TV 0.0000 0.000 4.8000

!LIST OF ATOMS WHERE THE SPIN SHOULD BE FLIPPED1

Information from the output file:

[sgu1@gw Example2-Cr]$ grep "SCF D" *.logSCF Done: E(UPBE-PBE) = -172.513542291 A.U. after 55 cyclesSCF Done: E(UPBE-PBE) = -172.571323846 A.U. after 30 cycles

1st line: Converged SCF energy corresponding to that of the triplet.

2nd line: Converged SCF energy corresponding to that of the singlet arising post spin-flip.

A sample version of the input and output with comments is located locally at:guscus:/projects/guscus/Manuals/AFMGuess/Example2-Cr.

28

Page 29: PBC-Guide

Sec. 4: Antiferromagnetic Guess Calculations

4.5 Example 3: LaTiO3 Ti Quintuplet → SingletIn the following example, the comments are actually *in* the G09 input file.Notice the free-format of the G09 input files...

%chk=LTO.chk#p UPBEpbe/GEN pseudo=read Int=Grid=Ultrafineiop(5/13=1,5/33=1,3/18=1,3/65=-25) GFInput pop=regular SCF=tight

Ferro magnetic LaTiO3 Spin UP for all Ti atoms 2,8,9,10

0,5La,0,3.0649514287,-2.2692554128,-1.580103775Ti,0,0.27940315,-2.4932384439,-3.5559414972O,0,-2.2052614311,0.2766559378,-1.5802918116O,0,1.4815133703,-0.890960693,-3.3214858263La,0,-2.5045921227,2.8229404289,2.3702238711La,0,0.2660765836,0.0554120936,2.3713792713La,0,0.2942660209,0.4982535617,-1.5812458804Ti,0,0.2793469199,-2.490041081,0.3961952352Ti,0,-2.5196374746,0.2743011984,-3.5568557237Ti,0,-2.5197041276,0.2775004992,0.3952969214O,0,2.7656449004,0.277038938,2.3704292974O,0,0.5937990896,-2.4894430993,2.3716929806O,0,-0.0334301204,3.0431335943,-1.5815593191O,0,-0.922206137,1.443200864,0.6296615465O,0,-1.3188302628,-1.3219594526,4.112984379O,0,1.8777073771,1.8772833843,0.1591920659O,0,-0.9211487908,1.4446548897,4.1116294151O,0,1.4825626149,-0.8895175017,0.1604564175O,0,1.8791897066,1.8756333904,-3.322861073O,0,-1.3173586107,-1.3236264087,0.6309382415TV,0,5.5997593459,-0.0013274988,-0.0004424492TV,0,0.0016897946,5.5337445538,-0.0022507369TV,0,-0.0001024768,0.0064109731,7.9042794351

! used basis sets @2_mod_SVP_Ti.gbs, SVP_O.gbs, 2_SVP_La.gbs get from Fadwa El-Mellouhi! [email protected]

%--------------------------------------------------%chk=LTO.chk#p UPBEpbe/GEN pseudo=read Int=Grid=UltrafineGuess(Read,Fock) IOp(5/13=1,5/33=1,3/18=1,3/65=-25,5/150=1) GFInput pop=regular SCF=tight

AntiFerromagnetic state will be obtained from the previous run by activating the IOP 5/150=1 indicatingto flip spin for the Ti atoms. Atoms 8 and 9 will have spin DOWN while 2 and 10 will keep spin UP.

0,1La,0,3.0649514287,-2.2692554128,-1.580103775Ti,0,0.27940315,-2.4932384439,-3.5559414972O,0,-2.2052614311,0.2766559378,-1.5802918116O,0,1.4815133703,-0.890960693,-3.3214858263La,0,-2.5045921227,2.8229404289,2.3702238711La,0,0.2660765836,0.0554120936,2.3713792713La,0,0.2942660209,0.4982535617,-1.5812458804Ti,0,0.2793469199,-2.490041081,0.3961952352Ti,0,-2.5196374746,0.2743011984,-3.5568557237Ti,0,-2.5197041276,0.2775004992,0.3952969214O,0,2.7656449004,0.277038938,2.3704292974O,0,0.5937990896,-2.4894430993,2.3716929806O,0,-0.0334301204,3.0431335943,-1.5815593191O,0,-0.922206137,1.443200864,0.6296615465O,0,-1.3188302628,-1.3219594526,4.112984379O,0,1.8777073771,1.8772833843,0.1591920659O,0,-0.9211487908,1.4446548897,4.1116294151O,0,1.4825626149,-0.8895175017,0.1604564175O,0,1.8791897066,1.8756333904,-3.322861073O,0,-1.3173586107,-1.3236264087,0.6309382415TV,0,5.5997593459,-0.0013274988,-0.0004424492TV,0,0.0016897946,5.5337445538,-0.0022507369TV,0,-0.0001024768,0.0064109731,7.9042794351

! basis sets @2_mod_SVP_Ti.gbs @Basis/SVP_O.gbs @2_SVP_La.gbs98

Local versions of the input and output files (with comments) are located at:guscus:/projects/guscus/Manuals/AFMGuess/Example3-LTO.

Last Modified March 28, 2012

29

Page 30: PBC-Guide

5 Variable Magnetic Moment Calculations

The Variable Magnetic Moment (VMM) code is similar to that of the AFM Guess.For version G09-b1-pbc-2.3 the IOps are:

1. 5/150=-1 turn on the VMM code

2. 5/150=0 turn off the VMM guess (default)

3. NOTE: These IOps change by version – please check before running.

5.1 Input1. The first part of the input file should be the "unflipped" system

2. Specify orbitals of interest, e.g., 5D 7F in Example ??

3. Add a blank space

4. Add –Link1–

5. The new route will include Guess=(Read,Fock), IOp(5/150=-1)

6. Input the coordinates again (could Geom=Allchk be used?)

5.2 OutputFor final energy information:

[sgu1@gw VMM]$ grep "SCF D" test.logSCF Done: E(US-VWN5) = -254.423823192 A.U. after 37 cyclesSCF Done: E(US-VWN5) = -254.500741669 A.U. after 16 cycles

To watch job progress, type:

[sgu1@gw VMM]$ grep -A5 "VMM N" test.log

which then provides the following information:

VMM NIter= 20 Fermi level: -5.23345194178Magnetic moment = 1.588292 Bohr magneton per unit cellEferm= -5.233452 NE= 36 Er0= 0.00D+00 Er1=-7.11D-15ZInLT1: VMM Cor=Cln Er=-1.60D+01 Sum= -209.923914275660400ZInLT1: VMM Cor=Yes Er=-4.55D-13 Sum= -410.884531549023800End of ZIntLT. Tue Mar 27 12:52:16 2012 0.03 cpu seconds.

30

Page 31: PBC-Guide

Sec. 5: Variable Magnetic Moment Calculations

5.3 Example 1: Linear Monostrand of Pd

NOTE: The reference data is taken from Dr. Juan Peralta’s calculations runwithGDV-F.02. At the time of this writing, we usedG09-B1. Please exercisecaution if using older or newer versions. Files are accessible locally at:

guscus:/projects/guscus/Manuals/VMM/Example1-Pd

%chk=Pd.ccpvtzpp.SVWN5.5.V06.chk#p USVWN5/Gen Pseudo=read 5D 7F IOp1=timestampSCF=(Conver=8,MaxCycle=300,CDIIS,NoIncFock,NoVarAcc)iop(5/33=1,5/13=1) PBC(NCellMin=120)

Pd linear monostrand SVWN5 / multipl = 5 old example from Juan Peralta

0,5Pd .000000 .00000 .000000Pd 0.000 0.000 3.000Tv 0.0 0.0 6.0000

! basis set information provide in input file on! guscus:/projects/guscus/Manuals/VMM/Example1-Pd! Notice only one blank line between last Tv and --Link1--!--Link1--%mem=2500Mb%nproc=4%chk=Pd.ccpvtzpp.SVWN5.5.V06.chk#p USVWN5/Gen Pseudo=read 5D 7F SCF=Tight Guess=Read IOp1=timestampIOp(5/33=1,5/150=-1,5/13=1) scf=(conver=8,maxcycle=300,CDIIS,DAMP)PBC(NCellMin=120)

Pd linear monostrand SVWN5 / multipl = 5

0,5Pd .000000 .00000 .000000Pd 0.000 0.000 3.000Tv 0.0 0.0 6.000

! basis set information provide in input file on! guscus:/projects/guscus/Manuals/VMM/Example1-Pd

31

Page 32: PBC-Guide

Sec. 5: Variable Magnetic Moment Calculations

5.4 Example 2: Uranium Nitrides

In the following example, the comments are actually *in* the G09 input file.

This is somewhere in the Refractories directory.M. Lucero and V. Barone...

This example is being specially prepared in order tooptimize all aspects of your learning experience.

Relevant files will be placed in:guscus:/projects/guscus/Manuals/VMM/Example2-UNx.

Last Modified March 27, 2012

32

Page 33: PBC-Guide

6 Spin-Orbit Calculations

The key is to use a gdv version that has Spin-Orbit Coupling implemented and to use IOp(3/117=1).As of April 1, 2012, G09-B1 and gdv-H11 may be used with confidence, although gdv-H13 hasbeen tested.

6.1 Example 1: Ge with ECP→ The following job was run using gdv-H13.→ This uses... IOps 5/193=1 and 5/155=3: Contact Irek W. Bulik for more information.

%subst l302 ..%KJob l302#p USVWN5/Gen Pseudo=Read 5d 7F IOp1=tstamp gfprintiop(3/117=1) NosSmm

Bulk Ge with ECP spin-orbit. This is the "molecular" calculationonly to generate the intracell SO matrix elements in the cell 0.

@Ge.cell.geom ! Coordinates, basis sets and ECP are all [email protected]@Ge-SO.ecp

--Link1--%subst l502 ..#p USVWN5/Gen Pseudo=Read 5d 7F IOp1=tstampSCF(maxcycle=60,conver=5)PBC(cellrange=60,NKPoint=1000)IOp(5/193=1)IOp(5/155=3)

! Bulk Ge with ECP spin-orbit. This is the PBC part.! After a regular PBC calculation GDV will read the SO matrices! from the previous (molecular) calculation for the 0-0 cell, add! it to the Fock matrix, transform to k-space and diagonalize.

@Ge.cell.geom ! Coordinates, basis sets and ECP are all [email protected]@Ge-SO.ecp

33

Page 34: PBC-Guide

Sec. 6: Spin-Orbit Calculations

The output file provides the magnitude of the coupling via the cmd line: grep− A3′′SCF D′′

[sgu1@gw test-Ge-con]$ grep -A3 "SCF D" Ge.SVWN5.SO.logSCF Done: E(US-VWN5) = -588.414562597 A.U. after 8 cycles

NFock= 8 Conv=0.19D-05 -V/T= 2.4479Spin-orb: E(2nd v) = -0.270861610394E-02 A.U.TOTAL E(US-VWN5) = -588.417271213 A.U.

Relevant job files may be accessed locally at:/projects/guscus/Manuals/Spin-Orbit/RECP-SO/test-pbc-3/test-

Ge-con/

34

Page 35: PBC-Guide

Sec. 6: Spin-Orbit Calculations

6.2 Example 2: Hg with ECP

→ The following job was run using gdv-H13

%subst l302 ..%KJob l302#p NoSymm UHF/Gen Pseudo=read 5d 7F SCF=NoVarAcc testIOp(3/117=1)

Hg with ECP spin-orbit. This is the "molecular" calculation only togenerate the intracell SO matrix elements in the cell 0.

0 1Hg 0.0000 0.0000 0.0000

! (12s12p9d3f2g)/[6s6p4d3f2g] basis set from Ref 37.! The basis set and ECP are online in the full input file.. . .

The output file provides the magnitude of the coupling:

[sgu1@gw test-Hg-atom]$ grep -A3 "SCF D" *.logSCF Done: E(UHF) = -152.532937892 A.U. after 23 cycles

NFock= 23 Conv=0.12D-07 -V/T= 3.9834Spin-orb: E(2nd v) = -0.155018692641 A.U.TOTAL E(UHF) = -152.687956585 A.U.

Relevant job files may be accessed locally at:/projects/guscus/Manuals/Spin-Orbit/RECP-SO/test-pbc-3/ttest-

Hg-atom

Last Modified March 29, 2012

35

Page 36: PBC-Guide

7 Dispersion CalculationsHow to run Irek’s 2- and 3-body code based

This example is being specially prepared in order tooptimize all aspects of your learning experience.

If you need immediate assistance, please contact Irek W. Bulik.

Examples will eventually be locally available in:guscus:/projects/guscus/Manuals/Dispersion/.

Last Modified March 23, 2012

36

Page 37: PBC-Guide

8 Running Band Structure and PDOS Jobs

Generally, it is easier to run PDOS and band structure calculations at the sametime – if it becomes apparent that one part of the data is not needed, theextraneous output can always be deleted. Nevertheless, be aware that bandstructure and PDOS data tend to complement each other much of the time.

8.1 The Usual Case: PDOS and BS Simultaneously

For the example route below, both PDOS and band data will be computed for the HSE single pointenergy calculation of a monolayer of MoS2.[1]

%chk=monohse.chk#p HSEh1PBE/GenECP Int(Grid=UltraFine) pop=regular FMM=printIOp1=timestamp iop(5/13=1,5/33=1)SCF=(NoVarAcc,NoIncFock,Tight)IOp(5/181=10,5/184=194)

NOTE:

1. Both band structure and projected densities of states data will be produced at the end of thisSPE calculation.

• If this had been an optimization, band structure data would appear at the end of eachopt cycle.

• Some PDOS data files appear during an energy calculation (see Section 8.2 but all filesdo not appear until the job completes.

2. The IOp 5/181=10 indicates that G09 should calculate the PDOS.

3. The IOp 5/184=194 indicates that the k-path and labels for space group 194 (hexagonal)have been provided in the band.inp file.

• The band.inp files are described in Section 9.1 and located locally atguscus:/projects/guscus/Manuals/binps/.

• A band.inp file with the correct symmetry (see Section 9 must be copied, renamed andplaced in the same directory as your job.

4. The monolayer is a 2-D system, so a modified band.inp file was used for this calculation.

5. Ensure that your pbs or other submission file has the following line at the very end:

mkpdos -bias-from ‘‘$InpBase.out’’ -f -v >& mkpdos.log

37

Page 38: PBC-Guide

Sec. 8: Running Band Structure and PDOS Jobs

Relevant files for data work-up include:

1. G09 input and output files: *.gjf and *.out (See Section 3.)

2. The basis set file: mos_cvd.gbs (See Section 15.)

3. Band-relevant files: band.dat and bandk.dat (See Section 8.3.)

4. PDOS-relevant files: pdos.dat and pdos.legend.txt (See Section 8.2.)

5. A multiplot gnuplot file both.gpt that produces the plot. (See Section 13.6.)

All relevant files to reproduce the plot in Figure 10 may be copied from:guscus:/projects/guscus/Manuals/examples/MoS2mono

See Section 10 for explicit details on using Gnuplot for BS/PDOS plots.

−8

−6

−4

−2

0

2

4

6

8

10

12

Γ M K Γ

En

ergy (

eV)

K−Path

1 2 3 4 5 6−8

−6

−4

−2

EF

2

4

6

8

10

12

PDOS (states/eV/unit cell)

MoS2 Monolayer SPE

HSE Gap 2.33 eV (D)

SsSpSd

MosMopMod

Total

Figure 10: An example of BS and PDOS as plotted using multiplot. The data is from theHSE SP calc of an MoS2 monolayer, with a calculated direct band gap Eg of 2.33 eV. (See#386, Appl. Phys. Lett. 99, 261908 (2011).)

Last updated: April 16, 2012

38

Page 39: PBC-Guide

Sec. 8: Running Band Structure and PDOS Jobs

8.2 PDOS OnlyPDOS only jobs are fairly straightforward:

1. Add IOp 5/181=10 to the route.2. Place the following command at the end of your *.gjf or *pbs file:

mkpdos− bias− from ′$InpBase.out′ − f− v > & mkpdos.log

8.2.1 Input Example

%chk=Si-dia_o.chk#p HSE1PBE/Gen Pop=Regular Int(Grid=UltraFine) FMM=Print

IOp1=timestamp IOp(5/13=1,5/33=1)SCF(NoVarAcc,NoIncFock,Tight) IOp(5/181=10,5/184=227)OPT Guess=(Read,Fock)

8.2.2 PDOS Output

Several PDOS-related files will appear once a job has finished. NOTE: A job will appear to berunning until all PDOS-related files finish writing. These files include:

• pdos.dat – contains the data to plot Useful.• pdos.legend.txt – Legend for orbital populations on specific nuclei. Useful.

• fort.121 – appears as the job runs and indicates that PDOS will be calculated.

• zpratl-pdos.inp – a file necessary for the calculation, appears as jobs runs.

• mkpdos.log – describes what happened during the PDOS calculation.

• pdos.d – additional data that may be deleted at the end.

0

0.5

1

1.5

2

2.5

-10 -8 -6 -4 -2 0 2 4 6 8 10

PD

OS

(st

ates

/eV

/unit

cel

l)

Energy (eV)

Fer

mi

levelSi (dia)

HSE OPT

Eg = 1.22 eV (I)

Expt. = 1.17 eV (I)

SisSipSid

Total

Figure 11: HSE opt of Si (dia) – horizontal. Figure 12: HSE opt of Si (dia) – vertical.

39

Page 40: PBC-Guide

Sec. 8: Running Band Structure and PDOS Jobs

8.3 Band Structure OnlyBand structure jobs are also easy to run and set up, but require some knowledge of the symmetry ofthe system because of the necessary band.inp files. The band.inp files will be discussed in detailin Subsection 9.1.

8.3.1 Example Input File

(This is for BS only, no PDOS)

%chk=AlSb_x.chk#p HSEh1PBE/GenECP Int(Grid=Ultrafine) fmm=(print) pop=regularIOp1=timestamp iop(5/13=1,5/33=1) SCF=(NoVarAcc,NoIncFock,Tight)IOp(5/181=200,5/184=227)

To properly use IOp 5/184 in your route:

1. The number of the space group for your system needs to be input as the 5/184 argument inthe route of the input file. e.g., IOp(5/184=227) indicates an FCC system with space groupnumber 227.

2. To ensure that PDOS is turned off, at IOp(5/181=200)

3. The band.inp file, containing the appropriate K-path and coordinates for the Brillouin zonefor that space group must also be copied from the /binps directory (where ever it is) into therunning directory of your job and re-namedband.inp.

4. NOTE: the name of the band.inp must be lower case.

5. If the band.inp file is not present, the band structure code will choke, as the default is tolook for a band.inp file that will have the coordinates and K-path for the specified spacegroup.

See Section 9.1 for a detailed explanation/example of the band.inp files.

8.3.2 Output Files

In addition to the *.out and *.chk files that are necessary for processing the BS data, two (2) newfiles are produced:

1. band.dat This contains everything you need to plot band structure. The last 6 lines of thefile (tail -6 band.dat) provide the number of electrons, the HOCO and LUCO values, theindirect gap (after scaling) and mGap1/MGap1.

2. bandk.dat This is in the work-up, but it is not as large as band.dat and is not necessaryonce a gnuplot file has been set up.

Last updated: March 26, 2012

40

Page 41: PBC-Guide

Sec. 8: Running Band Structure and PDOS Jobs

8.4 Obtaining BS/PDOS LaterIf a *chk file is available for either an opt or energy calculation, band structure and PDOS can becalculated “after the fact.” This requires a truly minimal input file assuming pop=regular was usedin the job that generate the *chk file:

%chk=AlN_x.chk#p HSEh1PBE/ChkBas Geom=AllCheck Guess=(Read,Fock)IOp1=timestamp iop(5/13=1,5/33=1)IOp(5/181=10,5/184=227,5/14=20)

ChkBas reads the basis set information from the *chk file

Geom=AllCheck takes the title, charge, multiplicity and coordinates from the *chk file.

IOp 5/14=20 uses the BS data from the already computed real-space Fock matrix.

These 4 lines are sufficient to produce, in this case, both PDOS and BS for a FCC system in spacegroup 227.

• To turn off PDOS, which should usually run automatically as it is in most *pbs scripts, (SeeSection 13) change the PDOS IOp to IOp(5/181=200).

• This “restart” is much faster than re-doing a full energy calculation, but is generally notinstant unless it is PDOS only.

• This usually works, but if the *chk file was corrupted or there was not band.inp file in placefor the restart from an good *chk file, all sorts of weirdness will ensue.

Last updated: March 26, 2012

41

Page 42: PBC-Guide

Sec. 8: Running Band Structure and PDOS Jobs

8.5 Detailed Description of BS/PDOS IOps

Table 1: IOps for BS and PDOSIOp Arguments ExplanationIOp 5/181 The PDOS IOp

0 Should produce PDOS on every atom and orbital1 Read pdos.inp once file is produced2 Do NOT read pdos.inp10 Run DOS/PDOS (Default)20 Perform projection group for ea. atom AOT atom type00 Produce files for the DOS (CVD says default ???)200 Turn off PDOS

IOp 5/184 The BS IOpEE E window for band range1

00 00 print bands within EE eV of Fermi Level299 00 00 no window, plot all possible bands

FF k-Path Determination00 Default, same as 21 (???)01 k-path from band.inp replaces k-path from library302 k-path from band.inp appended to k-path from library403 ignore k-path from band.inp410 labels from band.inp replace labels from library420 labels from band.inp appended to labels from library430 ignore labels from band.inp4

KK Number of k-Points SampledKK 00 use KK*1000 k-points for sampling the path0 Special: 0 same as 2 (2000 k-points) [DEFAULT]4,5

SpG Space group specification1-228 Space group #, band.inp file in working directory

IOp 5/183 The Auto BS IOp= EE KK FF

0 Defaults-1 No band structure

NOTE: This is not final...THIS SECTION IS A WORK IN PROGRESS.

If you need immediate assistance, please contact Melissa Lucero.

Last updated: March 24, 2012

42

Page 43: PBC-Guide

9 Symmetry

To run band structure jobs, the argument of IOp (5/184=SG)is the space group number (SG) of the system.

Formally, the “space group number” refers to the unique numbers (1-230) assigned to all space grouptypes, as defined by the International Union of Crystallography.

• Groups within the same crystal system or point group have consecutive numbers, otherwise,the numbering is arbitrary.

• Not all space groups are represented by known compounds.

To locate the appropriate *.inp file:

1. Note that the files are named first by the SG that would complete the argument of IOp(5/184=SG), then the prototype, followed finally by packing type e.g., 186_MoS2-hex.inp.(For more information, refer Section 9.1.)

2. Copy and rename the *.inp file with the appropriate SG to band.inp in the running directory

3. This enables gaussian to read the k-path and label the high symmetry points.

4. Recall that band.inp files are stored locally in guscus:/projects/guscus/Manuals/binps/

Other instances where knowing the SG is helpful:

1. When the conventional/crystallographic unit cells are large, creating a smaller primitive isuseful and requires knowledge of the SG before and after the cell size is reduced.

2. If a supercell is created (e.g., for doping), then the symmetry changes must be noted.

NOTE:There are numerous systems to designate symmetry, so familiarity with the morecommon systems will prove helpful when information other than SG is provided.

Currently Available Information:

• A sample band.inp file – Section 9.1

• 3-D (Bulk) systems – Section 9.2

• 2-D Slabs/films/monolayers – Section 9.3

• 1-D Chains – Section 9.4

• Creating supercells and primitives – Section under construction

• Other symmetry designations – Section under construction

• List of additional resources – Section under construction

43

Page 44: PBC-Guide

Sec. 9: Symmetry

9.1 A Sample band.inp FileBelow is an example of the band.inp copied from 227-Diamond-fcc.inp in the /binps directory[needs a path] and renamed band.inp. Notice that other symmetry designations in addition tospace group are listed; nevertheless, G09 uses the SPACE GROUP as the argument to IOp(5/184).

! C Diamond A4 Fd bar3 FCC! Pearson Symbol: cF8! Strukturbericht Designation: A4! Space Group: Fdbar3m! Number: 227! Others: Si, Ge, Sn! Reference: Ashcroft and Mermin, p. 76!

KLABELS:GM 0 0 0K 3/8 3/8 3/4L 1/2 1/2 1/2U 5/8 1/4 5/8W 1/2 1/4 3/4X 1/2 0 1/2

KPATH: GM X W K GM L U W L K|U X

IMPORTANT:

• This external band.inp file is necessary because the internal library cannot always correctlyidentify the symmetry, especially for space groups lower than 200. (The band structure codelooks for the band.inp file by default.)

• More importantly, band.inp files allow the path to be changed as necessary to match theliterature or, in the case of optimizations where the symmetry has changed, re-run the jobwith the correct space group and path

• Again, the band.inp template files are in the /binps directory on guscusgw andare named (1) according to space group and lattice and/or (2) labeled to indicateany modifications or use in publications.

• Notice that fractions or decimal representations can be used, e.g., 1/2 or 0.5 for the coordi-nates.

Last updated: March 26, 2012

44

Page 45: PBC-Guide

Sec. 9: Symmetry

9.2 Determining the SG for 3-D Systems

NOTE: The following suggestions and/or instructions generally apply to un-doped systems and any other of relatively high symmetry. Lower symmetry oresoteric systems may require more extensive effort.

The space group of crystal structure is usually included in the *.cif (or, less frequently *.pdf ) filedownloaded from a database, e.g., the ICSD or the AMS.

The space groups are numbers ranging from 1-230, as is seen to the far left column of Figure 13, whichcontains also the “short symbols” to the far right, another commonly used symmetry designation.

Other means of acquiring SG information:

1. The literature – the computational or experimental methods section(s) will include mentionthe SG, or at least the “short symbol” designations.

2. The Energy Materials site maintained by Curtarolo’s group at Duke provides an online con-verter at ACONVASP Online.

3. Similarly, the Aflow Library is a searchable database of band structures and related properties,containing:

• The DFT+U band structure (fully-optimized) plotted alongside the PDOS.

• A JMol animation of the primitive cell used for the calculation. (Depending upon thebrowser and OS, the coordinates may be extracted from JMol.)

• Effective masses, electron mobilities, lattice parameters before and after optimization,etc.

4. The Prototype list online at the The Navy Crystallographic site.

5. The Prototype list file in the guscus:/projects/gusucus/Manuals/ directory

6. The Bilbao Crystallographic Server has numerous utilities that are updated, periodically, e.g.,

• CELLTRAN will transform unit cells

• TRANSTRU transforms structures

• Any of the other “Structure Utlities”

7. Google (No joke.)

8. Materials-specfic GUIs such as Materials Studio, Vesta, XcrysDen, etc., that will determinesymmetry and convert to any of a number of primitive cell types.

45

Page 46: PBC-Guide

Sec. 9: Symmetry

Figure 13: Table of Space Groups in 3-D. The SGs used as the argument for IOp 5/184are located in the far left column, as numbers 1-230. The other common system, the “In-ternational Short System” designations, are an abbreviated version of Hermman-Mauguinnotation and form the column to the far right. Other systems such as the Pearson for Struck-turbericht designations are as not universally applicable, and are thus not as widely used.(From: en.wikipedia.org/wiki/Space_group)

46

Page 47: PBC-Guide

Sec. 9: Symmetry

9.3 2-D Slabs/FilmsGenerally, the initial “space group” of your system in terms of how g09 identifies the point group isin the *.cif file downloaded from a database, e.g., the ICSD or the AMS. Other means of acquiringthis information include:

1. The literature – the papers you start with

2. The ACONVASP Online site (Curtarolo’s group at Duke)

3. The 2-D Space Groups Table (See Figure 14)

4. Materials software like Materials Studio, Vesta, etc.

Figure 14: 2D-Brillouin Zones. (a) Square, with lattice constant a, (b) Rectangular, withlattice contants α1, α2, and, (c) Hexagonal with lattice constant a. (Taken from: Economou,2010, Ref. [2])

9.4 1-D MonolayersGenerally, the initial “space” group of your system is in the *.cif file downloaded from a database.Other means of acquiring this information:

1. The literature

2. Non-Gaussview software

Last updated: March 28, 2012

47

Page 48: PBC-Guide

10 Plotting BS and PDOS

10.1 A Basic PDOS PlotDensity of states plots are generally *MUCH* easier to work-up than BS data: simply use thepdos.dat, pdos.legend.txt files generated by your job output and a *.gpt template file.

The pdos.dat file for am MgInS2 LSDA OPT looks like this:# E/eV 0 Mg S a 0 Mg P a 0 In S a 0 In P a 0 In D a 0 S S a 0 S P a 0 S D a Total a

-42.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000-41.9800 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000-41.9600 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000-41.9400 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000-41.9200 0.0000 0.0006 0.0000 0.0000 0.0000 0.0000 -0.0000 0.0000 0.0006-41.9000 0.0000 0.0026 0.0000 0.0000 0.0000 0.0000 -0.0000 0.0000 0.0026-41.8800 0.0000 0.0097 0.0000 0.0000 0.0000 0.0000 -0.0000 0.0000 0.0097-41.8600 0.0000 0.0335 0.0000 0.0000 0.0000 0.0000 -0.0000 0.0000 0.0334-41.8400 0.0000 0.1067 -0.0000 -0.0000 0.0000 0.0000 -0.0001 0.0000 0.1066-41.8200 0.0000 0.3143 -0.0000 -0.0000 0.0000 0.0001 -0.0004 0.0000 0.3139-41.8000 0.0000 0.8543 -0.0000 -0.0000 0.0000 0.0001 -0.0011 0.0000 0.8534-41.7800 0.0000 2.1437 -0.0000 -0.0000 0.0000 0.0004 -0.0027 0.0000 2.1413-41.7600 0.0000 4.9656 -0.0000 -0.0000 -0.0000 0.0009 -0.0063 0.0000 4.9601-41.7400 -0.0000 10.6178 -0.0001 -0.0001 -0.0000 0.0018 -0.0136 0.0001 10.6060-41.7200 -0.0000 20.9583 -0.0001 -0.0002 -0.0000 0.0036 -0.0268 0.0002 20.9350-41.7000 -0.0000 38.1885 -0.0003 -0.0003 -0.0000 0.0066 -0.0488 0.0003 38.1460-41.6800 -0.0000 64.2341 -0.0004 -0.0005 -0.0000 0.0111 -0.0821 0.0005 64.1627-41.6600 -0.0000 99.7368 -0.0007 -0.0008 -0.0000 0.0172 -0.1274 0.0007 99.6258-41.6400 -0.0000 142.9556 -0.0009 -0.0011 -0.0000 0.0246 -0.1827 0.0011 142.7966-41.6200 -0.0000 189.1489 -0.0012 -0.0014 -0.0000 0.0326 -0.2417 0.0014 188.9385

. . .

and the pdos.legend.txt looks like this:

1 E(eV)2 0 Mg S a3 0 Mg P a4 0 InS a5 0 In P a6 0 In D a7 0 S S a8 0 S P a9 0 S D a

10 Total a

where the different orbitals for each atom are listed followed by the Total electron density. Thishelps you determine the color scheme of your gnuplot output.

This *gpt template file is provided at:guscus:/projects/guscus/Manuals/examples/pdos.gptAdditional templates are located in Sections 13.2 and 13.3..

48

Page 49: PBC-Guide

Sec. 10: Plotting BS and PDOS

10.2 A Sample PDOS *.gpt FileTo use this template:

1. Replace the argument for stub with the name of your PDOS *.dat file:e.g., stub = ’MgInSlda’ → stub = ’YourPDOS’

2. Adjust the color scheme according the the pdos.legend.txt file, which will determine thelegend/key. (This is illustrated in the last eight (8) lines in the example below.)

reset # Avoids ugliness in Gnuplot if something went wrong in the previous compilation

# Below are optional short-cuts to help annotate your PDOS output

bas = ’Towler Mg, CVD S, Crystal In ’tit = ’DIRECT Mg_8In_{16}S_{32}: ’. xc . ’/’ . bas . ’ Fully-Relaxed XTAL Gap_I=Gap_D=2.5 eV’

set title tit

stub = ’MgInSlda.’ # This is the name of your #.dat file

HOCO = 0LUCO = 4.1252

set xrange [-5.0:8.0] # range of x-axis will vary by systemset yrange [-2:80] # range of y-axis will vary by system

# Line styles and color schemeset style line 1 lt 0 lc rgbcolor "black" pt 0 ps 1.5set style line 2 lt 1 lc rgbcolor "magenta" pt 2 ps 1.5set style line 3 lt 2 lc rgbcolor "magenta" pt 1 ps 1.5set style line 4 lt 1 lc rgbcolor "red" pt 1 ps 1.5set style line 5 lt 1 lc rgbcolor "blue" pt 1 ps 1.5set style line 6 lt 1 lc rgbcolor "cyan’ pt 5 ps 1.5set style line 7 lt 1 lc rgbcolor "green" pt 2 ps 1.5set style line 8 lt 1 lc rgbcolor "gray" pt 3 ps 1.5set style line 9 lt 1 lc rgbcolor "orange" pt 4 ps 1.5set style line 10 lt 3 lc rgbcolor "orange" pt 5 ps 1.5

set xlabel ’Energy (eV)’set ylabel ’DOS (states/eV/unit cell)’

set xtics 0.5set ytics 5.0

#set mxtics 5

set arrow 1 from HOCO, graph 0 to HOCO, graph 1 nohead lc rgbcolor "dark-red" lw 1.5set label 1 ’Fermi level’ at HOCO, graph 1 right rotate offset character 1, character -1

fa(x) = xfb(x) = 0

# The actual commands to plot your data

plot 0 w l lt 0 notitle, \stub . ’dat’ using 1:(fa($10)) w l ls 1 title ’Total’, \stub . ’dat’ using 1:(fa($2)) w l ls 2 title ’Mg_s’ , \stub . ’dat’ using 1:(fa($3)) w l ls 3 title ’Mg_p’ , \stub . ’dat’ using 1:(fa($4)) w l ls 5 title ’In_s’ , \stub . ’dat’ using 1:(fa($5)) w l ls 6 title ’In_p’ , \stub . ’dat’ using 1:(fa($6)) w l ls 7 title ’In_d’ , \stub . ’dat’ using 1:(fa($7)) w l ls 8 title ’S_s’, \stub . ’dat’ using 1:(fa($8)) w l ls 9 title ’S_p’, \stub . ’dat’ using 1:(fa($9)) w l ls 10 title ’S_d’

This sample pdos *gpt file is provided at:guscus:/projects/guscus/Manuals/examples/pdos.gpt

See also: Sections 13.2 and 13.3.

49

Page 50: PBC-Guide

Sec. 10: Plotting BS and PDOS

10.3 Plotting Band StructureCurrently, the easiest way to plot band structure data is to use the gpband Perl script written byDr. Cristian Diaconu. As it is to large to include in Section 13, the gpband script is stored atguscus:/projects/guscus/Manuals/scripts/gpband.

10.3.1 Using gpband to Plot BS

1. Place a copy of gpbandon each machine where gaussian PBC code will be run.

2. Run gpband in the job’s working directory: gpband band.dat

• The files that are processed include band.dat bandk.dat and the *.out, hence theadmonition to run gpband in the job’s working directory.

• Note the numerous annotations within the script, describing the program and how theband*.dat files are arranged.

• Of the many options, gpband nameoffile.dat seems to work the best, but feelfree to explore.

3. Copy the gnuplot and *.dat files to your desktop to plot the data. (There is no Gnuplot onmost Rice clusters.)

4. gpband prepares a basic gp file that runs to produce eps output – see Figure 15.

• The default color scheme is most likely not what will be used in the final plot.

• The lowest gap is generally plotted, but may be adjusted for aesthetic reasons.

• Labels, I-bars, additional lines and comments must be added by hand.

10.3.2 Default gpband Output

−40

−30

−20

−10

0

10

20

Γ X W K Γ L U W K | U X

En

erg

y (

eV)

k path

Figure 15: The band struc-ture for AlSb optimized usingHISS. The command gpbandband.dat produced a Gnuplotfile, band-p.gp, ran it and cre-ated band.eps (to the left) auto-matically. Notice the default en-ergy scale (taken from the gaus-sian PBC code defaults) is inten-tionally large and that the colorscheme has each band coded indifferent linestyles and/or colors.

50

Page 51: PBC-Guide

Sec. 10: Plotting BS and PDOS

10.3.3 Annotated Default gp File

Annotated sections of the gp file that produced Figure 15. (The full script is in Section 13.4.)x1_GM = 0.000000x2_X = 0.862114x3_W = 1.293143x4_K = 1.597934x5_GM = 2.512322x6_L = 3.258914x7_U = 3.786839x8_W = 4.091633x9_K = 4.396424x10_X = 4.701213

set xtics ( "{/Symbol G}" x1_GM, "X" x2_X, "W" x3_W,"K" x4_K, "{/Symbol G}" x5_GM, "L" x6_L, "U" x7_U,"W" x8_W, "K | U" x9_K, "X" x10_X )

E0 = 10.371738cHOCO = 10HOCO = 10.371738

cLUCO = 11LUCO = 12.420518

EF = 10.371738mGap = 3.058369MGap = 8.405779iGap = 2.048780

E(y) = y - E0 # energy shifting function

set arrow 1 from x1_GM, graph 0 to x1_GM, graph 1 nohead lt -1set arrow 2 from x2_X, graph 0 to x2_X, graph 1 nohead lt -1set arrow 3 from x3_W, graph 0 to x3_W, graph 1 nohead lt -1. . .set arrow 10 from x10_X, graph 0 to x10_X, graph 1 nohead lt -1

set arrow 11 \from graph 0, first E(HOCO) \to graph 1, first E(HOCO) nohead lt 19

set arrow 12 \from graph 0, first E(LUCO) \to graph 1, first E(LUCO) nohead lt 20

set yrange [*:*]

plot \data using 1:(E($19)) t "27" with l ls 18, \data using 1:(E($18)) t "26" with l ls 17, \data using 1:(E($17)) t "25" with l ls 16, \data using 1:(E($16)) t "24" with l ls 15, \data using 1:(E($15)) t "23" with l ls 14, \data using 1:(E($14)) t "22" with l ls 13, \data using 1:(E($13)) t "21" with l ls 12, \data using 1:(E($12)) t "20" with l ls 11, \data using 1:(E($11)) t "19" with l ls 10, \data using 1:(E($10)) t "18" with l ls 9, \data using 1:(E($9)) t "17" with l ls 8, \data using 1:(E($8)) t "16" with l ls 7, \data using 1:(E($7)) t "15" with l ls 6, \data using 1:(E($6)) t "14" with l ls 5, \data using 1:(E($5)) t "13" with l ls 4, \data using 1:(E($4)) t "12" with l ls 3, \data using 1:(E($3)) t "11" with l ls 2, \data using 1:(E($2)) t "10" with l ls 1

[Header and other non-band-related content deleted...]

These are the values and labels of the high-symmetry k-points:* Their ordering was specified in the band.inp file* They will be used in the next section of the gp file as x-tic labels* The values correspond to all x-coordinates.

These are the x-tic labels: easily modified.

Unscaled energy of the Valence Band Max (VBM).COLUMN where the HOCO is located.Unscaled energy of the Highest Occ. Crystal Orbital (HOCO.COLUMN where the LUCO is located.Unscaled energy of the Lowest Unocc. Crystal Orbital (LUCO.The VBM redefined as the Fermi LevelNext highest gap after the indirect gapNext highest gap after the mgapThe indirect gap

Scales the energies so that EF = 0

Horizontal k-path lines.(Truncated list to save space)

Arrow for Fermi Level/VBM

Arrow for CBM

Default y-axis range

Plotting the data...

51

Page 52: PBC-Guide

Sec. 10: Plotting BS and PDOS

10.3.4 Modified BS Output

The gp file in Section 10.3.3 has been modified in the following ways to produce Figure 16:

• The scale of the y-axis is now from -7 to 10, so it is easier to see the “camel-back” structureof AlSb.

• The valence band are all colored red.

• The conduction bands are all labeled in blue

• The Fermi Level E = 0 is now labeled and the energy denoted as a horizontal black line

• The conduction band maximum is depicted as a dashed orange line.

• The favored, indirect transition from Γ to somewhere near X is marked by both an arrowand a green I-bar.

• The slightly higher in energy direct gap is marked only with an I-bar.

• Structure analysis, e.g., locating points on the bands that are not along the high-symmetryk-lines for energy comparisons. Mining the data in the band*.dat files will be discussed inSection 10.4.

6

4

2

0

2

4

6

8

10

X W K L U W K | U X

Ener

gy (e

V)

EF2.05 eV (I) 2.33 eV (I)

Figure 16: The band struc-ture for AlSb optimizedusing HISS. The predictedindirect transition Eind oc-curs at 2.05 eV (compare to1.69 eV for LT exp.[3]). Thedirect gap, Edir=2.33 eV, alsocompares favorably to 2.84experiment.[4]

All files necessary to produce this plot and that of Figure 15 are locallyavailable at guscus:/projects/guscus/Manuals/examples/AlSb-HISS.

The full gp files are also listed in Sections 10.3.4 and 13.5.

52

Page 53: PBC-Guide

Sec. 10: Plotting BS and PDOS

10.4 Locating k-PointsThis section is for locating points so that arrows can be drawn in Gnuplot tomark direct and indirect transitions. Not all points of import are located on thelines corresponding to the symmetry points specified in the path of the band.inpfile, so this becomes something of an art.

10.4.1 Easy Indirect Gaps

This should be the easy case for an indirect gap from one k-point to another.

1. Search band.dat file for energy via grep

2. Also need to do the reverse case.

10.4.2 Special Gaps

This should be the more complex cases for

1. an indirect gap between one k-point and a point in between two others

2. direct gaps that are not on any high-symmetry points

3. locating the coordinates of various minima or maxima for comparison

This example is being specially prepared in order to optimizeall aspects of your learning experience.

If you need immediate assistance, please contact Melissa Lucero.

Last updated: March 26, 2012

53

Page 54: PBC-Guide

11 Increasing the Accuracy and Efficiency of PBC Jobs

11.1 Practical Tips for G09 PBC CalculationsContributed by Professor Gustavo E. Scuseria for the 2009 Guide.

For Starters: Read the Gaussian 09 manual entries for Molecule Specifications and the keywords:PBC and FMM. (The input file information in Section 3 has more information for PBC.Perhaps an FMM section would be useful...)

What not to do: If you want to put your computer system on its knees, try B3LYP with a diffusebasis set on your favorite 3D system, e.g., diamond.

1. The near-field portion of the FMM without symmetry included will be very costly.

2. Symmetry is not implemented, yet, but we are working on it and even when it is, dopingand disorder lower the symmetry, anyway.

3. The HFx (Hartree Fock exchange) portion with diffuse basis functions (bfs), a full-range1/r potential, and default cutoffs will take forever, and it is almost guaranteed that asingle iteration will exceed your patience.

Hybrids: Any with full (global) or long-range 1/r potential are significantly more expensive (10-20x or even more) than short-range hybrids like HSE that were designed with solids in mind.Be extremely careful if you want to do a PBC full or long-range hybrid.

Dimensionality: 3D calculations are more expensive than 2D, which are, in turn, much moreexpensive than 1D. If you are not familiar with the PBC code and how to tune up its options,we recommend that you start playing in 1D and move your way up to 2D/3D slowly.

Diffuse bfs: They may be needed in some specific cases and for some specific properties but ingeneral, it is a good idea to carefully analyze whether your chosen MOLECULAR basis set(i.e., a basis set that was developed for atoms/molecules and usually contain fairly diffuse bfsto describe atomic tails) is really needed for your PERIODIC system, which does not haveany density tail (well... it does if you are doing 1D or 2D, but not in 3D).

Linear dependencies: Our PBC code does not suffer from linear dependencies, i.e., if you usea dense basis on a dense system and you end up with product bfs that are almost linearlydependent (overlap matrix eigenvalue at some k-point below a certain threshold), the codewill remove the offending linear combination. However, there may be cases where the overallaccuracy is affected because of

1. Aggressive thresholds

2. A sloppy (or not accurate enough) xc quadrature grid, or,

3. A sloppy (or not accurate enough) Brillouin zone (k-point) integration grid.

In these cases, the SCF will die with some error message (with the cause nottrivially identifiable form the error message) being a combination of the above.

54

Page 55: PBC-Guide

Sec. 11: Increasing the Accuracy and Efficiency of PBC Jobs

bf Exponents: As a practical matter, bfs with exponents smaller than 0.10-0.15 are problematicand usually not needed. Removing them (i.e., adapting a molecular basis for an efficientperiodic calculation) is not required in our code (our numerics are usually robust enough todeal with them) but it will surely make your calculations much faster and your lifemuch easier on thresholds.

Metals: Tread very carefully if your system is metallic. Metal calculations are tricky and costly.

1. Integration in k-point space is arduous. There are several options that can be triedhere if one has convergence problems in the SCF. A radical solution is to start from afinite temperature calculation at ca. 1000 K and then try to cool off the system someor converge ILT (or similar) from there.

2. Most PW calculations on metals are done at finite temperature, otherwise convergenceis rather difficult to achieve even with PW codes.

3. Diffuse and polarization functions are generally important for metals. Your cpu time willgo up because to achieve convergence you will need a larger basis than for semiconductorsor insulators and lots of k-points.¡

Semiconductors and Insulators: If you feel that your calculations are slow, there is plenty ofroom of improvement by playing with many of the accuracy thresholds (explained in detail inIzmaylov’s piece). The record for this type improvement may be the InAs case finely-tunedby Ed Brothers: he was able to achieve a 20x speed-up by tuning thresholds (from defaultvalues) with a minimal loss of accuracy for the band gap (less than 0.01 eV)

Density Fitting Gaussian provides the density fitting approximation for pure DFT calculations.The desired fitting basis set is specified as a third component of the model chemistry, as inthis example:

#p BLYP/6-31G(d)/Auto

Note that the slashes are required when a density fitting basis set is specified. See the BasisSets entry in the Gaussian manual for more information.

CPU Time Monitor your cpu time with flags like #p and IOp1=timestamp, which will increasecpu time printing and allow you to spot portions that are particularly expensive and amenableto improvement by fine-tuning thresholds. See Section 3.

Last Modified March 23, 2012

55

Page 56: PBC-Guide

Sec. 11: Increasing the Accuracy and Efficiency of PBC Jobs

11.2 Diffuse Functions

Contributed by Dr. Cristian V. Diaconu with comments from Drs. Artur F.Izmaylov, and Ionut D. Prodan for the October 2009 version of this guide.

• NMtPBC is determined for k = 0. Unfortunately, the convergence of the Bloch sums with thenumberof cells depends on k for the Bloch sum form currently used in Gaussian. This isusually not a problem; however, for diffuse functions, this may become a huge problem. Thenumber of cells may increase toward k = ±π. While the number of cells is enough at k = 0,it may not be enough as k = ±π, and Gaussian will die with the error:

Possibly not enough cells included in PBC.Numerical problems in PBC.

If this happens the only way around it is to increase the number of cells by forcing a largerrange: PBC=(CellRange=N). See the PBC keyword page. -OR- use less-diffuse basisfunctions, since the calculations become prohibitively expensive with diffuse functions anyway.

• Due to the same problem of the form of the Bloch functions, the norms of the Bloch functionsbecome exponentially small when the exponents become small (norm ca. exp(−k2/a). Thenorms are also k-dependent, so even if the near linear dependencies are eliminated at k = 0,the norms of the Bloch functions may still be too small at other values of k. This conditionleads to warnings from subroutine ZFrmV2 of the form:

ZFrmV2: there are 14 very small orbitals for k= 617 kxyz= 7 15 3.

The only solution to this problem is to prune the diffuse basis functions (especially the p-type).Gaussian removes the culprits, (see Section ?? but when this happens the basis functions aretoo diffuse and is usually associated with the previous problem (not enough cells included inPBC) or Gaussian dies with an error of the following type:

-------------------- ATTENTION--------------------Total charge is not ZERO --- -0.002902253251-------------------- ATTENTION--------------------There is a problem with the total charge.

• There is also a problem with 5d/6d basis sets. See the Basis Sets entry in the Gaussian Õ09manual. This problem can be exacerbated for periodic calculations, especially when usinga 5d basis set as a 6done, thus having an extra s-type function that can be nearly lineardependent with the existing s-type functions. This is true the other way, too: a 6d basis setmay assume to have an extra s-type functions from the d-type shells.

• The rule of thumb for diffuse functions: the smallest exponent for s-type functions should belarger than about αmin = 2/d2 , where d is the smallest distance between two atoms. Theexponent input in Gaussian is in Bohr −2, so use d in Bohr.

56

Page 57: PBC-Guide

Sec. 11: Increasing the Accuracy and Efficiency of PBC Jobs

11.3 All PBC Keywords

This page contains the entirety of the PBC keyword pageat Gaussian.com as of March 28, 2012.

11.3.1 Description

The PBC keyword allows you to specify options for Periodic Boundary Conditions jobs.

Note: PBC is turned on simply by including translation vectors in the input structure, and thiskeyword is used only to control how PBC calculations are performed.

If you do not need any of these options, you do not have to include the keyword PBC to performa PBC calculation.

11.3.2 Options

GammaOnly Do just the Γ point (k = 0) rather than full k-integration.

NKPoint=N Do approximately N k-points.

CellRange=N Go out N Bohr in each direction in setting up image cells.

NCellMin=N Include at least N cells.

NCellMax=N Include at most N cells in any part of the calculation.

NCellDFT=N Include at least N cells in DFT XC quadrature. NCellXC is synonymous.

NCellK=N Include at least N cells in exact exchange.

• By default, if exact exchange is included, then this is twice the number of cells used foroverlap-related quantities and XC quadrature.

11.3.3 Availability

HF and DFT energy and optimizations. Not valid with SCRF or Charge. For periodic systems ofany reasonable size, acceptable performance may only be feasible by using a pure DFT functionalin combination with density fitting.

Last modified March 27, 2012

57

Page 58: PBC-Guide

12 Submitting Jobs at RiceThe module system is employed on Scuseria Group workstations as well as on the shared com-putational resources at Rice: BlueBioU, DaVinci and STIC. (An older machine, SUG@R is alsoavailable, but is is non-ideal for PBC jobs.) A “condo” of Scuseria-Group-Only nodes exists on eachof the Rice clusters. Normally, it is more efficient to use the guscus condo (see Section 13), butchange the queue name to “common,” for access to the public nodes.

Figure 17: STIC, BlueBioU, DAVinCI, and SUG@R.

STIC - Shared Tightly Integrated Cluster. An Intel Nahalem computing cluster.

BlueBioU - Primarily for biocomputing. An IBM Power 7 System. press release

DAVinCI - Data Analysis and Visualization Cyber-Infrastructure. x86-64 hybrid.press release

SUG@R - Shared University Grid @ Rice An older Intel Xeon compute cluster.For general information, see the Getting Started documentation.

58

Page 59: PBC-Guide

Sec. 12: Submitting Jobs at Rice

12.1 Modules: General Procedure

For the examples in this section, sgu1 is an imaginary Scuseria Group user witha login ID of the type that Rice usually sets up: typically 2-3 initials from yourname and a number.

The following is the procedure for STIC, but the procedure works the same on all Rice computers.

1. Login via ssh

2. Source the .bashrc file containing the Gaussian paths in it: source /projects/guscus/.bashrc

3. cd to shared.scratch, e.g., cd /shared.scratch/sgu1

4. Type “module avail” to see what modules are available (See Section 12.3.1) for the output.)-OR-

5. Type “module list” to confirm which modules are already loaded. (See Section 12.3.3)

6. Type “module load gdv-h11-hiss-and-pbc.2.3” to load the module for PBC calculations(See Section 12.3.2.)

7. Check to see that the module loaded successfully by typing “module list” (See Section 12.3.3)

8. Run the script to create the *.pbs file (See Section 13 for the necessary scripts.)

9. Type ’qsub *.pbs’ to submit your job

10. Type ’qstat’ to see that your job was submitted and is in the queue you want it to be in...

12.2 What You See: Logging In

# THIS IS STEP 1a [mylaptop:~] scucserian% ssh [email protected]

# THIS STEP 1b [email protected]’s password:

# Below is what will appear once you log into STIC:

Last login: Tue Mar 13 12:23:58 2012 from worf.rice.edu-----------------------------------------------------------------------Ken Kennedy Institute for Information Technology, Rice University==============================================

Unauthorized access is prohibited.

STIC.RICE.EDU

Questions and Problem Reports -> http://helpdesk.rice.eduDocumentation and User News -> http://rcsg.rice.edu/stic-----------------------------------------------------------------------

****************IMPORTANT*******************

NOTICE TO COMP422 and COMP322 USERS!!DO NOT RUN JOBS ON THE LOGIN NODES. # SERIOUSLY, never, EVER run jobs on a login node

********************************************

-bash-3.2$ source . /projects/guscus/.bashrc # THIS IS STEP 2-bash-3.2$ cd /shared.scratch/sgu1 # THIS IS STEP 3

Last Modified March 27, 2012

59

Page 60: PBC-Guide

Sec. 12: Submitting Jobs at Rice

12.3 Module Commands

12.3.1 Module Avail

Typing “module avail” will allow you to see which modules are currently available on the machineyou have logged into, as in the example, below:

[sgu1@login1 sgu1]$ module avail

The gaussian-related codes are listed in the top section, which includes G09, all usable gdv versionsand the Portland Group compilers. The bottom section lists various applications that may be ofuse, like matlab.

For PBC jobs, the module you should load is gdv-h11-hiss-and-pbc.2.3.

• The g09- series are actual g09 versions, not development versions of the gaussian code.

• The gdv- series are developement versions of gaussian.

• The most stable for PBC, with the most features and options is gdv-h11-hiss-and-pbc.2.3.USE THIS unless otherwise instructed.

• gdv-h11-sol has PBEsol incorporated in it, but no PBC features like BS, PDOS, AFM,VMM, SO or Dispersion.

60

Page 61: PBC-Guide

Sec. 12: Submitting Jobs at Rice

12.3.2 Module Load

To LOAD a module, simply type “module load module name,”

[sgu1@login1 sgu1]$ module load gdv-h11-hiss-and-pbc.2.3

12.3.3 Module List

To CONFIRM the module was loaded, or LIST modules already loaded, type: “module list”

[sgu1@login1 sgu1]$ module listCurrently Loaded Modulefiles:

1) pgi-10 2) gdv-h11 3) gdv-h11-hiss-and-pbc.2.3

Notice that at least 3 files are loaded. The module you wantusually has the highest number.

12.3.4 Module Unload

To UNLOAD a module, type “module unload ModuleName” , confirm with “module list”

[sgu1@login1 sgu1]$ module unload gdv-h11-hiss-and-pbc.2.3

[sgu1@login1 sgu1]$ module listNo Module Files Currently Loaded

12.3.5 Modules & Submission

Put it all together: Load/confirm modules, submit job and check the queue as in Section 12.1.

[mjl3@login1 mjl3]$ module load gdv-h11-hiss-and-pbc.2.3

[mjl3@login1 mjl3]$ module listCurrently Loaded Modulefiles:

1) pgi-10 2) gdv-h11 3) gdv-h11-hiss-and-pbc.2.3

[mjl3@login1 mjl3]$ pbcscript PBCjobFile.gjf 10

[mjl3@login1 mjl3]$ qsub PCBInputFile.pbs[mjl3@login1 mjl3]$ qstat | grep guscus

346944.sticman LiMoS2-hse11_o mjl3 190:28:0 R guscus346954.sticman LiMoS2-pbe_o mjl3 187:12:3 R guscus348858.sticman 20 ks19 235:00:3 R guscus349052.sticman n2-ksghf rmi1 04:32:08 R guscus349056.sticman PCBInputFile sgu1 00:02:08 R guscus

Last Modified March 27, 2012

61

Page 62: PBC-Guide

Sec. 12: Submitting Jobs at Rice

12.4 G09 Modules Available on STICThe availability on the other machines will vary, but will tend to have the same versions of themore recent codes. Source /projects/guscus/.bashrc and then type ’module avail’ to see thelist below...

Table 2: Gaussian Modules Currently Available (as of March 27, 2012) on STIC

Module Description NotesG09 Versions

g09-b1 This is previous G09 When in doubt use thisg09-b1-linda Runs in parallel STIC, use 4 nodesg09-b1-pbc-2.3 A version of the PBC code not sureg09-b1-pbc-2.3.t This PBC code works Used for publicationsg09-c1 Latest G09 Use at own riskg09-c1-linda Latest G09 in parallel Timings are weird

G09 Developmentgdv-g1 Ancient Needed for some calcs; don’t usegdv-h1 Very Old Don’t usegdv-h1-D Very Old Daniel’s?gdv-h1-extra-HISS Old for HISS Don’t use unless checking datagdv-h10 Old Probably not used by anyonegdv-h11 Old *NO* PBC so not usefulgdv-h11-hiss-and-pbc.2.3 RECENT Use this. Has HISS and PBC1

gdv-h11-ib3 Irek’s working version Don’t usegdv-h11-sol PBEsol No BS/PDOS, but PBEsol worksgdv-h12p New Ask Irekgdv-h12p-D New Ask Irekgdv-h13 Latest Ask Irek

PGI Compilerspgi-10 Oldest Check which version loads w/codepgi-10.9 Old Check which version loads w/codepgi-11 Latest Check which version loads w/code

[1] This version will eventually also include PBEsol, Irek’s dispersion code, any new Bulikfunctionals and any other code that is to be used by many, PBC or not. This will be the versionthat will be kept current.

Last Modified March 27, 2012

62

Page 63: PBC-Guide

Sec. 12: Submitting Jobs at Rice

12.4.1 Applications Modules on STIC

Source /projects/guscus/.bashrc and then type ’module avail’ to see the list below...

Table 3: Applications Modules Currently Available on STIC (As of March 27, 2012), sortedaccording to potential interest to the Scuseria Group.

Module Description Module Notesgaussian/g09-c1-linda Parallel G09 amber/11 Bio FF codeintel/2011.0.13(default) compiler cilk++/8503intel/3.2.1.015 compiler cmake/2.8.5jdk/1.6.0_12 Jason’s PQT code comsol/3.5amatlab/2008b(default) Check w/Irek comsol/4.0amatlab/2009b Check w/Irek comsol/4.1matlab/2011a Check w/Irek fftw/3.2.2-intelpgi/9.0.4 globus/5.0.4-xsedepgi/10.9 gmt/4.5.3python3/3.2.1 gromacs/4.5.5 Bio visualizerR/2.11.1-gcc Check w/Irek hdf5/1.8.4p1siesta/3.0-rc2 Can we use this? hdf5/1.8.8(default)

hpctoolkit/2011-05-16hypre/2.0.0-intellammps/20Aug11

openmpi/1.3.3-gcc lumerical/6.5.5(default)openmpi/1.3.3-intel lumerical/7.5.1openmpi/1.3.3-pgi lumerical/7.5.3openmpi/1.4.4-gcc mvapich/1.2rc1-intelopenmpi/1.4.4-intel(default) namd/2.7openmpi/1.4.4-pgi namd/2.8

netcdf/4.1.1papi/3.7.0opencl/2.5rc2slog2sdk/1.2.6totalview/8.7.0totalview/8.9.2turnin/2.0turnin/2.1turnin/3.0(default)

63

Page 64: PBC-Guide

Sec. 12: Submitting Jobs at Rice

12.5 Modules Available on Group WorkstationsYou need to source /projects/guscus/.bashrc and then type ’module avail’ to see the list below.To run gnuplot and others APPS, type ’module load Apps’

Table 4: Modules Currently Available on Workstations (as of March 27, 2012)Module Description NotesApplicationsApps numerous apps like gnuplot type ’module load Apps’GaussView/5.0.9 load a G09 module, then type ’module load GaussView’G09 Versionsg09-b1 This is previous G09 When in doubt use thisg09-c1 Latest G09 Use at own riskg09-c1-linda Latest G09 in parallel Timings are weirdG09 Development ’module load gdv-x’ x=gdv ver.gdv-f2 Before time Remote chance will needgdv-g1 Ancient Needed for some calcs; don’t usegdv-h1 Very Old Don’t usegdv-h10 Old Probably not used by anyonegdv-h11 Old *NO* PBC so not usefulgdv-h11-ib3 Irek’s Local developmentgdv-h12p New Ask Irekgdv-h13 Latest Ask IrekG09 PBC Code Any of these ∼ STIC? ’module load g09-y’ y=g09 ver.g09-b1-extra-dosj Very Old experimental PBC?g09-b1-extra3-pbc-2.devel Old experimental PBCg09-b1-pbc-2.3t This PBC code works Used for publicationsg09-b1-pbc-2.3 An older version not sureg09-b1-pbc-2.3.5 Old experimental PBC ?PGI Compilers ’module load pgi-z’ z=pgi ver.pgi-7.2 Older Check which version loads w/codepgi-10 Older Check which version loads w/codepgi-10.8 Older Check which version loads w/codepgi-10.9 Old Check which version loads w/codepgi-11 Latest on STIC Check which version loads w/codepgi-11.9 Latest Newer than that on STIC

Last Modified March 27, 2012

64

Page 65: PBC-Guide

13 ScriptsThe scripts provided herein are optimized for quick cut-N-paste.

Alternatively, local users may copy them from:guscus:/projects/guscus/Manuals/scripts

Questions, comments or better implementations are welcome.Please feel free to contact Melissa Lucero.

The scripts are broken into three groups:

1. PBS submission scripts → Section 13.1.

(a) STIC see Sections 13.1.1 (serial) and 13.1.2 (parallel)(b) DaVinci see Section 13.1.3 (parallel)(c) BlueBioU aka BioU see Section 13.1.4 (serial)(d) All of the above scripts are locally available at

guscus:/projects/guscus/Manuals/scripts.

2. BS and PDOS Gnuplot Scripts

(a) The gpband perl script is too large to include, copy from inguscus:/projects/guscus/Manuals/scripts. A “How-To” explaining how to use itmay be in order...

(b) PDOS A straightforward example → from Section 10.2• Cut-N-Paste templates from Sections 13.2 and 13.3• -OR- at guscus:/projects/guscus/Manuals/examples/Si-pdos/.

(c) BS The example used in Section ??• Pared down here, in Section ??• -OR- at guscus:/projects/guscus/Manuals/examples/band.gpt

(d) A Multiplot script with both BS and PDOS aligned vertically. → Section 13.6• Produces the example in Section 8.1• Heavily annotated• Broken into smaller pieces for Cut-N-Pase• The original is located at:guscus:/projects/guscus/Manuals/examples/MoS2mono/

3. Other Gnuplot Scripts → a work in progress

• Other gnuplot data representations• Stacks, histograms, bars

Note: The script content may vary slightly as the OS for each cluster isupdated and or with new gdv/G09 versions. If in doubt, please feel free to

contact Irek W. Bulik or Melissa J. Lucero.

Last Modified March 29, 2012

65

Page 66: PBC-Guide

Sec. 13: Scripts

13.1 PBS Submission Scripts (Rice-Specific)13.1.1 STIC Serial Job PBS Submission Script

cmd line input: ./sticpbs-serial InputFile.gjf walltime (in days)e.g., [sgu1@login2]$ ./stic-serial.sh SiC.gjf 10

#!/bin/bash

set -o errexit # exit on errorsset -o pipefail # or failure in a pipe

if [ $# -eq 0 ]; thencat <<EOF

USAGE:${0##*/} Input NNodes WallTime_in_days

EOFexit 1

fi

Inp=$1

# test if we got needed dataif [ -z "$Inp" ]; then

echo "No Input File Specified"exit 1

fi

if [ -z "$2" ]; thenecho "Wall Time Not Specified"

exit 1fi

WALLTIME=$(( 24 * $2 )):00:00

InpBase=${Inp%.*}

SubFile=$InpBase.pbs #Prepare submission script

cat <<EOFPBS >$SubFile#!/bin/bash#PBS -N $InpBase#PBS -V#PBS -m n#PBS -r n#PBS -o $InpBase.pbserr#PBS -j oe#PBS -l nodes=1:ppn=12,walltime=$WALLTIME#PBS -l mem=24000mb#PBS -q guscus

InpBase=$InpBase

TIMEFORMAT="TIMING: %3R %3U %3S" # Format for bash time builtin

GAUSS_SCRDIR=/shared.scratch/\$USER/tmp/\$PBS_JOBIDexport GAUSS_SCRDIR\${GAUSS_MEMDEF:=2415919104}

cd \$PBS_O_WORKDIR

exec &>$InpBase.err

set -x # print commands before executingtrap "rm -rf \$GAUSS_SCRDIR" EXIT # clean up at exitmkdir -p \$GAUSS_SCRDIR

df -huname -aprintenv

time \$GAU <<EOGJF >"\$InpBase.out"%mem=23500mbEOFPBS

cat $Inp >> $SubFileecho "EOGJF" >> $SubFilecat << EOF >> $SubFileecho \$?mkpdos -bias-from "\$InpBase.out" -f -v >& mkpdos.log # Required to run PDOS, comment out if no PBC code

EOF

This script may also be found at guscus:/projects/guscus/Manuals/scripts/stic-serial.sh

66

Page 67: PBC-Guide

Sec. 13: Scripts

13.1.2 STIC Parallel (Linda) Job PBS Submission Script

cmd line input: ./script InputFile.gjf # nodes (4 is best) walltime (in days)e.g., [sgu1@login1]$ ./stic-linda.sh InP.gjf 4 10

#!/bin/bash

set -o errexit # exit on errorsset -o pipefail # or failure in a pipe

if [ $# -eq 0 ]; thencat <<EOF

USAGE:${0##*/} Input NNodes WallTime_in_days

EOFexit 1

fi

Inp=$1NNodes=$3

if [ -z "$Inp" ]; then # test if we got needed dataecho "No Input File Specified"

exit 1fi

if [ -z "$2" ]; thenecho "Wall Time Not Specified"

exit 1fi

if [ -z "$NNodes" ]; thenecho "Number Of Nodes Not Specified"

exit 1fi

WALLTIME=$(( 24 * $2 )):00:00InpBase=${Inp%.*}SubFile=$InpBase.pbs #Prepare submission script

cat <<EOFPBS >$SubFile#!/bin/bash#PBS -N $InpBase#PBS -V#PBS -m n#PBS -r n#PBS -o $InpBase.pbserr#PBS -j oe#PBS -l nodes=$NNodes:ppn=12,walltime=$WALLTIME#PBS -l mem=24000mb#PBS -q guscus

InpBase=$InpBase

TIMEFORMAT="TIMING: %3R %3U %3S" # Format for bash time builtinGAUSS_SCRDIR=/shared.scratch/\$USER/tmp/\$PBS_JOBIDexport GAUSS_SCRDIR\${GAUSS_MEMDEF:=2415919104}cd \$PBS_O_WORKDIR

exec &>$InpBase.err

set -x # print commands before executingtrap "rm -rf \$GAUSS_SCRDIR" EXIT # clean up at exitmkdir -p \$GAUSS_SCRDIR

df -huname -aprintenvLINDA_WORKERS=\$(cat \$PBS_NODEFILE |sort -u |tr ’\n’ ’,’ |sed ’s/,$//’)time \$GAU <<EOGJF >"\$InpBase.out"%nprocsh=6%mem=23500mb%LindaWorkers=\$LINDA_WORKERSEOFPBScat $Inp >> $SubFileecho "EOGJF" >> $SubFilecat << EOF >> $SubFileecho \$?EOF

This script may also be found at guscus:/projects/guscus/Manuals/scripts/stic-linda.sh

67

Page 68: PBC-Guide

Sec. 13: Scripts

13.1.3 DaVinci Parallel (Linda) Job PBS Submission Script

cmd line input: ./script InputFile.gjf walltime (in days)e.g., [sgu1@login1]$ ./davy-linda.sh AlN.gjf 10

#!/bin/bash

set -o errexit # exit on errorsset -o pipefail # or failure in a pipe

if [ $# -eq 0 ]; thencat <<EOF

USAGE:${0##*/} INPut NNODES

EOFexit 1

fi

INP=$1NNODES=$2

# test if we got needed dataif [ -z "$INP" ]; then

echo "No Input File Specified"exit 1

fi

if [ -z "$NNODES" ]; thenecho "Number Of Nodes Not Specified"

exit 1fi

INPBASE=${INP%.*}

#Prapare submission scriptSUBFILE=$INPBASE.pbs

cat <<EOFPBS >$SUBFILE#!/bin/bash#PBS -N $INPBASE#PBS -V#PBS -m n#PBS -r n#PBS -o $INPBASE.pbserr#PBS -j oe#PBS -l nodes=$NNODES:ppn=12,pmem=4000mb#PBS -q parallel

INPBASE=$INPBASETIMEFORMAT="TIMING: %3R %3U %3S" # Format for bash time builtin

GAUSS_SCRDIR=/scratch/\$USER/tmp/\$PBS_JOBIDexport GAUSS_SCRDIR: \${GAUSS_MEMDEF:=2415919104}

cd \$PBS_O_WORKDIR

exec &>$INPBASE.err

set -x # print commands before executingtrap "rm -rf \$GAUSS_SCRDIR" EXIT # clean up at exitmkdir -p \$GAUSS_SCRDIR

df -huname -aprintenv

LINDA_WORKERS=\$(cat \$PBS_NODEFILE |sort -u |tr ’\n’ ’,’ |sed ’s/,$//’)

time \$GAU <<EOGJF >"\$INPBASE.out"%nprocsh=12%mem=42GB%LindaWorkers=\$LINDA_WORKERSEOFPBS

cat $INP >> $SUBFILEecho "EOGJF" >> $SUBFILEcat << EOF >> $SUBFILEecho \$?EOF

This script may be obtained at: guscus:/projects/guscus/Manuals/davinci-linda.sh

68

Page 69: PBC-Guide

Sec. 13: Scripts

13.1.4 BioU Serial Job PBS Submission Script

cmd line input: ./script InputFile.gjf walltime (in days)e.g., [sgu1@login2]$ ./biou-serial.sh ZnS.gjf 10

#!/bin/bash

set -o errexit # exit on errorsset -o pipefail # or failure in a pipe

#if [ $# -eq 0 ]; then# cat <<EOF#USAGE:# ${0##*/} Input NNodes WallTime_in_days#EOF# exit 1#fi

Inp=$1

# test if we got needed dataif [ -z "$Inp" ]; then

echo "No Input File Specified"exit 1

fi

#if [ -z "$2" ]; then# echo "Wall Time Not Specified"# exit 1#fi

#if [ -z "$NNodes" ]; then# echo "Number Of Nodes Not Specified"# exit 1#fi

#WALLTIME=$(( 24 * $2 )):00:00

InpBase=${Inp%.*}SubFile=$InpBase.pbs #Prepare submission script

cat <<EOFPBS >$SubFile#!/bin/bash#PBS -N $InpBase#PBS -V#PBS -m n#PBS -r n#PBS -o $InpBase.pbserr#PBS -j oe#PBS -l nodes=1:ppn=128,walltime=24:00:00#PBS -l mem=24000mb#PBS -q serial

InpBase=$InpBase

TIMEFORMAT="TIMING: %3R %3U %3S" # Format for bash time builtinGAUSS_SCRDIR=/shared.scratch/\$USER/tmp/\$PBS_JOBIDexport GAUSS_SCRDIR\${GAUSS_MEMDEF:=17179869184}

cd \$PBS_O_WORKDIR

exec &>$InpBase.err

set -x # print commands before executingtrap "rm -rf \$GAUSS_SCRDIR" EXIT # clean up at exitmkdir -p \$GAUSS_SCRDIR

df -huname -aprintenvtime \$GAU <<EOGJF >"\$InpBase.out"%mem=23500mbEOFPBS

cat $Inp >> $SubFileecho "EOGJF" >> $SubFilecat << EOF >> $SubFileecho \$?mkpdos -bias-from "\$InpBase.out" -F -v >& mkpdos.logEOF

Download this script locally from: guscus:/projects/guscus/Manuals/biou-serial.sh

69

Page 70: PBC-Guide

Sec. 13: Scripts

13.2 PDOS Vertical TemplateThis minimal example produces a vertical PDOS plot, with the valenceband at the bottom and the conduction band populations at the top, asin the figure below. Copy the gpt file and relevant data for Si fromguscus:/projects/guscus/Manuals/examples/Si-pdos.

resetset term postscript portrait enhanced dashed lw 2.0 color ’Times-Roman’ 20

# DEFINE INPUT AND OUTPUTset output ’output.ps’ # name of output filedata = ’pdos.dat’ # dat file

# DEFINE PLOT RANGESset lmargin 5.5set rmargin 0.5

set yrange [-10.0:10.0] # THESE WILL CHANGE BASED ON YOUR SYSTEMset xrange [-0.03:2.5] # LEAVES A LITTLE SPACE TO SEE IF BASIS SET IS OKAY

set ylabel ’Energy (eV)’ offset 1.3,0set xlabel ’PDOS (states/eV/unit cell)’

set ytics 2.0 # THIS IS BASED ON A SMALL UNIT CELL, ADJUST AS NECESSARYset xtics 0.5

# ARROWS# The gray baseline along the y-axisset arrow 1 from 0, graph 0 to 0, graph 1 nohead lc rgb ’dark-gray’ lw 1.0

# LABELS -- Depending upon OS and Gnuplot version, may be Helvetica-Italicset label 1 ’{/Helvetica-oblique=18 E_{F}}’ at 2.55,0 tc rgb ’dark-red’set label 2 at 1.5,2.2 ’{/Helvetica=22 Si (dia) }’ tc rgb ’royalblue’set label 3 at 1.5,1.6 ’{/Helvetica=16 HSE OPT}’ tc rgb ’navy’set label 4 at 1.50,1.0 ’{/Helvetica-oblique=16 E_{g} }{/Helvetica=16 = 1.22 eV (I)}’ tc rgb ’navy’set label 5 at 1.5,0.4 ’{/Helvetica=16 Exp. = 1.17 eV (I)}’ tc rgb ’dark-red’

set key at 2.40,9.50 right # X-coord of Upper Left Corner and Y-coord of Upper Right Corner

# LINE STYLES -- use as many as necessaryset style line 1 lt 1 lw 2.0 lc rgbcolor ’black’set style line 2 lt 3 lw 1.5 lc rgbcolor ’red’set style line 3 lt 1 lw 1.5 lc rgbcolor ’forest-green’set style line 4 lt 1 lw 1.5 lc rgbcolor ’blue’’set style line 5 lt 1 lw 1.0 lc rgbcolor ’royalblue’set style line 6 lt 1 lw 1.0 lc rgbcolor ’gold’set style line 7 lt 1 lw 1.0 lc rgbcolor ’plum’set style line 8 lt 2 lw 1.0 lc rgbcolor ’sea-green’set style line 9 lt 1 lw 1.0 lc rgbcolor ’gray50’set style line 10 lt 0 lc rgbcolor ’white’

# PLOT THE DATA -- FIRST LINE IS DASHED BLACK LINE FOR FERMI LEVELplot 0 w l lt 2 lw 2.0 lc rgb ’black’ not,\

data using 2:1 w l ls 2 t ’Q_{/Helvetica-oblique s}’,\data using 3:1 w l ls 3 t ’Q_{/Helvetica-oblique p}’,\data using 4:1 w l ls 4 t ’Q_{/Helvetica-oblique d}’,\data using 5:1 w l ls 1 t ’Total’

70

Page 71: PBC-Guide

Sec. 13: Scripts

13.3 PDOS Horizontal TemplateThis minimal example produces a horizontal PDOS plot, with the valence bandto the left. the Fermi level in the center, and the conduction band populationsto the right, as in the figure below. Copy the gpt file and relevant data for Sifrom guscus:/projects/guscus/Manuals/examples/Si-pdos.

resetset term postscript eps enhanced dashed dl 2.0 color ’Times-Roman’ 20

# INPUT AND OUTPUTset output ’pdos.eps’ # name of output filedata = ’pdos.dat’ # dat file

# PLOT RANGESset lmargin 5.5

set xrange [-10.0:10.0]set yrange [-0.1:2.5] # Allows view of baseline

set xlabel ’Energy (eV)’set ylabel ’PDOS (states/eV/unit cell)’ offset 1.3,0

set xtics 2.0set ytics 0.5

# ARROWS and LABELSset arrow 1 from 0, graph 0 to 0, graph 1 nohead lc rgb ’dark-gray’ lw 1.0set label 1 ’Fermi level’ at 0, graph 1 right rotate offset character 1, character -1 tc rgb ’navy’set label 2 at -9,2.3 ’{/Helvetica=20 Si (dia) }’ tc rgb ’dark-red’set label 3 at -9,2.1 ’{/Helvetica=16 HSE OPT}’ tc rgb ’navy’set label 4 at -9,1.9 ’{/Helvetica-Italic=16 E_{g} = }{/Helvetica=16 1.22 eV (I)}’ tc rgb ’navy’set label 5 at -9,1.7 ’{/Helvetica=16 Expt. = 1.17 eV (I)}’ tc rgb ’red’

set key at 9.7,2.45 right

# LINE STYLES -- Add more colors or styles as requiredset style line 1 lt 1 lw 2.0 lc rgbcolor ’black’set style line 2 lt 1 lw 1.5 lc rgbcolor ’blue’set style line 3 lt 2 lw 1.0 lc rgbcolor ’green’set style line 4 lt 4 lw 2.0 lc rgbcolor ’red’set style line 5 lt 1 lw 1.0 lc rgbcolor ’royalblue’set style line 6 lt 4 lw 1.0 lc rgbcolor ’forest-green’set style line 7 lt 1 lw 1.0 lc rgbcolor ’gold’set style line 8 lt 2 lw 0.8 lc rgbcolor ’forest-green’set style line 9 lt 1 lw 1.0 lc rgbcolor ’khaki’set style line 10 lt 0 lc rgbcolor ’white’

# Plot the data...plot 0 w l lt 1 lw 3.0 lc rgb ’gray’ not,\

data using 1:2 w l ls 3 t ’Q_{/Helvetica-Italic s}’,\data using 1:3 w l ls 2 t ’Q_{/Helvetica-Italic p}’,\data using 1:4 w l ls 4 t ’Q_{/Helvetica-Italic d}’,\data using 1:5 w l ls 1 t ’Total’

0

0.5

1

1.5

2

2.5

-10 -8 -6 -4 -2 0 2 4 6 8 10

PD

OS

(st

ates

/eV

/unit

cel

l)

Energy (eV)

Fer

mi

levelSi (dia)

HSE OPT

Eg = 1.22 eV (I)

Expt. = 1.17 eV (I)

SisSipSid

Total

71

Page 72: PBC-Guide

Sec. 13: Scripts

13.4 Band Structure: gpband DefaultThe default gpband script for HSE optimized AlSb.(Discussed inSections 10.3.2 and 10.3.3.)

#! /usr/bin/gnuplotresetset encoding iso_8859_1set terminal postscript eps enhanced color dl 2 "Times-Roman,18"set output ’band.eps’

set lmargin 5.5set rmargin 4

set macrosunset keyunset colorboxset xlabel "k path"set ylabel "Energy (eV)" offset 1.5,0

data = ’band.dat’x1_GM = 0.000000x2_X = 0.862114x3_W = 1.293143x4_K = 1.597934x5_GM = 2.512322x6_L = 3.258914x7_U = 3.786839x8_W = 4.091633x9_K = 4.396424x10_X = 4.701213

set xtics ( "{/Symbol G}" x1_GM, "X" x2_X, "W" x3_W, "K" x4_K, "{/Symbol G}" x5_GM, "L" x6_L, "U" x7_U, "W" x8_W, "K | U" x9_K, "X" x10_X )

E0 = 10.371738cHOCO = 10HOCO = 10.371738

cLUCO = 11LUCO = 12.420518

EF = 10.371738mGap = 3.058369MGap = 8.405779iGap = 2.048780

E(y) = y - E0 # energy shifting function

set arrow 1 from x1_GM, graph 0 to x1_GM, graph 1 nohead lt -1set arrow 2 from x2_X, graph 0 to x2_X, graph 1 nohead lt -1set arrow 3 from x3_W, graph 0 to x3_W, graph 1 nohead lt -1set arrow 4 from x4_K, graph 0 to x4_K, graph 1 nohead lt -1set arrow 5 from x5_GM, graph 0 to x5_GM, graph 1 nohead lt -1set arrow 6 from x6_L, graph 0 to x6_L, graph 1 nohead lt -1set arrow 7 from x7_U, graph 0 to x7_U, graph 1 nohead lt -1set arrow 8 from x8_W, graph 0 to x8_W, graph 1 nohead lt -1set arrow 9 from x9_K, graph 0 to x9_K, graph 1 nohead lt -1set arrow 10 from x10_X, graph 0 to x10_X, graph 1 nohead lt -1

set arrow 11 \from graph 0, first E(HOCO) to graph 1, first E(HOCO) nohead lt 19

set arrow 12 \from graph 0, first E(LUCO) to graph 1, first E(LUCO) nohead lt 20

set yrange [*:*]

plot \data using 1:(E($19)) t "27" with l ls 18, \data using 1:(E($18)) t "26" with l ls 17, \data using 1:(E($17)) t "25" with l ls 16, \data using 1:(E($16)) t "24" with l ls 15, \data using 1:(E($15)) t "23" with l ls 14, \data using 1:(E($14)) t "22" with l ls 13, \data using 1:(E($13)) t "21" with l ls 12, \data using 1:(E($12)) t "20" with l ls 11, \data using 1:(E($11)) t "19" with l ls 10, \data using 1:(E($10)) t "18" with l ls 9, \data using 1:(E($9)) t "17" with l ls 8, \data using 1:(E($8)) t "16" with l ls 7, \data using 1:(E($7)) t "15" with l ls 6, \data using 1:(E($6)) t "14" with l ls 5, \data using 1:(E($5)) t "13" with l ls 4, \data using 1:(E($4)) t "12" with l ls 3, \data using 1:(E($3)) t "11" with l ls 2, \data using 1:(E($2)) t "10" with l ls 1

72

Page 73: PBC-Guide

Sec. 13: Scripts

13.5 Band Structure: Modified AlSb (HISS) gpt FileThe modified gp file that produced Figure 16 in Section 10.3.4.

resetset terminal postscript eps enhanced color dl 2 "Helvetica,18"set output ’AlSb-hiss2.eps’data = ’AlSb-hiss.dat’set rmargin 4unset keyset ylabel "Energy (eV)" offset 1.5,0

x1_GM = 0.000000x2_X = 0.862114x3_W = 1.293143x4_K = 1.597934x5_GM = 2.512322x6_L = 3.258914x7_U = 3.786839x8_W = 4.091633x9_K = 4.396424x10_X = 4.701213

set xtics ( "{/Symbol G}" x1_GM, "X" x2_X, "W" x3_W, "K" x4_K, "{/Symbol G}" x5_GM, "L" x6_L, "U" x7_U, "W" x8_W, "K | U" x9_K, "X" x10_X )

E0 = 10.371738cHOCO = 10HOCO = 10.371738

cLUCO = 11LUCO = 12.420518

EF = 10.371738mGap = 3.058369MGap = 8.405779iGap = 2.048780UCO2 = 12.700369

E(y) = y - E0 # energy shifting function

# LINE STYLESset style line 1 lt 4 lw 0.7 lc rgbcolor ’dark-turquoise’ #k-point Vertical LINESSset style line 2 lt 1 lw 1.0 lc rgbcolor ’black’ # BORING BANDS thin black lineset style line 3 lt 1 lw 2.5 lc rgbcolor ’black’ # BANDS OF INTEREST thicker black line cset style line 4 lt 1 lw 2.5 lc rgbcolor ’red’ # VB Max ......................set style line 5 lt 1 lw 2.5 lc rgbcolor ’blue’ # CB Min -----------------

set arrow 1 from x1_GM, graph 0 to x1_GM, graph 1 nohead ls 1set arrow 2 from x2_X, graph 0 to x2_X, graph 1 nohead ls 1set arrow 3 from x3_W, graph 0 to x3_W, graph 1 nohead ls 1set arrow 4 from x4_K, graph 0 to x4_K, graph 1 nohead ls 1set arrow 5 from x5_GM, graph 0 to x5_GM, graph 1 nohead ls 1set arrow 6 from x6_L, graph 0 to x6_L, graph 1 nohead ls 1set arrow 7 from x7_U, graph 0 to x7_U, graph 1 nohead ls 1set arrow 8 from x8_W, graph 0 to x8_W, graph 1 nohead ls 1set arrow 9 from x9_K, graph 0 to x9_K, graph 1 nohead ls 1set arrow 10 from x10_X, graph 0 to x10_X, graph 1 nohead ls 1

# I-Bars and Transition Arrowsset arrow 11 from 0.735264,0 to 0.735264,E(LUCO) size 0.2,90 heads lw 2.5 lc rgb ’green’ frontset arrow 13 from x5_GM,0 to 0.735264,E(LUCO) heads lw 1.5 frontset arrow 15 from x6_L,0 to 3.258914,E(UCO2) size 0.2,90 heads lw 2.5 lc rgb ’magenta’ front

# Labelsset label 1 ’{/Helvetica-Oblique=28 E_{F}}’ at 4.7,0.00 tc rgbcolor ’dark-red’set label 2 ’{2.05 eV (I)}’ at 0.9,0.6set label 3 ’{2.33 eV (I)}’ at 3.3, 0.8

set yrange [-7:10]

plot 0 w l lt -1 not,\E(LUCO) w l lt 2 lc rgbcolor "orange" not, \

data using 1:(E($19)) t "27" with l ls 5, \data using 1:(E($18)) t "26" with l ls 5, \data using 1:(E($17)) t "25" with l ls 5, \data using 1:(E($16)) t "24" with l ls 5, \data using 1:(E($15)) t "23" with l ls 5, \data using 1:(E($14)) t "22" with l ls 5, \data using 1:(E($13)) t "21" with l ls 5, \data using 1:(E($12)) t "20" with l ls 5, \data using 1:(E($11)) t "19" with l ls 5, \data using 1:(E($10)) t "18-occ" with l ls 4, \data using 1:(E($9)) t "17-occ" with l ls 4, \data using 1:(E($8)) t "16-occ" with l ls 4, \data using 1:(E($7)) t "15-occ" with l ls 4, \data using 1:(E($6)) t "14-occ" with l ls 4, \data using 1:(E($5)) t "13-occ" with l ls 4, \data using 1:(E($4)) t "12-occ" with l ls 4, \data using 1:(E($3)) t "11-occ" with l ls 4, \data using 1:(E($2)) t "10-occ" with l ls 4

73

Page 74: PBC-Guide

Sec. 13: Scripts

13.6 BS and PDOS Multiplot Example

This gnuplot script is modified gpband output → gpband will *not* pro-duce this file. Note that the length of this template necessitates that it bebroken into sections. Simply concatenate the parts discussed in the follow-ing pages to obtain a working script or scp the full version located at gus-cus:/projects/guscus/Manuals/scripts/both.gpt

The Annoted Sections of the Gnuplot File:

Chunk 1: Header, Section 13.6.1

Chunk 2: BS plot data-I: Set-up, Section 13.6.2

Chunk 3: BS plot data-II: Plotting, Section 13.6.3

Chunk 4: PDOS plot data-I: Set-up, Section 13.6.4

Chunk 5: PDOS plot data-II: Plotting, Section 13.6.5

13.6.1 Header and Multiplot Set-Up

# TERMINAL SET-UPresetset encoding iso_8859_1set terminal postscript eps enhanced lw 2 color "Times-Roman,16"

# SET INPUT AND OUTPUT FILE NAMESset output ’both.eps’data = ’band.dat’

# SET MARGINS, AXES and DECORATIONSset lmargin 5.5set rmargin 0

set xlabel "K-Path"set ylabel "Energy (eV)" offset 1.3,0

unset keyunset colorbox

# SET MULTIPLOT# --> 1 ROW, 2 COLUMNS, NO TITLE

set multiplot layout 1,2

74

Page 75: PBC-Guide

Sec. 13: Scripts

13.6.2 Band Structure Plot

# X-TIC LABELS AND INFORMATION GENERATED BY gpband

x1_GM = 0.000000x2_M = 0.969907x3_K = 1.529883x4_GM = 2.649834

set xtics ( "{/Symbol G}" x1_GM, "M" x2_M, "K" x3_K, "{/Symbol G}" x4_GM )

# RELEVANT ENERGY DATA

E0 = -6.22565 # The highest energy of the valence bandcHOCO = 10 # The column containing the HOCO in the band.dat fileHOCO = -6.225650 # The Highest Occupied Crystal OrbitalcLUCO = 11 # The column containing the LUCO in the band.dat fileLUCO = -3.900374 # The Lowest Unoccupied Crystal OrbitalEF = -6.225650 # The unscaled Fermi energy, same as E0 for nowmGap = 2.325276 # The minimum gapMGap = 4.138425 # The next gapiGap = 2.325276 # The indirect gap

E(y) = y - E0 # The energy shifting (scaling) function

# LINE STYLES & EXTRA COLORS FOR LABELING VARIOUS BANDS WHEN NECESSARY# -----> Note, there are more in the actual gpt file on guscus...

set style line 1 lt 4 lw 0.5 lc rgbcolor ’dark-turquoise’set style line 2 lt 1 lw 1.0 lc rgbcolor ’black’set style line 3 lt 1 lw 2.5 lc rgbcolor ’black’set style line 4 lt 1 lw 1.5 lc rgbcolor ’red’set style line 5 lt 1 lw 1.5 lc rgbcolor ’blue’set style line 6 lt 1 lw 1.0 lc rgbcolor ’orange’set style line 7 lt 1 lw 1.0 lc rgbcolor ’yellow’set style line 8 lt 1 lw 1.0 lc rgbcolor ’forest-green’set style line 9 lt 4 lw 1.0 lc rgbcolor ’sea-green’set style line 10 lt 1 lw 2.0 lc rgbcolor ’green’set style line 11 lt 1 lw 1.0 lc rgbcolor ’cyan’set style line 12 lt 1 lw 1.0 lc rgbcolor ’magenta’set style line 13 lt 1 lw 1.0 lc rgbcolor ’dark-salmon’set style line 14 lt 1 lw 1.0 lc rgbcolor ’gray50’set style line 15 lt 0 lc rgbcolor ’white’

75

Page 76: PBC-Guide

Sec. 13: Scripts

13.6.3 Band Structure Plot–II

# SET VERTICAL LINES FOR HIGH-SYMMETRY POINTSset arrow 1 from x1_GM, graph 0 to x1_GM, graph 1 nohead ls 1set arrow 2 from x2_M, graph 0 to x2_M, graph 1 nohead ls 1set arrow 3 from x3_K, graph 0 to x3_K, graph 1 nohead ls 1set arrow 4 from x4_GM, graph 0 to x4_GM, graph 1 nohead ls 1

# LOWEST GAP INFOR (NOT PRODUCED BY gpband)VBMx = 1.529883VBMy = -6.225650-E0 # prescaled,scaledCBMx = 1.529883CBMy = -3.900374-E0 # prescaled,scaled

set arrow 5 from VBMx,VBMy to VBMx,CBMy heads size .2,90 ls 10 frontset arrow 6 from VBMx,VBMy to CBMx,CBMy heads frontset arrow 7 from 0,first E(LUCO) to 5.3, first E(LUCO) nohead ls 9

set yrange [-8:12] # Determine by hand, gpband gives [*:*]set ytics -8,2,12

# PLOT THE BANDS - Range from gpband (ls 5=blue, ls 4=red)plot 0 w l lt 1 lw 3.0 lc rgb ’gray’ not, \

data using 1:(E($24)) t "37" with l ls 5, \data using 1:(E($23)) t "36" with l ls 5, \data using 1:(E($22)) t "35" with l ls 5, \data using 1:(E($21)) t "34" with l ls 5, \data using 1:(E($20)) t "33" with l ls 5, \data using 1:(E($19)) t "32" with l ls 5, \data using 1:(E($18)) t "31" with l ls 5, \data using 1:(E($17)) t "30" with l ls 5, \data using 1:(E($16)) t "29" with l ls 5, \data using 1:(E($15)) t "28" with l ls 5, \data using 1:(E($14)) t "27" with l ls 5, \data using 1:(E($13)) t "26" with l ls 5, \data using 1:(E($12)) t "25" with l ls 5, \data using 1:(E($11)) t "24" with l ls 5, \data using 1:(E($10)) t "23-occ" with l ls 4, \data using 1:(E($9)) t "22-occ" with l ls 4, \data using 1:(E($8)) t "21-occ" with l ls 4, \data using 1:(E($7)) t "20-occ" with l ls 4, \data using 1:(E($6)) t "19-occ" with l ls 4, \data using 1:(E($5)) t "18-occ" with l ls 4, \data using 1:(E($4)) t "17-occ" with l ls 4, \data using 1:(E($3)) t "16-occ" with l ls 4, \data using 1:(E($2)) t "15-occ" with l ls 4

76

Page 77: PBC-Guide

Sec. 13: Scripts

13.6.4 The Rotated PDOS Plot-I

# SET UP PDOS PLOT

pdosdata = ’pdos.dat’

set rmargin 5.5set lmargin 0

unset xlabelunset ylabelset xlabel ’PDOS (states/eV/unit cell)’

unset yticsunset xtics

set xrange [*:*] # Use until you know your system, overwritten by line below.set xrange [-0.1:6] # Adjust as is necessaryset xtics 1,1,6

set y2range [-8:12]set y2tics -8,2,12set y2tics (-8, -6, -4, -2, ’{/Times-ItalicBold E_F}’ 0, 2, 4, 6, 8, 10, 12)

set key

# GAP LABELS FOR PDOS SIDE

unset arrowunset label

# I-BARset arrow 1 from 2,E(HOCO) to 2,E(LUCO) heads size .3,90 ls 10 lw 2 front

# ARROWset arrow 2 from 2,0 to 2,E(LUCO) heads lw 0.8 front

# LABEL: SYSTEM & CALCULATION TYPEset label 1 at 3,0.5 ’{/Helvetica=14 MoS_{2} Monolayer SPE}’ tc rgb ’navy’

# LABEL: FUNCTIONAL AND BAND GAPset label 2 at 3,-0.5 ’{/Helvetica=14 HSE Gap 2.33 eV (D)}’ tc rgb ’dark-red’

77

Page 78: PBC-Guide

Sec. 13: Scripts

13.6.5 The Rotated PDOS Plot-II

# PDOS PLOT COLORSset style line 1 lt 1 lw 1.5 lc rgbcolor ’black’set style line 2 lt 1 lw 1.0 lc rgbcolor ’skyblue’set style line 3 lt 2 lw 1.0 lc rgbcolor ’blue’set style line 4 lt 1 lw 1.0 lc rgbcolor ’blue’set style line 5 lt 4 lw 1.0 lc rgbcolor ’royalblue’set style line 6 lt 4 lw 1.0 lc rgbcolor ’forest-green’set style line 7 lt 1 lw 1.0 lc rgbcolor ’spring-green’set style line 8 lt 2 lw 0.8 lc rgbcolor ’forest-green’set style line 9 lt 4 lw 1.0 lc rgbcolor ’dark-magenta’set style line 10 lt 4 lw 1.0 lc rgbcolor ’red’set style line 11 lt 1 lw 1.0 lc rgbcolor ’red’set style line 12 lt 4 lw 1.0 lc rgbcolor ’brown’set style line 13 lt 1 lw 1.0 lc rgbcolor ’gold’set style line 14 lt 1 lw 1.0 lc rgbcolor ’orange’set style line 15 lt 4 lw 1.0 lc rgbcolor ’goldenrod’set style line 16 lt 1 lw 1.0 lc rgbcolor ’dark-green’set style line 17 lt 1 lw 1.0 lc rgbcolor ’dark-khaki’set style line 18 lt 1 lw 1.0 lc rgbcolor ’navy’set style line 19 lt 1 lw 1.0 lc rgbcolor ’plum’set style line 20 lt 1 lw 1.0 lc rgbcolor ’pink’set style line 21 lt 1 lw 1.0 lc rgbcolor ’khaki’set style line 22 lt 1 lw 1.0 lc rgbcolor ’sea-green’set style line 23 lt 3 lw 1.0 lc rgbcolor ’green’set style line 24 lt 1 lw 1.0 lc rgbcolor ’cyan’set style line 25 lt 1 lw 1.0 lc rgbcolor ’magenta’set style line 26 lt 1 lw 1.0 lc rgbcolor ’#ab00ab’set style line 27 lt 1 lw 0.7 lc rgbcolor ’#00abff’set style line 28 lt 3 lw 0.7 lc rgbcolor ’#00abff’set style line 29 lt 0 lc rgbcolor ’white’

# PLOT THE PDOS DATA; SET UP THE LEGEND/KEY

plot 0 w l lt 1 lw 3.0 lc rgb ’gray’ not,\pdosdata using 2:1 w l ls 13 t ’S_{/Helvetica-Italic s}’,\pdosdata using 3:1 w l ls 14 t ’S_{/Helvetica-Italic p}’,\pdosdata using 4:1 w l ls 15 t ’S_{/Helvetica-Italic d}’,\pdosdata using 5:1 w l ls 28 t ’Mo_{/Helvetica-Italic s}’,\pdosdata using 6:1 w l ls 27 t ’Mo_{/Helvetica-Italic p}’,\pdosdata using 7:1 w l ls 26 t ’Mo_{/Helvetica-Italic d}’,\pdosdata using 8:1 w l ls 1 t ’Total’

unset multiplot # ALWAYS USE THIS FOR A MULTIPLOT PLOT

78

Page 79: PBC-Guide

Sec. 13: Scripts

79

Page 80: PBC-Guide

14 PBC Functionals

14.1 Scuseria Functionals

Table 5: Functionals developed in the Scuseria Group sorted according to type. Note thatavailability is variable. SR=Short -range, MR=Middle-range, and LR=Long-range.

Keyword and/or IOp Acronym(s) Citation(s) Availability/Notes

Global HybridsTPSSh TPSSh [5, 6] G09-B1 and higher

SR Screened HybridsHSEh1HSE HSE, HSE06H [7, 8, 9] Use this *always*HSE1PBE HSE, HSE06 [8, 9]HSE2PBE HSE03 [10]

MR Screened Hybrids3/74=-61 HISS, HISSb [11] Use this!

G09-B, gdv-h11 (PBC)3/74=-56 HISS, HISSb [11] Use this gdv-h1 (PBC)3/74=-62 HISS-a [12] Don’t use; gdv-h11 (PBC)3/74=-57 HISS-a [12] Don’t use; gdv-h1 (PBC)

LR Screened HybridsLC-wPBE LC-ωPBE [13] G09-B1 and higher

SemilocalPBEPBE + 3/74=5050 PBEsol [14, 15] gdv-h11-sol; no PBC, yet...TPSSTPSS TPSS [16]

14.2 Just-For-Solids Functionals

Table 6: Functionals developed explicitly for solids, discussed and compared in the literature,but not necessarily implemented widely. (Not an exhaustive list.)

Keyword and/or IOp Acronym(s) Citation(s) Availability/Notes

— AMO5 [17] Not available— HSEsol [18] Not available— HTBS [19] Not available— MBJLDA [20] Not availablePBEPBE + 3/74=5050 PBEsol [14, 15] gdv-h11-sol; no PBC, yet...

80

Page 81: PBC-Guide

Sec. 14: PBC Functionals

14.3 (Semi)Local Functionals

Table 7: Functionals commonly encountered by the solid state theoretician that are knownnot to work well, but continue to be used, anyway. Arranged roughly according to the rungsof the functional Jacob’s Ladder.[21]

Keyword and/or IOp Acronym(s) Citation(s) Availability/Notes

SVWN5 LSDA [22] G09-B1 and higher“...use the LSDA with SVWN5”

LSDA LSDA, LDA [23] Never useM06L M06L [24]PBEPBE PBE [25, 26] Use this rather than PW91PW91 PW91 [27] Less-clean version of PBEPW92 PW92 [28] Not sure what this isTPSSTPSS TPSS [16]revTPSS revTPSS [29, 30, 31] Jian-Min says “eh.”WC WC [32] Not sure about any of this

14.4 Global HybridsOMG, why? Seriously, see the commentary by GES in Section 11.1.

Table 8: Global hybrid functionals that have been applied to the extended systems. Note:expect to expend extensive amounts of CPU time.

Keyword and/or IOp Acronym(s) Citation(s) Availability/Notes

B3LYP B3LYP [33] G09-B1 and higherPBEh1PBE PBEh,PBE0 [34, 35] PBE hybrid → HSEM06 M06 [36] Truhlar SuiteM06HF M06HF [37] Variation of aboveM062X M062X [38] Variation of aboveTPSSh TPSSh [5, 6] Not sure which

14.5 Functional BibliographyFor LaTex users, a BibTex file, functionals.bib file with all of the citations used here and more isprovided at guscus:/projects/guscus/Manuals/functionals.bib.

Last Modified March 26, 2012

81

Page 82: PBC-Guide

15 Basis Sets for Extended SystemsThe format for PBC basis sets is the same as that for molecular basis sets. See the G09 Basis Setand Gen/GenECP pages for more details. Generally, the basis sets will be called externally viaGen/GenECP(or Pseudo=Read) or by specifying the path to the basis set preceded by an @and terminated with a /N to prevent writing to the output file. (As in Section 3) The anatomy ofa G09 basis set file is as follows:

Type/Constraint nGauss ScaleFactor The the “Shell Descriptor Line”α1 d1µ # n primitive gaussian specificationsα2 d2µ # αk exponent andα3 d3µ # dkµ contraction coefficient.... #αn dnµ # n total primitive gaussian lines.

1. The shell descriptor line contains: the shell type, the number of primitive gaus-sians, and the scale factor.

• The type/constraint specification is for shells: S, P, D, DP, SPD, F, G... fors-, p-, d−, dp... shells, respectively.

• NGauss specifies the number of primitive gaussian shells (the degree of con-traction) for the shell being defined.

• Scale Factor (#) refers to the shell scale factor, e.g. if #=2, all primitiveexponents are scaled by 2.

2. The remaining lines are primitive gaussian specifications

• There are nGauss of them

• Each line defines the exponents αk and dkµ contraction coefficients.

• Comments are made using an exclamation point

15.1 Example: The 6-311G Basis Set for Fluorine

****F 0S 6 1.0011427.1000000 0.001800931722.3500000 0.0137419395.7460000 0.0681334115.1390000 0.233325033.6026000 0.58908604.9190100 0.2995050

SP 3 1.0055.4441000 0.1145360 0.035460912.6323000 0.9205120 0.23745103.7175600 -0.00337804 0.8204580

SP 1 1.001.1654500 1.0000000 1.0000000

SP 1 1.000.3218920 1.0000000 1.0000000

****

<—- Mandatory blank space after Tv’s<—- 4 asterisks after blank space (Mandatory)<—- Indicates this is a Fluorine basis setThe first shell (S) descriptor lineThe first (S) exponent and contract coeffcientsThe second ...

The second (SP ) shell descriptorThe first set of SP exponent and contract coeffcients

The second SP )shell descriptor

The second SP shell descriptor

<—- Mandatory 4 asterisks terminating basis set<—- Mandatory blank space terminating input file

82

Page 83: PBC-Guide

Sec. 15: Basis Sets for Extended Systems

15.2 Modifying Basis Sets for PBC CalculationsBefore running a PBC job, it is important to ensure that the chosen MOLECULAR basis set i.e., abasis set developed for atoms/molecules is reasonable for extended systems. (Basis sets are generallydownloaded from the EMSL or a similar ES database – see Section 15.2.1.)

WHY?

Molecular basis sets typically contain one or more few diffuse basis functions (bfs) in orderto properly describe atomic tails.

• A periodic system in 3-D does not need these tails, which will slow down your jobs.(They slow the Coulomb near field of the fast multipole method.)[39]

• There are are some tails in lower dimensions, but these calculations are not as sensitive.

• See also Sections 11.1 and 11.2 and References [40, 41, 42] for additional, more detaileddiscussion.

The Gaussian Basis Set FAQ prepared by Mike Towler provides a niceintroduction to the use of gaussian basis sets in PBC calculations.

A copy is also kept at: gusucs:/projects/guscus/Manuals/Towler.pdf

CAUTION:

→ A basis set properly optimized for previous PBC calculations may notwork as well when applied to a different system.

To address this potential issue:

1. Find an LSDA or GGA planewave calculation with PDOS or band gap data for thesystem of interest

2. Run the LSDA/GGA calculation with the modified PBC gaussian basis set in G09

3. Compare the results:

• If they are similar, (within 3-5 eV) then the modified PBC basis set is sufficient.

• If the gap is too large, and the basis sets for two or more atoms were modified,the PDOS will usually indicate which basis set should be re-adjusted.

4. Keep in mind that the reference planewave calculation must be of reasonable quality.In the case of no decent standard, common sense and experience must be employed.

For illustrative purposes, the next two sections include annotated examples ofPBC-optimized basis sets with and without effective core potentials (ECPs),

followed by a step-by-step example for chlorine.

83

Page 84: PBC-Guide

Sec. 15: Basis Sets for Extended Systems

15.2.1 Basis Set Databases

Sites from which gaussian-type basis sets may be downloaded prior to modification include:

EMSL https://bse.pnl.gov/bse/portal

Mike Towler’s Page http://www.tcm.phy.cam.ac.uk/ mdt26/crystal.html

Crystal Periodic Table http://www.crystal.unito.it/Basis_Sets/Ptable.html

15.2.2 Example 1: Modified PBC Basis Sets with No ECPs

This example contains the basis sets for β-SiC (zincblende polytype) used in References [12, 11,43] and many other papers. As is clear from the arrows, Si p− shell exponents are edited as inReference [44], but nothing is modified in the C basis set.

ORIGINAL Si and C 6-311G* basis sets from the EMSL

****Si 0S 6 1.00

69379.2300000 0.000757010354.9400000 0.00593202333.8796000 0.0310880657.1429500 0.1249670214.3011300 0.386897077.6291680 0.5548880

S 3 1.0077.6291680 0.177881030.6308070 0.627765012.8012950 0.2476230

S 1 1.003.9268660 1.0000000

S 1 1.001.4523430 1.0000000

S 1 1.000.2562340 1.0000000

S 1 1.000.0942790 1.0000000

P 4 1.00335.4831900 0.008866078.9003660 0.068299024.9881500 0.29095809.2197110 0.7321170

P 2 1.003.6211400 0.61987901.4513100 0.4391480

P 1 1.000.5049770 1.0000000

P 1 1.000.1863170 1.0000000 <---- reset to 0.25

P 1 1.000.0654320 1.0000000 <---- reset to 0.12

D 1 1.000.4500000 1.0000000

****C 0S 6 1.00

4563.2400000 0.00196665682.0240000 0.0152306154.9730000 0.076126944.4553000 0.260801013.0290000 0.61646201.8277300 0.2210060

SP 3 1.0020.9642000 0.1146600 0.04024874.8033100 0.9199990 0.23759401.4593300 -0.00303068 0.8158540

SP 1 1.000.4834560 1.0000000 1.0000000

SP 1 1.000.1455850 1.0000000 1.0000000

D 1 1.000.6260000 1.0000000

****

MODIFIED Si and C m-6-311G* basis sets

****S 0S 6 1.00

69379.2300 0.757000000E-0310354.9400 0.593200000E-022333.87960 0.310880000E-01657.142950 0.124967000214.301130 0.38689700077.6291680 0.554888000

S 3 1.0077.6291680 0.17788100030.6308070 0.62776500012.8012950 0.247623000

S 1 1.003.92686600 1.00000000

S 1 1.001.45234300 1.00000000

S 1 1.000.256234000 1.00000000

S 1 1.000.120000000 1.00000000

P 4 1.00335.483190 0.886600000E-0278.9003660 0.682990000E-0124.9881500 0.2909580009.21971100 0.732117000

P 2 1.003.62114000 0.6198790001.45131000 0.439148000

P 1 1.000.504977000 1.00000000

P 1 1.000.250000000 1.00000000

P 1 1.000.120000000 1.00000000

D 1 1.000.450000000 1.00000000

****C 0S 6 1.00

4563.24000 0.196665000E-02682.024000 0.152306000E-01154.973000 0.761269000E-0144.4553000 0.26080100013.0290000 0.6164620001.82773000 0.221006000

SP 3 1.0020.9642000 0.114660000 0.402487000E-014.80331000 0.919999000 0.2375940001.45933000 -0.303068000E-02 0.815854000

SP 1 1.000.483456000 1.00000000 1.00000000

SP 1 1.000.145585000 1.00000000 1.00000000

D 1 1.000.626000000 1.00000000

****

84

Page 85: PBC-Guide

Sec. 15: Basis Sets for Extended Systems

15.2.3 Example 2: Modified Arsenic Basis Set + ECP

Note the modifications marked in the original As basis set (right) downloaded from the EMSL. Thebasis set modification for gaussian PBC calculations (left) is discussed in Reference [44] and isacompanied by the appropriate ECP at the bottom.

ORIGINAL As cc-pVDZ-PP basis set from the EMSL

As 0S 8 1.00

2542.8100000 0.0011370381.1690000 0.006055040.2342000 0.084125016.1217000 -0.40528503.2018900 0.71292601.4209600 0.47337600.3214430 0.0180130 <-------- deleted0.1167350 -0.0037200 <-------- deleted

S 8 1.00 <-------- Goes from 8 to 6 bc of deletions2542.8100000 -0.0003900381.1690000 -0.002190040.2342000 -0.026853016.1217000 0.13687803.2018900 -0.32045701.4209600 -0.33739100.3214430 0.6763840 <-------- deleted0.1167350 0.5349800 <-------- deleted

S 1 1.000.3214430 1.0000000

S 1 1.000.1167350 1.0000000 <-------- set to 0.12

S 1 1.000.0370000 1.0000000 <-------- deleted

P 7 1.00 <-------- Goes from 7 to 6 bc of deletion99.5349000 0.003857024.1195000 -0.08510105.8419600 0.40476202.5601000 0.53147801.0930800 0.18401200.3184240 0.00576400.1009720 -0.0003520 <-------- deleted

P 7 1.00 <-------- Goes from 7 to 6 bc of deletion99.5349000 -0.000772024.1195000 0.01994105.8419600 -0.10721002.5601000 -0.17225901.0930800 0.00876100.3184240 0.56974400.1009720 0.5356530 <-------- deleted

P 1 1.000.1009720 1.0000000 <-------- set to 0.12

P 1 1.000.0308000 1.0000000

D 7 1.00 <-------- Goes from 7 to 6 bc of deletion113.5090000 0.011980036.8872000 0.079544013.6893000 0.23675505.3896400 0.40153402.0804600 0.40668600.7375680 0.17316200.3078000 0.0087300 <-------- deleted

D 1 1.000.3078000 1.0000000

D 1 1.000.1000000 1.0000000 <-------- deleted

****

MODIFIED As m-pVDZ-PP basis set

As 0S 6 1.00

2542.81000 0.113700000E-02381.169000 0.605500000E-0240.2342000 0.841250000E-0116.1217000 -0.4052850003.20189000 0.7129260001.42096000 0.473376000

S 6 1.002542.81000 -0.390000000E-03381.169000 -0.219000000E-0240.2342000 -0.268530000E-0116.1217000 0.1368780003.20189000 -0.3204570001.42096000 -0.337391000

S 1 1.000.321443000 1.00000000

S 1 1.000.120000000 1.00000000

P 6 1.0099.5349000 0.385700000E-0224.1195000 -0.851010000E-015.84196000 0.4047620002.56010000 0.5314780001.09308000 0.184012000

0.318424000 0.576400000E-02P 6 1.00

99.5349000 -0.772000000E-0324.1195000 0.199410000E-015.84196000 -0.1072100002.56010000 -0.1722590001.09308000 0.876100000E-02

0.318424000 0.569744000P 1 1.00

0.120000000 1.00000000D 6 1.00

113.509000 0.119800000E-0136.8872000 0.795440000E-0113.6893000 0.2367550005.38964000 0.4015340002.08046000 0.406686000

0.737568000 0.173162000D 1 1.00

0.307800000 1.00000000****

AS 0AS-ECP 4 10G POTENTIAL1

2 1.00000000 0.00000000S-G POTENTIAL2

2 28.72512200 370.114025002 6.76768100 9.34929600P-G POTENTIAL4

2 45.33106400 99.142103002 44.76741500 198.307880002 19.53909000 28.383073002 18.97347100 56.87146400D-G POTENTIAL6

2 51.05715200 -18.485145002 50.15134000 -28.113530002 16.10893600 -1.223895002 14.67222300 -1.345765002 3.85192700 0.101757002 3.81350200 0.17033800F-G POTENTIAL2

2 11.94058400 -0.775230002 17.76116000 -2.15725900

85

Page 86: PBC-Guide

Sec. 15: Basis Sets for Extended Systems

15.2.4 Example 3: Step-by-Step Modification for Cl

General Procedure:

1. Reset some of the diffuse functions to a minimum value:

• Generally, the minimum exponent for s-type functions should beless than αmin = 2/d2, where d is the smallest distance between twoatoms.

• In gaussian, d is expressed in Bohr.

• 0.15 is a reasonable value. (See Sections 11.1 and 11.2.)

2. Remove any redundancies.

On the left is the original 6-311++G(3df) basis set for chlorine: all exponents with values of0.15 have been marked with arrows. (Note that in Section 15.2.3, 0.12 is the minimum.) In thecolumn to the right, the values of the 2 marked exponents have been changed to 0.15.

ORIGINAL Cl 6-311++G(3df) basis set from the EMSL

Cl 0S 6 1.00105819.0000000 0.000738015872.0000000 0.00571803619.6500000 0.02949501030.8000000 0.1172860339.9080000 0.3629490124.5380000 0.5841490

S 3 1.00124.5380000 0.134177049.5135000 0.624250020.8056000 0.2917560

S 1 1.006.5834600 1.0000000

S 1 1.002.5646800 1.0000000

S 1 1.000.5597630 1.0000000

S 1 1.000.1832730 1.0000000

P 5 1.00589.7760000 0.0023910139.8490000 0.018504045.1413000 0.081377016.8733000 0.22155206.7411000 0.7725690

P 2 1.006.7411000 -1.57224402.7715200 0.9923890

P 1 1.001.0238700 1.0000000

P 1 1.000.3813680 1.0000000

P 1 1.000.1094370 1.0000000 <--------------------------------------->

SP 1 1.000.0483000 1.0000000 1.0000000 <---------------------->

D 1 1.003.0000000 1.0000000

D 1 1.000.7500000 1.0000000

D 1 1.000.1875000 1.0000000

F 1 1.000.7000000 1.0000000

****

1st MODIFICATION Cl 6-311++G(3df) basis set

Cl 0S 6 1.00105819.0000000 0.000738015872.0000000 0.00571803619.6500000 0.02949501030.8000000 0.1172860339.9080000 0.3629490124.5380000 0.5841490

S 3 1.00124.5380000 0.134177049.5135000 0.624250020.8056000 0.2917560

S 1 1.006.5834600 1.0000000

S 1 1.002.5646800 1.0000000

S 1 1.000.5597630 1.0000000

S 1 1.000.1832730 1.0000000

P 5 1.00589.7760000 0.0023910139.8490000 0.018504045.1413000 0.081377016.8733000 0.22155206.7411000 0.7725690

P 2 1.006.7411000 -1.57224402.7715200 0.9923890

P 1 1.001.0238700 1.0000000

P 1 1.000.3813680 1.0000000

P 1 1.000.1500000 1.0000000

SP 1 1.000.1500000 1.0000000 1.0000000

D 1 1.003.0000000 1.0000000

D 1 1.000.7500000 1.0000000

D 1 1.000.1875000 1.0000000

F 1 1.000.7000000 1.0000000

****

86

Page 87: PBC-Guide

Sec. 15: Basis Sets for Extended Systems

Now look for redundancies:

• The 1st modification (left column) results in a basis set with P (Sim1) and SP (Sim2) functionswith values of 0.15.

• There is also an S function at 0.1832, which is very close, Marked Sim3.

• Since they are virtually the same, pull out the SP function. (Marked *** YANKED *** inthe right column.)

• Notice a similar logic was used for the As basis set in Section 15.2.3.

1st MODIFICATION Cl 6-311++G(3df) basis set

Cl 0S 6 1.00105819.0000000 0.000738015872.0000000 0.00571803619.6500000 0.02949501030.8000000 0.1172860339.9080000 0.3629490124.5380000 0.5841490

S 3 1.00124.5380000 0.134177049.5135000 0.624250020.8056000 0.2917560

S 1 1.006.5834600 1.0000000

S 1 1.002.5646800 1.0000000

S 1 1.000.5597630 1.0000000

S 1 1.000.1832730 1.0000000 <------------------ Sim3 --------------------->

P 5 1.00589.7760000 0.0023910139.8490000 0.018504045.1413000 0.081377016.8733000 0.22155206.7411000 0.7725690

P 2 1.006.7411000 -1.57224402.7715200 0.9923890

P 1 1.001.0238700 1.0000000

P 1 1.000.3813680 1.0000000

P 1 1.000.1500000 1.0000000 <----------------- Sim1 ---------------------->

SP 1 1.00 <----------------- Sim2 ---------------->0.1500000 1.0000000 1.0000000 <------ Sim2 ------>

D 1 1.003.0000000 1.0000000

D 1 1.000.7500000 1.0000000

D 1 1.000.1875000 1.0000000

F 1 1.000.7000000 1.0000000

****

2nd MODIFICATION Cl 6-311++G(3df) basis set

Cl 0S 6 1.00105819.0000000 0.000738015872.0000000 0.00571803619.6500000 0.02949501030.8000000 0.1172860339.9080000 0.3629490124.5380000 0.5841490

S 3 1.00124.5380000 0.134177049.5135000 0.624250020.8056000 0.2917560

S 1 1.006.5834600 1.0000000

S 1 1.002.5646800 1.0000000

S 1 1.000.5597630 1.0000000

S 1 1.000.1832730 1.0000000

P 5 1.00589.7760000 0.0023910139.8490000 0.018504045.1413000 0.081377016.8733000 0.22155206.7411000 0.7725690

P 2 1.006.7411000 -1.57224402.7715200 0.9923890

P 1 1.001.0238700 1.0000000

P 1 1.000.3813680 1.0000000

P 1 1.000.1500000 1.0000000

# SP 1 1.00 (*** YANKED ***)# 0.1500000 1.0000000 1.0000000 (*** YANKED ***)D 1 1.00

3.0000000 1.0000000D 1 1.00

0.7500000 1.0000000D 1 1.00

0.1875000 1.0000000F 1 1.00

0.7000000 1.0000000****

A contribution from Professor Edwards Brothers at Texas A&M-QatarLocally access the *gbs files via:

guscus:/projects/Manuals/examples/Cl-ori.gbs or Cl-mod.gbs

Last Modified April 19, 2012

87

Page 88: PBC-Guide

Sec. 15: Basis Sets for Extended Systems

15.3 Using the EMSLThe EMSL site is very easy to use. The key features of the homepage are shown below.

1. Use the periodic table (red arrow) to selectone (or more) elements.

2. The program window (green arrow) allowsselction of the appropriate format for com-mon ES codes.

3. The basis set window (blue arrow)for choos-ing the basis set.

4. Information about the basis set (purple ar-row).

15.3.1 Example: Ge

The process for acquiring the Ge 6-311G* basis set for use in gaussian is illustrated in Figure 18.Specifically:

1. Ensure Gaussian94 is the ES code format selected (red oval).

2. Click Ge (green oval).

3. Select 6-311G* in the basis set window (blue oval).

Notice that information about the basis set chosen appears in the bottom section (purple rectangle).

Figure 18: The process for acquiring the Ge 6-311G* basis set in gaussian format.

88

Page 89: PBC-Guide

Sec. 15: Basis Sets for Extended Systems

15.4 Converting cry to gbs Files: gbsutilAfter downloading gaussian basis sets from Mike Towler’s or the Crystal web sites, they must beconverted into the gaussian format. Notice the differences in format, below, for Scandium.

ORIGINAL Crystal09 (cry) Basis Set

Sc_864-11G*_harrison_2006

21 60 0 8 2. 1.208000. 0.00022529700. 0.0019276280.0 0.0110941642.0 0.04997494.64 0.17014170.62 0.368866.62 0.402927.72 0.1449

0 1 6 8. 1.499.4 -0.00558 0.00851118.53 -0.0738 0.0602139.01 -0.1160 0.212915.20 0.2493 0.38476.511 0.6985 0.40281.998 0.323 0.183

0 1 4 8. 1.25.09 0.0016 -0.03319.62 -0.1360 -0.07133.979 -0.7059 0.14651.612 1.018 1.452

0 1 1 2. 1.0.780 1. 1.

0 1 1 0. 1.0.390 1. 1.

0 3 3 1. 1.3.940 0.1601.072 0.3130.394 0.406

N. M. Harrison, B. Montanari, Ling Ge, 2006, unpublished.It is being used for Sc@C82 and Sc@C82@SWNT(single-wall carbon nanotube).

CONVERTED gaussian09 (gbs) Basis Set

! Sc_864-11G*_harrison_2006! N. M. Harrison, B. Montanari, Ling Ge, 2006, unpublished.! It is being used for Sc@C82 and Sc@C82@SWNT! (single-wall carbon nanotube).Sc 0S 8 1.0208000.0000000000 2.2500000000E-0429700.0000000000 1.9270000000E-036280.0000000000 1.1094000000E-021642.0000000000 4.9970000000E-02494.6400000000 1.7014000000E-01170.6200000000 3.6880000000E-0166.6200000000 4.0290000000E-0127.7200000000 1.4490000000E-01

SP 6 1.0499.4000000000 -5.5800000000E-03 8.5100000000E-03118.5300000000 -7.3800000000E-02 6.0210000000E-0239.0100000000 -1.1600000000E-01 2.1290000000E-0115.2000000000 2.4930000000E-01 3.8470000000E-016.5110000000 6.9850000000E-01 4.0280000000E-011.9980000000 3.2300000000E-01 1.8300000000E-01

SP 4 1.025.0900000000 1.6000000000E-03 -3.3100000000E-029.6200000000 -1.3600000000E-01 -7.1300000000E-023.9790000000 -7.0590000000E-01 1.4650000000E-011.6120000000 1.0180000000 1.4520000000

SP 1 1.00.7800000000 1.0 1.0

SP 1 1.00.3900000000 1.0 1.0

D 3 1.03.9400000000 1.6000000000E-011.0720000000 3.1300000000E-010.3940000000 4.0600000000E-01

****

The Sc_864-11G*_harrison_2006 Crystal basis set *.cry on the left was converted to a gaussian-formatted *.gbs file using the gbsutil script written by Cris Diaconu.

To use this script:

1. Move all of the information at the bottom of the *.cry file to the TOP

2. Comment out all non-basis set data using exclamation points:

• The basis set description line (already at the top).• All references and notes information moved from the bottom in Step 1.

3. Remove ALL extra spaces at the top or bottom, either by deletion or !

4. Run the script:[sgu1@login2]$ ./gbsutil Sc-864-11G*.cry Sc-864-11G*.gbs

Download the original Sc.cry file at the link above, or copy it locally, alongwith the Sc.gbs file from: guscus:/projects/guscus/Manuals/examples/.

The gbsutil script is too long to include in Section 13, so a copy is availableat guscus:/projects/guscus/Manuals/scripts/gbsutil.

89

Page 90: PBC-Guide

16 Backing Up Your DataGiven that the state-of-the-art filesystems can crash and there aremonthly purges of /shared.scratch/on all Rice clusters (See Section 12) it is a good idea to back up all data you might want. Especiallysince PBC jobs tend to run long, the gjf , out, chk and all BS and PDOS dat files may be of importlater. The easiest and fasted way to accomplish routine backups is via the rsync command: rsync-aHVhu, where

a - archive, archive mode; same as rlptgoD (no -H)

H - hard links, preserve hard links

V - verbose, increase verbosity

h - human readable, output numbers in a human readable format

u - update, skip files that are newer on the receiver

For more information,check man rsyncrsync –help –OR–the Official rsync Pagefor advanced scripts andmore.

16.1 Using rsync: Examples(1) Assume user sgu1 has directories for each of the clusters on guscus, e.g.:

[sgu1@guscus ~]$ lsBluebiouDavinciSTICSugar

1. cd to the directory corresponding to the cluster to be backed up,e.g.: cd STIC

2. Type rsync -aHvhu sgu1@stic:/shared.scratch/sgu1/ ./

3. Using the format above will mirror sgu1’s directories in/shared.scratch/ on STIC

(2) Alternatively, an exclude file may be used. This is useful to prevent backing up all *err files,pdos.d directories, large chk files for unfinished jobs and anything else not needing to be saved.

[sgu1@guscus ~]$ vi xclude

tmp/*.chk*errfort*mkpdos.logpdos.d/zpratl*

1. Create a text file in the home directory, e.g., “xclude”

2. Add the names of the files and/or directories for whichbackups are undesirable on separate lines.

3. The tmp/ directory is not backed up as it containsgaussian scratch files and should be purged regularly.

4. For completed jobs, use the bzip2 command to zip andcompress the chk files for transfer and storage.

The rsync command to use is now:

rsync -aHvhu --̇exclude-from /users/sgu1/xclud sgu1@stic:/shared.scratch/sgu1/ ./

90

Page 91: PBC-Guide

Sec. 16: Backing Up Your Data

The output from adding the --̇exclude-from /users/sgu1/xclud option to the rsync commandto back up a STIC directory with subdirectories AlAs-wu2PBE, CdSe-wu, GaN-wu, InP-B3LYPand MgO is shown below.

[sgu1@guscus STIC]$ rsync -aHvhu --exclude-from /users/sgu1/xclud sgu1@stic:/shared.scratch/sgu1/sgu1@stic’s password:receiving file list ... doneAlAs-wu2PBE/AlAs-wu2PBE_x.outAlAs-wuPBE/band.datAlAs-wu2PBE/bandk.datAlAs-wu2PBE/pdos.legend.txtCdSe-wu/CdSe-wu/OPT/CdSe-wu/OPT/CdSe-wu_o.outCdSe-wu/OPT/band.datCdSe-wu/OPT/bandk.datCdSe-wu/OPT/pdos.datCdSe-wu/OPT/pdos.epsCdSe-wu/OPT/pdos.gptCdSe-wu/OPT/pdos.pngCdSe-wu/OPT/pdos.legend.txtGaN-wu/LSDA/XTAL/GaN-wu/LSDA/XTAL/READMEGaN-wu/LSDA/OPT/GaN-w2-LSDAo.chk.bz2GaN-wu/LSDA/OPT/GaN-w2-LSDAo.outGaN-wu/LSDA/OPT/band.datGaN-wu/LSDA/OPT/bandk.datInP-B3LYP/InP-B3LYP/InP-z-B3LYPx.chk.bz2InP-B3LYP/InP-z-B3LYPx.gjfInP-B3LYP/InP-z-B3LYPx.outInP-B3LYP/InP-z-B3LYPx.pbsInP-B3LYP/band.datInP-B3LYP/bandk.datInP-B3LYP/pdos.datInP-B3LYP/pdos.legend.txtMgO/MgO/HSE/XTAL/MgOHSE/XTAL/deletemeMgO/HSE/OPT/MgO/HSE/OPT/MgO-rs_o.chk.bz2MgO/HSE/OPT/MgO-rs_o.gjfMgO/HSE/OPT/MgO-rs_o.outMgO/HSE/OPT/MgO-rs_o.pbsMgO/HSE/OPT/pdos.datMgO/HSE/OPT/pdos.legend.txtMgO/TPSS/MgO/TPSS/MgO-TPSSx.chk.bz2MgO/TPSS/MgO-TPSSx.gjfMgO/TPSS/MgO-TPSSx.outMgO/TPSS/Readme-2-this-is-weirdSi-TPSS/Si-d-TPSSx.out

Notice that none of the files or directories specified in the xclud file on the previous page are down-loaded, while non-gaussian-generated files including text (README, deleteme, etc.), image(eps, png), Gnuplot (gpt), and BS/PDOS dat files are all copied recursively.

rsync cmds as aliases are very convenient, e.g., in the .bashrc file:alias stics=’rsync -aHvhu --̇exclude-from /users/sgu1/xclud sgu1@stic:/shared.scratch/sgu1/ ./’

91

Page 92: PBC-Guide

References[1] J. K. Ellis, M. J. Lucero, and G. E. Scuseria, 99, 26190 (2011).

[2] E. N. Economou, The Physics of Semiconductors Essentials and Beyond, Springer, Berlin,2010.

[3] H. Matthieu, D. Auvergne, P. Merle, and K. C. Rustagi, Phys. Rev. B 12, 5846 (1975).

[4] A. Joullie, B. Girault, A. M. Joullie, and A. Zien-Eddine, Phys. Rev. B 25, 7830(1982).

[5] J. M. Tao, J. P. Perdew, V. N. Staroverov, and G. E. Scuseria, Phys. Rev. Lett. 91,146401 (2003).

[6] V. N. Staroverov, G. E. Scuseria, J. Tao, and J. P. Perdew, J. Chem. Phys. 119,12129 (2003).

[7] T. M. Henderson, A. F. Izmaylov, G. Scalmani, and G. E. Scuseria, J. Chem. Phys.131, 044108 (2009), Specifically, the HSEh parameterization of HSE06[8, 9], called by thegaussian keyword HSEh1PBE.

[8] J. Heyd, G. E. Scuseria, and M. Ernzerhof, J. Chem. Phys. 124, 219906 (2006).

[9] J. Heyd, G. E. Scuseria, and M. Ernzerhof, J. Chem. Phys. 124, 219906 (2006).

[10] J. Heyd, G. E. Scuseria, and M. Ernzerhof, J. Chem. Phys. 118, 8207 (2003).

[11] T. M. Henderson, A. F. Izmaylov, G. E. Scuseria, and A. Savin, J. Theor. Comput.Chem. 4, 1254 (2008).

[12] T. M. Henderson, A. F. Izmaylov, G. E. Scuseria, and A. Savin, J. Chem. Phys. 127,221103 (2007).

[13] O. A. Vydrov and G. E. Scuseria, J. Chem. Phys. 125, 234109 (2006).

[14] J. P. Perdew, A. Ruzsinszky, G. I. Csonka, O. A. Vydrov, G. E. Scuseria, L. A.Constantin, X. Zhou, and K. Burke, Phys. Rev. Lett. 100, 136406 (2008), See also the2009 Erratum in Reference[15].

[15] J. P. Perdew, A. Ruzsinszky, M. Ernzerhof, G. I. Csonka, O. A. Vydrov, G. E.Scuseria, L. A. Constantin, X. Zhou, and K. Burke, Phys. Rev. Lett. 102, 039902(2009).

[16] J. Tao, J. P. Perdew, V. N. Staroverov, and G. E. Scuseria, Phys. Rev. Lett. 91,146401 (2003).

[17] R. Armiento and A. E. Mattsson, Phys. Rev. B 72, 085108 (2005).

[18] L. Schimk, J. Harl, and G. Kresse, Phys. Rev. B 72, 085108 (2005).

[19] P. Haas, F. Tran, P. Blaha, and K. Schwarz, Phys. Rev. B 83, 205117 (2011).

92

Page 93: PBC-Guide

REFERENCES

[20] F. Tran and P. Blaha, Phys. Rev. Lett. 102, 226401 (2009).

[21] J. P. Perdew and K. Schmidt, in Density Functional Theory and Its Applications to Mate-rials, edited by V. V. et al., American Institute of Physics, New York, 2001.

[22] S. H. Vosko, L. Wilk, and M. Nusair, Can. J. Phys 58, 1200 (1980).

[23] J. P. Perdew and Y. Wang, Phys. Rev. B 45, 13244 (1992).

[24] Y. Zhao and D. G. Truhlar, J. Chem. Phys. 125, 194101 (2006).

[25] J. P. Perdew, K. Burke, and M. Ernzerhof, Phys. Rev. Lett. 77, 3865 (1996), E78, 1396(1997), Ref. [?].

[26] J. P. Perdew, K. Burke, and M. Ernzerhof, Phys. Rev. Lett. 78, 1396 (1997).

[27] J. P. Perdew, in Electronic Structure of Solids 91, edited by P. Ziesche and H. Eschrig,p. 11, Akademie Verlag, Berlin, 1991.

[28] J. P. Perdew and Y. Wang, Phys. Rev. B 45, 13244 (1992).

[29] J. P. Perdew, A. Ruzsinszky, G. I. Csonka, L. A. Constantin, and J. Sun, Phys. Rev.Lett. 103, 026403 (2009), See also the Erratum[30], Phys. Rev. Lett., 106, 179902 (2011).

[30] J. P. Perdew, A. Ruzsinszky, G. I. Csonka, L. A. Constantin, and J. Sun, Phys. Rev.Lett. 106, 179902 (2011).

[31] J. Sun, M. Marsman, G. I. Csonka, A. Ruzsinszky, P. Hao, Y.-S. Kim, G. Kresse,and J. P. Perdew, Phys. Rev. B 84, 035117 (2011).

[32] Z. Wu and R. E. Cohen, Phys. Rev. B 73, 235116 (2006).

[33] P. J. Stephens, F. J. Devlin, C. F. Chabalowski, and M. J. Frisch, J. Phys. Chem. ,11623 (1994).

[34] M. Ernzerhof and G. E. Scuseria, J. Chem. Phys. 110, 5029 (1999).

[35] C. Adamo and V. Barone, J. Chem. Phys. 110, 6158 (1999).

[36] Y. Zhao, N. E. Schultz, and D. G. Truhlar, J. Chem. Phys. 123, 19410 (2005).

[37] Y. Zhao and D. G. Truhlar, J. Phys. Chem. A 110, 13126 (2006).

[38] Y. Zhao and D. G. Truhlar, Theor. Chem. Acc. 120, 215 (2008).

[39] M. C. Strain, G. E. Scuseria, and M. J. Frisch, Science 271, 51 (1996).

[40] T. M. Henderson, J. Paier, and G. E. Scuseria, Physica Status Solidi B 248, 767 (2011).

[41] B. G. Janesko, T. M. Henderson, and G. E. Scuseria, Phys. Chem. Chem. Phys. 11,443 (2009).

[42] J. Paier, C. V. Diaconu, G. E. Scuseria, M. Guidon, J. VandeVondele, and J. Hut-ter, Phys. Rev. B 80, 174114 (2009).

93

Page 94: PBC-Guide

REFERENCES

[43] M. J. Lucero, T. M. Henderson, and G. E. Scuseria, J. Phys. Condens. Matter 24,145504 (2012).

[44] J. Heyd, J. E. Peralta, G. E. Scuseria, and R. L. Martin, J. Chem. Phys. 123, 174101(2005).

94