Navigation:

ISA and GDMA Multipoles

Obtaining molecular multipole moments using CamCASP and GDMA.

To learn how to reduce the multipole moments created using methods described here see the guide on Mulfit.

References

ISA multipoles

The ISA (iterative stockholder atoms) approach put forward by Lillestolen and Wheatley has proved to be a fantastic way for calculating all sorts of molecular properties that rely on a molecular partitioning in to atom-like domains. The ISA domains are formally very similar to those from Hirshfeld partitioning, except that the reference atoms (taken to be the neutral, free-atoms in the Hirshfeld approach) are obtained iteratively in the ISA. This is important as the iterative procedure allows the pro-atoms to respond to the molecular environment, leading to a significantly better agreement with chemical and physical ideas, and, for us perhaps even more importantly, to significantly superior convergence for the distributed multipoles calculated using this method.

If you'd like to read more on this, see this paper that we have published in JCTC 2014.

Here we will look into how CamCASP is used to calculate BS-ISA (the 'BS' = Basis-Space) moments. This calculation is not a standard CamCASP calculation, but it is fairly easy to perform, nevertheless.

Cluster input file for CamCASP 5.9 and older

Here's an example Cluster input file for an ISA calculation:

CCl4 ISA Cluster file

Title CH4 : PBE0/AC

Global
  Units Bohr Degrees
  Overwrite Yes
End

Molecule CH4
  I.P. 0.4634 a.u.
  ! Vibrationally averaged geom.
  C   6.0    0.0000000000    0.0000000000    0.0000000000 Type C
  H1  1.0    0.0000000000    2.0770357780    0.0000000000 Type H
  H2  1.0    1.6958926074   -0.6923452530    0.9791240615 Type H
  H3  1.0   -1.6958926074   -0.6923452530    0.9791240615 Type H
  H4  1.0    0.0000000000   -0.6923452530   -1.9582481041 Type H
End

Run-Type
  Properties
  Molecule CH4
  !
  Basis aQZ
  Aux-basis aQZ Spherical
  ISA-Aux set2
  !
  File-prefix CH4_aQZ
  !
  Functional   PBE0
  AC           CS00
  Kernel       ALDA+CHF
  SCFcode      NWChem
  !
  #include ../isa-display
  !
End

Finish

The important changes are

Cluster input file for CamCASP 6.0.x (dev)

ISA commands have changed in CamCASP 6.0.x. At the time of writing this the code has not been released. If you do not have the code, use the example shown above.

CH4-ISA.clt

Title CH4 properties PBE0/AC

Global
  Units Bohr Degrees
  Overwrite Yes
End

Molecule CH4
  I.P. 0.4634 a.u.
  ! Vibrationally averaged geom.
  C   6.0    0.0000000000    0.0000000000    0.0000000000 Type C
  H1  1.0    0.0000000000    2.0770357780    0.0000000000 Type H
  H2  1.0    1.6958926074   -0.6923452530    0.9791240615 Type H
  H3  1.0   -1.6958926074   -0.6923452530    0.9791240615 Type H
  H4  1.0    0.0000000000   -0.6923452530   -1.9582481041 Type H
End



! Show CH4 in PDB format

Run-Type
  Properties
  Molecule CH4

  ! In this example the AUX basis is aVTZ+ISAset2 and ATOMAUX is aVQZ+ISAset

  Main-Basis     aVTZ   Type  MC
  Aux-Basis      aVTZ   Type  MC   Cartesian   Use-ISA-Basis  ( this basis *could* be Spherical )
  AtomAux-Basis  aVQZ   Type  MC   Spherical   Use-ISA-Basis  ( this *must* be Spherical )
  ISA-Basis      set2   Min-S-exp-H = 0.2
                               ( convergence tends to be better with this setting )

  Func         PBE0            ( other functionals possible, but this is probably the best )
  AC           CS00            ( [TH | LINEAR | GRAC] [CS00 | MULTIPOLE | LB94] : CS00 with NWChem)
  Kernel       ALDA+CHF        ( not needed for an ISA calculation )
  SCF-code     NWChem          ( DALTON2015, NWCHEM, etc )

  ! MO-FILE      <MOL.movecs>  Format ASCII  ( Set this to the acutal MO file if available )

  File-Prefix  CH4      ( change this to something reasonable )

  #METHOD      isa-A           ( this will use the file isa-A from the methods/ directory )

End

Finish

Some points:

Run the job

Run the job as usual

runcamcasp.py  -q bg --clt CH4-ISA.clt CH4

Outputs

The CamCASP output will be rather long as data for all the ISA iterations will be printed out. The output file will contain four sets of multipole moments:

The first two are included in the output file, but only the last two are actually written out to special *.mom files.

Here are the ISA moments taken from the CamCASP output:

CamCASP ISA moments from output

Begin Multipoles
  DF Type ISA
  Rank 4
End
 Finished reading in the DIST_MOM block
 Now for the calculations...
 Total moments are computed w.r.t. the origin:
    Origin : (   0.0000,   0.0000,   0.0000) BOHR

! Multipole moments for CH4
! Based on DF-type : ISA

   C     0.00000000     0.00000000     0.00000000     Type    C      Rank   4
      -0.408856
      -0.000202      -0.000002      -0.000377
       0.000484       0.000001      -0.000088       0.000685      -0.000001
       0.104779       0.000001       0.088809      -0.082229      -0.000009
                      0.000004       0.116277
       0.185492      -0.000001       0.541383       0.277448       0.000000
                      0.000000      -0.614966       0.362808      -0.000001

  H1     0.00000000     2.07703578     0.00000000     Type    H      Rank   4
       0.102417
      -0.000061       0.000000       0.032680
       0.008683       0.000000       0.000019       0.015003       0.000000
       0.053924       0.000000      -0.106577      -0.041788       0.000000
                      0.000000      -0.137930
      -0.082778       0.000000      -0.007186      -0.124064       0.000000
                      0.000000       0.008499      -0.164256       0.000000

  H2     1.69589261    -0.69234525     0.97912406     Type    H      Rank   4
       0.102242
       0.015402       0.026780      -0.010907
       0.002756      -0.011373       0.004695      -0.008331       0.008084
      -0.057979       0.014050       0.041069       0.085522      -0.124501
                      0.054163      -0.064681
       0.050136       0.095833      -0.046389      -0.041190       0.036058
                     -0.058609       0.143130      -0.006748       0.097550

  H3    -1.69589261    -0.69234525     0.97912406     Type    H      Rank   4
       0.102240
       0.015403      -0.026782      -0.010908
       0.002755       0.011372       0.004695      -0.008330      -0.008083
      -0.057979      -0.014050       0.041069       0.085522       0.124501
                     -0.054163      -0.064681
       0.050135      -0.095833      -0.046389      -0.041190      -0.036058
                      0.058608       0.143130      -0.006748      -0.097549

  H4     0.00000000    -0.69234525    -1.95824810     Type    H      Rank   4
       0.101957
      -0.031109       0.000000      -0.011077
      -0.013928       0.000000      -0.009349       0.001323       0.000000
      -0.115731       0.000000      -0.129307       0.008402       0.000000
                      0.000000       0.067636
      -0.110065       0.000000      -0.180647       0.066106       0.000000
                      0.000000       0.024363      -0.007363       0.000000

Total molecular moments relative to origin (0,0,0):
       0.000000
      -0.000013       0.000000      -0.000027
       0.000028      -0.000001       0.000028       0.000129       0.000000
      -2.013708       0.000000      -1.743219       1.559151       0.000004
                     -0.000002      -2.248759
       1.922123       0.000025       5.736316       2.865968       0.000010
                     -0.000015      -6.497700       3.793214       0.000026

 End of distributed moment module

The output is structured the same way as a *.mom file:

Structure of moments

ATOM  X   Y   Z   Type <ATOM-TYPE>   Rank 4
   Q00
   Q10  Q11c  Q11s
   Q20  Q21c  Q21s  Q22c  Q22s
   Q30  Q31c  Q31s  Q32c  Q32s  Q33c  Q33s
   Q40 ...etc

Coordinates will normally be in Bohr and moments in Atomic Units.

GDMA multipoles

Best to work with an example. Here's the Cluster command file for a GDMA multipole calculation for HCN:

DMA Cluster file

Title  HCN molecular properties

Global
  Units Bohr Degrees kJ/mol
End

Molecule HCN
  I.P. 13.60 eV 
  Units Angstrom
  H    1.0000     0.00000000     0.00000000    -1.52104563
  C    6.0000     0.00000000     0.00000000    -0.44585114
  N    7.0000     0.00000000     0.00000000     0.70975391
End

Run-Type
  Molecule HCN
  File-Prefix  HCN_aTZ
  Properties
  DFTCODE DALTON2006
  Functional  PBE0
  Basis  aTZ
  #include ../dma-only
  Memory   4 GB
End

Finish

This calculation uses a file dma-only that contains commands for the DMA part of the calculation only. By default CamCASP calculates all sorts of molecular properties (polarizabilities, etc), so we suppress all of that using specific commands contained in dma-only:

dma-ony : commands

CamCASP-commands

BEGIN GRID
  Molecule A
  Angular 400
  Radial  60
END

Begin GDMA
  Bohr
  !  Original DMA
  Multipoles
    Switch 0.0
    Limit  5
    Punch DMA_sw0_L5.mom
  Start
  !  Revised DMA
  Multipoles
    Switch 4.0
    Limit  5
    Punch DMA_sw4_L5.mom
  Start
End


End-CamCASP-commands

This job can be run using the command:

runcamcasp.py

$  runcamcasp.py --clt HCN.clt  HCN_aTZ

To see all the options for runcamcasp.py use runcamcasp.py --help.

After a while you will see the outputs in directory HCN_aTZ. The multipole moments should be in HCN_aTZ/OUT/. If all goes well there will be two multipole moment files:

DMA sw0 : this is the original 1985 DMA algorithm

!  HCN
!  Basis: aug-cc-pVTZ

H          -2.8743594600    Rank  5
     0.2677730515
    -0.1729485948
    -0.0501043708
     0.0038900503
    -0.0008614651
    -0.0202123754

C          -0.8425364900    Rank  5
     0.3152881314
     0.5041632355
    -0.5163634872
     1.4379616107
    -0.7473595714
     2.0769049520

N           1.3412404100    Rank  5
    -0.5830611829
     0.2832706539
    -0.3745325169
    -1.2378166312
     3.4243296572
    -6.7990645408

and the moments from the newer, 2005, DMA algorithm will be in

DMA sw4 : 2005 DMA moments

!  HCN
!  Basis: aug-cc-pVTZ

H           0.0000000000    0.0000000000   -2.8743594600    Rank  5
     0.1667727889
     0.0519443208     0.0000000000    -0.0000000000
     0.2213749964     0.0000000000    -0.0000000000     0.0000000000     0.0000000000
    -0.1147212899    -0.0000000000     0.0000000000    -0.0000000000    -0.0000000000
    -0.0000000000    -0.0000000000
    -0.3871377737    -0.0000000000     0.0000000000     0.0000000000    -0.0000000000
     0.0000000000     0.0000000000     0.0000045954     0.0000000000
     0.7424891191     0.0000000000    -0.0000000000     0.0000000000     0.0000000000
     0.0000000000    -0.0000000000    -0.0000004371    -0.0000000000     0.0000000000
    -0.0000000000

C           0.0000000000    0.0000000000   -0.8425364900    Rank  5
     0.0352352207
     0.0043919876     0.0000000000    -0.0000000000
     1.0872641596     0.0000000000    -0.0000000000    -0.0000000000     0.0000000000
     0.0721604899     0.0000000000     0.0000000000     0.0000000000     0.0000000000
    -0.0000000000    -0.0000000000
    -0.1138010146     0.0000000000     0.0000000000     0.0000000000     0.0000000000
     0.0000000000     0.0000000000     0.0001190378     0.0000000000
    -1.0293188776     0.0000000000    -0.0000000000    -0.0000000000     0.0000000000
    -0.0000000000     0.0000000000    -0.0000404776    -0.0000000000     0.0000000000
     0.0000000000

N           0.0000000000    0.0000000000    1.3412404100    Rank  5
    -0.2020069851
    -0.4792048831    -0.0000000000    -0.0000000000
     0.5941594696    -0.0000000000     0.0000000000     0.0000000000    -0.0000000000
    -1.1372026726     0.0000000000     0.0000000000     0.0000000000    -0.0000000000
    -0.0000000000    -0.0000000000
    -0.7446501643     0.0000000000    -0.0000000000     0.0000000000     0.0000000000
     0.0000000000    -0.0000000000     0.0000409239    -0.0000000000
     4.2454184167    -0.0000000000    -0.0000000000    -0.0000000000     0.0000000000
     0.0000000000    -0.0000000000    -0.0001231820     0.0000000000     0.0000000000
    -0.0000000000

We will normally use the latter as they are usually more appropriate when large, diffuse basis sets are used.

Using MULFIT to transform multipoles

Instruction for this can be found on a separate page.

ISA with Cartesian auxiliary basis set

Warning

This calculation can only be performed using CamCASP 6.0.010 and later. At present, this is a developer's version only.

The ISA as described above is restricted to auxiliary basis sets that use spherical GTOs. This leads to a loss in accuracy. Here we explain how Cartesian GTOs may be used in the auxiliary basis set.

ISA algorithm : A

The ISA A-algorithm can be used directly with the mixed, Cartesian/Spherical basis set. To do this you need to define three basis sets for the system:

The rest of the commands are identical to a standard ISA calculation. The code automatically used the Atom-Aux basis for the ISA expansions and the Aux basis for the density and transition-density expansions. Here is an example of how this works:

Example : ISA A with Cartesian GTOs in Aux : H$_2$O

Basis specification

MOLECULE H2OA at 0.0 0.0 0.0
   Charge    0
   Echo No
   Hessian format SAPT2006
   MO-file H2O_aQZ-A-asc.movecs format ASCII-2
   IP     0.463800 a.u.
   Basis Main
      Spherical
      Units Bohr
      Format GAMESS
      O          8.0        0.00000000       0.00000000       0.00000000  TYPE O
        #include-camcasp basis/gamess_us/aug-cc-pVQZ/O
      ---
      H1         1.0       -1.45365196       0.00000000      -1.12168732  TYPE H
        #include-camcasp basis/gamess_us/aug-cc-pVQZ/H
      ---
      H2         1.0        1.45365196       0.00000000      -1.12168732  TYPE H
        #include-camcasp basis/gamess_us/aug-cc-pVQZ/H
      ---
   End
   Basis Aux
      Cartesian
      Units Bohr
      Format TURBOMOLE
      O          8.0        0.00000000       0.00000000       0.00000000  TYPE O
        Limit G
        #include-camcasp basis/auxiliary/aug-cc-pVQZ/O
      ---
      H1         1.0       -1.45365196       0.00000000      -1.12168732  TYPE H
        Limit G
        #include-camcasp basis/auxiliary/aug-cc-pVQZ/H
      ---
      H2         1.0        1.45365196       0.00000000      -1.12168732  TYPE H
        Limit G
        #include-camcasp basis/auxiliary/aug-cc-pVQZ/H
      ---
   End
   Basis Atom-Aux
        Spherical
        Units Bohr
        Format TURBOMOLE
      O          8.0        0.00000000       0.00000000       0.00000000  TYPE O
        Limit G
        #include-camcasp basis/auxiliary/ISA/set2/O
        Symmetry Exclude = S
        #include-camcasp basis/auxiliary/aug-cc-pVQZ/O
      ---
      H1         1.0       -1.45365196       0.00000000      -1.12168732  TYPE H
        Limit Min-S-exp 0.2
        Limit G
        #include-camcasp basis/auxiliary/ISA/set2/H
        Symmetry Exclude = S
        #include-camcasp basis/auxiliary/aug-cc-pVQZ/H
      ---
      H2         1.0        1.45365196       0.00000000      -1.12168732  TYPE H
        Limit Min-S-exp 0.2
        Limit G
        #include-camcasp basis/auxiliary/ISA/set2/H
        Symmetry Exclude = S
        #include-camcasp basis/auxiliary/aug-cc-pVQZ/H
      ---
   End
END

Comments:

To get the best mutlipole moments combine this calculation with an ISA-GRID multipole moment calculation:

ISA-GRID multipole moments

Begin Multipoles
  Molecule H2OA
  DF Type ISA-GRID
  Rank 4
End

Important

Although the ISA A-algorithm typically leads to charge conservation issues of magnitude something like $10^{-3}e$, when the ISA-GRID partitioning algorithm is used, these vanish and charge is conserved.

Here are the multipole moments obtained using this method:

H2O_ISA_A_3basis_L4.mom

! Multipole moments for H2OA
! Based on DF-type : ISA-GRID

   O     0.00000000     0.00000000     0.00000000     Type    O      Rank   4
      -0.841982
       0.191034      -0.000042      -0.000000
       0.003255       0.000050      -0.000000       0.426891       0.000000
      -0.107414       0.000003      -0.000000       0.074719       0.000000
                      0.000553       0.000000
      -0.295681       0.001011      -0.000000       0.288788       0.000000
                     -0.002832       0.000000      -0.071186      -0.000000

  H1    -1.45365196     0.00000000    -1.12168732     Type    H      Rank   4
       0.420938
       0.006258      -0.027575      -0.000000
       0.002940       0.005508       0.000000       0.031273       0.000000
       0.008032      -0.016349       0.000000      -0.021900       0.000000
                     -0.009186       0.000000
      -0.015407      -0.002128       0.000000       0.026073       0.000000
                      0.002988      -0.000000      -0.026605      -0.000000

  H2     1.45365196     0.00000000    -1.12168732     Type    H      Rank   4
 ... related to H1 by symm...

Total molecular moments relative to origin (0,0,0):
      -0.000064
      -0.740846      -0.000000      -0.000000
       0.070726       0.000000      -0.000000       2.168801       0.000000
       1.998676       0.000000      -0.000000      -4.322235      -0.000000
                      0.000000       0.000000
      -4.732613       0.000000      -0.000000       6.354305       0.000000
                     -0.000000       0.000000       3.932732      -0.000000

ISA algorithm : A+DF

This algorithm cannot be used directly because we cannot combine the ISA matrices and the DF matrices: one will use spherical GTOs and the other Cartesian GTOs. Instead we can obtain this solution as follows.

There are a few steps needed for such a calculation:

Important

Caveats:

  • The ISA shape-functions will not be fully consistent with the density calculated using Cartesian GTOs.

Example: H$_2$O

Here is an example of the above. First, make sure that the ISA solution file is present. This will have the suffix //*.ISA//.

First the partial CamCASP input file for an A+DF ISA calculation. There are only two basis sets defined for this job:

H2O_A+DF_2basis.cks (partial

MOLECULE H2OA at 0.0 0.0 0.0
   Charge    0
   Echo No
   Hessian format SAPT2006
   MO-file H2O_aQZ-A-asc.movecs format ASCII-2
   IP     0.463800 a.u.
   Basis Main
      Spherical
      Units Bohr
      Format GAMESS
      O          8.0        0.00000000       0.00000000       0.00000000  TYPE O
        #include-camcasp basis/gamess_us/aug-cc-pVQZ/O
      ---
      H1         1.0       -1.45365196       0.00000000      -1.12168732  TYPE H
        #include-camcasp basis/gamess_us/aug-cc-pVQZ/H
      ---
      H2         1.0        1.45365196       0.00000000      -1.12168732  TYPE H
        #include-camcasp basis/gamess_us/aug-cc-pVQZ/H
      ---
   End
   Basis Aux
        Spherical
        Units Bohr
        Format TURBOMOLE
      O          8.0        0.00000000       0.00000000       0.00000000  TYPE O
        Limit G
        #include-camcasp basis/auxiliary/ISA/set2/O
        Symmetry Exclude = S
        #include-camcasp basis/auxiliary/aug-cc-pVQZ/O
      ---
      H1         1.0       -1.45365196       0.00000000      -1.12168732  TYPE H
        Limit Min-S-exp 0.2
        Limit G
        #include-camcasp basis/auxiliary/ISA/set2/H
        Symmetry Exclude = S
        #include-camcasp basis/auxiliary/aug-cc-pVQZ/H
      ---
      H2         1.0        1.45365196       0.00000000      -1.12168732  TYPE H
        Limit Min-S-exp 0.2
        Limit G
        #include-camcasp basis/auxiliary/ISA/set2/H
        Symmetry Exclude = S
        #include-camcasp basis/auxiliary/aug-cc-pVQZ/H
      ---
   End
END

...
...

Begin Stockholder
  Molecule H2OA
  DF = Drho-C
  W-INIT = ONE-GTO   ALPHA0 = 1.0
  ISA-Algorithm A+DF   Zeta = 0.9
  DF-PARAMETERS Lambda = 1000.0
  Solver LU
  Convergence
    Convergence-Type W
    EPS-Norm = 1.0e-07
    EPS-Q    = 1.0e-4
    Max-Iter = 60
    W-Damping = 0.0
    W-Mix-Fraction = 0.0  Skip-Iterations = 20
    ! W-Eps = 0.17  S-Block-Only Couple  Switch-On-Eps-Norm = 1.0e-04
    W-Eps = 0.17  S-Block-Only Couple  Switch-On-Eps-Norm = 0.0
    Positive-W   Lambda = 0.0001 for Max-Alpha = 2.0  AUTO
    Tail-Iterations = 10
  End
  W-TAILS
    Activate at Eps-Norm = 1e-12 or Max-Iter = 100
    Func = 1
    R1-Multiplier = 2.0
    R2-Multiplier = 3.0
    Fit-Type = 3
    W-Tests
  END
End

Begin Multipoles
  Molecule H2OA
  DF Type ISA-GRID
  Rank 4
End

Here are the multipole moment you get for this job:

H2O_ISA_A+DF_2basis_L4.mom

! Multipole moments for H2OA
! Based on DF-type : ISA-GRID

   O     0.00000000     0.00000000     0.00000000     Type    O      Rank   4
      -0.840926
       0.191954      -0.000000      -0.000000
       0.007819       0.000000       0.000000       0.423913       0.000000
      -0.087368      -0.000000       0.000000       0.208861      -0.000000
                     -0.000000       0.000000
      -0.235341      -0.000000       0.000000       0.164563       0.000000
                      0.000000      -0.000000      -0.090598      -0.000000
 
  H1    -1.45365196     0.00000000    -1.12168732     Type    H      Rank   4
       0.420407
       0.005397      -0.029959      -0.000000
       0.003387       0.005937       0.000000       0.036881       0.000000
       0.007698      -0.007759       0.000000      -0.012025       0.000000
                     -0.015101       0.000000
      -0.006338       0.002302       0.000000      -0.011913      -0.000000
                     -0.026974      -0.000000      -0.030921      -0.000000
 
  H2     1.45365196     0.00000000    -1.12168732     Type    H      Rank   4
  ...same as H1 but rotated...
  
Total molecular moments relative to origin (0,0,0):
      -0.000113
      -0.740382       0.000000      -0.000000
       0.072814       0.000000       0.000000       2.187225       0.000000
       2.037522      -0.000000      -0.000000      -4.232304      -0.000000
                      0.000000      -0.000000
      -4.619601       0.000000       0.000000       6.071613       0.000000
                     -0.000000       0.000000       4.131253       0.000000

Now for the CamCASP A-type ISA calculation that uses the solution of the above in a restart:

H2O_A+DF_3basis.cks (partial listing)

MOLECULE H2OA...
  ...defined as shown in section on ISA A algorithm. Three basis sets used here.
END
...
...
Begin Stockholder
  Molecule H2OA
  DF = Drho-C
  W-INIT = ONE-GTO   ALPHA0 = 1.0
  ISA-Algorithm A
  DF-PARAMETERS Lambda = 0.0
  Solver LU
  Convergence
    Convergence-Type W
    EPS-Norm = 1.0e-07
    EPS-Q    = 1.0e-4
    Max-Iter = 60
    W-Damping = 0.0
    W-Mix-Fraction = 0.0  Skip-Iterations = 20
    ! W-Eps = 0.17  S-Block-Only Couple  Switch-On-Eps-Norm = 1.0e-04
    W-Eps = 0.17  S-Block-Only Couple  Switch-On-Eps-Norm = 0.0
    Positive-W   Lambda = 0.0001 for Max-Alpha = 2.0  AUTO
    Tail-Iterations = 10
  End
  W-TAILS
    Activate at Eps-Norm = 1e-12 or Max-Iter = 100
    Func = 1
    R1-Multiplier = 2.0
    R2-Multiplier = 3.0
    Fit-Type = 3
    W-Tests
  END
  Restart
    File     ref-A+DF-2bas/H2OA_atoms.ISA
    Tests    Yes
    Iterate  No
  End
End

Begin Multipoles
  Molecule H2OA
  DF Type ISA-GRID
  Rank 4
End

Notice we have restarted the ISA from the solution obtained using the A+DF algorithm, but here we define the ISA to be the A-type only.

Here are the multipole moments for this system:

H2O_ISA_A+DF_3basis_L4.mom

! Multipole moments for H2OA
! Based on DF-type : ISA-GRID

   O     0.00000000     0.00000000     0.00000000     Type    O      Rank   4
      -0.840855
       0.191891      -0.000000      -0.000000
       0.001296      -0.000000       0.000000       0.410826       0.000000
      -0.122891       0.000000       0.000000       0.138468       0.000000
                      0.000000       0.000000
      -0.231414       0.000000       0.000000       0.159840       0.000000
                     -0.000000      -0.000000      -0.132731      -0.000000

  H1    -1.45365196     0.00000000    -1.12168732     Type    H      Rank   4
       0.420396
       0.005184      -0.029688      -0.000000
       0.004736       0.007546       0.000000       0.034914       0.000000
       0.008001      -0.015741       0.000000      -0.022386       0.000000
                     -0.007215       0.000000
      -0.014832      -0.006552       0.000000       0.021457       0.000000
                     -0.004347      -0.000000      -0.042430      -0.000000

  H2     1.45365196     0.00000000    -1.12168732     Type    H      Rank   4
  ...
 
Total molecular moments relative to origin (0,0,0):
      -0.000064
      -0.740846      -0.000000      -0.000000
       0.070726       0.000000       0.000000       2.168801       0.000000
       1.998676       0.000000       0.000000      -4.322235      -0.000000
                      0.000000       0.000000
      -4.732613       0.000000       0.000000       6.354305       0.000000
                     -0.000000      -0.000000       3.932732       0.000000

Analysis

For reference, here are the total molecular multipoles obtained directly from the density (no density-fitting!):

Total molecular moments without fitting

Total multipoles
referred to origin at x =   0.000000,  y =    0.000000,  z =    0.000000
                   Q00  =   0.000000
|Q1| =   0.740556  Q10  =  -0.740556
|Q2| =   2.169405  Q20  =   0.070240  Q22c =   2.168267
|Q3| =   4.696276  Q30  =   1.976820  Q32c =  -4.259952
|Q4| =   8.911126  Q40  =  -4.731016  Q42c =   6.359787  Q44c =   4.071701

You can see that the ISA A and A+DF algorithms give results very similar to these as long as the auxiliary basis is Cartesian. It may be simpler to use the A algorithm with the 3 basis sets defined as shown above. But this is only one example!

ISA with additional sites

Warning

This calculation can only be performed using CamCASP 6.0.010 and later. At present, this is a developer's version only.

Adding extra sites to the ISA expansion is now possible, but as this has not been tested very much, I'll write this tutorial later. If you are interested, ask me.