Set Phagen mode to "led" for EIG calculation.

Ensure that no core-hole is produced when doing an eigen values
calculation. This is done by setting calctype="led" in the phagen
input file.
This commit is contained in:
Sylvain Tricot 2020-04-15 14:49:55 +02:00
parent 19fd6033cc
commit 43886601e9
1 changed files with 4 additions and 12 deletions

View File

@ -927,22 +927,16 @@ class _EIG(_MSCALCULATOR):
"are supported in EIG spectroscopy mode")
exit(1)
self.iodata = iodata.Data('EIG Simulation')
# ensure no core-hole is created by using the "led" (LEED) mode
# of Phagen
self.phagen_parameters.calctype = "led"
def get_eigen_values(self, level=None, kinetic_energy=None, data=None):
def get_eigen_values(self, kinetic_energy, data=None):
LOGGER.info("Computting the eigen values...")
if data:
self.iodata = data
if kinetic_energy is None:
# try to guess the kinetic energy
kinetic_energy = self._guess_ke(level)
# if still None...
if kinetic_energy is None:
LOGGER.error('Unable to guess the kinetic energy!')
raise ValueError('You must define a kinetic_energy value.')
# update the parameters
self.scan_parameters.set_parameter('kinetic_energy', kinetic_energy)
all_ke = self.scan_parameters.get_parameter('ke_array').value
@ -951,8 +945,6 @@ class _EIG(_MSCALCULATOR):
raise ValueError('Kinetic energy is < 0! ({})'.format(
kinetic_energy))
self.spectroscopy_parameters.set_parameter('level', level)
# ensure that if the alogorithm is 'inversion' the IPWM must be set to 0
if self.global_parameters.algorithm.lower() == 'inversion':
self.spec_parameters.eigval_ipwm = 0