I'm having trouble resolving the energy output in SIESTA, specifically that
it seems to violate the virial theorem. The virial theorem requires that the
EXACT solution must satisfy kinetic energy = - total energy, but I'm not
getting anywhere close to that.
Below is the energy output of an optimization I ran:

Final energy (eV):
      Kinetic =    5497.928558
      Hartree =    2350.057707
      Ext. field =       0.000000
      Exch.-corr. =   -1786.932583
      Ion-electron =   -9917.735789
      Ion-ion =   -3791.753153
      Ekinion =       0.000000
      Total =   -7648.435261

The relaxation runs fine and the relaxed coordinates are good, but as you
can see there is a discrepency of ~2000 eV (or about 30%) between Kinetic
and -Total.

Am I missing something?

Thanks,
Ben

*************************************
#General system specifications
SystemName          Olivine
SystemLabel         Ol
NumberOfAtoms       28
NumberOfSpecies     3

%block ChemicalSpeciesLabel
 1  12 Mg   # Species index, atomic number, species label
 2  14  Si   # Species index, atomic number, species label
 3  8  O    # Species index, atomic number, species label
%endblock ChemicalSpeciesLabel

AtomicCoordinatesFormat  Ang

%block LatticeVectors
4.6300   0.00000    0.00000
0.0000   9.96000    0.00000
0.0000   0.00000    5.98000
%endblock LatticeVectors

%block AtomicCoordinatesAndAtomicSpecies
28 atom coordinates, etc.
%endblock AtomicCoordinatesAndAtomicSpecies

%block GeometryConstraints
position 1
%endblock GeometryConstraints

%block PAO.Basis
bases from the SIESTA database
%endblock PAO.Basis

XC.Functional LDA
XC.Authors CA

MeshCutoff 300.0 Ry
MaxSCFIterations 600
DM.MixingWeight 0.01
MD.TypeOfRun CG
MD.NumCGSteps 600
MD.VariableCell

SolutionMethod diagon
AtomCoorFormatOut Ang

MD.MaxForceTol 0.004 ev/Ang
DM.Tolerance 1.d-4
DM.EnergyTolerance 1.d-4 ev
MD.MaxCGDispl 0.000635 Ang

WriteForces .true.

Responder a