Added 'other_parameters' keyword in _get_scan.
epsi-builds/msspec_python3/pipeline/head This commit looks good
Details
epsi-builds/msspec_python3/pipeline/head This commit looks good
Details
This allows to set or modify any option right before runing Phagen and Spec. Mostly for debug purposes.
This commit is contained in:
parent
e36373a576
commit
75c599de95
|
@ -615,7 +615,7 @@ class _PED(_MSCALCULATOR):
|
||||||
def _get_scan(self, scan_type='theta', phi=0,
|
def _get_scan(self, scan_type='theta', phi=0,
|
||||||
theta=np.linspace(-70, 70, 141), level=None,
|
theta=np.linspace(-70, 70, 141), level=None,
|
||||||
kinetic_energy=None, data=None,
|
kinetic_energy=None, data=None,
|
||||||
malloc={}):
|
malloc={}, other_parameters={}):
|
||||||
LOGGER.info("Computting the %s scan...", scan_type)
|
LOGGER.info("Computting the %s scan...", scan_type)
|
||||||
if data:
|
if data:
|
||||||
self.iodata = data
|
self.iodata = data
|
||||||
|
@ -650,6 +650,13 @@ class _PED(_MSCALCULATOR):
|
||||||
|
|
||||||
self.spectroscopy_parameters.set_parameter('level', level)
|
self.spectroscopy_parameters.set_parameter('level', level)
|
||||||
|
|
||||||
|
# It is still possible to modify any option right before runing phagen
|
||||||
|
# and spec
|
||||||
|
for k, v in other_parameters.items():
|
||||||
|
grp_str, param_str = k.split('.')
|
||||||
|
grp = getattr(self, grp_str)
|
||||||
|
grp.set_parameter(param_str, v, force=True)
|
||||||
|
|
||||||
self.get_tmatrix()
|
self.get_tmatrix()
|
||||||
self.run_spec(malloc)
|
self.run_spec(malloc)
|
||||||
|
|
||||||
|
@ -851,7 +858,7 @@ class _PED(_MSCALCULATOR):
|
||||||
return self.iodata
|
return self.iodata
|
||||||
|
|
||||||
def get_scattering_factors(self, level='1s', kinetic_energy=None,
|
def get_scattering_factors(self, level='1s', kinetic_energy=None,
|
||||||
data=None):
|
data=None, **kwargs):
|
||||||
"""Computes the scattering factors of all prototypical atoms in the
|
"""Computes the scattering factors of all prototypical atoms in the
|
||||||
cluster.
|
cluster.
|
||||||
|
|
||||||
|
@ -870,11 +877,11 @@ class _PED(_MSCALCULATOR):
|
||||||
|
|
||||||
"""
|
"""
|
||||||
data = self._get_scan(scan_type='scatf', level=level, data=data,
|
data = self._get_scan(scan_type='scatf', level=level, data=data,
|
||||||
kinetic_energy=kinetic_energy)
|
kinetic_energy=kinetic_energy, **kwargs)
|
||||||
return data
|
return data
|
||||||
|
|
||||||
def get_theta_scan(self, phi=0, theta=np.linspace(-70, 70, 141),
|
def get_theta_scan(self, phi=0, theta=np.linspace(-70, 70, 141),
|
||||||
level=None, kinetic_energy=None, data=None):
|
level=None, kinetic_energy=None, data=None, **kwargs):
|
||||||
"""Computes a polar scan of the emitted photoelectrons.
|
"""Computes a polar scan of the emitted photoelectrons.
|
||||||
|
|
||||||
:param phi: The azimuthal angle in degrees. See
|
:param phi: The azimuthal angle in degrees. See
|
||||||
|
@ -891,11 +898,12 @@ class _PED(_MSCALCULATOR):
|
||||||
|
|
||||||
"""
|
"""
|
||||||
data = self._get_scan(scan_type='theta', level=level, theta=theta,
|
data = self._get_scan(scan_type='theta', level=level, theta=theta,
|
||||||
phi=phi, kinetic_energy=kinetic_energy, data=data)
|
phi=phi, kinetic_energy=kinetic_energy,
|
||||||
|
data=data, **kwargs)
|
||||||
return data
|
return data
|
||||||
|
|
||||||
def get_phi_scan(self, phi=np.linspace(0, 359, 359), theta=0,
|
def get_phi_scan(self, phi=np.linspace(0, 359, 359), theta=0,
|
||||||
level=None, kinetic_energy=None, data=None):
|
level=None, kinetic_energy=None, data=None, **kwargs):
|
||||||
"""Computes an azimuthal scan of the emitted photoelectrons.
|
"""Computes an azimuthal scan of the emitted photoelectrons.
|
||||||
|
|
||||||
:param phi: All the values of the azimuthal angle to be computed. See
|
:param phi: All the values of the azimuthal angle to be computed. See
|
||||||
|
@ -912,12 +920,13 @@ class _PED(_MSCALCULATOR):
|
||||||
|
|
||||||
"""
|
"""
|
||||||
data = self._get_scan(scan_type='phi', level=level, theta=theta,
|
data = self._get_scan(scan_type='phi', level=level, theta=theta,
|
||||||
phi=phi, kinetic_energy=kinetic_energy, data=data)
|
phi=phi, kinetic_energy=kinetic_energy,
|
||||||
|
data=data, **kwargs)
|
||||||
return data
|
return data
|
||||||
|
|
||||||
def get_theta_phi_scan(self, phi=np.linspace(0, 360),
|
def get_theta_phi_scan(self, phi=np.linspace(0, 360),
|
||||||
theta=np.linspace(0, 90, 45), level=None,
|
theta=np.linspace(0, 90, 45), level=None,
|
||||||
kinetic_energy=None, data=None):
|
kinetic_energy=None, data=None, **kwargs):
|
||||||
"""Computes a stereographic scan of the emitted photoelectrons.
|
"""Computes a stereographic scan of the emitted photoelectrons.
|
||||||
|
|
||||||
The azimuth ranges from 0 to 360° and the polar angle ranges from 0 to
|
The azimuth ranges from 0 to 360° and the polar angle ranges from 0 to
|
||||||
|
@ -934,11 +943,11 @@ class _PED(_MSCALCULATOR):
|
||||||
"""
|
"""
|
||||||
data = self._get_scan(scan_type='theta_phi', level=level, theta=theta,
|
data = self._get_scan(scan_type='theta_phi', level=level, theta=theta,
|
||||||
phi=phi, kinetic_energy=kinetic_energy, data=data,
|
phi=phi, kinetic_energy=kinetic_energy, data=data,
|
||||||
malloc={'NPH_M': 8000})
|
malloc={'NPH_M': 8000}, **kwargs)
|
||||||
return data
|
return data
|
||||||
|
|
||||||
def get_energy_scan(self, phi=0, theta=0,
|
def get_energy_scan(self, phi=0, theta=0,
|
||||||
level=None, kinetic_energy=None, data=None):
|
level=None, kinetic_energy=None, data=None, **kwargs):
|
||||||
"""Computes an energy scan of the emitted photoelectrons.
|
"""Computes an energy scan of the emitted photoelectrons.
|
||||||
|
|
||||||
:param phi: All the values of the azimuthal angle to be computed. See
|
:param phi: All the values of the azimuthal angle to be computed. See
|
||||||
|
@ -955,7 +964,8 @@ class _PED(_MSCALCULATOR):
|
||||||
|
|
||||||
"""
|
"""
|
||||||
data = self._get_scan(scan_type='energy', level=level, theta=theta,
|
data = self._get_scan(scan_type='energy', level=level, theta=theta,
|
||||||
phi=phi, kinetic_energy=kinetic_energy, data=data)
|
phi=phi, kinetic_energy=kinetic_energy,
|
||||||
|
data=data, **kwargs)
|
||||||
return data
|
return data
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue