schrodinger.application.matsci.espresso.qeinput module

Classes and functions to deal with XML input generation for Quantum Espresso.

Copyright Schrodinger, LLC. All rights reserved.

class schrodinger.application.matsci.espresso.qeinput.DataType(engine, path)

Bases: tuple

engine

Alias for field number 0

path

Alias for field number 1

schrodinger.application.matsci.espresso.qeinput.b2fs(val)

Convert from bool to fortran bool string.

Parameters:

val (bool) – Value to convert

Return type:

str

Returns:

Converted bool

schrodinger.application.matsci.espresso.qeinput.validate_value(name, value, allowed_values)

Check that value is in list of allowed values.

Parameters:
  • name (str) – Name of the variable

  • value (str or int or float) – Value of the variable

  • allowed_values (list) – List of values

Raises:

ValueError – If value is not in list

class schrodinger.application.matsci.espresso.qeinput.GenericType

Bases: object

Generic class for different input types.

__init__()

Initialize GenericType object and update attributes from data.

updateWithData(data)

Update attributes from data. Set object attribute from data. Example: self.attribute = self.data.get(attribute)

Parameters:

data (dict) – Dictionary of settings

class schrodinger.application.matsci.espresso.qeinput.BandsType

Bases: GenericType

Class to generate QE input XML section related to bands.

TOT_CHARGE_KEY = 'total_charge'
TOT_MAG_KEY = 'total_magnetization'
MIN_EMPTY_BANDS = 10
DEFAULTS = {'nbnd': 0, 'nbnd_empty_percent': 20.0, 'occupations': 'smearing', 'smearing_degauss': 0.01, 'smearing_type': 'gaussian', 'total_charge': 0.0, 'total_magnetization': -10000.0}
__init__()

Initialize object.

setNBands(nbands)

Set _nbands. This is different than self.nbdn. nbnd is coming from the CFG, this value can come from other places, like PPs.

Parameters:

nbands (int) – Number of bands

getNbnd()

Get nbnb value.

Raises:

ValueError – If number of bands is zero or None (boolean False)

Return int nbnd:

Number of bands

strIn(nbnd)

Generate .in block.

Parameters:

nbnb (int) – Number of bands

Return type:

str

Returns:

.in string block

class schrodinger.application.matsci.espresso.qeinput.BasisType

Bases: GenericType

Class to generate QE input XML section related to basis.

GAMMA_ONLY_KEY = 'gamma_only'
SPLINE_PS_KEY = 'spline_ps'
DEFAULTS = {'ecutrho': 0.0, 'ecutwfc': 0.0, 'fft_grid': [], 'fft_smooth_grid': [], 'gamma_only': False, 'spline_ps': False}
strIn()

Generate .in block.

Return type:

str

Returns:

.in string block

class schrodinger.application.matsci.espresso.qeinput.ElectronControlType

Bases: GenericType

Class to generate QE input XML section related to electron control.

STARTINGPOT_KEY = 'startingpot'
STARTINGWFC_KEY = 'startingwfc'
DEFAULTS = {'conv_thr': 1e-06, 'diago_cg_maxiter': 20, 'diago_full_acc': False, 'diago_thr_init': 0.0, 'diagonalization': 'davidson', 'max_steps': 100, 'mixing_beta': 0.7, 'mixing_mode': 'plain', 'mixing_ndim': 8, 'real_space_q': False, 'startingpot': None, 'startingwfc': None}
strIn()

Generate .in block.

Return type:

str

Returns:

.in string block

class schrodinger.application.matsci.espresso.qeinput.KpointsType

Bases: GenericType

Class to generate QE input XML section related to k-points.

KPTS_MESH_KEY = 'kpts_mesh'
AUTOMATIC_BAND = 'automatic'
DEFAULTS = {'kpts_band': False, 'kpts_band_line_density': 20, 'kpts_dens': 0, 'kpts_dens_force_gamma': False, 'kpts_list': [], 'kpts_mesh': [6, 6, 6, 1, 1, 1], 'kpts_spacing': 0, 'kpts_spacing_force_gamma': False}
KPTS_TYPES = {'kpts_band', 'kpts_dens', 'kpts_list', 'kpts_mesh', 'kpts_spacing'}
loadFromStructure(struct, use_symmetry)

Load data from structure.

Parameters:
  • struct (structure.Structure) – Structure used for k-point generation

  • use_symmetry (bool) – If true use the symmetry

static getSpgSymbol(struct, use_symmetry)

Given a structure get its space group.

Parameters:
  • struct (structure.Structure) – Input structure

  • use_symmetry (bool) – Whether to convert to conventional cell and reassign the space group

static getMeshShift(do_shift)

Get MP mesh shift.

Parameters:

do_shift (bool) – Whether to do shift or not (Gamma centered)

Return type:

list[int]

Returns:

K-point mesh shift

getFromSpacing(spacing, force_gamma=False)

Get MP mesh from K-point spacing.

Parameters:
  • spacing (float) – K-point spacing in 1/A

  • force_gamma (bool) – If True, enforce Gamma-centered mesh

Return type:

list of 6 floats

Returns:

First 3 floats represent the number of kpoints in grid directions, next 3 floats, offsets in the corresponding direction

getNKpts()

Get total number of k-points based on k-points definition. If k-points type is defined, throw a ValueError.

Return type:

int

Returns:

Number of k-points

Raises:

ValueError – If k-points type is not defined

matdynStr()

Get kpoint list suitable for matdyn input.

Return type:

str

Returns:

Kpoint list

static kptsMeshStr(kpts_mesh)

Convert K-points mesh to string.

Parameters:

kpts_mesh (list[int]) – K-points mesh with shifts

Return type:

str

Returns:

K-points mesh string

static kptsListStr(kpts_list, with_weight=True)

Convert K-points list to string.

Parameters:

kpts_list (list) – K-points list

Return type:

str

Returns:

K-points list string

class schrodinger.application.matsci.espresso.qeinput.SpinType

Bases: GenericType

Class to generate QE input XML section related to spin.

DEFAULTS = {'spin_type': 'cs'}
SPIN_NON_LSDA_ID = 1
SPIN_LSDA_ID = 2
__init__()

Initialize SpinType object from string.

Parameters:

data (dict) – Dictionary of settings

getNSpin()

Get nspin based on the spin settings.

Returns:

Spin type in the PW integer representation

Return type:

int

static strIn(spin_type)

Generate .in block.

Return type:

str

Returns:

.in string block

class schrodinger.application.matsci.espresso.qeinput.VdwType

Bases: GenericType

Class to generate QE input XML section related to vdw type.

DFTD3_TBD_KEY = 'dftd3_threebody'
DEFAULTS = {'correction': '', 'dftd3_threebody': True, 'dftd3_version': 3, 'london_rcut': 200, 'london_s6': 0.75, 'xdm_a1': 0.6836, 'xdm_a2': 1.5045}
__init__()

Initialize VdwType object from dictionary.

Parameters:

data (dict) – Dictionary of settings

strIn()

Generate .in block.

Return type:

str

Returns:

.in string block

class schrodinger.application.matsci.espresso.qeinput.HybridType

Bases: GenericType

Class to generate QE input XML section related to hybrid functional type.

SCREEN_PARAM_KEY = 'screening_parameter'
DEFAULTS = {'ecutfock': None, 'ecutvcut': 0.7, 'exxdiv_treatment': 'gygi-baldereschi', 'qpts_mesh': [1, 1, 1], 'qpts_spacing': 0.0, 'screening_parameter': 0.106, 'x_gamma_extrapolation': True}
__init__()

Initialize object.

loadFromStructure(struct, use_symmetry)

Load data from structure.

Parameters:
  • struct (structure.Structure) – Structure used for k-point generation

  • use_symmetry (bool) – If true use the symmetry

setLRC(is_lrc)

Set _is_lrc value.

Parameters:

is_lrc (bool) – Whether this belongs to LRC or hybrid functional

strIn()

Generate .in block.

Return type:

str

Returns:

.in string block

class schrodinger.application.matsci.espresso.qeinput.DftUType

Bases: GenericType

Class to generate QE input XML section related to Dft U.

DEFAULTS = {'dftu_type': '', 'projection_type': 'atomic', 'structure_type': None}
static strIn(mag_species, projection_type)

Generate HUBBARD .in block.

Parameters:
  • mag_species (qeu.MagSpecies) – Mag species of the structure

  • projection_type (str) – Projection type

Return type:

str

Returns:

.in string block

class schrodinger.application.matsci.espresso.qeinput.DftType

Bases: GenericType

Class to generate QE input XML section related to dft type.

DEFAULTS = {'dftu': {'dftu_type': '', 'projection_type': 'atomic', 'structure_type': None}, 'functional': '', 'hybrid': {'ecutfock': None, 'ecutvcut': 0.7, 'exxdiv_treatment': 'gygi-baldereschi', 'qpts_mesh': [1, 1, 1], 'qpts_spacing': 0.0, 'screening_parameter': 0.106, 'x_gamma_extrapolation': True}, 'vdw': {'correction': '', 'dftd3_threebody': True, 'dftd3_version': 3, 'london_rcut': 200, 'london_s6': 0.75, 'xdm_a1': 0.6836, 'xdm_a2': 1.5045}}
property vdw
property hybrid

Get hybrid attribute (self._hybrid).

Returns:

Hybrid attribute

Return type:

HybridType

property dftu

Get DftU attribute from self._dftu.

Returns:

Hybrid attribute

Return type:

HybridType

class schrodinger.application.matsci.espresso.qeinput.PseudopotentialsType

Bases: GenericType

Class to generate QE input XML section related to pseudopotentials.

DEFAULTS = {'species': {}}
setStructureType(struct_type)

Set structure_type in self.struct_type and atom types in self.st_species.

Parameters:

struct_type (StructureType) – Structure type used to calculate number of valence electrons in the cell

getData()

Get pseudopotentials file paths and other related data from the database having the same functional and family.

Return type:

dict, float, float, float

Returns:

Dict with paths to PPs ({‘element’: ‘path’}), number of valence electrons, max ecutwfc, max ecutrho for elements

class schrodinger.application.matsci.espresso.qeinput.StructureType(structs, to_primitive, *, niggli_reduce=False, log=None)

Bases: object

Class to generate QE input XML section related to structure.

X = 0
Y = 1
Z = 2
__init__(structs, to_primitive, *, niggli_reduce=False, log=None)

Initialize StructureType object.

Parameters:
  • struct – Structure(s) to generate XML from

  • to_primitive (bool or None) – Whether to use primitive (True), conventional (False), don’t run spglib (None)

  • niggli_reduce (bool) – Whether to Niggli reduce cell

static getSymmetrizedCell(struct, space_group, to_primitive, *, niggli_reduce=False, log=None)

Get symmetrized cell using spglib.

Parameters:
  • struct (structure.Structure) – Input structure

  • space_group (str) – Space group

  • to_primitive (bool) – Whether to obtain primitive (True) or conventional (False)

  • niggli_reduce (bool) – Whether to Niggli reduce cell

  • log (method) – Log function

getAtomicStructureIn()

Get ATOMIC_POSITIONS and CELL blocks.

Return type:

str

Returns:

.in string block

getAtomicStructure()

Generate XML input related to atomic_structure.

Return type:

str

Returns:

cell xml data

getStartingMagDotIn()

Get starting_magnetization lines.

Return type:

str

Returns:

.in string block

static getAtomicSpeciesIn(ppfiles, mag_species)

Get ATOMIC_SPECIES block.

Parameters:
  • dict({str – str}) ppfiles: Dictionary containing paths to PPs ({‘Element’: ‘Path’})

  • mag_species (qeu.MagSpecies) – Mag species of the structure

Return type:

str

Returns:

.in string block

getAtomicSpecies(ppfiles)

Generate XML input related to atomic species.

Param:

Dictionary containing paths to PPs ({‘Element’: ‘Path’})

Return type:

str

Returns:

species xml data

fetchPPDB(functional)

Get pseudopotentials file paths and other related data from the database having the same functional and family.

Parameters:

functional (str) – DFT Functional (one of the DFT_FUNCTIONALS)

Return type:

dict, float, float, float

Returns:

Dict with paths to PPs ({‘element’: ‘path’}), number of valence electrons, max ecutwfc, max ecutrho for elements

alignStructWithPlane(vector_index)

Slide structure (self.struct) along the axis such that all atoms are on top of the plane perpendicular to the axis defined by vector_index.

Parameters:

vector_index (int) – Vector index (X or Y or Z) to align structure to the perpendicular plane

validateStruct(struct)

Validate provided structure against self.struct.

Parameters:

struct (schrodinger.structure.Structure) – Structure to validate

Raises:

ValueError – If number of atoms or atomic types differ compared to the initial structure (self.structure)

class schrodinger.application.matsci.espresso.qeinput.ControlType

Bases: GenericType

Class to generate QE input XML section related to control.

FORCES_KEY = 'forces'
RESTART_MODE_KEY = 'restart_mode'
DEFAULTS = {'calculation_type': '', 'disk_io': 'low', 'etot_conv_thr': 1e-05, 'forc_conv_thr': 0.001, 'forces': False, 'max_retries': None, 'max_seconds': 10000000.0, 'no_fail': False, 'prefix': '', 'press_conv_thr': 0.5, 'relax_steps': 50, 'restart_mode': 'from_scratch', 'retry_preempted': False, 'stress': False, 'title': 'Default Title', 'wall_time': 0, 'wf_collect': False, 'wf_keep': False}
strIn()

Generate .in block.

Return type:

str

Returns:

.in string block

class schrodinger.application.matsci.espresso.qeinput.SymmetryType

Bases: GenericType

Class to generate QE input XML section related to symmetry.

USE_SYMM_KEY = 'use_symmetry'
USE_PRIM_KEY = 'use_primitive'
USE_CONV_KEY = 'use_conventional'
NIGGLI_REDUCE = 'niggli_reduce'
USE_ALL_FRAC_KEY = 'use_all_frac'
NO_INV_KEY = 'noinv'
DEFAULTS = {'niggli_reduce': False, 'noinv': False, 'use_all_frac': False, 'use_conventional': False, 'use_primitive': False, 'use_symmetry': False}
strIn()

Generate .in block.

Return type:

str

Returns:

.in string block

class schrodinger.application.matsci.espresso.qeinput.FreePositionsType

Bases: GenericType

Class to generate QE input XML section related to Cartesian atomic constraints.

DEFAULTS = {}
class PWallType(prefac, expval, cutoff)

Bases: tuple

cutoff

Alias for field number 2

expval

Alias for field number 1

prefac

Alias for field number 0

static saveConstraint(data, atom)

Static method to save Cartesian atomic constraint.

Parameters:
  • data (list of 3 integers) – Cartesian constraints for each coordinate: 1 - not constrained, 0 - constrained (QE convention)

  • atom (structure._StructureAtom) – Atom to add/modify constraint to

Raises:

ValueError – If data is not a list of 3 elements

static savePotentialWallConstraint(struct, prefac, expval, cutoff)

Save potential wall constraint. External force = prefac * exponent * Exp(-exponent). Force is only applied on atoms within the cutoff.

Parameters:
  • struct (structure.Structure) – Structure to add constraint to as a property

  • prefac (float) – Prefactor

  • expval (float) – Exponent value

  • cutoff (float) – Cutoff (in A)

static getPotentialWallConstraint(struct)

Get potential wall constraint if present from the structure.

Parameters:

struct (structure.Structure) – Structure to read from

Return type:

str, PWallType

Returns:

Potential wall barrier XML string or empty string, wall params or None

static saveTorsionConstraint(struct, indices)

Static method to save torsion angle constraint.

Parameters:
  • struct (structure.Structure) – Structure to add constraint to as a property

  • indices (list) – Atomic indices that describe a torsion angle

Raises:

ValueError – If data is not a list of 3 elements

static getTorsionConstraint(struct)

Get torsion constraints if present from the structure.

Parameters:

struct (structure.Structure) – Structure to read from

Return type:

str, int

Returns:

Torsion constraints XML string and number of constraints

static saveDistanceConstraint(struct, indices, target=None)

Save distance constraint.

Parameters:
  • struct (structure.Structure) – Structure to add constraint to as a property

  • indices (list) – Atomic indices to use (2 atoms are required)

  • target (float) – Target distance in Angstrom

Raises:

ValueError – If indices is not an list of 2

static getDistanceConstraint(struct)

Get distance constraints if present from the structure.

Parameters:

struct (structure.Structure) – Structure to read from

Return type:

str, int

Returns:

Distance constraints XML string, number of constraints

class schrodinger.application.matsci.espresso.qeinput.InputType(data)

Bases: object

Class to generate QE input XML section related to input.

__init__(data)

Initialize InputType object from the string.

Param:

Tuple that contains XML for different part of the input

class schrodinger.application.matsci.espresso.qeinput.NEBInputType(data)

Bases: InputType

Class to generate QE input XML section related to NEB input.

strIn()

Generate .in block.

Return type:

str

Returns:

.in string block

class schrodinger.application.matsci.espresso.qeinput.PHInputType(data)

Bases: InputType

Class to generate QE input XML section related to PHonon input.

class schrodinger.application.matsci.espresso.qeinput.MdType

Bases: GenericType

Class to generate XML section related to MD control.

DEFAULTS = {'deltat': 1.0, 'ion_temperature': 'rescale-v', 'nraise': 1, 'pot_extrapolation': 'atomic', 'tempw': 300.0, 'timestep': 2.0, 'wfc_extrapolation': 'none'}
strIn()

Generate .in block.

Return type:

str

Returns:

.in string block

property dt_au
class schrodinger.application.matsci.espresso.qeinput.IonControlType

Bases: GenericType

Class to generate QE ionic control XML section related to control.

ION_DYNAMICS_KEY = 'ion_dynamics'
REFOLD_POS_KEY = 'refold_pos'
DEFAULTS = {'dynamics': {'deltat': 1.0, 'ion_temperature': 'rescale-v', 'nraise': 1, 'pot_extrapolation': 'atomic', 'tempw': 300.0, 'timestep': 2.0, 'wfc_extrapolation': 'none'}, 'ion_dynamics': 'bfgs', 'refold_pos': False}
property dynamics

Getter for the dynamics attribute.

Return type:

MdType

Returns:

dynamics object

strIn()

Generate .in block.

Return type:

str

Returns:

.in string block

class schrodinger.application.matsci.espresso.qeinput.CellControlType

Bases: GenericType

Class to generate QE cell control XML section related to control.

CELL_DYNAMICS_KEY = 'cell_dynamics'
PRESSURE_KEY = 'pressure'
CELL_FACTOR_KEY = 'cell_factor'
CELL_DOFREE_KEY = 'cell_dofree'
REINIT_GVECS = 'reinit_gvecs'
DEFAULTS = {'cell_dofree': 'all', 'cell_dynamics': 'bfgs', 'cell_factor': 2.0, 'pressure': 0.0, 'reinit_gvecs': False}
CELL_DOFREE_XML = {'2Dshape': 'fix_area', '2Dxy': 'fix_xy', 'shape': 'fix_volume', 'volume': 'isotropic'}
strIn()

Generate .in block.

Return type:

str

Returns:

.in string block

class schrodinger.application.matsci.espresso.qeinput.EsmType

Bases: GenericType

Class to generate QE input XML section related to esm type.

BC_KEY = 'bc'
BC_W_KEY = 'offset'
BC_EFIELD_KEY = 'efield'
DEFAULTS = {'bc': 'bc1', 'efield': 0.0, 'offset': 0.0}
strIn()

Generate .in block.

Return type:

str

Returns:

.in string block

class schrodinger.application.matsci.espresso.qeinput.BoundaryType

Bases: GenericType

Class to generate QE input XML section related to boundary conditions type.

ASSUME_ISOLATED_KEY = 'assume_isolated'
ESM_KEY = 'esm'
EFERMI_KEY = 'efermi'
RELATIVE_POT_KEY = 'relative_pot'
DEFAULTS = {'assume_isolated': '', 'efermi': 0.0, 'esm': {'bc': 'bc1', 'efield': 0.0, 'offset': 0.0}, 'relative_pot': None}
property esm

Getter for the esm attribute.

Return type:

EsmType

Returns:

esm object

property lfcp

Return lfcp string in the direct input only.

Return type:

str

Returns:

lfcp string

property fcp

Return &FCP block string (if needed) in the direct input only.

Return type:

str

Returns:

&FCP block string, empty string if not needed

class schrodinger.application.matsci.espresso.qeinput.NEBPathType

Bases: GenericType

Class to generate QE input XML section related to the NEB path.

MIMAGE_KEY = 'minimum_image'
NIMAGE_KEY = 'nimages'
DEFAULTS = {'climbing_image': 'no-CI', 'esm': False, 'esm_efermi': 0.0, 'esm_first_image_charge': 0.0, 'esm_last_image_charge': 0.0, 'minimum_image': True, 'nimages': 4, 'nsteps': 50, 'optimization_scheme': 'broyden', 'optimize_first_last': False, 'path_thr': 0.05, 'restart_mode': 'from_scratch', 'string_method': 'neb', 'use_masses': False}
strIn()

Generate .in block.

Return type:

str

Returns:

.in string block

class schrodinger.application.matsci.espresso.qeinput.PHControlType

Bases: GenericType

Class to generate phonon control input XML section related to control.

QPTS_MESH_KEY = 'qpts_mesh'
QPTS_SPACING_KEY = 'qpts_spacing'
START_IRR_KEY = 'start_irr'
LAST_IRR_KEY = 'last_irr'
RECOVER_KEY = 'recover'
ONLY_INIT = 'only_init'
DEFAULTS = {'alpha_mix': 0.7, 'epsil': None, 'fpol': None, 'last_irr': None, 'ldisp': True, 'lraman': None, 'niter_ph': 100, 'nmix_ph': 4, 'only_init': None, 'prefix': '', 'qpts_mesh': [1, 1, 1], 'recover': None, 'start_irr': None, 'tr2_ph': 1e-12, 'trans': True, 'zeu': None, 'zue': None}
setStructure(struct)

Copy structure into self.struct.

Parameters:

struct (structure.Structure) – Structure used for k-point generation (‘kpts_dens’ case)

static getTodoAtoms(struct)

Given a structure, get atom indices that are not completely fixed.

Parameters:

struct (structure.Structure) – Input structure

Return type:

list[int]

Returns:

Sorted unique atom indices that are not completely fixed

strIn(nat_todo)

Generate .in block.

Parameters:

nat_todo (list[int]) – Atom indices that are not completely fixed

Return type:

str

Returns:

.in string block

class schrodinger.application.matsci.espresso.qeinput.PHDynmatType

Bases: GenericType

Class to generate dynmat control input.

DEFAULTS = {'asr': None, 'axis': None, 'loto_2d': None, 'lperm': None, 'lplasma': None, 'q_dir': [0, 0, 0], 'remove_interaction_blocks': None}
setRemoveIntBlocksFromStruct(struct)

Check if the structure has any atoms fixed, in this case enable remove_interaction_blocks option.

class schrodinger.application.matsci.espresso.qeinput.ElasticType

Bases: GenericType

Elastic settings class.

STRAIN_DEFO_KEY = 'deformation_matrix'
DEFAULTS = {'deformation_matrix': []}
class schrodinger.application.matsci.espresso.qeinput.ElasticControlType

Bases: GenericType

Elastic control class.

NORM_STRAINS_KEY = 'norm_strains'
SHEAR_STRAINS_KEY = 'shear_strains'
DEFAULTS = {'norm_strains': [-0.01, -0.005, 0.005, 0.01], 'shear_strains': [-0.06, -0.03, 0.03, 0.06]}
class schrodinger.application.matsci.espresso.qeinput.GIPAWType

Bases: GenericType

gipaw.x input file class.

JOBTYPE = 'jobtype'
Q_GIPAW = 'q_gipaw'
SPLINE_PS = 'spline_ps'
USE_NMR_MACROSCOPIC_SHAPE = 'use_nmr_macroscopic_shape'
DIAG = 'diagonalization'
DIAG_TYPE = {'Conjugate Gradient': 'cg', 'Davidson': 'david'}
DEFAULTS = {'diagonalization': 'david', 'jobtype': 'nmr', 'q_gipaw': 0.01, 'spline_ps': True, 'use_nmr_macroscopic_shape': False}
class schrodinger.application.matsci.espresso.qeinput.EpsilonType

Bases: GenericType

Epsilon.x input file class.

SMEARTYPES = ['lorentz', 'gauss']
CALCULATIONS = ['eps', 'jdos', 'offdiag']
INTERSMEAR_KEY = 'intersmear'
INTRASMEAR_KEY = 'intrasmear'
DEFAULTS = {'calculation': 'eps', 'intersmear': 0.136, 'intrasmear': 0.0, 'nw': 60, 'prefix': '', 'shift': 0.0, 'smeartype': 'lorentz', 'wmax': 30.0, 'wmin': 0.0}
class schrodinger.application.matsci.espresso.qeinput.PPlotType

Bases: GenericType

pp.x input file class.

DEFAULTS = {'plot_num': 0, 'spin_component': 0}
class schrodinger.application.matsci.espresso.qeinput.HPType

Bases: GenericType

hp.x input file class.

QPTS_MESH_KEY = 'qpts_mesh'
QPTS_SPACING_KEY = 'qpts_spacing'
DISABLE_TYPE_KEY = 'disable_type_analysis'
DEFAULTS = {'disable_type_analysis': True, 'qpts_mesh': [2, 2, 2], 'qpts_spacing': 0}
class schrodinger.application.matsci.espresso.qeinput.TurboLanczosType

Bases: GenericType

turbo_lanczos.x input file class.

ITERMAX = 'itermax'
IPOL = 'ipol'
DEFAULTS = {'ipol': 4, 'itermax': 500}
class schrodinger.application.matsci.espresso.qeinput.TurboEelsType

Bases: GenericType

turbo_eels.x input file class.

APPROX = 'approximation'
ITERMAX = 'itermax'
Q_MESH = 'q_mesh'
CALC = 'calculator'
DEFAULTS = {'approximation': 'TDDFT', 'calculator': 'lanczos', 'itermax': 500, 'q_mesh': [0.1, 0, 0]}
class schrodinger.application.matsci.espresso.qeinput.TurboSpectrumType

Bases: GenericType

turbo_spectrum.x input file class.

ITERMAX = 'itermax'
ITERMAX0 = 'itermax0'
IPOL = 'ipol'
EELS = 'eels'
UNITS = 'units'
INC = 'increment'
START = 'start'
END = 'end'
DEFAULTS = {'eels': False, 'end': 2.5, 'increment': 0.001, 'ipol': 4, 'itermax': 500, 'itermax0': 500, 'start': 0.0, 'units': 0}
class schrodinger.application.matsci.espresso.qeinput.CustomNEBType(method: str = 'improvedtangent', opt_method: str = 'ode', nsteps: int = 50, path_thr: float = 0.05, climb: bool = True, use_pot: bool = True, use_wfc: bool = False)

Bases: NamedTuple

Tuple to hold custom neb input.

method: str

Alias for field number 0

opt_method: str

Alias for field number 1

nsteps: int

Alias for field number 2

path_thr: float

Alias for field number 3

climb: bool

Alias for field number 4

use_pot: bool

Alias for field number 5

use_wfc: bool

Alias for field number 6

class schrodinger.application.matsci.espresso.qeinput.DimerNEBType(nsteps: int = 50, max_force_thr: float = 0.05)

Bases: NamedTuple

Tuple to hold dimer NEB input.

nsteps: int

Alias for field number 0

max_force_thr: float

Alias for field number 1

class schrodinger.application.matsci.espresso.qeinput.CustomMDType

Bases: GenericType

Type to hold custom MD options.

DEFAULTS = {'dft_only': False}