[molpro-user] dipole-hexadecapole polarizability
Gerald Knizia
knizia at theochem.uni-stuttgart.de
Wed Feb 24 07:59:57 GMT 2010
On Wednesday 24 February 2010 00:10, Yulia Kalugina wrote:
> Do anyone know how to calculate the dipole-hexadecapole polarizability at
> CCSD(t) level? what keywords should be used?
Unfortunately, Molpro is still somewhat lacking in its facilities to calculate
properties. The highest level at which Molpro can calculate first order
properties analytically (see ``PROPERTIES AND EXPECTATION VALUES'' in the
manual) are closed-shell CCSD (without T) and MRCI. For second order
properties (like polarizabilities) there is nothing.
You can, however, use the finite field approach to evaluate these properties
with arbitrary electronic structure methods as numerical second derivatives.
If correct field strengths are chosen, this approach is very accurate. If it
is sufficient for hexadecapole polarizabilities is a different matter of
course... (should work fine for dipole and quadrupole, tho).
(I attached a file which I used to find optimal field strengths for the dipole
polarizability of the carbon atom.)
Similarly, to get the polarizabilities when you have first-order moments, a
first order numerical derivative with respect to the finite field strength
would have to be evaluated with a similar approach.
--
Gerald Knizia
-------------- next part --------------
memory,64,m;
gthresh,energy=1e-14,coeff=1e-7
gthresh,twoint=1e-15
basis=davdz
! geometry={B};
! {rhf; accu,20; wf,sym=2,spin=1; save,2110.2}
geometry={C};
{rhf; accu,20; wf,sym=4,spin=2; open,1.2,1.3; save,2110.2}
! geometry={N};
! {rhf; accu,20; wf,sym=8,spin=3; save,2110.2}
! geometry={O};
! {rhf; accu,20; wf,sym=4,spin=2; save,2110.2}
! geometry={F};
! {rhf; accu,20; wf,sym=2,spin=1; save,2110.2}
! geometry={B};
! {rhf; accu,20; wf,sym=2,spin=1; start,atden}
$basislist = ['DAVDZ','DAVTZ','DAVQZ','DAV5Z']
_CC_NORM_MAX=2.0
fss = [.032,.01,.0032,.001,.00032,.0001,.000032,.00001,.0000032,.000001,.00000032,.0000001]
do i = 1,#fss
fs = fss(i)
! bases(i)=$basislist(i)
bases(i)='DAVTZ'
basis=$bases(i)
field
set,zsymel=[x,y,z]
{rhf; accu,20; wf,sym=4,spin=2; open,1.2,1.3; start,atden}
{uccsd(t); maxit,200; diis,1,1,8}
EShift = 0
EShift = ENERGY
En(i) = ENERGY - EShift
set,zsymel=[x,y]
dip,0.00,0.00,fs
{rhf; accu,20; wf,spin=2,sym=4; occ,2,1,1,0; open,1.2,1.3; start,atden}
{uccsd(t); maxit,200; diis,1,1,8}
EpP(i) = ENERGY - EShift
EmP(i) = ENERGY - EShift
dip,0.00,0.00,2*fs
{rhf; accu,20; wf,spin=2,sym=4; occ,2,1,1,0; open,1.2,1.3; start,atden}
{uccsd(t); maxit,200; diis,1,1,8}
EpP2(i) = ENERGY - EShift
EmP2(i) = ENERGY - EShift
set,zsymel=[x,y]
dip,0.00,0.00,fs
{rhf; accu,20; wf,spin=2,sym=2; occ,3,1,0,0; open,3.1,1.2; start,atden}
{uccsd(t); maxit,200; diis,1,1,8}
EpX(i) = ENERGY - EShift
EmX(i) = ENERGY - EShift
dip,0.00,0.00,2*fs
{rhf; accu,20; wf,spin=2,sym=2; occ,3,1,0,0; open,3.1,1.2; start,atden}
{uccsd(t); maxit,200; diis,1,1,8}
EpX2(i) = ENERGY - EShift
EmX2(i) = ENERGY - EShift
table,bases,En,EpP,EpP2,EpX,EpX2
! first order formulas (need two calculations less per point, but need lower fs value)
! PolP(i) = (2*En(i)-EpP(i)-EmP(i))/(fs**2)
! PolX(i) = (2*En(i)-EpX(i)-EmX(i))/(fs**2)
! second order formulas (more stable with respect to variations in fs)
PolP(i) = -((-2*1.0*EpP2(i)+2*16.0*EpP(i))-30.0*En(i) )/(12.0*fs**2)
PolX(i) = -((-2*1.0*EpX2(i)+2*16.0*EpX(i))-30.0*En(i) )/(12.0*fs**2)
PolM(i) = (2.0/3.0) * PolX(i) + (1.0/3.0) * PolP(i)
PolA(i) = PolX(i) - PolP(i)
text,PolP: atom/field polarization parallel
text,PolX: atom/field polarization crossed
text,PolM: mean dipole polarization
text,PolA: dipole polarization anisotropy
table,fss,PolP,PolX,PolM,PolA
end do
-------------- next part --------------
memory,64,m;
gthresh,energy=1e-14,coeff=1e-7
gthresh,twoint=1e-15
basis=davtz
geometry={C};
{rhf; accu,20; wf,sym=4,spin=2; open,1.2,1.3; save,2110.2}
mcscf
{ci; expec,dm,qm,MLTP6}
More information about the Molpro-user
mailing list