Source code for ase2sprkkr.input_parameters.definitions.xas

"""XAS task input parameters definition"""

from ...common.grammar_types import DefKeyword, flag
from .sections import CONTROL, TASK, TAU, ENERGY, SITES, MODE
from ..input_parameters_definitions import InputParametersDefinition as InputParameters, InputValueDefinition as V


[docs] def input_parameters(): """XAS -xas task input parameters definition""" input_parameters = InputParameters( "xas", [ CONTROL("XAS"), TAU, MODE, ENERGY(defaults={"EMAX": 4.0, "ImE": 0.01, "GRID": 6, "NE": 180}), TASK("XAS").copy( [ V("IT", int, 1, is_required=True, info="""atom type IT"""), V("CL", str, "2P", is_required=True, info="""initial core level shell"""), V("MECHECK", flag, False, is_optional=True), V( "OUTPUT", DefKeyword( { "MBARN": "output of absorption coefficient µas µ atom = µ Vuc in [Mbarn] ", "SIGMA": "SIGMA : output as absorptive part of optical conductivity σ = µ c/4π in [10E15/s ]", } ), is_expert=True, is_optional=True, info="write extra output", ), V( "FRAMETET", float, is_expert=True, is_optional=True, info="Polar angle θ (FRAMETET) defining the orientation of the electric field vector of the incident light with respect to the material surface normal. Default is FRAMETET = 0, meaning the field lies along the surface normal.", ), V( "FRAMEPHI", float, is_expert=True, is_optional=True, info="Azimuthal angle φ (FRAMEPHI) defining the in-plane rotation of the electric field vector of the incident light relative to the surface reference axis. Default is FRAMEPHI = 0, corresponding to alignment with the x-axis of the surface frame.", ), ] ), SITES, ], executable="kkrgen", mpi=True, info="Calculates X-ray absorption spectra", ) return input_parameters