Example: Multiplet States: [Cr(NH3)6]3+

Download SD_CrNH3_6.run

#! /bin/sh

# The computation of multiplet states corresponding to an open-shell system can
# be carried out with ADF by first computing the 'Average-of-Configuration'
# (aoc) state, where all orbitals in the open shell are degenerate and equally
# occupied. This computation is spin-restricted and serves as a fragment file
# for the multiplet run, where then different occupation numbers are assigned to
# the various orbitals in the open shell. The corresponding energies are
# computed in the field of the aoc, which is achieved by not iterating the self-
# consistency equations to convergence but only computing the orbitals in the
# initial field.

# Since ADF requires that all symmetry-partners in an irreducible representation
# (irrep) have equal occupations, the multiplet calculation, where such orbitals
# are not equally occupied, must be carried out in a formally lower point group
# symmetry. The point group to select and the appropriate occupation numbers to
# apply must be worked out by the user 'on paper' in advance. An auxiliary
# program asf, developed by the group of Claude Daul in Fribourg can be used to
# determine which calculations are needed, and how to compute the multiplet
# energies from the results. See the discussion of Multiplet energies in the
# Theory document.

# The script starts with the 'creation' of the required basic atoms, N, H, Cr
# using a fair basis set quality.

# The next step is the computation of the ammonia fragment NH3 . This is not a
# crucial step here: the multiplet state computation can equally well be carried
# out by not using any intermediate compound fragments. However, it illustrates
# once more how a bigger molecule can be built up from smaller, but not trivial
# fragments.

$ADFBIN/adf  -n1  <<eor
create Cr file=$ADFRESOURCES/TZP/Cr.2p
eor
mv TAPE21 t21.Cr


$ADFBIN/adf  <<eor
title AMMONIA
NOPRINT sfo,frag,functions

atoms
  N    0              0                    0
  H   -0.95522523     0                    0.3711068
  H    0.477612615   -0.8272493155158333   0.3711068
  H    0.477612615    0.8272493155158333   0.3711068
end

Basis
 Type TZP
 Core Small
End

symmetry  C(3V)

eor

mv TAPE21 t21.NH3

# The input of the atomic coordinates uses expressions, in this case to enforce
# exact symmetry relations that would otherwise require 14-digit input values or
# some inaccuracy. The symmetry specification is redundant: the program would
# also find it by itself.

# == Average-of-Configuration ==

# The next step is to compute the reference state, with respect to which we will
# later compute the multiplet states. The reference state is the so-called
# 'Average-of-configuration' (aoc) state. The result file (TAPE21) of this
# calculation will be used as a fragment file.

$ADFBIN/adf  <<eor
title Cr(NH3)6 : Average-of-Configuration run

COMMENT
using NH3-fragments
END

symmetry D(3d)

scf
iterations  25
mixing   0.15
end

atoms
 Cr      0.000000     0.000000     0.000000  
  N      0.000000     1.714643     1.212436  f=NH3/1
  H      0.000000     1.466154     2.206635  f=NH3/1
  H     -0.827250     2.293404     1.036727  f=NH3/1
  H      0.827250     2.293404     1.036727  f=NH3/1
  N     -1.484924    -0.857321     1.212436  f=NH3/2
  H     -1.269726    -0.733077     2.206635  f=NH3/2
  H     -1.572521    -1.863121     1.036727  f=NH3/2
  H     -2.399771    -0.430282     1.036727  f=NH3/2
  N      1.484924    -0.857321     1.212436  f=NH3/3
  H      1.269726    -0.733077     2.206635  f=NH3/3
  H      2.399771    -0.430282     1.036727  f=NH3/3
  H      1.572521    -1.863121     1.036727  f=NH3/3
  N      0.000000    -1.714643    -1.212436  f=NH3/4
  H      0.000000    -1.466154    -2.206635  f=NH3/4
  H      0.827250    -2.293404    -1.036727  f=NH3/4
  H     -0.827250    -2.293404    -1.036727  f=NH3/4
  N      1.484924     0.857321    -1.212436  f=NH3/5
  H      1.269726     0.733077    -2.206635  f=NH3/5
  H      1.572521     1.863121    -1.036727  f=NH3/5
  H      2.399771     0.430282    -1.036727  f=NH3/5
  N     -1.484924     0.857321    -1.212436  f=NH3/6
  H     -1.269726     0.733077    -2.206635  f=NH3/6
  H     -2.399771     0.430282    -1.036727  f=NH3/6
  H     -1.572521     1.863121    -1.036727  f=NH3/6
end
 
fragments
Cr  t21.Cr
NH3 t21.NH3
end

IrrepOccupations 
 A1.G 8.75 
 A2.G 2  
 E1.G 16 1.5 0.75 
 A1.U 2 
 A2.U 8 
 E1.U 20
END  

eor

mv TAPE21 t21.CrA6ES

# Occupation numbers are specified, to make certain what the reference state is
# that we will start from in the subsequent calculations. The result file TAPE21
# is saved to serve as fragment file in the subsequent calculations.

# == One-determinant states ==

# Now, we proceed with the multiplet calculations. In the example they are
# combined in one single run, but they could also be evaluated in separate runs.
# For each calculation it is required to:

# a) Use the aoc TAPE21 file as fragment file
# b) Choose which molecular orbitals in the open shell to occupy: select the
#    appropriate point group symmetry and the UnRestricted key if necessary and
#    specify the occupation numbers, using the irreducible representations of the
#    selected point group.

# The results are one-determinant calculations, which must then, later, be
# combined analytically to obtain the required multiplet energy values.

$ADFBIN/adf  <<eor
title Cr(NH3)6 : SlaterDeterminants run
NOPRINT frag

symmetry C(I)  !  lower symmetry

scf
iterations 0
end

atoms
   Cr        0.000000       0.000000       0.000000  f=CrA6
    N        0.000000       1.714643       1.212436  f=CrA6
    H        0.000000       1.466154       2.206635  f=CrA6
    H       -0.827250       2.293404       1.036727  f=CrA6
    H        0.827250       2.293404       1.036727  f=CrA6
    N       -1.484924      -0.857321       1.212436  f=CrA6
    H       -1.269726      -0.733077       2.206635  f=CrA6
    H       -1.572521      -1.863121       1.036727  f=CrA6
    H       -2.399771      -0.430282       1.036727  f=CrA6
    N        1.484924      -0.857321       1.212436  f=CrA6
    H        1.269726      -0.733077       2.206635  f=CrA6
    H        2.399771      -0.430282       1.036727  f=CrA6
    H        1.572521      -1.863121       1.036727  f=CrA6
    N        0.000000      -1.714643      -1.212436  f=CrA6
    H        0.000000      -1.466154      -2.206635  f=CrA6
    H        0.827250      -2.293404      -1.036727  f=CrA6
    H       -0.827250      -2.293404      -1.036727  f=CrA6
    N        1.484924       0.857321      -1.212436  f=CrA6
    H        1.269726       0.733077      -2.206635  f=CrA6
    H        1.572521       1.863121      -1.036727  f=CrA6
    H        2.399771       0.430282      -1.036727  f=CrA6
    N       -1.484924       0.857321      -1.212436  f=CrA6
    H       -1.269726       0.733077      -2.206635  f=CrA6
    H       -2.399771       0.430282      -1.036727  f=CrA6
    H       -1.572521       1.863121      -1.036727  f=CrA6
end
 
fragments
  CrA6  t21.CrA6ES
end

UnRestricted

SlaterDeterminants
  Check AOC
    A1.g   4 0.375         // 4 0.375
    A2.g   1               // 1
    E1.g:1 4 0.375 0.1875  // 4 0.375  0.1875
    E1.g:2 4 0.375 0.1875  // 4 0.375  0.1875
    A1.u   1//1
    A2.u   4//4
    E1.u:1 5//5
    E1.u:2 5//5
  SUBEND
  State1
    A1.g   4 1             // 4 1
    A2.g   1               // 1
    E1.g:1 4 0     0       // 4 0      1
    E1.g:2 4 0     0       // 4 0      0
    A1.u   1//1
    A2.u   4//4
    E1.u:1 5//5
    E1.u:2 5//5
  SUBEND
  State2
    A1.g   4 1             // 4 1
    A2.g   1               // 1
    E1.g:1 4 0     0       // 4 1      0
    E1.g:2 4 0     0       // 4 0      0
    A1.u   1//1
    A2.u   4//4
    E1.u:1 5//5
    E1.u:2 5//5
  SUBEND
  State3
    A1.g   4 1             // 4 1
    A2.g   1               // 1
    E1.g:1 4 0     1       // 4 0      0
    E1.g:2 4 0     0       // 4 0      0
    A1.u   1//1
    A2.u   4//4
    E1.u:1 5//5
    E1.u:2 5//5
  SUBEND
end

eor

mv TAPE21 CrNH3_6.t21

# The SlaterDeterminants block may contain any number of sub blocks, each
# starting with an (arbitrary) title record, followed by a set of occupation
# numbers and closed by a SubEnd record. Each such subkey block specifies a
# single one-determinant-state calculation. All occupation numbers must
# reference the irreps of the specified point group symmetry, C(I) in the
# example, and must be just a reassignment of the electrons that are equally
# distributed over the corresponding degenerate irreps in the reference aoc
# calculation.

# The so-obtained energies of the one-determinant states can now be combined to
# calculate the desired multiplet energies. See the Theory document and the adf
# User's Guide.

# Note carefully that in the calculation of the SingleDeterminants, the scf
# procedure is prevented to cycle to convergence by setting the subkey
# Iterations to zero in the SCF data block.