In order to study more carefully how to calculate the non-linear susceptibility, I used the DFPT tutorial on the abinit homepage (nonlinear - abinit). Specifically, I used the tutorial tnlo_6.abi which calculates the second order energy derivatives with respect to an electric field analytically. I copied the input file ntlo_6.abi from the tutorial page and made two changes, the first was to increase the energy cutoff to a more realistic value of 30 Ry and allow up to 100 SCF cycles to ensure proper convergence.
I have uploaded (I just realized I have enough posts now to allow me to do so) the output of the above run. In the output, all of the susceptibility matrix elements are zero with the rather unhelpful warning message " dfptnl_doutput: WARNING - matrix of third-order energies incomplete, non-linear optical coefficients may be wrong." I certainly cannot dispute the fact that they are wrong, but it is not clear why the tutorial fails. Have some of the input options changed since the tutorial was placed on the web site and do they need revision?
Input file (same as on the abinit web site except for the two points mentioned above.)
tnlo_6.abi (7.6 KB)
--- Third order energy calculation completed ---
Matrix of third-order derivatives (reduced coordinates)
before computing the permutations of the perturbations
j1 j2 j3 matrix element
dir pert dir pert dir pert real part imaginary part
Non-linear optical susceptibility tensor d (pm/V)
in cartesian coordinates
i1dir i2dir i3dir d
1 1 1 0.000000000
1 1 2 0.000000000
1 1 3 0.000000000
1 2 1 0.000000000
1 2 2 0.000000000
1 2 3 0.000000000
1 3 1 0.000000000
1 3 2 0.000000000
1 3 3 0.000000000
2 1 1 0.000000000
2 1 2 0.000000000
2 1 3 0.000000000
2 2 1 0.000000000
2 2 2 0.000000000
2 2 3 0.000000000
2 3 1 0.000000000
2 3 2 0.000000000
2 3 3 0.000000000
3 1 1 0.000000000
3 1 2 0.000000000
3 1 3 0.000000000
3 2 1 0.000000000
3 2 2 0.000000000
3 2 3 0.000000000
3 3 1 0.000000000
3 3 2 0.000000000
3 3 3 0.000000000
dfptnl_doutput: WARNING -
matrix of third-order energies incomplete,
non-linear optical coefficients may be wrong.
First-order change in the electronic dielectric
susceptibility tensor (Bohr^-1)
induced by an atomic displacement
atom displacement
1 1 0.000000000 0.000000000 0.000000000
0.000000000 0.000000000 0.000000000
0.000000000 0.000000000 0.000000000
1 2 0.000000000 0.000000000 0.000000000
0.000000000 0.000000000 0.000000000
0.000000000 0.000000000 0.000000000
1 3 0.000000000 0.000000000 0.000000000
0.000000000 0.000000000 0.000000000
0.000000000 0.000000000 0.000000000
2 1 0.000000000 0.000000000 0.000000000
0.000000000 0.000000000 0.000000000
0.000000000 0.000000000 0.000000000
2 2 0.000000000 0.000000000 0.000000000
0.000000000 0.000000000 0.000000000
0.000000000 0.000000000 0.000000000
2 3 0.000000000 0.000000000 0.000000000
0.000000000 0.000000000 0.000000000
0.000000000 0.000000000 0.000000000
dfptnl_doutput: WARNING -
matrix of third-order energies incomplete,
changes in the dielectric susceptibility may be wrong.
tnlo_6.abo (202.7 KB)