Top Banner
Parsec 1.1 User’s Guide 12 Prof. J. R. Chelikowsky’s Research Group 3 September 29, 2005 1 http://www.ices.utexas.edu/parsec/ 2 this text written by M. Tiago, [email protected] 3 http://www.ices.utexas.edu/ccm
25

Parsec 1.1 User’s Guide 12 · 2012-04-13 · parameter in the calculation and it should be carefully tested for conver-gence. The grid is assumed to be regular and orthogonal. ExpansionOrder

Jul 05, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Parsec 1.1 User’s Guide 12 · 2012-04-13 · parameter in the calculation and it should be carefully tested for conver-gence. The grid is assumed to be regular and orthogonal. ExpansionOrder

Parsec 1.1 User’s Guide12

Prof. J. R. Chelikowsky’s Research Group3

September 29, 2005

1http://www.ices.utexas.edu/parsec/2this text written by M. Tiago, [email protected]://www.ices.utexas.edu/ccm

Page 2: Parsec 1.1 User’s Guide 12 · 2012-04-13 · parameter in the calculation and it should be carefully tested for conver-gence. The grid is assumed to be regular and orthogonal. ExpansionOrder

2

Page 3: Parsec 1.1 User’s Guide 12 · 2012-04-13 · parameter in the calculation and it should be carefully tested for conver-gence. The grid is assumed to be regular and orthogonal. ExpansionOrder

Contents

1 What it is 5

2 Getting the code 7

3 Compiling Parsec 9

3.1 Porting to New Platforms . . . . . . . . . . . . . . . . . . . . . . 9

4 Running Parsec 11

4.1 Basic input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114.2 The parsec.in file . . . . . . . . . . . . . . . . . . . . . . . . . . . 114.3 Basic output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

5 Input options 13

5.1 The real-space grid . . . . . . . . . . . . . . . . . . . . . . . . . . 135.2 Diagonalization parameters . . . . . . . . . . . . . . . . . . . . . 145.3 Self-consistency and mixing parameters . . . . . . . . . . . . . . 155.4 Global atom and pseudopotential parameters . . . . . . . . . . . 155.5 Parameters specific to each chemical element . . . . . . . . . . . 165.6 Electronic parameters . . . . . . . . . . . . . . . . . . . . . . . . 175.7 Structural relaxation . . . . . . . . . . . . . . . . . . . . . . . . . 195.8 Molecular dynamics . . . . . . . . . . . . . . . . . . . . . . . . . 205.9 Polarizability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215.10 Flags for additional input/output . . . . . . . . . . . . . . . . . . 21

6 Post-processing tools 23

6.1 PVOX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236.2 Other tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

7 Problems, unfinished work, etc. 25

7.1 Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257.2 Future implementations . . . . . . . . . . . . . . . . . . . . . . . 25Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

3

Page 4: Parsec 1.1 User’s Guide 12 · 2012-04-13 · parameter in the calculation and it should be carefully tested for conver-gence. The grid is assumed to be regular and orthogonal. ExpansionOrder

4 CONTENTS

Page 5: Parsec 1.1 User’s Guide 12 · 2012-04-13 · parameter in the calculation and it should be carefully tested for conver-gence. The grid is assumed to be regular and orthogonal. ExpansionOrder

Chapter 1

What it is

Parsec is a computer code that solves the Kohn-Sham equations by express-ing electron wave-functions directly in real space, without use of explicit basisset. The name stands for ”Pseudopotential Algorithm for Real-Space ElectronicCalculations”. It handles periodic boundary conditions (on all three directions)and confined-system boundary conditions. In the latter, the charge density andwave-functions are required to vanish outside a spherical shell enclosing the elec-tronic system. A finite-difference approach is used for the calculation of spatialderivatives. Norm-conserving pseudopotentials are used to describe the interac-tion between valence electrons and ionic cores (core electrons+nuclei). Owing tothe sparsity of the Hamiltonian matrix, the Kohn-Sham equations are solved bydirect diagonalization, with the use of extremely efficient sparse-matrix eigen-solvers. Besides standard DFT calculations, parsec is able to perform structuralrelaxation, simulated annealing, Langevin molecular dynamics, polarizabilitycalculations (confined-system boundary conditions only). It can also be usedto provide input for TDLDA (time-dependent density functional theory, in adi-abatic local-density approximation), GW approximation, and solution of theBethe-Salpeter equation for optical excitations.

The development of parsec started in the early 1990’s with the work of J.R.Chelikowsky, N. Troullier, and Y. Saad ( Phys. Rev. Lett 72, 1240 ; Phys. Rev.B 50, 11355). Later, many people have contributed with additional features andperformance improvement:

• A. Stathopolous : mathematical subroutines;

• H. Kim : core correction, multipole expansion;

• I. Vasiliev : Polarizability, asymptotically-corrected functionals;

• M. Jain and L. Kronik : GGA, generalized Broyden mixer;

• K. Wu : improvements in iterative diagonalizer and Hartree solver;

• R. Burdick : major rewrite and improvement of multipole expansion;

5

Page 6: Parsec 1.1 User’s Guide 12 · 2012-04-13 · parameter in the calculation and it should be carefully tested for conver-gence. The grid is assumed to be regular and orthogonal. ExpansionOrder

6 CHAPTER 1. WHAT IT IS

• M. Alemany and M. Jain : periodic boundary conditions, parallel imple-mentation;

• M. Alemany and E. Lorin : ARPACK solver;

• A. Makmal: dynamical memory allocation;

• M. Tiago : parallelization, symmetry operations, interface with GW andBSE, this user’s guide.

Page 7: Parsec 1.1 User’s Guide 12 · 2012-04-13 · parameter in the calculation and it should be carefully tested for conver-gence. The grid is assumed to be regular and orthogonal. ExpansionOrder

Chapter 2

Getting the code

Public versions of the code can be downloaded from Prof. Chelikowsky’s group page1.There is also a development version, with implementations that are being testedfor stability and performance. If you are interested in contributing to develop-ment, contact the developers.

Parsec is distributed under the General Public License (GPL). In a nutshell,these are the conditions implied in using it:

• It should be used for non-commercial purposes only.

• The authors give no warranty regarding its reliability or usefulness to yourparticular application.

• The authors offer no technical support.

1http://www.ices.utexas.edu/parsec/

7

Page 8: Parsec 1.1 User’s Guide 12 · 2012-04-13 · parameter in the calculation and it should be carefully tested for conver-gence. The grid is assumed to be regular and orthogonal. ExpansionOrder

8 CHAPTER 2. GETTING THE CODE

Page 9: Parsec 1.1 User’s Guide 12 · 2012-04-13 · parameter in the calculation and it should be carefully tested for conver-gence. The grid is assumed to be regular and orthogonal. ExpansionOrder

Chapter 3

Compiling Parsec

At the beginning of the Makefile file, edit the include line with the correctmachine-dependent compilation file. Existing compilation files are inside subdi-rectory config. Some of the existing files are:

• make.ibmsp3 make.ibmsp3 mpi : sp.msi.umn.edu, with/without MPI sup-port.

• make.intel : plain i686 machine running linux.

This code has been ported and tested on a variety of different platforms:IBM SP3 and SP4 (AIX compiler), SGI (intel and f90 compilers), Intel/Linux(g95, intel compilers).

Usually, the executable is named parsec.ser (no MPI support) or parsec.mpi(with MPI support).

3.1 Porting to New Platforms

Besides creating a new make.* file for the machine you want to use, these are thefiles you may have to modify in order to port it to other platforms: myflush.F,timing.F, cfftw.F

Parsec uses the following external libraries:

• ARPACK1, diagonalization of sparse matrices.

• FFTW2, versions 2.x or 3.x, used for 3-dimensional FFT of real functions.

• LAPACK/BLAS3, linear algebra. Alternatively, support for libraries ESSL(IBM) and MKL4 (Intel Math Kernel Library) is also available.

• MPI : message passing interface, for parallel machines.

1http://www.caam.rice.edu/software/ARPACK/2http://www.fftw.org3http://www.netlib.org/lapack/4http://www.intel.com/cd/software/products/asmo-na/eng/index.htm

9

Page 10: Parsec 1.1 User’s Guide 12 · 2012-04-13 · parameter in the calculation and it should be carefully tested for conver-gence. The grid is assumed to be regular and orthogonal. ExpansionOrder

10 CHAPTER 3. COMPILING PARSEC

Page 11: Parsec 1.1 User’s Guide 12 · 2012-04-13 · parameter in the calculation and it should be carefully tested for conver-gence. The grid is assumed to be regular and orthogonal. ExpansionOrder

Chapter 4

Running Parsec

4.1 Basic input

• parsec.in : input file with user-provided parameters.

• * POTRE.DAT : pseudopotential files, in format consistent with Prof. J.L.Martins’ pseudopotential generator1. The distributors of Parsec have aversion of Prof. Martins’ code with minor but important modifications,so that files in the proper format are created. For the moment, only norm-conserving pseudopotentials are implemented. For back-compatibility,files in ”old format” are also accepted, see below Old Pseudopotential Format

flag. Pseudopotential files used in Parsec are compatible with the ”Siesta”2

DFT program, but the opposite is not true: pseudo-wavefunctions are ap-pended to * POTRE.DAT files, but the same does not necessarily happen toformatted pseudopotential files used in Siesta.

4.2 The parsec.in file

The user-provided input uses the electronic structure data format (ESDF), im-plemented as a module written by Chris J. Pickard. Comments can be addedon any line, and are preceded by any of the symbols ”# ; !”. Keywords andblockwords are case insensitive. Characters ”. : =” and multiple spaces areignored. Most parameters have default values. All parameters with true/falsevalue have default value false. Parameter values can be written anywhere in thefile, with the exception that information pertinent to the same chemical elementshould be given in consecutive lines (sometimes, data from different elementscan be mixed, but this should be avoided for the sake of clarity). Keywordsare always followed by their corresponding value on the same line. Input values

1http://bohr.inesc-mn.pt/ jlm/pseudo.html2http://www.uam.es/siesta/

11

Page 12: Parsec 1.1 User’s Guide 12 · 2012-04-13 · parameter in the calculation and it should be carefully tested for conver-gence. The grid is assumed to be regular and orthogonal. ExpansionOrder

12 CHAPTER 4. RUNNING PARSEC

with intrinsic physical unit can be given in different units, with name follow-ing the value. Default unit is used if none is specified. For example, the linegrid spacing 0.5 ang sets a grid spacing of 0.5 angstroms. Blocks have thesyntax:

begin Blockword

.

.

.

end Blockword

WARNING: parsec does not watch out for misprints in parsec.in. Lineswith unrecognized keywords or blockwords are usually ignored.

4.3 Basic output

• parsec.out : unified output file.

• out.* : standard output. It contains some warnings and error messages.

• wfn.dat : contains eigenvalues, density function, effective potential, wave-functions and other output data, in binary (unformatted) form. SeeOlddat Style.

Page 13: Parsec 1.1 User’s Guide 12 · 2012-04-13 · parameter in the calculation and it should be carefully tested for conver-gence. The grid is assumed to be regular and orthogonal. ExpansionOrder

Chapter 5

Input options

5.1 The real-space grid

The following parameters define the region of space where the Kohn-Sham equa-tions will be solved, and the appropriate boundary conditions. In parallel en-vironment, grid points are distributed among processors. Symmetry operationsare used to reduce the sampled region to an irreducible wedge.

Periodic System (boolean), default value = false

This flag enables the use of periodic boundary conditions on all threedirections. If set true, the input grid spacing may be increased so as tomake it commensurable with the given size of periodic cell. Also, atomiccoordinates are used as given, with no initial repositioning around theorigin of real-space grid. If atoms are found to be outside the cell, theyare replaced by their periodic image inside the cell.

Cell Shape (block), default value = no default

Length of periodic cell along the x, y, z coordinates. Relevant only inperiodic systems.

Lattice Vector Scale (real), default value = 1 , default unit = bohr (Bohrradii)

Constant that multiplies the length of all three unit lattice vectors. Thisis useful for volumetric expansions or contractions in periodic systems.Relevant only in periodic systems.

Boundary Sphere Radius (real), default value = no default , default unit =bohr (Bohr radii)

Radius of enclosing spherical shell. Boundary conditions in non-periodicsystems are such that all wave-functions vanish beyond a spherical shellcentered in the origin and with given radius. The Hartree potential isalso set to vanish on the shell (internally, this is done by solving Poisson’s

13

Page 14: Parsec 1.1 User’s Guide 12 · 2012-04-13 · parameter in the calculation and it should be carefully tested for conver-gence. The grid is assumed to be regular and orthogonal. ExpansionOrder

14 CHAPTER 5. INPUT OPTIONS

equation with a compensating charge outside the shell). Calculation stopsif any atom is found outside the shell. The amount of extra space thatshould be given between the shell and any inner atom is strongly system-dependent and should be carefully tested for convergence.

Grid Spacing (real), default value = no default , default unit = bohr (Bohrradii)

Distance between neighbor points in the real-space grid. This is a criticalparameter in the calculation and it should be carefully tested for conver-gence. The grid is assumed to be regular and orthogonal.

Expansion Order (integer), default value = 12

Order used in the finite-difference expansion of gradients and Laplacians.It corresponds to twice the number of neighbor points used on each sideand for each direction. It must be an even number.

Olddat Style (boolean), default value = false

Compatibility flag. Removes the grid shift and ignores symmetry opera-tions, so that the resulting grid is equal to the one used in older versions ofthis code. Output wave-functions and density are written to file old.dat

instead of wfn.dat. Notice that these two files have different format!

5.2 Diagonalization parameters

Many DFT codes solve the Kohn-Sham equations by minimizing the total energyfunctional. Parsec uses a different approach: it performs direct diagonalizationof the Kohn-Sham equations. Expressed in real space, the Hamiltonian is asparse matrix, and efficient algorithms can be used to obtain the low-energyeigenstates with minimal memory usage and parallel communication.

Eigensolver (word), default value = arpack

Implemented eigensolvers are: arpack (implicitly restarted Lanczos/Arnoldi)and diagla (block preconditioned Lanczos). The last solver uses signifi-cantly less memory, but it occasionally fails to converge in periodic sys-tems.

Diag Tolerance (real), default value = 1.d-4

Tolerance in the residual norm of eigen-pairs.

Initial Diag Tolerance (real), default value = 100.0

Tolerance in the residual norm used for the trial diagonalization. This canbe a fairly large number, since the trial diagonalization does not need tobe very accurate.

Page 15: Parsec 1.1 User’s Guide 12 · 2012-04-13 · parameter in the calculation and it should be carefully tested for conver-gence. The grid is assumed to be regular and orthogonal. ExpansionOrder

5.3. SELF-CONSISTENCY AND MIXING PARAMETERS 15

Subspace Buffer Size (integer), default value = 1

Number of additional eigenvalues to be computed for each representation.Must be some positive value, so that the full set of eigenvalues can bereconstructed from the sum of representations without missing levels.

5.3 Self-consistency and mixing parameters

Max Iter (integer), default value = integer

Maximum number of iterations in the self-consistent loop.

Convergence Criterion (real), default value = 2.d-4 , default unit = Ry(rydbergs)

The density function is considered converged when the self-consistentresidual error (SRE) falls below this value. The SRE is an integral ofthe square of the difference between the last two self-consistent potentials,weighted by electron density and taken squared root. This parametershould not be chosen less than the typical diagonalization accuracy.

Mixing Method (word), default value = Anderson

Defines the scheme used in the mixing of old an new potentials. Im-plemented schemes are Broyden and Anderson (which were proved to beequivalent by V. Eyert, 1996). In practice, there is no significant differencebetween these two schemes. Broyden mixing uses disk for input/outputof internal data.

Mixing Param (real), default value = 0.30

Choice for the diagonal Jacobian used in the mixing of potentials. Smallvalues reduce the amount of mixing and result in slower but more con-trolled convergence. For improved performance, the user may try reducingthis parameter in cases where the energy landscape is too corrugated (e.g.:magnetic systems, or systems with many degrees of freedom).

Memory Param (integer), default value = 2

Number of previous SCF steps used in mixing. Ideal values range from 4to 6. Larger values may actually worsen convergence because it includessteps far from the real solution.

5.4 Global atom and pseudopotential parame-ters

Atom Types Num (integer), default value = no default

Number of different chemical elements present in the system.

Page 16: Parsec 1.1 User’s Guide 12 · 2012-04-13 · parameter in the calculation and it should be carefully tested for conver-gence. The grid is assumed to be regular and orthogonal. ExpansionOrder

16 CHAPTER 5. INPUT OPTIONS

Coordinate Unit (word), default value = Cartesian Bohr

By default, positions of atoms are given in cartesian coordinates and unitsof Bohr radius. Other implemented options are:

• Cartesian Ang atomic coordinates given in angstroms, cartesian.

• Lattice Vectors atomic coordinates given in units of lattice vectors.Available only with periodic boundary conditions.

Old Pseudopotential Format (boolean), default value = false

By default, pseudopotential files have atomic parameters (cut-off radii,etc. ) included. For back-compatibility, this flag enables the reading ofold-format files, which do not have atomic parameters included. Noticethat the naming convention of old-format files is * POTR.DAT instead of* POTRE.DAT. The use of mixed formats is not allowed: parsec reads allfiles in new format or all files in old format.

Old Interpolation Format (boolean), default value = false

This is a compatibility flag. Normally, the local component of pseudopo-tentials V at some arbitrary point r is evaluated by linear interpolation ofthe function r*V. Due to the Coulomb-like behavior of V far away fromthe atom, this interpolation is exact beyond the cut-off radius. This flagreverts to the old method: linear interpolation of V itself. It should beused for debugging purposes only.

5.5 Parameters specific to each chemical element

These parameters should be given in sequence in parsec.in, and they refer toa particular chemical element in the system.

Atom Type (word), default value = no default

Chemical symbol of the current element. THIS IS CASE SENSITIVE!

Potential Num (integer), default value = no default

Number of available angular components. Relevant only if old-formatpseudopotentials are used.

Core Cutoff Radius (real), default value = no default , default unit = bohr(Bohr radii)

Maximum cut-off radius used in the generation of pseudopotential. Rele-vant only if old-format pseudopotentials are used.

Electron Per Orbital (block), default value = no default

Number of electrons per atomic orbital used in the generation of pseu-dopotential. Relevant only if old-format pseudopotentials are used.

Page 17: Parsec 1.1 User’s Guide 12 · 2012-04-13 · parameter in the calculation and it should be carefully tested for conver-gence. The grid is assumed to be regular and orthogonal. ExpansionOrder

5.6. ELECTRONIC PARAMETERS 17

Local Component (integer), default value = no default

Choice of angular component to be considered local in the Kleinman-Bylander transformation. No ghost-state check is done in parsec. There-fore, check if the chosen component does not have ghost states.

Move Flag (integer), default value = 0

Type of movement to be applied to atoms. Relevant only if structuralrelaxation is performed. Value 0 makes all atoms movable in all directions.Value n positive makes the first n atoms movable. A negative value makesselected atoms movable (the selection is made inside block Atom Coord).

Atom Coord (block), default value = no default

Coordinates of atoms belonging to the current chemical species. SeeCoordinate Unit. If structural relaxation is done with selected atoms(Move Flag ¡ 0), each triplet of coordinates must be followed by an inte-ger: 0 if this atom is fixed, 1 if it is movable.

Alpha Filter (real), default value = 0.0

Cut-off parameter in Fourier filtering of pseudopotentials, in reciprocalspace. If value is non-positive, pseudopotentials are not filtered. Fourierfiltering is implemented according to Briggs et al. Phys. Rev. B 54, 14362(1996), but no second filtering in real space has been implemented so far.

Beta1 Filter (real), default value = 0.0

Cut-off parameter in Fourier filtering of pseudopotentials, in reciprocalspace. Referenced only if alpha filter is positive.

Core Filter (real), default value = equal to Alpha Filter

Cut-off parameter in Fourier filtering of non-linear core density. If non-positive, then core density is not filtered.

5.6 Electronic parameters

Restart Run (boolean), default value = false

By default, the initial charge density in a parsec run is built from thesuperposition of atomic charge densities. If you want instead to startfrom a previous run, choose value true. For confined systems, havingrestart run = true prevents the initial centering of atoms. If this flagis used but an adequate file wfn.dat is not found, the calculation is inter-rupted.

States Num (integer), default value = no default

Number of energy eigenvalues to be computed. In spin-polarized calcula-tions, this is the number of eigenvalues per spin orientation.

Page 18: Parsec 1.1 User’s Guide 12 · 2012-04-13 · parameter in the calculation and it should be carefully tested for conver-gence. The grid is assumed to be regular and orthogonal. ExpansionOrder

18 CHAPTER 5. INPUT OPTIONS

Net Charges (real), default value = 0.0 , default unit = e (electron charge)

Net electric charge in the system, in units of electron charge. It can alsobe used in periodic systems. In that case, a background charge is usedand the divergent component of the Hartree potential is ignored.

Fermi Temp (real), default value = 80.0 , default unit = K (kelvins)

Fermi temperature used to smear out the Fermi energy. If a negativevalue is given, then the occupancy of Kohn-Sham orbitals is read from fileoccup.in and kept fixed throughout the calculation.

Correlation Type (word), default value = CA

Choice of exchange-Correlation functional to be used. Available choicesand their variants are:

• CA, PZ : Ceperley-Alder (LDA), with spin-polarized option. D.M.Ceperley and B.J. Alder, Phys. Rev. Lett. 45, 566 (1980); J.P.Perdew and A. Zunger, Phys. Rev. B 23, 5048 (1981).

• XA: Slater’s x-alpha (LDA). J.C. Slater, Phys. Rev. 81 385 (1951).

• WI: Wigner’s interpolation (LDA). E. Wigner, Phys. Rev. 46, 1002(1934).

• HL: Hedin-Lundqvist (LDA). L. Hedin and B.I. Lundqvist, J. Phys.C 4, 2064 (1971).

• LB: Ceperley-Alder with Leeuwen-Baerends correction (asymptoti-cally corrected). R. van Leeuwen and E. J. Baerends, Phys. Rev. A49, 2421 (1994).

• CS: Ceperley-Alder with Casida-Salahub correction (asymptoticallycorrected). M.E. Casida and D.R. Salahub, J. Chem. Phys. 113,8918 (2000).

• PW, PW91: Perdew-Wang (GGA), with spin-polarized option. J.P.Perdew and Y. Wang, Phys. Rev. B 45, 13244 (1992).

• PB, PBE: Perdew-Burke-Ernzerhof (GGA), with spin-polarized op-tion. J.P. Perdew, K. Burke, and M. Ernzerhof, Phys. Rev. Lett.77, 3865 (1996).

Ion Energy Diff (real), default value = 0.0, default unit = Ry (rydbergs)

Energy difference used in the construction of the Casida-Salahub func-tional. Relevant only if that functional is used.

Spin Polarization: (boolean), default value = false

Enables spin-polarized densities and functional.

Page 19: Parsec 1.1 User’s Guide 12 · 2012-04-13 · parameter in the calculation and it should be carefully tested for conver-gence. The grid is assumed to be regular and orthogonal. ExpansionOrder

5.7. STRUCTURAL RELAXATION 19

5.7 Structural relaxation

Minimization (word), default value = none

Choice of method for structural relaxation. Available options are: none

(no relaxation), simple (steepest-descent algorithm), BFGS (Broyden-Fletcher-Goldfarb-Shanno, the best), and manual (manual movement). Steepest-descent should be used as last resort. With manual movement, the se-quence of atomic coordinates must be provided by the user in file manual.datand it is used ”as is”. The last choice is useful for debugging. Symmetryoperations are ignored if manual movement is performed

Movement Num (integer), default value = 500

Maximum number of iterations during structural relaxation.

Force Min (real), default value = 1.5d-3 , default unit = Ry/bohr (ryd-bergs/Bohr radii)

Maximum magnitude of the force on any atom in the relaxed structure.This should not be set less than about 0.01 Ry/a.u., which is the usualaccuracy in the calculation of forces.

Max Step (real), default value = 0.05 (steepest descent), -1 (BFGS), defaultunit = bohr (Bohr radii)

If steepest-descent minimization is performed, this parameter sets themaximum displacement of atoms between two steps in relaxation. WithBFGS, this defines the maximum displacement of atoms along each Carte-sian component from their original position (if negative, no constraint inthe movement of atoms is imposed). Ignored in all other circumstances.

Min Step (real), default value = 1.d-4 , default unit = bohr (Bohr radii)

Minimum displacement of atoms between two steps in steepest-descentrelaxation. Relevant only if steepest descent is performed.

BFGS Number Corr (integer), default value = 7

Number of variable metric corrections used to defined the limited-memorymatrix. Relevant only if BFGS relaxation is performed.

Relax Restart (boolean), default value = false

Flag for the restart of a relaxation run. If true, the user must provide infor-mation about previous run in file relax restart.dat. No need to inputfile wfn.dat. If this option is used, the atomic coordinates in parsec.in

are replaced with the ones in relax restart.dat. Appropriate warningsare written to output. If the restart file is not found, this flag is ignoredand no information from previous relaxations is used.

Page 20: Parsec 1.1 User’s Guide 12 · 2012-04-13 · parameter in the calculation and it should be carefully tested for conver-gence. The grid is assumed to be regular and orthogonal. ExpansionOrder

20 CHAPTER 5. INPUT OPTIONS

5.8 Molecular dynamics

Molecular Dynamics (boolean), default value = false

Enables molecular dynamics. This feature can be used both for simulatedannealing and for direct simulation of hot systems. Both canonical andmicro-canonical ensembles are implemented. Symmetry operations areignored if molecular dynamics is being performed.

Cooling Method (word), default value = stair

Type of cooling (i.e.: change of ensemble temperature) used during molec-ular dynamics. Possible choices are: stair (stair-case), log (logarithmiccooling), and linear (linear cooling). As the molecular dynamics simula-tion proceeds, the ensemble temperature changes according to the coolingmethod and to the choices of initial and final temperatures. At each step,the actual temperature is calculated from equipartition theorem and thekinetic energy (difference between the total energy and potential energy).In the first steps, the actual and ensemble temperatures may be very dif-ferent, particularly if there are few atoms, when thermal fluctuations areenormous.

Tinit (real), default value = 500.0 , default unit = K (kelvins)

Initial ensemble temperature in the system.

T final (real), default value = 500.0 , default unit = K (kelvins)

Final ensemble temperature.

T Step (real), default value = 150.0 , default unit = K (kelvins)

Step temperature used in the cooling.

Time Step (real), default value = 150.0 , default unit = ps (10−12 seconds)

Time interval between two steps in molecular dynamics. The dynamicalequations of motion are numerically integrated using a modified Verletalgorithm.

Friction Coefficient (real), default value = 0.0

Viscosity parameter in molecular dynamics, in atomic units (inverse time).If less than 1.d-6 a.u., then a micro-canonical ensemble is used: total en-ergy is assumed constant, and the atoms start moving with a velocity dis-tribution consistent with the initial temperature. If more, then a canonicalensemble is used and true Langevin molecular dynamics is performed.

Step num (integer), default value = 250

Number of steps in molecular dynamics. A successful simulation ends onlyafter reaching the requested number of steps.

Page 21: Parsec 1.1 User’s Guide 12 · 2012-04-13 · parameter in the calculation and it should be carefully tested for conver-gence. The grid is assumed to be regular and orthogonal. ExpansionOrder

5.9. POLARIZABILITY 21

Restart mode (boolean), default value = false

Enables the restart of an aborted molecular dynamics simulation. Withthis feature, the last two sets of positions, velocities and accelerationsstored in input file mdinit.dat are used. The number of steps in that fileis included in the current run as well.

5.9 Polarizability

Polarizability (boolean), default value = false

Enables calculation of polarizability using a finite-field method. Availableonly with non-periodic boundary conditions. An uniform electric field isapplied successively along the +x,-x,+y,-y,+z,-z directions, and dipole mo-ments are calculated and collected and printed in output file polar.dat.From dipole moments, the diagonal part of polarizability tensor is ob-tained. Symmetry operations are ignored if this flag is used.

Electric Field (real), default value = 0.001, default unit = ry/bohr/e (ryd-bergs/Bohr radii/electron charge)

Magnitude of external electric field to be applied.

5.10 Flags for additional input/output

Skip force (boolean), default value = false

Suppresses calculation of forces. Since forces are easily obtained, this flagis useless.

Output All States (boolean), default value = false

Forces output of all wave-functions up to requested number of states tofile wfn.dat, instead of only the occupied ones (default).

Save Intermediate Charge Density (boolean), default value = false

Causes wave-functions to be written to output after each self-consistentiteration, instead of only after self-consistency is reached. Previous wave-functions are over-written. This is useful for debugging purposes or ifdiagonalization is too demanding.

Output Eigenvalues (boolean), default value = false

Saves eigenvalues to file eigen.dat after self-consistency in density func-tion is achieved. This is useful for debugging purposes.

Save Intermediate Eigenvalues (boolean), default value = false

Saves eigenvalues after each SCF iteration, instead of after the last one.Useful for debugging purposes.

Page 22: Parsec 1.1 User’s Guide 12 · 2012-04-13 · parameter in the calculation and it should be carefully tested for conver-gence. The grid is assumed to be regular and orthogonal. ExpansionOrder

22 CHAPTER 5. INPUT OPTIONS

Output Level (integer), default value = 0

Output flag for additional info in parsec.out. With default value, only thebasic output is written. Positive values cause additional information to beprinted out:

> 0 : print out local/non-local components of force

> 1 : print out all symmetry data and additional arpack output

> 2 : print out more BFGS output

> 3 : print out all BFGS output

> 4 : print out all g-stars (warning: _lots_ of data)

> 5 : print out local potentials (warning: _lots_ of data)

Page 23: Parsec 1.1 User’s Guide 12 · 2012-04-13 · parameter in the calculation and it should be carefully tested for conver-gence. The grid is assumed to be regular and orthogonal. ExpansionOrder

Chapter 6

Post-processing tools

6.1 PVOX

PVOX (parsec visualization toolbox) is a set of matlab/python scripts, withgraphical user interface. It was developed in 2005 by Michael Frasca, Lee Bal-lard, and Nick Voshell. It reads parsec output directly and extracts the densityof states, makes plots of electron charge density, self-consistent potential, andselected wave-functions. It has been tested with Matlab 7.01 and Python 2.4.1.

6.2 Other tools

There are additional tools that read parsec output and perform specific tasks.Some of them are: angproj, for calculation of angle-projected density of states;plotdx, interface with Data Explorer2 for visualization of charge density, wave-functions, etc.

1http://www.mathworks.com/products/matlab/2http://www.opendx.org

23

Page 24: Parsec 1.1 User’s Guide 12 · 2012-04-13 · parameter in the calculation and it should be carefully tested for conver-gence. The grid is assumed to be regular and orthogonal. ExpansionOrder

24 CHAPTER 6. POST-PROCESSING TOOLS

Page 25: Parsec 1.1 User’s Guide 12 · 2012-04-13 · parameter in the calculation and it should be carefully tested for conver-gence. The grid is assumed to be regular and orthogonal. ExpansionOrder

Chapter 7

Problems, unfinished work,etc.

7.1 Troubleshooting

1. Diagla occasionally shows bad performance if periodic boundary condi-tions are used. If you get error messages related to the eigensolver, tryArpack.

2. Missing symmetry operations: only symmetry operations belonging tothe cubic system are tested for existence. That is because the finite gridspacing breaks all other symmetries (for example, the five-fold rotationalsymmetry in icosahedral molecules). In the Hamiltonian, only some of thepresent operations are used, and the selection is very stringent. If you feelnot all possible symmetry operations are included in the Hamiltonian, tryrotating or translating the whole system.

3. Unrecognized chemical element: Parsec has an internal periodic table (fileptable.f), and it checks for the existence of input elements. If the calcu-lation stops with ”unknown element”, edit the periodic table.

4. Current pseudopotential generator does not support asymptotically cor-rected functionals (LB, CS).

7.2 Future implementations

1. Add k-point sampling in periodic systems.

2. Allow for a non-orthorhombic periodic cell if periodic boundary conditionsare used.

25