




It is now possible to specify a reaction coordinate for transition state search via a TSRC input block, similar to QUILD. This feature is especially useful when an accurate Hessian is not available. In such a case ADF uses an approximate Hessian that can be poor when weak interactions and/or transition metals are involved. What then happens is that the mode with the lowest Hessian eigenvalue does not correspond to the reaction coordinate along which transition state is sought for, thus leading optimization in the wrong direction.
This problem can now be solved by specifying a reaction coordinate along which the transition state is sought for. Such a reaction coordinate can consist of one or more distance, valence or dihedral angle, or just a combination of vectors on certain atoms.
TSRC ATOM i x y z DIST i j ANGLE i j k DIHED i j k l END
Here, i, j, k, and l are atom indecies, x, y, and z are corresponding components of a TSRC vector for atom i.
Restrictions and notes:
The TSRC feature does not work in combination with the old optimization branch. In general, the old branch is no longer developed so all new features related to geometry optimization work with the new branch only.
The DIST, ANGLE and DIHED specifications should be used in combination with optimization in delocalized coordinates only (i.e. not with Cartesian).
Only one type of the keyword is allowed in a TSRC block. That is, the keys must be either all ATOM or all DIST, etc. Thus, mixing of different keywords is not allowed.
One should be careful when specifying more than one bond or angle as a TSRC. For example, suppose atom 2 is located between atoms 1 and 3. Then the following TSRC block:
TSRC DIST 1 2 DIST 3 2 END
means that atom 2 is hopping between atoms 1 and 3, while the following input:
TSRC DIST 1 2 DIST 2 3 END
means that atom 2 stays more or less put and the reaction coordinate is determined by the distance between atoms 1 and 3.
First primitive implementation: only shieldings are shown in the spectra.
The surface construction for all types of COSMO surfaces has been made numerically more stable, by merging close lying COSMO surface points. The calculation of the Fock matrix elements has also been made more stable in case of coincidental close lying integration points with COSMO surface points.
It is now possible to set the numerical differentiation parameters in the arguments for the RAMANRANGE and SCANFREQ keywords. The parameters that can be changed are NUM and DISRAD. They have the same meaning as the corresponding arguments of the FREQUENCIES keyword in the GEOMETRY input block. The complete RAMANRANGE or SCANFREQ keyword can now be specified as follows:
RAMANRANGE LowFreq HighFreq NUM=num DISRAD=disrad
You can write SCANFREQ instead of RAMANRANGE. Num is an integer number specifying how many points are to be used for numerical differentiation: 2, 4, or 6. The default value is 2. Disrad specifies the step size (in Angstrom) to be made in each direction for 2-point differentiation. For the 4-point differentiation the maximum deviation from the equilibrium geometry will be twice as large as for the 2-point one and so on. The default value for disrad is the same as used for numerical frequencies.
It should be noted that the 4-point differentiation is twice as expensive and the 6-point is three times as expensive as the 2-point one.
The problem only showed when the job name contained characters like + or . (dot).
After performing an MCD calculation, you can visualize the results using ADFspectra. The A Terms are not included (but visible in the balloons)
The bug was introduced in r20183.
This Raman option is compatibel with the lifetime option.
Menu commands for the same functions have also been added, mainly as a visual reminder of the shortcuts
It is now possible to specify ARH options without turning on the method itself unconditionally. The ARHOPTIONS keyword has the same arguments as the ARH key (see below). With this modification it is now particularly useful in combination with an ALLOW ARH keyword.
Excitation energies can now be calculated using time dependent Hartree-Fock (TDHF, also called RPA). All electron basis sets should be used. For hybrids the Hartree-Fock percentage times the Hartree-Fock kernel plus one minus the Hartree-Fock percentage times the ALDA kernel is used. It is possible to use the Tamm-Dancoff approximation (TDA). Spin-orbit coupling can also be included. Note that these calculation can be very time-consuming. Example input:
XC hartreefock end excitations end AddDiffuseFit
Because of the way ADF is fitting the Hartree-Fock exchange part, the AddDiffuseFit keyword should be included for extra accuracy.
It is now possible to use DENSF to calculate ε*φ2 values of Natural Orbitals for Chemical Valence (NOCVs). Additional information on NOCVs is available in this paper.
The relevant part of the DENSF input is as follows:
For spin-unrestricted:
NOCV Alpha N1α N2α ... Beta N1β N2β ... END
For spin-restricted:
NOCV N1 N2 ... END
N1, N2, etc. specify sequential numbers of the orbitals for which ε*φ2 is to be calculated.
Alpha and Beta specify that the numbers that follow refer to spin α and β, respectively. Both Alpha and Beta are optional, Alpha being assumed if omitted. The NOCV input block must be closed with "END".
Alternatively, one can specify to calculate all (alpha- or beta-) NOCV's:
For spin-unrestricted:
NOCV Alpha ALL Beta ALL END
For both spin-restricted and spin-unrestricted:
NOCV ALL END
The last and probably the most convenient form of the NOCV input blocks lets one to specify an NOCV eigenvalue threshold as a criterion for selecting orbitals:
For spin-unrestricted:
NOCV Alpha THRESH threshold Beta THRESH threshold END
For both spin-restricted and spin-unrestricted:
NOCV THRESH threshold END
When this form of the input is used, only those NOCVs will be included whose absolute eigenvalue is equal to or larger than the given threshold.
A separate keyword has been added to calculate forces on atoms without performing geometry optimization. The keyword is GRADIENT and it is a simple keyword that can be used in a single-point calculation. The calculated forces are printed in the output file both in the standard and in the input orientation, if the latter is different from the standard one. The forces are also stored in the TAPE21 file, variable GeoOpt%Gradients_CART, but then in the standard orientation and with the internal (as opposed to input) order of atoms.
With this change, forces are now also calculated during a single-point analytical frequency calculation.
Use the Prefs command from the SCM menu to set the font size to be used by the GUI. As with all GuiPrefs, you can see the result by pressing Apply, and make them permanent by pressing Save.
A known bug is that ADFjobs may hang when switching font sizes several times while it is running. To fix the problem, just quit and restart ADFjobs.
The Augmented Roothaan-Hall method has been developed by T. Helgaker and coworkers and is extensively discussed in [J Chem Phys 129, 124106 (2008)]. The basic idea of the method is that the density matrix is optimized directly to minimize total energy. At each step, the new density matrix is parametrized in terms of matrix exponent:
Pnew = exp(-X) Pold exp(X),
here, X is an anti-symmetric step matrix subject to the following conditions:
X = argmin{E(P(X))} - X minimizes the energy
|X| < h - length of X is smaller than or equal to some trust radius
The optimal X is found using a Conjugate Gradient method, possibly with pre-conditioning. The trust radius is updated based on how well the energy change is predicted.
The ARH procedure is invoked using an ARH keyword in the SCF input block
ARH {CONV=conv} {ITER=iter} {NSAVED=nsaved} {START=start} {FINAL} ...
All parameters in the ARH keyword are optional. The following arguments determine the main parameters of the ARH procedure.
CONV=conv
ARH convergence criterion. When the RMS gradient and its maximum components are both lower than the criterion, the ARH procedure will be considered converged. The default value is 10-4.
ITER=iter
Maximum number of ARH iteration to perform. Please note that in difficult cases a huge number of iterations may be required for complete SCF convergence. The default value is 500.
FINAL
Determines whether SCF is continued after ARH has completed. If this option is set, one Fock matrix diagonalization will be performed to get orbitals and the SCF procedure will be halted. By default this option is OFF.
START=start
Sets the SCF cycle number on which the ARH method is invoked. The default value is 2. Using a larger value may provide a better starting guess for the ARH minimization.
NSAVED=nsaved
Sets the number of saved density and Fock matrices used for augmentation of the electronic Hessian. The default value is 8. A larger nsaved value should be used in difficult cases when the number of orbitals very close to the Fermi level is large.
The default minimization method is Untransformed Pre-conditioned Conjugate Gradient. The following two parameters may be used to change this.
NOPRECOND
Disables pre-conditioning during the CG minimization. This option should not be used if atoms heavier than the second-row elements are present.
TRANSPCG
Specifying this option will enable the use of the Transformed Pre-conditioned CG method, which may result in better SCF convergence in some cases.
At each SCF step, the procedures begins by performing usual CG minimization keeping track of the total step length. If at some micro-iteration the step length exceeds the trust radius, the procedure switches to trust-radius optimization in the reduced space, which, in turn, is halted as soon as the level-shift parameter mu has converged. The final step is then calculated as a Newton step in the reduced space of all the trial vectors generated during CG minimization. The following options may be used to modify this behavior.
NOSWITCHING
Setting this option turns OFF the switching from the normal CG to a trust-radius minimization in reduced space. Using this option helps to reduce the total number of SCF cycles is some cases.
SHIFTED
Setting this option will turn ON the trust-radius optimization from the first micro- iteration.
CGITER=cgiter
Sets the maximum number of micro-terations.
The next two options determine the trust radius.
TRUSTR=trustr
Initial value for the trust radius. Default: 0.5
MAXTRUSTR=maxtrustr
The maximum trust radius value. This is set to 0.5 by default and should never be changed.
Restriction: The method currently works for spin-restricted NOSYM calculations only. The NOSYM requirement comes from the fact that during direct optimization of the density matrix it may have a symmetry lower than that of the molecule.
The ARH procedure may be invoked automatically if SCF has trouble converging. To enable this the ALLOW ARH keyword must be specified in the input.
The method requires total energy to be calculated at each step, which makes it much more expensive compared to the standard SCF procedure that does not need or use energy. Therefore, the method should only be used when the standard SCF procedure fails. Another complication caused by the use of the total energy is that somewhat higher integration accuracy may be required to get stable SCF convergence. Please refer to the TotalEnergy keyword for more information.
Energy-DIIS is implemented following publications by Kudin, Scuseria, and Cances. The method is invoked by specifying an EDIIS keyword in the SCF block. Please note that similar to ARH and unlike the standard SCF procedure in ADF this method requires energy evaluation at each SCF cycle, which makes it significantly slower compared to energy-free SCF.
Two calculations have been added to the SCF_Ti2O4 example in the adf directory, one for each of the two new methods.
The sequential queue is identical to the interactive queue, but only one job will be running at one time. This works only for the local host. If no default queue has been selected by the user, the Sequential queue will be the default queue.
The local batch will now be off if not specified, no matter what queue name.
Now in the queue configuration there is a new field Use Local Batch. If it is 1, or starts with y or Y, the local batch facility via scmd will be used. If it is 0, or starts with a n or N, it will not be used. If it is empty the local batch will be used if the name of the queue is Interactive.
Start as many as you like at the same time, but only one will be executed at the same time. The actual queue is handled by scmd. When you quit all GUI modules scmd will quit, and the queue info is lost.
This feature will currently be used if the name of the queue is Interactive (the default queue name).
In the symmetry menu (the asterix) in ADFinput a new command to symmetrize has been added. It will call Symmol to find the symmetery and enforce it exactly.
Symmol has been developed by Tullio Pilati and Alessandra Forni: T. Pilati, A. Forni, J. Appl. Cryst. 31, 503-504, 1998.
Using the Atom Inspector, specify a nuclear charge. The corresponding atom will be converted into an alternative element (j-type, see the ADF User's Guide)."
The new element will use the basis for the original element, unless you specify a different basis file explicitly using the Basis panel.
When you use ghost atoms within your ADF calculation, ADF will read the basis file that you provide as usuall. However, the core section will be skipped automatically. That is, even if the basis file specifies a frozen core ADF will treat it as if no frozen core is present. Thus, one no longer needs to edit the basis files, or to switch to all-electron basis files to use ghost atoms.
The BASIS key used to switch to all-electron basis files for ghost atoms. This has been changed, now it uses the same basis file as would have been used for the non-ghost atom.
Bug fix hybrid optimizations for large molecules or large basis sets.
You can find it on the Spin and Occupations panel.
Atoms can be converted into ghost atoms, or the other way around, using the pop-up menu that appears with a right click on an atom. The ghost atoms will be added to a new region called Ghosts.
Using the Atom Inspector, you can now change the atom type (for example, change C into C.dzp).
One application is to specify a different basis for atoms of the same element. Another application is to change an atom into a Ghost atom (make the name start with Gh.)
After defining a region, click on the arrow to the right of the region. A pull-down menu will appear with a Split By Molecule command.
If you use it, the corresponding region will be split into many regions by molecule: one molecule per region. Currently it is assumed that all of these molecules are identical! Thus, their names indicate that they are all replicated versions. This is actually used if you perform a Fragment analysis, or with a FDE calculation.
For example, if you add a solvent with explicit molecules you will get one region with all solvent molecules. Next, use the Split By Molecules command and you will get many regions, one for each solvent molecule, and all these regions are replicas of one solvent molecule. If you use this with a FDE calculation.
This feature was available in the GUI for some time, but was not added to the Change Log.
In some cases (if the internal order of atoms in ADF differs from the input order) the Bader atomic properties were displayed for wrong atoms (the atom reordering was neglected).
Clearly wrong negative temperatures (in Kelvin) could appear in the iterative scheme, typically can happen if the boiling point is low.
An Atom Inspector panel has been added to ADFinput.
When you open it you can set details for the individual atoms in your molecule. If no atom is selected, all atoms will be listed. Otherwise just the selected atoms will be visible.
Currently things to set include the radius of the atom (for visualization puroposes only), the atomic mass, the number of connectors, the number of lone pairs and the atom color. More atom properties will follow soon.
Some properties could be set via pop-up menus. That functionality has been removed.
The job script for the selected jobs will be generated, but will NOT be excuted. The jobs script (.job) is identical to what will be generated by the Run command.
Note that the Run command will always generate a new job script, thus if you make any change to the job script the change will be lost. If you wish to make changes, you should try to implement your change in the .run file. That will not be overwritten by ADFjobs (but will be overwritten by ADFinput if you save your set up again).
When showing results from a logfile, the final bond energy shown in ADFmovie (in graphs and in the main window) was the final LDA bond energy. The correct bond energies (including GGA) were missing.
r19004 introduced a major bug for any non-FDE calculation. By mistake the FDE input key was present in all jobs generated by ADFinput. This has been fixed.
To use: set up a regular fragment calculation using the Regions and Fragments panel. Next, use the FDE panel to select which fragments to freeze.
In the fragments panel you can select an existing .t21 file instead of creating the fragment from scratch.
Currently FDE calculations are only possible with single point calculations, TDDFT, NMR via the NMR program, and only properties depending on the density. See the ADF User's Guide for details.
Now any region that you define will be used as fragment, except for the first region.
You can do this using the Balloon Help menu command in the Help menu.
You can also set the default value (used when ADFinput or BANDinput starts up) using the Prefs command from the SCM menu (thus using the GUIprefs module).
You can find it in the Spin and Occupation panel.
A feature introduced at r18679 did break opening .adf files in adfinput. This has been fixed.
Possibility to use metahybrids during geometry optimizations in ADF. All electron basis sets should be used.
METAHYBRID M06 METAHYBRID M06-2X METAHYBRID M06-HF METAHYBRID TPSSH
For TPSS and TPSSH moderate integration accuracy for reasonable gradients is sufficient. The M06 functionals need high integration accuracy for reasonable gradients. For heavier elements and if one uses one of the M06 functionals it is also necessary to include the following keyword
FragMetaGGAToten
Using this key FRAGMETAGGATOTEN the difference in the metahybrid or metagga exchange-correlation energies between the molecule and its fragments will be calculated using the molecular integration grid, which is more accurate than the default, but is more time consuming. Default is to calculate the metahybrid or metagga exchange-correlation energies for the fragments in the numerical integration grid of the fragments.
Serious bug solved in case one of the M06 functionals is used during the SCF. This bug gave wrong results in ADF and BAND. This bug was introduced in revision number 18016.
It is now possible to exchange alpha and beta electrons for selected atoms when performing a restart from a previous spin-unrestricted calculation.
In many cases, one wishes to perform a calculation of a low-spin complex where spin-density is positive on some atoms and negative on the others. It is usually very difficult to achieve SCF convergence if one starts from scratch. Sometimes, the ModifyStartPotential feature helps with this problem but sometimes it does not. A more robust way is to first perform a high-spin calculation and then modify the resulting t21 file by "flipping" the spin on some atoms. This file then can be used to restart a subsequent low-spin calculation.
Such a "flipping" can now be performed during restart by specifying a SPINFLIP keyword in the RESTART input block as shown below:
RESTART high-spin.t21 & ! SpinFlip keyword is followed by atom numbers for which the flipping will be performed SPINFLIP 1 END
An example demonstrating the feature may be found in the examples/adf/Fe4S4_BrokenSymm folder.
Optimizations are possible for the hybrids. All electron basis sets should be used. It should allow geometry optimization, TS, IRC, LT, numerical frequencies for hybrids. The CPU time of a hybrid geometry optimization is in the order of 40 times a GGA calculation.
The request frequencies were not written to the input file.
In ADFinput you can select the Open Babel panel, and start an optimization for your current molecule using obminimize (one of the Open Babel command line tools). You can select which force field to use, for example UFF.
Using the Preferences from the SCM menu, you can also select the obminimize (with UFF) Open Babel tool to be used as pre-optimizer in ADFinput.
Open Babel is (or will be) included in the ADF distribution for many platforms.
For hybrids it is now possible to change the amount of Hartree-Fock exchange in the input. For many hybrid functionals the sum of the amount of Hartree-Fock exchange and the amount of LDA exchange (or GGA exchange) is one. If that is the case, then if one changes the amount of Hartree-Fock exchange in the input the amount of LDA exchange (or GGA exchange) will also be changed, such that the sum remains one. Example:
XC Hybrid B3LYP HF=0.25 END
In this case the amount of Hartree-Fock for the B3LYP functional will be changed to 25% (instead of 20%), and the amount of LDA exchange to 75% (instead of 80%). The LDA correlation and GGA exchange and correlation part will be left unaltered.
The electron density at the nuclei is calculated. This could be used for the interpretation of isomer shifts in Mössbauer spectroscopy. If EFGs are calculated (with the keyword QTENS) for 57Fe, 119Sn, 125Te, 193Ir, and 197Au, quadrupole splittings are written in units of mm/s, used in Mössbauer spectroscopy.
Values for dispersion parameters for DFT-D functionals for heavier elements have been added. These new values have not been tested. Their use can be disabled by specifying NOHEAVY argument in the DISPERSION keyword.
PVDOS factors for every atom and every mode are now written to TAPE21. PVDOS factor for a given atom is the ratio of this atom nucleus kinetic (vibrational) energy to the total vibrational energy of all nuclei, for a given mode. This has connection to the Nuclear Resonance Vibrational Spectra (NRVS) experimental technique which records PVDOS for Mossbauer-active nuclei.
To visualize the calculated PVDOS use the ADFspectrum program: select the PVDOS spectrum type. Next select one or more atoms to get the PVDOS spectrum generated by the selected atoms.
Only the molecule was showing, and .t41s could be visualized. The bug was introduced beginning of December in densf.
When the radialcoregrid key was used, it was not propagated to the create runs when using the Basis key.
Also, if you have a looping movie (like a normal mode), the resulting movie will contain 10 iterations instead of just one. The effect is that the final movie will run more smoothly.
An embedded Python interpreter has been added for Mac and Linux (32-bit). The Foray build tool has also been included. Details on how to use these tools have been added to the file documentation/text/Foray.text.
SCF implemented for the metaHybrids M06, M06-2X, and TPSSh. All electron basis sets should be used.
XC METAHYBRID M06 End
XC METAHYBRID TPSSH End
LDA PW92 is supported for analytical second derivatives.
When OpenBabel is available within the ADF distribution, it will be used to guess the bonds. This should give more reliable results then the previous GuessBonds code, and should return proper bond orders as well.
SCF and optimizations are now also possible for the metaGGA's M06L and TPSS in case of open shell spin-orbit coupling in the (non-)collinear approximation. All electron basis sets should be used.
The DOS module is the old BANDdos module that does no longer exist. The DOS module can handle both ADF and BAND result files (.t21 and .runkf).
The name of the executable is adfdos.
When opening a BAND runkf file, it works exactly as BANDDos used to do.
With a .t21 file from ADF the total dos (TDOS), or the GPDOS for selected atoms and optionally spdf-shells per atom (just as BANDdos did). Thus, the behavior with ADF and BAND result files is identical.
Technically the DOS module uses the dos program when handling .t21 files. For a detailed explanation of the total dos and GPDOS see the manual for the dos program.
To use, set up a quild calculation and choose Mopac as description in the Quild panel. Use the Mopac panel to set the details if anything non-standard. Note that you need to use Mopac2009 or later.
Currently, the MM program can only be run as part of Quild. The MM program used is the NewMM program distributed with ADF. The input generation is currently not fool-proof, so the user must check the MM input, make sure the force field used is correct and so on.
It has been tested on small organic systems containing C, H and O atoms only.
Use the Regions panel to define regions. Not all options have been implemented yet.
Use the Quild panel to set up a quild calculation. The input descriptions for the subsystems are available from the button bar on the bottom.
To add explicit solvent molecules, give the command in the Solvent panel. Alternatively one can use the pull-down command in the Regions panel to add the solvent molecules to a particular region.
The newly created molecules will just be part of your usual input, or you can use Quild to give the solven a different treatment.
You can use the pre-optimizer with either of these methods, as before. Now you can also make detailed changes to the Mopac or DFTB input, run that set up interactively or as part of your job.
The DOS utility has been improved in many ways including much more simple input and speed improvements. There has also been a bug fixed that affected pdos values calculated on the SFO basis.
Comments in the input. The DOS utility now recognizes ADF-style comments in the input file. Any line beginning with an exclamation mark "!" or a double colon "::" is considered a comment and is ignored.
TAPE21 keyword. An optional TAPE21 keyword has been added. It can be used to specify a result file from an ADF calculation instead of copying it to the current working directory:
TAPE21 /path/to/t21/file.t21
If this keyword is omitted, DOS will read the molecular data from a TAPE21 file in the current directory, the same as before.
Number ranges. It is now possible to use ranges of numbers in the SFO and BAS specifications inside the PDOS, GPDOS and OPDOS keywords. For example, instead of specifying a long list of consecutive BAS functions as
GPDOS BAS 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 BAS 101 102 103 104 105 106 END
one can write it using ranges, which is completely equivalent:
GPDOS BAS 1:16 101:106 END
ATOM and ATYPE keywords. New keywords have been added for specifying sets of functions inside the PDOS, GPDOS and OPDOS input blocks. It is now possible to select functions based on the atom number or type and the type of atomic orbitals. Some examples:
! Select all 3d functions of the first atom GPDOS ATOM 1 3d END ! Select all p-type functions of the first atom GPDOS ATOM 1 p END ! Select all functions of the first atom GPDOS ATOM 1 END
Please note that atomic numbers are specified in the input order (as opposite to the ADF's internal atom order). Below are some examples of selecting atom types, which is equivalent to specifying all atoms of the same type one by one.
! Select all functions of all platinum atoms GPDOS ATYPE Pt END ! Select all f-type functions of all platinum atoms GPDOS ATYPE Pt f END ! Select all 6s functions of all platinum atoms GPDOS ATYPE Pt 6s END
Only one ATOM or ATYPE specification per line is allowed but it is possible to put any number of them into one *DOS section, for example:
GPDOS ATOM 1 3d ATOM 2 p ATOM 3 END
Note 1: Mixing ATYPE and ATOM keywords inside the same block is allowed but
it is not allowed to use ATYPE or ATOM keyword together with BAS and/or SFOs.
Note 2: In contrast to the BAS keyword, which produces wrong results
when used with d- and f-type functions, using the ATOM and ATYPE keywords in such
cases yields correct results. The reason is that the s and p
components of d- and f-sets of primitive functions, respectively,
are projected out before calculating partial and overlap DOS.
In the PDOS values calculated on SFOs, there was a bug caused by the fact that the SFO overlap matrix, as saved by ADF on TAPE21, is not normalized. This does not pose any problem for the GPDOS and OPDOS because the eigenvectors are scaled accordingly so the total result is the same. However, the PDOS formulas assume that the overlap matrix is normalized and thus produce wrong results if it's not. After the fix, the SFO overlap matrix is normalized and the eigenvectors are re-scaled before use.
The speed of DOS calculations has been greatly improved by using BLAS calls where possible. This yields about an order of magnitude speed-up for a 2000 by 3000 matrix. For example, calculating GPDOS of all 64 carbon atoms of a 161-atomic organometallic complex takes about 8 seconds on a 2.5GHz Intel Core 2 Duo T9300 processor.
To change where the output from ADF create runs and the Dirac program goes, use the CreateOutput option. If it is not present, it will go to standard output. The speciial value 'None' makes it disappear, and any other value will be used as a file name in which to save the output:
BASIS CreateOutput None END BASIS CreateOutput YourFileName END
Optimizations are now also possible for the metaGGA's M06L and TPSS. Note: the implementation is still being tested. All electron basis sets should be used. M06L needs high integration accuracy for reasonable gradients. For TPSS moderate integration accuracy for reasonable gradients is sufficient.
Self consistency of the meta GGA is implemented as was previously done in BAND. Only single points calculations. The available MetaGGA's at the moment are:
XC METAGGA M06L End
XC METAGGA TPSS End
Bug fixed in bug fix r17379. Examples are updated. Warning: LDA VWN is supported for analytical second derivatives, but not the required LDA PW92, which is not solved yet.
Before this bug-fix the 'correct' PBE functional could be obtained with explicitely specifying the LDA PW functional and the correct PBEc correlation functional:
XC LDA PW92 GGA PBE USEBURKEROUTINES End
Now this is default if one uses
XC GGA PBE End
The old ('incorrect') defaults can be calculated with
XC LDA VWN GGA PBE USESPROUTINES End
As of now the max number of processes specified at the configure time has no effect. The library responsible for parallel communication in programs of the ADF package use dynamic memory allocation and thus can handle any number of tasks.
Bugfix converting KF files: now variables can have length greater than the used length after conversion. Before, the variables would be truncated upon conversion to the used length.
Approximate ADF revision number. COSMO-RS revision number r172. Bug fixed in case more than 1 temperature is calculated in case of 'solvent vapor pressure', 'solubility', and 'boiling point', calculations. Only the results for the first temperature were correct.
The alpha and beta density are added and next the Bader analysis is performed.
Horizontal lines are now drawn at 60 and 120 degrees. VCD angles within these lines are non-robust modes, those outside these lines are robust modes.
The main purpose of the change is better and more flexible handling of multiple curves within one plot. This is currently used in Cosmo-RS and ADFspectra (for VCD plots).
To adjust axes details, click next to the axes (outside the plot field). Thus, you have one dialog for the Y axes, and another for the X axes. If a second Y axes is present it also has its own dialog.
To adjust curve details (show points, colors, and so on) or global plot details, click below the X axes as this is combined with the X axes details.
Zooming with the mouse outside the plot window will zoom exclusively the X or one of the Y axes, depending on where the mouse is located.
Right click on an atom, and use the pop-up menu to set the mass of that atom (or the whole selection). The masses are used by ADF (using the AtomProps key), and are relevant for frequencies and related data.
First make special atomic fragments in the ATOMS block (by modifying the element name). Next, use the AtomProps key to define extra parameters to the CREATE line for particular fragments:
Atoms
N 0.000000 0.000000 0.010272
H -0.471582 -0.816803 0.407861
H.D 0.943163 0.000000 0.407861
H.T -0.471582 0.816803 0.407861
End
AtomProps
H.D m=2.014101778
H.T m=3.01604927
End
Basis
Type TZP
End
In this particular example the AtomProps is used to set the masses of the H.D and H.T atoms. You can also use it to set the nuclear charge (q), see the create run options in the ADF manual.
NOTE:The AtomProps key can only be used in combination with the BASIS key.
To open those files in a text editor, keep the control key pressed while double-clicking these files.
Now you can scale the normal modes within ADFmovie (the displacements with respect to the molecular structure), either while viewing the movie or while viewing displacement vectors. To do this, use the Scale Displacements command in the View menu.
Displacement vectors are mainly used to visualize normal modes via ADFspectra.After showing and hiding displacement vectors, you could not show and hide them again without restarting ADFmovie.
The master will create its logfile and TAPE13 files in the cwd but place all other files in its scratch directory. For all tasks: if SCM_TMPDIR is not defined at all then the scratch sub-directories will be created in cwd.
Changed the way scratch files are handled. As of now, instead of appending __<number> each temporary file name is prepended with the temp directory path. This makes copying stuff by the master from the CWD unnecessary and makes SCM_USETMPDIR obsolete. The files are still copied back from the temp dir to $SCM_WD at the end of the run.
Fixes a bug making the ADF-GUI impossible to use, introduced in r16595.
Atomic scalar properties are now available, just like other atomic charges. Also in the output browser a quick link to the Bader output has been added.
The bug was introduced at version r16363 ...
The HP-MPI library has been updated to the latest currently available: 2.2.7 on Linux and 1.1p1 on Windows
This is not a user-friendly release, and is largely untested. It calculates the MBH curvatures using finite-differencing on the ADF gradients.
To use this option, choose run type MBH, and give the names of the frozen blocks.
ATOMS C 0.0000 0.0000 0.0000 b=b1 H 0.6316 0.6316 0.6316 b=b1 H 0.6316 -0.6316 -0.6316 b=b1 H -0.6316 0.6316 -0.6316 b=b1 H -0.6316 -0.6316 0.6316 END Symmetry nosym Geometry mbh b1 End
Full normal mode analysis is performed after analytical frequencies calculation with a NUC keyword present. This is done to assist users who perform partial Hessian calculations for a subsequent transitions search, to find the mode corresponding to their reaction coordinate.
A transit calculation option has been added in the new optimization branch. This is capable of performing both linear transits, and non-linear transits, and is the default when the 'Linear Transit' or 'Transit' sub-block is included in the 'Geometry' block.
The new transit code works differently to the old: the transit is represented as a sequence of constrained optimizations. A 'Constraints' block is used to delineate the constraints applied at each stage of the transit.
To perform a linear transit, start and end values are supplied.
Constraints angle 2 1 3 start=100.0 end=120.0 End Geometry Transit 4 Optim Deloc End
In the example above, 4 stages are required; ADF will interpolate the start and end values supplied for the angle between atoms 2, 1, and 3. Note that 'Transit' can now be used in place of 'Linear Transit', due to the more general nature of the new transit calculations.
Non-linear transits are possible, and can even be combined with linear transits in other coordinates. To perform a non-linear transit in a particular coordinate, explicit values must be given.
Constraints dist 1 2 0.8 0.9 1.1 1.15 angle 2 1 3 start=100.0 end=120.0 End Geometry Transit 4 Optim Deloc End
In the example above, 4 values are given for the distance between atoms 1 and 2. This distance constraint will be applied simultaneously with the linear transit constraints for the angle, with other degrees of freedom optimized at each stage of the transit.
It is worth noting that fixed constraints can also be used in a transit.
Constraints dist 1 2 0.8 0.9 1.1 1.15 angle 2 1 3 100.0 End Geometry Transit 4 Optim Deloc End
In this example, the angle between atoms 2, 1, and 3 will be fixed at 100.0 degrees at all stages of the transit.
Finally, it should be pointed out that 'partial constraints' are used by default in the transit calculations. These constraints are not required to be fully met at each intermediate geometry, but are fully met at the converged geometries. You can use fully converged constraints by supplying the FULLCONVERGE option to the 'Constraints' subblock of the 'Geometry' block (not to be confused with the 'Constraints' block at root level).
Check the Bond Lines Only box in the View menu (Molecule Ball&Sticks) to visualize bonds using simple lines instead of tubes. This will speed-up display of large systems.
You can set the default that you like in the Preferences.
You can set up queues on some remote system in the normal way. Next, when you lauch ADFjobs on a different machine you can configure it to dynamically load the queues defined on the remote system. To do this, open the Preferences, go to ADFjobs, and specify the host and username for the remote system.
By default ADFjobs will search in the remote .scm_gui directory. This is the location in which ADFjobs normally saves the queue definitions. However, if on the remote machine the environment variable SCM_QUEUES is defined ADFjobs will try to get the queues from $SCM_QUEUES. This makes it easy for a system administrator to preconfigure queues to be used by all ADFjobs users.
The 'NewConstraints' block has now been changed to 'Constraints', and the old 'Constraint' block is now 'LinearConstraints'.
In the 'Constraints' block, constraint values are now optional (where appropriate). For example, if a distance constraint is imposed, and no value supplied, the initial value is used for the constraint. The same applies to other constraints (eg angle, coordinate, fixed atom).
The 'Constraints' block is now also included in BAND, with the same functionality as in ADF.
In order to get frozen core density one should specify CORE
after the Density keyword:
Density Core
Similarly specifying CORE after DenGrad or DenHess
will tell Densf to calculate the core density gradient or the Hessian, respectively.
Please note that in order to get total density gradient and/or Hessian in the same calculation,
the DenGrad and/or DenHess keyword must be specified again on a
separate line. For example, specifying
DenGrad CORE DenGrad
will result in both core and the total exact SCF density gradient.
The calculated frozen core density and its derivatives are saved on TAPE41 in the section
Core. The variables inside the section are named exactly the same way as the
corresponding variables in other sections: Density, DensityGradX,
DensityHessXX, etc.
The different options that used to be present in the Polarizability panel have been reorganized. Also new functionality offered by the AORESPONSE method in ADF has been made available. This includes magnetizability, and lifetime options.
A new Raman panel has been added to make it easier to set up raman calculations (both full and range scan). Also ADFspectra has been fixed to handle raman spectra when symmetry is used.
When specifying inline grid the Grid keyword should look as follows:
Grid Inline x1 y1 z1 x2 y2 z2 ... xN yN zN End
Here, x#, y#, and z# are coordinates of points at which requested properties will be calculated. This feature may be used, for example, by external programs to calculate various properties at a number of points exactly and avoid interpolation with its inaccuracy. This feature should be used only when the output file has a TAPE41 format.
The following keywords may be used to calculate partial derivatives of the exact electron density:
DenGrad DenHess
In order to calculate partial derivatives of the fitted density, one should add fit after the
corresponding keyword:
DenGrad fit DenHess fit
The calculated properties are saved to TAPE41 in the section SCF variables
DensityGrad# and DensityGrad## where # is one of
X, Y, or Z. For example, an XY component of the density
hessian is saved in SCF%DensityHessXY. Derivatives of the fitted density are saved
to variables with names prepended with Fit, for example, SCF%FitDensityHessXY.
At the end of your optimization calculation (eihter a TS or geometry), you can calculate the frequencies using the analytical frequencies method. To do this, go to the detail tab in ADFinput (use the ... shortcut at the right of the task name in the Main tab), and check the frequencies check box at the bottom of all options.
You can now use a hessian file stored on a TAPE21 as the initial hessian in a geometry run (eg transition state search) with the new optimizer. The input setup is exactly the same as with the old optimizer, ie, you simply need to use the 'Restart' block.
It is now possible to specify geometry constrains that will be enforced during geometry optimization in BAND the same way as it has been already possible with ADF. The constraints are currently implemented only as 'strict', i.e. they are enforced from the first geometry update. The atoms are numbered from 1 as they appear in input. Note: Should the NewConstraints block be renamed in ADF, it will also change its name in BAND.
The constraints are specified as follows:
NewConstraints Atom N1 X Y Z ! Atom N1 is frozen at the specified coordinates Dist N1 N2 Value ! Distance N1-N2 is kept fixed at the specified value Angle N1 N2 N3 Value ! Angle N1-N2-N3 is kept fixed at the specified value Dihed N1 N2 N3 N4 Value ! Dihedral angle N1-N2-N3-N4 is kept fixed at the specified value End
Here, N1,...,N4 are atom numbers as they appear in the input;
Value is a value of the constraint in Angstroms or degrees.
It is now possible to calculate vibrational frequencies of atoms in unit cell by means of finite difference method. This is done by specifying:
RunType Frequencies End
Options may be specified using a Frequencies input block:
Frequencies Step 0.001 Nuc 1 2 3 4 5 End
Here, Step sets the finite difference step size in Angstrom (0.001 by default).
The Nuc keyword lists atoms that will be included in the frequency calculation,
which makes it possible to calculate only part of the second derivatives matrix. For example,
this option can be used save time when one is interested in vibrations of an adsorbed
molecule by allowing only atoms of the molecule (and possibly the nearest atoms of the surface)
to move.
Go to the Frequencies panel, select some atoms, and press the + to add them to the list of atoms for which to calculate the Hessian.
The Geometry Constraints panel can be used to create Atom, Bond, Angle or Diheral constraints for the new optimizer.
If the old optimizer is used, the Atom constraints will be ignored (for now), and the others will be added as restraints.
It is now possible to calculate optical rotation (ORD) spectra using the latest AOResponse functionality by Jochen Autschbach and coworkers. There have been added a few test examples, description thereof follows below.
For details see the following papers:
Krykunov, M.; Autschbach, J., Calculation of static and dynamic linear
magnetic response in approximate time-dependent density functional
theory, J. Chem. Phys. 2007, 126, 024101-12.
Krykunov, M.; Kundrat, M. D.; Autschbach, J., Calculation of CD spectra
from optical rotatory dispersion, and vice versa, as complementary tools
for theoretical studies of optical activity using time-dependent density
functional theory, J. Chem. Phys. 2006, 125, 194110-13
Krykunov, M.; Autschbach, J., Calculation of origin independent optical
rotation tensor components for chiral oriented systems in approximate
time-dependent density functional theory, J. Chem. Phys. 2006, 125,
034102-10.
Autschbach, J.; Jensen, L.; Schatz, G. C.; Tse, Y. C. E.; Krykunov, M.,
Time-dependent density functional calculations of optical rotatory
dispersion including resonance wavelengths as a potentially useful tool
for determining absolute configurations of chiral molecules, J. Phys.
Chem. A 2006, 110, 2461-2473.
Krykunov, M.; Autschbach, J., Calculation of optical rotation with
time-periodic magnetic field-dependent basis functions in approximate
time-dependent density functional theory, J. Chem. Phys. 2005, 123,
114103-10.
Baev, A.; Samoc, M.; Prasad, P. N.; Krykunov, M.; Autschbach, J.,
A Quantum Chemical Approach to the Design of Chiral Negative Index
Materials, Optics Express 2007, 15, 5730-5741.
Krykunov, M.; Banerjee, A.; Ziegler, T.; Autschbach, J., Calculation of
Verdet constants with time-dependent density functional theory.
Implementation and results for small molecules, J. Chem. Phys. 2005, 122,
074105-7.
Polarizability
By default, the polarizability is calculated. This can be modified using one of the keys below.
Optical Rotation
OPTICALROT
Specify OPTICALROT to calculate optical rotatory dispersion spectrum instead of polarizabilities.
Optical Rotation with Velocity Gauge
VELOCITYORD
This option should be used instead of OPTICALROT with GIAO if the finite lifetime effects need to be taken into account (LIFETIME option).
Magnetizabilities
MAGNETICPERT
Calculate static or time-dependent magnetizability.
Frequency of the Perturbation Field
To calculate time-dependent properties, one needs to specify frequency of perturbation
field. This can be done using one of the options below.
FREQUENCY Nfreq freq1 freq2 ... freqN units
Here Nfreq specifies the number of frequencies that follow. The last item on the line specifies the units and is one of EV, HARTREE, ANGSTROM.
FREQRANGE startfreq endfreq Nfreq units
Here Nfreq specifies the number of frequencies in the closed range startfreq thru endfreq. The last item on the line specifies the units and is one of EV, HARTREE, ANGSTROM.
Damping (Resonance Peak Width)
LIFETIME width
Specify the peak width in Hartree
XC Kernel
ALDA
Use VWN kernel. This option is the default.
XALPHA
Use Xα kernel instead of the default VWN one.
Technical parameters and expert options
SCF {NOCYC} {NOACCEL} {CONV=conv} {ITER=niter}
Specify CPKS parameters such as the degree of convergence and the maximum number of iterations:
GIAO - include the Gauge-Independent Atomic Orbitals (GIAO). This option should not be used with damping
(LIFETIME keyword) and the VELOCITYORD option should be used instead.
FITAODERIV - use fitted AO Derivatives.
COMPONENTS {XX} {XY} {XZ} {YX} {YY} {YZ} {ZX} {ZY} {ZZ}
Limit the tensor components to the specified ones. Using this option may save the computation time.
DMO_ORD_aoresponse
This test example consists of two ORD calculations: a with and without velocity gauge.
H2O_magnet
This test demonstrates how to calculate static magnetizability of a water molecule.
H2O_TD_magnet
This test demonstrates how to calculate dynamic magnetizability of a water molecule.
A new variant of the standard Voronoi-based integration grid has been added to improve gradient smoothness during geometry optimizations (and other runs where the geometry is varied). The algorithm works as follows: A standard Voronoi-based integration grid is generated, but without the spherical integration regions that usually surround each atom. After this 'sea' of points has been formed, spherical holes are made at the atomic centers by mapping points radially outward (hence the name 'swiss cheese'). These holes are then filled up with more points.
This explains how the grid is generated, but not how it smooths the gradients. When the geometry is varied, the sea of points is conserved. That is, the original positions of the points are stored, and used at each geometry; the points are mapped radially to create the atom-centered holes, but the variation in the positions and weights of the points varies smoothly. The 'balls' of points surrounding each center move with the atoms. So the overall picture is similar to ball bearings moving through a sea of oil: the oil moves aside to make way for the ball bearings, and moves back in to fill any space left behind.
To use this option, you use the 'SMOOTH' sub-block in the 'GEOMETRY' block, and supply as argument the keyword 'SWISSCHEESE'.
Geometry smooth swisscheese End
Optionally, you can add an extra decimal argument that gives the maximum distance (in Angstrom) that an atom may move before the integration is regenerated from scratch (default is 0.2 Angstrom).
Geometry smooth swisscheese 0.5 End
The larger the number given, the more effective the smoothing; however, using a too large number could lead the integration grid to become 'inappropriate' for the system geometry, leading to poor integration accuracy.
WARNING: The radial mapping of points reduces the accuracy of the integration, because it effectively warps the integration space. For this reason, more points are needed when using swiss cheese smoothing. So for the same accuracy parameter, a swiss cheese calculation is more expensive than a standard calculation.
Atomic scalar values (charges, radii, shieldings and so on) can be represented by atom sizes. The absolute value of the scalar values is used, and the full range of scalar values is mapped into the minimum to maximum range from the preferences. No mapping is performed if the scalar values already fit in the range.
To use it, check the 'Capped Bonds Only' box in the View menu. Use the bigger and smaller menu comamands from the view menu to adjust the diameter of the bond to your taste. Uncheck the 'Show Atoms' in the View menu to remove the caps and get a pipe-representation.
Note that this representation of your molecule makes it very hard or impossible to select atoms.
fcf is an auxiliary program which can be used to calculate Franck-Condon factors from two vibrational mode calculations.
fcf requires an ascii input file where the user specifies the TAPE21 files from two adf vibrational mode calculations, carried out for two different electronic, spin or charge states of the same molecule. These calculations can be either numerical or analytical. The number of vibrational quanta that have to be taken into account for both states in the evaluation of the Franck-Condon factors have to be specified.
fcf produces a (binary) KF file TAPE61, which can be inspected using the kf utilities. Furthermore, fcf writes the frequencies, vibrational displacements and electron-phonon couplings for both states too the standard output, including any error messages.
The input for fcf is keyword oriented and is read from the standard input. fcf recognizes only two different keywords and both must be specified to perform the calculation. All input therefore has the following form:
STATES state1 state2
QUANTA l1 l2
STATES
The filenames of two TAPE21 files resulting from a numerical or analytical frequency calculation. The calculations must have been performed on the same molecule, i.e. the type, mass and order of occurrence of all the atoms (or fragments) has to be the same in both files.
QUANTA
The maximum number of vibrational quanta to be taken into account for both states. Franck-Condon factors will be calculated for every permutation of up to and including l1/l2 quanta over the vibrational modes.
The preferences for all GUI modules are now combined and handled by the GUIPrefs module. Selecting 'Preferences' from the menu (currently the SCM menu, that might change) will start this module.
Normally when you save the color scheme (using the Color details pulldown menu in the control line for a field) it applies to all colors as before. However, if you are currently displaying a virtual orbital the saved colors will apply to virtual orbitals only. If no special color scheme for virtual orbitals has been saved the same color scheme as for occupied orbitals (and anything else) will be used.
Now the atom numbers match the atom numbers in the input order of ADF.
An option to export the fields calculated by ADFview as Gaussian Cube files (.cub files) has been added.
Use the 'Export Fields As Cube Files' command from the File menu to use it.
1) Calculate DOS on the fly, preventing an old problem that sometimes more nodes were required to perform this task.
2) Store data for the GUI module BANDdos on the .runkf file.
3) Normally the DOS is evaluated at a grid of energy values with separation Delta using an exact delta function. Plots thus produced look quite rough and narrow peaks can be missing entirely. It is more convenient to integrate the dos over each energy interval Delta E. This leads to a more comprehensible DOS. Very narrow peaks show up as a peak of 1 electron (or multiples of that, depending on degeneracy). The input option is Dos::IntegrateDeltaE. The default is now true. To get the old-style DOS it should be set to false.
On startup, ADFlevels will show interactions for the visible levels of your final molecule.
If no levels are selected, the 'Show Interactions' menu command will show all interactions to the currently visible levels of your final molecule. This is fast and normally what you want to see. To see also the other interactions from visible fragment levels, you need to select them explicitly and use the 'Show Interactions' menu command again.
If levels are selected, the 'Show Interactions' menu comamnd will show all interactions to the selected levels, no matter if they are visible or not.
Visualize different kinds of DOS when present on a .runkf file. You will need a recent BAND version, and the name of the BANDdos executable is banddos.
The total dos is displayed by default. Select atoms to get the corresponding partial DOS. Use the popup menus on the atoms (right click, or left clickandhold) and select some partial DOS by function or L value.
You can change the bond coloring: the colors of the atom types will be used. To activate, check the 'Color Bonds By Atom' check box in the View menu.
In the preferences panel (in ADFinput) you can set and save the default value.
The DFTB code now writes final results to the DFTB.kf file.
All search terms must occur, and the search is done in the job name and queue name fields.
This is useful if you have jobs with long names
Drag with left mouse to translate, zoom with right mouse, control left, or scroll wheel. This is identical to the controls in ADFlevels, ADFspectra and the ADFmovie plots.
If they are present on the .t21 file, you can visualize them. Also, the NBOs and NLMOs in the ADFview menus have more informative labels. In ADFinput, use the Orbitals pane to perform the NBO analysis.
For description of the first implementation see below under "r15257: Grimme Dispersion Correction". In this revision, a possibility to modify the van der Waals radii scaling parameter has been added. The DISPERSION keyword is now as follows:
DISPERSION {s6scaling} {RSCALE=r0scaling}
here, s6scaling is the global scaling parameter s6 and r0scaling is the scaling parameter for VdW radii, which is equal to 1.1 by default.
This revision also adds all GGA-D energies from the J Comp Chem (2006) paper to the list of Post-SCF y printed with the METAGGA keyword. These are: BLYP-D, PBE-D, BP86-D, TPSS-D, B3LYP-D, and B97-D.
Select the Mopac panel to perform an interactive mopac calculation, with more options available then using the pre-optimizer button. If the geometry of the molecule is changed it will be reflected in the molecule in ADFinput. The MOPAC charges property of the atoms in the ADF-GUI will also be updated, and optionally the bonds may be updated according to the calculated MOPAC bond orders. Currently only MOPAC2007 is supported from this panel.
A subblock has been added to the GEOMETRY block to allow energies and gradients to be calculated by an external program for use in a geometry optimization using the new branch. A simple input looks like this:
Title WATER Geometry Optimization with External program
Basis
Core large
Type SZ
end
Atoms
O 0.000000 0.000000 0.000000
H 0.000000 -0.689440 -0.578509
H 0.000000 0.689440 -0.578509
End
Geometry
externprogram externprog.exe coord=coords.inp energy=energy.out grad=grads.out
End
Note that you need to supply information about atomic fragments, such as the basis set, even though these are not actually used in the calculations.
The EXTERNPROGRAM subblock must have as first argument the name of the executable program or script that gets run to generate the energy and gradients. It also takes keyed parameters for the coordinates file name, the gradients file name, and the energy file name. These files are used to communicate values between ADF and the external program.
When ADF is ready to perform an energy and gradient calculation, it writes the current cartesian coordinates to the file name given in the input. The format is similar to the ATOMS block in the ADF input file: it has one atom per line, with the the element symbol given, followed by the x, y, and z coordinates.
ADF will then run the executable program, and then read in the energy and gradients from the file names given in the input file. The external program is thus responsible for reading the coordinates (in atomic units) written by ADF from file, generating the corresponding energy and gradients (in atomic units), and writing these to the appropriate files. ADF will then take another geometry step, and the process will repeat.
To turn back on (and get old output), add the following to your input:
EPRINT
SFO eig ovl
END
Many input fields in ADFinput are now empty. The corresponding values will not be written in the ADF input file, and as a result the default value as determined by ADF will be used. This will ensure that defaults of ADFinput and ADF match, and also generates cleaner run scripts.
The Grimme's dispersion correction has been added as part of the XC functional. The correction is added to SCF energy, gradients and the Hessian matrix elements when those are calculated. It is switched on by specifying a DISPERSION keyword in the XC input block or by selecting the corresponding GGA-D in ADFinput. The DISPERSION keyword has an optional parameter that specifies the global scaling factor with which the correction is added. If the parameter is omitted then 1.0 is used except for the following GGA's: BLYP, PBE, or BP86. For these functionals, the factors proposed by Grimme in J. Comp. Chem. (2006) p. 1787 are used. They are: 0.75 (PBE), 1.2 (BLYP), 1.05 (BP86).
To activate, check the Mopac Hessian option in the Task:GeometryOptimization panel in ADFinput.
Two new experimental algorithms have been added: the first is an implicit hessian update algorithm. The standard explicit scheme involves beginning an optimization with an approximated hessian at the initial geometry, which is estimated using a lower level of theory such as a force field, and then updating this hessian each step using the gradients and steps calculated during the optimization.
The implicit scheme is similar, but an approximate hessian is generated at each step using the lower level of theory, and then updated with the preceding steps and gradients which have been stored during the optimization. In theory, the implicit scheme should be better, because the hessian 'guess' used is evaluated for the current geometry, rather than the initial geometry. In practice, not enough testing has been done to know if this is really the case.
To use the implicit hessian update, you append the work 'implicit' to the end of the hessupd subkey in the geometry block:
geometry hessupd bfgs implicit end
The high-order quasi-newton scheme is designed to work in collaboration with the implicit hessian update. In the standard quasi-newton scheme, the approximate hessian is used together with the calculated forces to estimate the location of the minimum of the true PES by approximating it with a single quadratic surface. In the high-order scheme, a steepest descent propagation is used, with the true PES approximated locally at each step by a quadratic surface. This surface taken from the approximate hessian given by the implicit hessian update method at each point. The hessian is geometry dependent, and varies along the path followed. The gradient is integrated along the path until it is close to zero. This approach effectively introduces higher-order terms via the implicit hessian update method, which come from the lower level of theory used to build the approximate hessian. It is expected to work particularly well with cartesian coordinates, for which the surface may be highly anharmonic, but it is not well tested.
To use the high-order quasi-newton scheme, you should set the hessian updater to use the implicit scheme, and add a quasinewton subblock:
geometry quasinewton highorder hessupd bfgs implicit end
The new optimization branch is now the default for geometry optimizations and transition state searches. Other types of runs (eg LT, IRC) make use of the old branch. The new optimization branch uses delocalized coordinates by default.
In order to use the old optimizer, use the 'branch' key in the geometry block:
geometry branch old optim cartesian end
The default gradient convergence for geometry optimizations has been changed to 1.e-3. The integration parameters for geometry optimizations are now 4 4, rather than 4 3.
The DFTB naming scheme for parameter files, which are kept in atomicdata/DFTB, has been changed to the scheme used in the DFTB+ code. That is, the (mixed-case) name of each atom, separated by a hyphen, and including the extension 'skf' (Eg. C-Co.skf)
Now ADFspectra uses the same code as used for other plots. Thus the mouse interactions has changed. Use the scroll bar, or the right mouse button, or control-left mouse button to zoom. Drag with left mouse button to scroll.
The calculation of gradients in the DFTB code is now orders of magnitude faster, due to new optimizations.
In ADFinput you can enable calculating them in the Orbitals panel. When they are present on a TAPE21 result file, you can also visualize the Boys localized orbitals and the NLMO's from the NBO analysis in ADFview.
ADFjobs already had a short-cut: double click on a job and it will open either in ADFinput or in ADFtail. This is now even more convenient: you get the same effect by clicking once on the job button (on the left side).
Drag with left mouse to translate, use scroll wheel to zoom. Alternatively, drag with right mouse outside a stack to zoom. Drag with left mouse and shift key to select levels with marquee. Finally, control-drag with left mouse to zoom for those who have a single button mouse without scroll wheel.
In ADFinput you can use the Spin and Occupation panel to set the occupation details. ADFinput will perform a fast test run adf to get required information about symmetry and occupations if no matching .t21 is available.
If you choose an option from the SCM menu while pressing the control key, the choosen module will launch but with no file specfied. Thus it is a simple way to launch modules.
Diagonalization of the Fock matrix has up to now been performed on the master node only. With ScaLapack, it is now possible to distribute the work among all nodes in a parallel run. ScaLapack as implemented in Intel(R) MKL 10.1 is currently used in Itanium2/Linux/HP-MPI version of ADF. The Windows/HP-MPI ADF version uses standard ScaLapack.
You can now use the 'inithess' subkey in the geometry block to read a hessian from a text file, to use with the new optimizer branch. The only argument is the name of the file containing the initial hessian. The hessian must be given in full, in non-mass-weighted cartesian coordinates, and in atomic units (hartree/bohr**2).
kf.py is a Python interface to read and write KF files (the binary files from the ADF package). For reading, adfreport is easier and more reliable (it will be updated when data on the binary files is changed). To use, add $ADFHOME/scripting to your PYTHONPATH, and a working installation of the ADF package is required (kf.py uses the KF utilities).
In ADFjobs the Tools/Prepare menu can be used to generate sets of jobs with different options. This is a GUI to the adfprep program.
The Tools/Report commands may be used to generate reports from a set of selected jobs. Reports can include any information present on the .t21 result files, including pictures of orbitals. This is a GUI for the adfreport program.
adfprep is intended to facilitate scripting: it makes it very easy to construct proper adf jobs from within a script. Execute 'adfprep' from the command line without arguments to get more information on how to use it.
adfreport is intended to facilitate scripting: it makes it very easy to get results calculated by adf in your own script. The results are taken from a .t21 result file. Execute 'adfreport' from the command line without arguments to get more information on how to use it.
Check the Bakerset and ConvergenceTestCH4 examples from the examples/adf directory to see some (very simple) scripts using adfprep and adfreport.
The import coordinate command in adfinput now tries to determine if bohr or angstroms are used, based on the number of bonds found using a distance criterium.
ADFinput, ADFview and ADFmovie now can color the atoms by a selected scalar property, for example the calculated atomic charge. Use the popup menus to do this. Currently the color range is fixed.
It is now possible to calculate Laplacian on the total SCF density (exact or fitted) using the densf utility. The corresponding densf keyword is
Laplacian {fit}
The fit argument is optional and if it is present densf will calculate Laplacian of the fitted density.
The Laplacian feature is also supported by ADFview.
In ADFinput, ADFmovie, ADFview and BANDinput, show multiple atom properties (name, charge, radius etc) at the same time. Also the updating of the displayed information has been fixed.
ADFinput now can also use MOPAC as a pre-optimizer. Currently MOPAC2007 (from www.openmopac.net) and MOPAC2006 (from Fujitsu) are supported. Atom charges as calculated can be displayed. With MOPAC2007 the bonds in ADFinput may also be updated based on the bond orders calculated.
MOPAC2007 needs to be installed in /opt/mopac, MOPAC2006 needs to be installed in /opt/mopac2006. If you use different install locations you need to update the $ADFBIN/mopac.scm file.
You can also use the SCM_MOPAC environment variable to select the MOPAC you wish to use, even on a remote machine. For example:
SCM_MOPAC=ssh bigmachine adfhome/bin/mopac.scm export SCM_MOPAC
will start mopac on bigmachine using the normal mopac.scm script.
Use the Preferences panel from ADFinput to select which pre-optimizer to use.
Block constraints allow the internal degrees of freedom of a block of atoms to be frozen, so that the block moves as a whole. Block constraints are now available when using the new branch optimizer with the NewConstraints input block. To apply block constraints, you add block labels to atoms in the Atoms block, and then add the block constraint in the NewConstraints input block.
ATOMS
1.C -0.004115 -0.000021 0.000023 b=b1
2.C 1.535711 0.000022 0.000008 b=b2
3.H -0.399693 1.027812 -0.000082 b=b1
4.H -0.399745 -0.513934 0.890139 b=b1
5.H -0.399612 -0.513952 -0.890156 b=b1
6.H 1.931188 0.514066 0.890140 b=b2
7.H 1.931432 0.513819 -0.890121 b=b2
8.H 1.931281 -1.027824 0.000244 b=b2
END
NEWCONSTRAINTS
BLOCK b1
BLOCK b2
END
GEOMETRY
OPTIM DELOCAL
END
This comes from the example GO_newconstraints.
The constraints in the new optimizer branch were initially not fully enforced. Although they had to be converged at the end of an optimization, they might not be met during the optimization. This has been changed, such that they are now enforced by default. They do not have to be fully met in the input, but if the input geometry is far from meeting the constraints, a large, erratic first geometry step may result.
You can avoid fully enforcing constraints, effectively returning to the old behavior, by adding a 'constraints' subblock to the geometry block:
GEOMETRY CONSTRAINTS PARTIALCONVERGE END NEWCONSTRAINTS ... END
Although the default, you can explicitly indicate that you want to fully enforce constraints at each step by using
FULLCONVERGE in place of PARTIALCONVERGE.
ADFinput now can also use DFTB as pre-optimizer. The DFTB program part of the ADF package will be used, and you will need to download the parameter files yourself.
Use the Preferences panel from ADFinput to select which pre-optimizer to use.
The DFTB program is orders of magnitude faster than DFT, but requires parameter files to be installed for all pair-wise combinations of atoms in a molecule. Unfortunately, parameters are not available for some elements, but calculations for many common molecules should be possible.
To use DFTB, you need to request parameter files at the DFTB.org web site, and put these files in the directory atomicdata/DFTB.
The input for DFTB is similar to ADF, but not exactly the same. At this point, it is possible to perform single point, geometry optimization, transition state search, and frequency calculations. All output is written to standard output; there are no keyed-files (eg TAPE21) at this time.
Examples of DFTB calculations can be found in the examples/dftb directory. Here is a run script for one such example:
"$ADFBIN/dftb" << eor
Geometry
RunType GO
Optim Delocal
Converge Grad=0.0001
End
Atoms
C 0.000000 0.000000 0.000000
C 1.402231 0.000000 0.000000
C 2.091015 1.220378 0.000000
C 1.373539 2.425321 0.004387
C -0.034554 2.451759 0.016301
C -0.711248 1.213529 0.005497
O -0.709522 3.637718 0.019949
C -2.141910 1.166077 -0.004384
O -2.727881 2.161939 -0.690916
C -0.730162 4.530447 1.037168
C -0.066705 4.031914 2.307663
H -0.531323 -0.967191 -0.007490
H 1.959047 -0.952181 -0.004252
H 3.194073 1.231720 -0.005862
H 1.933090 3.376356 -0.002746
O -2.795018 0.309504 0.548870
H -2.174822 2.832497 -1.125018
O -1.263773 5.613383 0.944221
H -0.337334 4.693941 3.161150
H 1.041646 4.053111 2.214199
H -0.405932 3.005321 2.572927
End
eor
Version ADF2007.01 split from the development version. Bug fixes in ADF2007.01 are also included. The svn version numbers in the development version that correspond to these bug fixes will be approximately the same as those in the ADF2007.01 version. See the 2007.01 release notes for details.