latticeinputs package

latticeinputs.batch module

Created on Wed Dec 3 15:09:24 2014

@author: Matti Ropo @author: Henrik Levämäki

class latticeinputs.batch.Batch(jobname_lat=None, lat=None, runtime=None, latpath=None, EMTOdir=None, runBMDL=None, runKSTR=None, runKSTR2=None, runSHAPE=None, kappaw=None, kappalen=None, slurm_options=None, account=None)[source]

Bases: object

Creates a batch script for running BMDL, KSTR and SHAPE calculations

This class is used to to create batch scripts for a supercomputer environment (EMTO 5.8). !!! Currently only SLURM is supported. !!!

Parameters:
  • jobname_lat – (Default value = None)
  • lat – (Default value = None)
  • runtime – (Default value = None)
  • latpath – (Default value = None)
  • EMTOdir – (Default value = None)
  • runBMDL – (Default value = None)
  • runKSTR – (Default value = None)
  • runKSTR2 – (Default value = None)
  • runSHAPE – (Default value = None)
  • kappaw – (Default value = None)
  • kappalen – (Default value = None)
Returns:

None

Return type:

None

check_input_file()[source]
Perform various checks on the class data to
make sure that all necessary data exists before we attempt to write the input file to disk
Returns:
Return type:
output()[source]

(self) -> (str)

Output first part of the kgrn input file in formated string
Returns:
Return type:
set_values(key, value)[source]
Parameters:
  • key
  • value
Returns:

Return type:

write_input_file(folder=None)[source]

(self,str) ->(None)

Save batch input data to file named filename
Parameters:folder – (Default value = None)
Returns:
Return type:

latticeinputs.bmdl module

Created on Wed Dec 3 15:09:24 2014

@author: Matti Ropo @author: Henrik Levämäki

class latticeinputs.bmdl.Bmdl(jobname_lat=None, lat=None, latparams=None, latvectors=None, basis=None, msgl=None, nprn=None, bmdl_nl=None, lamda=None, amax=None, bmax=None, nqr2=None, ca=None)[source]

Bases: object

Contains information about BMDL input files for EMTO 5.8 program.

Parameters:
  • jobname_lat – (Default value = None)
  • lat – (Default value = None)
  • latparams – (Default value = None)
  • latvectors – (Default value = None)
  • basis – (Default value = None)
  • msgl – (Default value = None)
  • nprn – (Default value = None)
  • bmdl_nl – (Default value = None)
  • lamda – (Default value = None)
  • amax – (Default value = None)
  • bmax – (Default value = None)
  • nqr2 – (Default value = None)
  • ca (float) – hcp c/a ratio (Default value = None)
Returns:

None

Return type:

None

check_input_file()[source]

Perform various checks on the class data.

Makes sure that all necessary data exists before we attempt to write the input file to disk.

Returns:None
Return type:None
output()[source]

Outputs BMDL input file as a formatted string

Creates a long string containing the batch job script which will later be written on disk.

Returns:batch script input file
Return type:str
set_values(key, value)[source]
Parameters:
  • key
  • value
Returns:

Return type:

write_input_file(folder=None)[source]

Save BMDL input data to file named by self.jobname_lat

Parameters:folder – (Default value = None)
Returns:
Return type:

latticeinputs.kstr module

Created on Wed Dec 3 15:00:14 2014

@author: Matti Ropo @author: Henrik Levämäki

class latticeinputs.kstr.Kstr(jobname_lat=None, lat=None, latparams=None, ca=None, latvectors=None, basis=None, kappaw=None, dmax=None, msgl=None, nprn=None, lamda=None, amax=None, bmax=None, nqr2=None, mode=None, store=None, high=None, kstr_nl=None, nlh=None, nlw=None, nder=None, itrans=None, rwats=None, nghbp=None, awIQ=None, numvec_target=None)[source]

Bases: object

Contains information about KSTR input files for EMTO 5.8 program

Parameters:
  • jobname_lat – (Default value = None)
  • lat – (Default value = None)
  • latparams – (Default value = None)
  • ca – (Default value = None)
  • latvectors – (Default value = None)
  • basis – (Default value = None)
  • kappaw – (Default value = None)
  • dmax – (Default value = None)
  • msgl – (Default value = None)
  • nprn – (Default value = None)
  • lamda – (Default value = None)
  • amax – (Default value = None)
  • bmax – (Default value = None)
  • nqr2 – (Default value = None)
  • mode – (Default value = None)
  • store – (Default value = None)
  • high – (Default value = None)
  • kstr_nl – (Default value = None)
  • nlh – (Default value = None)
  • nlw – (Default value = None)
  • nder – (Default value = None)
  • itrans – (Default value = None)
  • rwats – (Default value = None)
  • nghbp – (Default value = None)
  • awIQ – (Default value = None)
Returns:

None

Return type:

None

check_input_file()[source]

Perform various checks on the class data.

Checking function to make sure that all necessary data exists before we attempt to write the input file to disk.

Returns:None
Return type:None
compute_num_of_vecs(prims, basis, nghbp, dmax)[source]

Computes the number of vectors for a given dmax value.

finalize()[source]

Re-initializes input parameters.

generate_prims(angles)[source]

Generates the primitive lattice vectors from the angle and Bravais-lattice type information.

optimize_dmax(prims, basis)[source]

Calculates the best possible dmax value, which gives the closest number of vectors given some target value (which is typically 80-90).

output(index)[source]

Outputs KSTR input file as a formatted string.

Parameters:index
Returns:KSTR input file string
Return type:str
set_values(key, value)[source]

Set input parameter values.

Parameters:
  • key
  • value
Returns:

None

Return type:

None

write_input_file(folder=None)[source]

Save KSTR input data to file named filename.

Parameters:folder – (Default value = None)
Returns:None
Return type:None

latticeinputs.latticeinputs module

Created on Wed Dec 3 14:25:06 2014

@author: Matti Ropo @author: Henrik Levämäki

class latticeinputs.latticeinputs.Latticeinputs[source]

Bases: object

Class which is used to communicate with the Bmdl, Kstr and Shape classes.

Returns:None
Return type:None
basis_transform(basis, matrix)[source]

Calculates a basis vector transform given by the transformation matrix.

Parameters:
  • basis (np.array) – Basis vectors
  • matrix (np.array) – Transformation matrix
distortion(lat=None, dist=None, ca=None, index=None, deltas=None, dmaxs=None, relax=True, relax_index=None, basis=None)[source]

A function which sets various class data to create distorted lattice structures.

Distorted lattices are used to calculate elastic constants. An integer index is used to specify for which delta and dmax value we want to generate the distortion input file data.

Default naming convention for the structure files:

bcc bco = bcco
bcc fco = bccm
fcc bco = fccm
fcc fco = fcco
lat Original undistorted lattice
dist Which distortion we want to calculate. Possible values: ‘ortho’ or ‘mono’ for lat=’bcc’, ‘fcc’ or ‘hcp’.
ca c over a for hcp structures.
index Index specifying an element in the delta array. Possible values: 0,1,2,3,4 or 5. 0 = No distortion.
delta Array of displacement values. Optional, default value is good enough almost always (if not always).
dmax Array of ‘dmax’ values for KSTR. They have to be chosen in such fashion so as to keep the number of lattice vectors constant (or as close to a constant as possible) for all of the distorted lattices. Optional, only needed when a custom delta array is used.
Parameters:
  • lat (str) – The original, undistorted lattice (Default value = None)
  • dist (str) – The type of distortion (Default value = None)
  • ca (float) – hcp c/a ratio (Default value = None)
  • index (int) – Index for selecting a delta and dmax from the arrays (Default value = None)
  • deltas (np.array(float)) – List of delta values (Default value = None)
  • dmaxs (np.array(float)) – List of dmax values (Default value = None)
Returns:

None

Return type:

None

set_values(**kwargs)[source]

Passes various input parameters down to the Kgrn and Kfcd classes.

Parameters:**kwargs
Returns:
Return type:
write_structure_input_files(jobname_lat=None, lat=None, folder=None, **kwargs)[source]

For a given lattice type, this function writes the corresponding structure input files into a given folder

Parameters:
  • jobname_lat (str) – Name of the job
  • lat (str) – Name of the lattice
  • folder (str) – Name of the folder

latticeinputs.shape module

Created on Wed Dec 3 15:10:00 2014

@author: Matti Ropo @author: Henrik Levämäki

class latticeinputs.shape.Shape(jobname_lat=None, lat=None, lmax=None, nsr=None, nfi=None, ivef=None, msgl=None, nprn=None)[source]

Bases: object

Contains information about SHAPE input files for EMTO 5.8 program.

Parameters:
  • jobname_lat – (Default value = None)
  • lat – (Default value = None)
  • lmax – (Default value = None)
  • nsr – (Default value = None)
  • nfi – (Default value = None)
  • ivef – (Default value = None)
  • msgl – (Default value = None)
  • nprn – (Default value = None)
Returns:

Return type:

check_input_file()[source]
Perform various checks on the class data to
make sure that all necessary data exists before we attempt to write the input file to disk
Returns:
Return type:
output()[source]

Output SHAPE input file in formatted string.

Returns:SHAPE input file as a string.
Return type:str
set_values(key, value)[source]
Parameters:
  • key
  • value
Returns:

Return type:

write_input_file(folder=None)[source]

Save SHAPE input data to file named filename

Parameters:folder – directory to write (Default value = None)
Returns:
Return type: