Source code for ase2sprkkr.input_parameters.definitions.gilbert

""" Gilbert task input parameters definition """
from ...common.grammar_types import real, Keyword
from .sections import CONTROL, TAU, ENERGY, SITES, TASK
from ..input_parameters_definitions import \
    InputParametersDefinition as InputParameters, \
    InputValueDefinition as V

input_parameters = lambda: InputParameters(
    'gilbert', [
      CONTROL('GILBERT'),
      TAU,
      ENERGY(emin = None, emax=None,
        defaults = { 'GRID' : 3, 'NE' : 1 }
      ),
      SITES.copy(defaults = {'NL' : 4 }),

      TASK('Gilbert').copy([
        V('NTMP', int, is_required=False, info='Number of temperature points used for α(T)'),
        V('SETFLUCT', Keyword({
          'MLIN': 'Use linear temperature grid. Takes account only the electron scattering due to lattice vibrations.',
          'M_T': 'If NFTET = 1 and NFPHI = 1 but NVIBRA is bigger than 1, '
                 'only lattice vibrations are taken into account. If NVIBRA = 1 but '
                 'NFTET is bigger than 1 and NFPHI is bigger than 1, only spin '
                 'fluctuations are taken into account.',
        }), default_value=None, is_required=False, info='Finite temperature calculation mode'),
        V('NVIBRA', int, is_required=False, info='Number of directions for atomic displacements'
                                              ' representing thermal lattice vibrations'),
        V('TMPMIN', real, is_required=False, info='Lower limit of the temperature region (SETLFUNC=MLIN).'),
        V('TMPMAX', real, is_required=False, info='Upper limit of the temperature region (SETLFUNC=MLIN)'),
        V('FLUCTFIL', str, is_required=False, info='Data file which contains the information about '
                                                'temperature dependent magnetizstion, taken from the '
                                                'experiment or Monte Carlo simulations'),
        V('NFTET', int, is_required=False, info='Number of grid points specifying θ angle (SETLFUNC=M_T)'),
        V('NFPHI', int, is_required=False, info='Number of grid points specifying φ angle (SETLFUNC=M_T)'),
      ]),
    ],
    executable = 'kkrchi',
    info = 'GILBERT - The Gilbert damping parameter calculation'
)
""" The Gilbert damping input parameters definition"""