Example: CO absorption on a Cu slab: fragment option and densityplot¶
#! /bin/sh
# This example illustrates the usage of fragments in a BAND calculation for
# analysis purposes. It takes two runs to do the DOS analysis in a fragment
# basis, and an extra two runs to get the deformation density with respect to
# the fragment densities.
# The setup involves first the computation of the free CO overlayer, which is to
# be adsorbed on a Cu surface. To suppress (most of the) interactions between
# the CO molecules, i.e. to effectively get the molecular CO, the KSpace
# parameter is set to 1 (= no dispersion), and the lattice parameters are set so
# large that the CO molecules are far apart. The standard result file RUNKF is
# saved under the name 'CO.results/band.rkf'.
# ----------------------------- CO molecule --------------------------
AMS_JOBNAME=CO $AMSBIN/ams <<eor
Task SinglePoint
System
  ! CO molecules far apart
  Atoms [Bohr]
    C   0 0 0
    O   0 0 2.18
  End
  
  Lattice [Bohr]
    25.0  0.0   0.0
    0.0   25.0  0.0
  End
End
Engine Band
  Title The CO fragment
  Print AtomicChargesDetails
  Comment
   Technical  
     Zero order k space integration
   Features
     Lattice   : 2D, large lattice vectors
     Unit cell : 2 atoms, 1x1, quasi molecular
     Basis     : NO+STO w/ core
  End
  Print Eigens
  Kspace 
    Quality GammaOnly  ! neglect dispersion
  End 
  Basis
    Type DZ
    Core Large
  End
  DOS
     CalcPDOS True
     Energies 300 
  End
EndEngine
eor
# Now we can use the result file to do a DOS analysis for CO on a copper surface
# treating the molecule as a fragment. With Fragment%Labels we assign names to
# the different symmetry orbitals. The Density-of-States analysis details are
# given with the keys DOS (energy grid, result file with DOS data) and,
# optionally, GrossPopulations and OverlapPopulations.
# ----------------------------- CO + Cu slab --------------------------
AMS_JOBNAME=COCu $AMSBIN/ams <<eor
Task SinglePoint
System
  Lattice [Bohr]
    4.822 0.0   0.0
    0.0   4.822 0.0
  End
  Atoms [Bohr]
    C   0     0     3.44
    O   0     0     5.62
    Cu  0.0   0.0   0.0
  End
End
Engine Band
  Title Cu slab with CO adsorbed
  Print AtomicChargesDetails
  Comment
   Technical  
     Quadratic K space integration (low)
   Features
     Lattice   : 2D
     Unit cell : 3 atoms, 1x1
     Basis     : NO+STO w/ core
     Options   : Molecular fragment
                 Analysis: DOS, PDOS, COOP
  End        
  KSpace 
    Symmetric KInteg=3
  End
  ! fragment specification
  Fragment 
    filename CO.results/band.rkf
    atommapping
      1 1
      2 2
    End
    Labels ! let us give them some labels
      2Sigma
      2Sigma*
      1Pi_x
      1Pi_y
      3Sigma
      1Pi_x*
      1Pi_y*
      3Sigma*
    End
  End
  ! use fragment basis in dos
  DosBas
    Fragment 1
  End
  DOS   ! Analysis
    CalcPDOS   True
    File      pdos.CO_Cu
    Energies  500
    Min      -0.750
    Max       0.300
  End
  GrossPopulations
    3 2    ! All metal d states
    Sum     ! ALl metal sp states
      3 0
      3 1
    EndSum
    Frag 1   ! All CO states
    Sum   ! CO 1pi
      FragFun 1 5
      FragFun 1 6
    EndSum
    FragFun 1 7  ! CO 5-sigma
  End
  OverlapPopulations
    Left   ! Metal d with CO
      3 2
    Right
      Frag 1
  End
  Basis
    Type DZ
    Core Large
  End
EndEngine
eor
# After this run we copy the computed DOS data from the DOS result file to
# standard output. We also save the restart file for later use.
echo ""
echo "Contents of DOS file"
cat pdos.CO_Cu
# Next we want to know the deformation density with respect to the two
# fragments: 1) The CO molecule and 2) the bare Cu surface. We haven't done the
# bare Cu surface yet, so that is what happens next.
# ----------------------------- Cu slab --------------------------
AMS_JOBNAME=Cu $AMSBIN/ams <<eor
Task SinglePoint
System
  Lattice [Bohr]
    4.822 0.0 0.0
    0.0   4.822 0.0
  End
  Atoms [Bohr]
    Cu  0.0   0.0   0.0
  End
End
Engine Band 
  Title Cu slab
  Print AtomicChargesDetails
  Comment
   Technical  
     Quadratic K space integration (low)
   Features
     Lattice   : 2D
     Unit cell : 3 atoms, 1x1
     Basis     : NO+STO w/ core
     Options   : 
  End
  Kspace 
    Symmetric KInteg=3
  End
  Basis
    Type DZ
    Core Large
  End
  DOS
     CalcPDOS True
     Energies 300 
  End
EndEngine
eor
# Now we are all set to do our final calculation. We have the two fragment files
# CO.results/band.rkf and Cu.results/band.rkf, and the restart file COCu.results/band.rkf. Next we want to know
# the deformation density with respect to the two fragments: 1) The CO molecule
# and 2) the bare Cu surface. The visualization options like OrbitalPlot and
# Densityplot require a regular set of points (a grid). Here is how it works
# ----------------------------- CO + Cu slab restart --------------------------
NSCM=1
export NSCM
AMS_JOBNAME=Final $AMSBIN/ams <<eor
Task SinglePoint
System
  Lattice [Bohr]
    4.822 0.0 0.0
    0.0   4.822 0.0
  End
  Atoms [Bohr]
    C   0     0     3.44
    O   0     0     5.62
    Cu  0.0   0.0   0.0
  End
End
Engine Band
  Title Cu slab with CO adsorbed (restart density plot)
  Print AtomicChargesDetails
  debug BlockPropertyModule
  Kspace 
    Symmetric KInteg=3
  End
  Restart
    File COCu.results/band.rkf
    DensityPlot
  End
  Grid
    Type Coarse
  End
  DensityPlot
    rho(deformation/fit) !FITDENSITY_deformation_scf
  End
  ! fragment specification
  Fragment 
    filename CO.results/band.rkf
    atommapping
    1 1
    2 2
    End
  End
  Fragment 
    filename Cu.results/band.rkf
    atommapping
      1 3
    End
  End
  Basis
    Type DZ
    Core Large
  End
  DOS
     CalcPDOS True
     Energies 300 
  End
EndEngine
eor
# This particular restart options does not work in parallel, hence the '-n 1' on
# the first line.The result of the last run is a file named TAPE41. Normally you
# would save that to COCu.t41
# mv TAPE41 COCu.t41 and view it with AMSview. On the TAPE41 file are now three
# fields shown in AMSview as
# FITDENSITY_deformation_scf FITDENSITY_deformation_scf_frag1
# FITDENSITY_deformation_scf_frag2 being the deformation density of CO+Cu with
# respect to the atoms, and the same for the two fragments CO and the Cu slab.
# In AMSview you can add the fields of the two fragments, and then create
# another field that holds the difference.
NSCM=1
export NSCM
echo ""
echo "Begin TOC of tape41"
$AMSBIN/dmpkf -n 1 Final.results/FILE_BLOCKPROPERTIES --toc
echo "End TOC of tape41"