From: Martin R. <mar...@gm...> - 2011-11-04 21:28:20
|
Dear List, I'm running a trial Löwdin population analysis (LPA) on SF6, from a B3LYP/cc-pVTZ calculation. Something is awry, the total number of electrons gets overestimated by 0.3 (70.3), and there is a "complex warning" when running the LPA. LPA is supposed to be rotationally invariant if one use "pure" spherical harmonics in the basis set, e.g. 5 d functions instead of 6. (which cc-pVTZ does). Anyone have any clue to this behavior? Best regards, Martin Gaussian Input: --------- # opt freq b3lyp/cc-pvtz pop=(nboread,full) iop(3/33=1,3/36=-1) Title Card Required 0 1 F 0.00000000 0.00000000 1.57972200 F 0.00000000 1.57972200 0.00000000 F 0.00000000 0.00000000 -1.57972200 F 0.00000000 -1.57972200 0.00000000 F 1.57972200 0.00000000 0.00000000 F -1.57972200 0.00000000 0.00000000 S 0.00000000 0.00000000 0.00000000 Python script: -------- from numpy import * from cclib.parser import ccopen from cclib.method import LPA parser = ccopen("test.log") data = parser.parse() method = LPA(data) method.calculate() savetxt("LPA-big.csv",transpose(2*method.aoresults[0][:data.homos[0]+1])) Script output: -------- ... [Gaussian test.log INFO] Creating attribute coreelectrons[] [LPA <cclib.parser.data.ccData object at 0x1015ba150> INFO] Creating attribute aoresults: [array[2]] /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/cclib/method/lpa.py:99: ComplexWarning: Casting complex values to real discards the imaginary part self.aoresults[spin][i] = numpy.multiply(temp1, temp2).astype("d") [LPA <cclib.parser.data.ccData object at 0x1015ba150> INFO] Saving partitioned results in fragresults: [array[2]] [LPA <cclib.parser.data.ccData object at 0x1015ba150> INFO] Creating fragcharges: array[1] |