prep module

prep.ConfigSectionMap(section, option, configFile=None)[source]
prep.addToAll_(calcs, block=None, addition=None)[source]
prep.addToBlockWrapper(oneCalc, ID, block, addition)[source]

Wraps AFLOWpi.prep._addToBlock for use inside _calcs_container methods

Parameters:
  • oneCalc (dict) – a dictionary containing properties about the AFLOWpi calculation
  • ID (str) – ID string for the particular calculation and step
  • block (str) – string of the block in the _ID.py that the addition is to be added to for that step of workflow
  • addition (str) – a string containing code to be written to the specific block in the _ID.py for each calculation
Returns:

None

prep.askAFLOWpiVars(refAFLOWpiVars)[source]

Cycle on the keys of the refAFLOWpiVars dictionary and ask to define them

Parameters:refAFLOWpiVars (dict) – the variables in the ref files that you need to input to run the calculation
Returns:None
prep.bands(calcs, dk=None, nk=None, n_conduction=None)[source]

Wrapper function to write the function AFLOWpi.prep._oneBands to the _ID.py

Parameters:

calcs (dict) – a dictionary of dicionaries representing the set of calculations

Keyword Arguments:
 
  • dk (float) – distance between points for Electronic Band Structure calculation
  • nk (int) – approximate number of k points to be calculated along the path
Returns:

The identical “calcs” input variable

prep.bandsAflow(dk, LAT)[source]

Query aflow for band structure path and generate the path for band structure calculation

Parameters:
  • dk (float) – distance between k points along path in Brillouin Zone
  • LAT (int) – bravais lattice number from Quantum Espresso convention
Keyword Arguments:
 

None

Returns:

some information nks (str): number of k points in path stringk (str): kpoint path string

Return type:

info (str)

prep.build_calcs(PARAM_VARS, build_type='product')[source]
prep.calcFromFile(aflowkeys, fileList, reffile=None, pseudodir=None, workdir=None, keep_name=False, clean_input=True, ref_override=False)[source]

Reads in a string of an QE input file path, a string of an QE input, a file object of a QE input or a list of them and attempts to fill create a calculation from them. If they are missing things such as k_points card, they are automtically generated.

Parameters:
  • aflowkeys (dict) – a dictionary generated by AFLOWpi.prep.init
  • fileList (list) – a string of an QE input file path, a string of an QE input, a file object of a QE input or a list of them
Keyword Arguments:
 
  • reffile (str) – a partially filled QE input file used in case the input(s) in fileList are missing. i.e. wfc cutoff. If the names of the Pseudopotential files are not included in the input(s) in fileList, they are chosen depending on the pseudodir chosen and included when the calculation set is formed.
  • workdir (str) – a string of the workdir path that be used to override what is in the config file used when initating the AFLOWpi session
  • pseudodir (str) – a string of the pseudodir path that be used to override what is in the config file used when initating the AFLOWpi session
class prep.calcs_container(dictionary)[source]
acbn0(thresh=0.1, nIters=20, paodir=None, relax='scf', mixing=0.2, kp_mult=1.5)[source]

Wrapper method to call AFLOWpi.scfuj.scfPrep and AFLOWpi.scfuj.run in the high level user interface. Adds a new step to the workflow.

Parameters:

self – the _calcs_container object

Keyword Arguments:
 
  • thresh (float) – threshold for self consistent hubbard U convergence
  • niters (int) – max number of iterations of the acbn0 cycle
  • paodir (string) – the path of the PAO directory. This will override an entry of the paodir in the AFLOWpi config file used for the session
  • mixing (float) – the amount of the previous acbn0 U iteration to mix into the current (only needed when there is U val oscillation)
Returns:

None

addToAll(block=None, addition=None)[source]
bands(dk=None, nk=100, n_conduction=None)[source]

Wrapper method to write call AFLOWpi.prep.bands for calculating the Electronic Band Structure.

Parameters:

calcs (dict) – a dictionary of dicionaries representing the set of calculations

Keyword Arguments:
 
  • dk (float) – the density in the Brillouin zone of the k point sampling along the entirety of the path between high symmetry points.
  • nk (int) – the approximate number of sampling points in the Brillouin Zone along the entirety of the path between high symmetry points. Points are chosen so that they are equidistant along the entirety of the path. The actual number of points will be slightly different than the inputted value of nk. nk!=None will override any value for dk.
Returns:

None

change_input(namelist=None, parameter=None, value=None)[source]
change_pseudos(directory)[source]
conventional_cell_input()[source]
converge_smearing(relax='scf', smear_variance=0.3, num_points=4, smear_type='mp', mult_jobs=False)[source]
crawl_min(mult_jobs=False, grid_density=10, initial_variance=0.02, thresh=0.01, constraint=None, final_minimization='relax')[source]

Wrapper method to call AFLOWpi.pseudo.crawlingMinimization in the high level user interface. Adds a new step to the workflow.

Parameters:

self – the _calcs_container object

Keyword Arguments:
 
  • mult_jobs (bool) – if True split the individual scf jobs into separate cluster jobs if False run them serially
  • grid_density (int) – controls the number of calculations to generate for the minimization num_{calcs}=grid_density^{num_{parameters}-num_{constraints}}
  • initial_variance (float) – amount to vary the values of the parameters from the initial value. i.e. (0.02 = +/-2% variance)
  • thresh (float) – threshold for $DeltaX$ of the lattice parameters between brute force minimization iterations.
  • constraint (list) – a list or tuple containing two entry long list or tuples with the first being the constraint type and the second the free parameter in params that its constraining for example in a orthorhombic cell: constraint=([“volume”,’c’],) allows for A and B to move freely but C is such that it keeps the cell volume the same in all calculations generated by the input oneCalc calculation.
  • final_minimization (str) – calculation to be run at the end of the brute force minimization options include “scf”, “relax”, and “vcrelax”
Returns:

None

dos(kpFactor=2, project=True, n_conduction=None)[source]

Wrapper method to call AFLOWpi.prep.doss in the high level user interface. Adds a new step to the workflow.

Parameters:

self – the _calcs_container object

Keyword Arguments:
 
  • kpFactor (float) – factor to which the k-point grid is made denser in each direction
  • project (bool) – if True: do the projected DOS after completing the DOS
Returns:

None

elastic(mult_jobs=False, order=2, eta_max=0.005, num_dist=10)[source]
evCurve_min(pThresh=25, final_minimization='relax')[source]
get_initial_inputs()[source]
increase_step(func)[source]
items()[source]
iteritems()[source]
keys()[source]
new_step(update_positions=True, update_structure=True, new_job=True, ext='')[source]
phonon(nrx1=2, nrx2=2, nrx3=2, innx=2, de=0.003, mult_jobs=False, LOTO=True, disp_sym=False, atom_sym=False, field_strength=0.003, field_cycles=3, proj_phDOS=True)[source]
pseudo_test_brute(ecutwfc, dual=[], sampling=[], conv_thresh=0.01, constraint=None, initial_relax=None, min_thresh=0.01, initial_variance=0.05, grid_density=7, mult_jobs=False, options=None)[source]
relax()[source]
resubmit(reset=True)[source]
scf()[source]
submit()[source]
thermal(delta_volume=0.03, nrx1=2, nrx2=2, nrx3=2, innx=2, de=0.005, mult_jobs=False, disp_sym=False, atom_sym=False, field_strength=0.001, field_cycles=3, LOTO=True, hydrostatic_expansion=True)[source]
tight_binding(cond_bands=True, proj_thr=0.95, kp_factor=2.0, proj_sh=5.5, cond_bands_proj=True)[source]
values()[source]
vcrelax()[source]
prep.changeCalcs(calcs, keyword='calculation', value='scf')[source]

A Wrapper function that writes the function AFLOWpi.prep._changeCalcs to the _ID.py

Parameters:

calcs (dict) – a dictionary of dicionaries representing the set of calculations

Keyword Arguments:
 
  • keyword (str) – a string which signifies the type of change that is to be made
  • value – the value of the choice.
Returns:

The identical set of calculations as the input to this function

prep.cleanCalcs(calcs, runlocal=False)[source]

Wrapper function for AFLOWpi.prep._cleanCalcs

Parameters:calcs (dict) – a dictionary of dicionaries representing the set of calculations
Keyword Arguments:
 runlocal (bool) – a flag to choose whether or not to run the wrapped function now or write it to the _ID.py to run during the workflow
Returns:None
prep.construct_and_run(__submitNodeName__, oneCalc, ID, build_command='', subset_tasks=[], fault_tolerant=False, mult_jobs=True, subset_name='SUBSET', keep_file_names=False, clean_input=True, check_function=None)[source]
prep.doss(calcs, kpFactor=1.5, n_conduction=None)[source]

Wrapper function to write the functio n AFLOWpi.prep._oneDoss to the _ID.py

Parameters:calcs (dict) – a dictionary of dicionaries representing the set of calculations
Keyword Arguments:
 kpFactor (float) – the factor to which we make each direction in the kpoint grid denser
Returns:The identical “calcs” input variable
prep.extractvars(refFile)[source]

Read refFile and return an empty dictionary with all the keys and None values

Parameters:refFile (str) – filename of the reference input file for the frame
Returns:A dictionary containing the keyword extracted from the reference input file as keys with None for values..
prep.generateAnotherCalc(old, new, calcs)[source]

Modify the calculation in each subdir and update the master dictionary

Parameters:
  • old (str) – string to replace
  • new (str) – replacement string
  • calcs (dict) – dictionary of dictionaries of calculations
Returns:

A new set of calculations with a new ID of the hash of the new input strings

prep.getMPGrid(primLatVec, offset=True, string=True)[source]
class prep.init(PROJECT, SET='', AUTHOR='', CORRESPONDING='', SPONSOR='', config='', workdir=None, make_symlink=False)[source]
from_file(fileList, reffile=None, pseudodir=None, workdir=None, ref_override=True)[source]

Reads in a string of an QE input file path, a string of an QE input, a file object of a QE input or a list of them and attempts to fill create a calculation from them. If they are missing things such as k_points card, they are automtically generated.

Parameters:
  • aflowkeys (dict) – a dictionary generated by AFLOWpi.prep.init
  • fileList (str) – a string of an QE input file path, a string of an QE input, a file object of a QE input or a list of them
Keyword Arguments:
 
  • reffile (str) – a partially filled QE input file used in case the input(s) in fileList are missing. i.e. wfc cutoff. If the names of the Pseudopotential files are not included in the input(s) in fileList, they are chosen depending on the pseudodir chosen and included when the calculation set is formed.
  • workdir (str) – a string of the workdir path that be used to override what is in the config file used when initating the AFLOWpi session
  • pseudodir (str) – a string of the pseudodir path that be used to override what is in the config file used when initating the AFLOWpi session
  • ref_override (bool) – Option to override values in the input file(s) with values in the reference input file. If no reference input file is included then this is ignored. (Default: True)
items()[source]
iteritems()[source]
keys()[source]
load(step=1)[source]

Loads the calc logs from a given step

Parameters:step (int) – the step of the calculation for whose calclogs are to be loaded
Returns:the loaded calc logs
Return type:calcs (dict)
scfs(allAFLOWpiVars, refFile, name='first', pseudodir=None, build_type='product', convert=True)[source]

A wrapper method to call AFLOWpi.prep.scfs to form the calculation set. This will also create directory within the set directory for every calculation in the set.

Parameters:
  • allAFLOWpiVars (dict) – a dictionary whose keys correspond to the keywords in the reference input file and whose values will be used to construct the set of calculations
  • refFile (str) – a filename as a string, a file object, or a string of the file that contains keywords to construct the inputs to the different calculations in the set
Keyword Arguments:
 
  • pseudodir (str) – path of the directory that contains your Pseudopotential files The value in the AFLOWpi config file used will override this.
  • build_type (str) –

    how to construct the calculation set from allAFLOWpiVars dictionary:

    zip | The first calculation takes the first entry from the list of
    each of the keywords. The second calculation takes the second
    and so on. The keywords for all lists in allAFLOWpiVars must be
    the same length for this method.
    product | Calculation set is formed via a “cartesian product” with
    the values the list of each keyword combined. (i.e if
    allAFLOWpiVars has one keyword with a list of 5 entires and
    another with 4 and a third with 10, there would be 2000
    calculations in the set formed from them via product mode.
Returns:

A dictionary of dictionaries containing the set of calculations.

status(status={}, step=0, negate_status=False)[source]

Loads the calc logs from a given step

Parameters:

step (int) – The step of the calculation for whose calclogs are to be loaded. If no step is specified then it will default to load calculations from all steps with the chosen status.

Keyword Arguments:
 
  • status (dict) – key,value pairs for status type and their value to filter on. i.e. status={‘Finished’:False}
  • negate_status (bool) – filter on the opposite of the status filters
Returns:

the loaded calcs for one or more steps with the given status

Return type:

calcs (dict)

values()[source]
prep.init__(PROJECT, SET='', AUTHOR='', CORRESPONDING='', SPONSOR='', config='', workdir=None, make_symlink=False)[source]

Initializes the frame

Parameters:
  • PROJECT (str) – Name of project
  • SET (str) – Name of set
  • author (str) – Name of author
  • CORRESPONDING (str) – Name of corresponding
  • SPONSOR (str) – Name of sponsor

e.g. initFrame(‘LNTYPE’,’‘, ‘MF’, 'marco.fornari@cmich.edu‘,’DOD-MURI’). Return the AFLOKEYS dictionary.

class prep.isotropy(input_str, accuracy=0.001, output=False)[source]
cif2qe()[source]
convert(ibrav=True)[source]
get_cif()[source]
prep.line_prepender(filename, new_text)[source]

prepends a file with a new line containing the contents of the string new_text.

Parameters:
  • filename (str) – string of the filename that is to be prepended
  • new_text (str) – a string that is one line long to be prepended to the file
Returns:

None

prep.loadlogs(PROJECT='', SET='', logname='', config=None, suppress_warning=False)[source]
prep.lockAtomMovement(calcs)[source]

A Wrapper function that writes the function AFLOWpi.prep._freezeAtoms to the _ID.py

Parameters:calcs (dict) – a dictionary of dicionaries representing the set of calculations
Returns:None
prep.maketree(calcs, pseudodir=None, workdir=None)[source]

Make the directoy tree and place in the input file there

Parameters:

calcs (dict) –

  • Dictionary of dictionaries of calculations

Keyword Arguments:
 
  • pseudodir (str) – path of pseudopotential files directory
  • workdir (str) – a string of the workdir path that be used to override what is in the config file used when initating the AFLOWpi session
Returns:

None

prep.modifyCalcs(old, new, calcs)[source]

Modify the calculation in each subdir and update the master dictionary

Parameters:
  • old (str) – string to replace
  • new (str) – replacement string
  • calcs (dict) – dictionary of dictionaries of calculations
prep.modifyInputPrefixPW(calcs, pre)[source]

A Wrapper function that is used to write a function to the _ID.py

Parameters:calcs (dict) – a dictionary of dicionaries representing the set of calculations
Returns:None
prep.modifyNamelistPW(calcs, namelist, parameter, value, runlocal=False)[source]

A Wrapper function that is used to write the function AFLOWpi.prep._modifyNameListPW to the _ID.py. If the value is intended to be a string in the QE input file, it must be dually quoted i.e. value=“‘scf’” will become ‘scf’ in the input file.

Parameters:
  • calcs (dict) – a dictionary of dicionaries representing the set of calculations
  • namelist (str) – a string of the fortran namelist that the parameter is in
  • parameter (str) – a string of the parameter name
  • value – the value of that parameter
Keyword Arguments:
 

runlocal (bool) – a flag to choose whether or not to run the wrapped function now or write it to the _ID.py to run during the workflow.

Returns:

Either the identical set of calculations if runlocal == False or the set of calculations with the parameter’s value changed in their oneCalc[‘_AFLOWPI_INPUT_’] if runlocal==True

prep.newstepWrapper(pre)[source]

A function that wraps another function that is to be run before the a certain function runs. Its use must be in the form:

@newstepwrapper(func) def being_wrapped(oneCalc,ID,*args,**kwargs)

where func is the function that is to be run before and being_wrapped is the function being wrapped. oneCalc and ID must be the first two arguments in the function being wrapped. additional arguments and keyword arguments can follow.

Parameters:pre (func) – function object that is to be wrapped before another function runs
Returns:the returned values of function being wrapped or the execution of the function is skipped entirely.
class prep.plotter(calcs)[source]

Class for adding common plotting functions from AFLOWpi.plot module to the high level user interface.

bands(yLim=[-10, 10], DOSPlot='', runlocal=False, postfix='')[source]

Wrapper method to call AFLOWpi.plot.bands in the high level user interface.

Parameters:

self – the plotter object

Keyword Arguments:
 
  • yLim (list) – a tuple or list of the range of energy around the fermi/Highest occupied level energy that is to be included in the plot.
  • DOSPlot (str) –

    a string that flags for the option to have either a DOS plot share the Y-axis of the band structure plot.

    Options include: “” | A blank string (default) will cause No Density of

    States plotted alongside the Band Structure

    “APDOS” | Atom Projected Density of States “DOS” | Normal Density of States

  • LSDA (bool) – Plot the up and down of a spin polarized orbital projected DOS calculation.
  • runlocal (bool) – a flag to choose whether or not to run the wrapped function now or write it to the _ID.py to run during the workflow
  • postfix (str) – a string of an optional postfix to the plot filename for every calculation.
Returns:

None

dos(yLim=[-10, 10], runlocal=False, postfix='')[source]

Wrapper method to call AFLOWpi.plot.dos in the high level user interface.

Parameters:

self – the plotter object

Keyword Arguments:
 
  • yLim (list) – a tuple or list of the range of energy around the fermi/Highest occupied level energy that is to be included in the plot.
  • LSDA (bool) – Plot the up and down of a spin polarized DOS calculation.
  • runlocal (bool) – a flag to choose whether or not to run the wrapped function now or write it to the _ID.py to run during the workflow
  • postfix (str) – a string of an optional postfix to the plot filename for every calculation.
Returns:

None

opdos(yLim=[-10, 10], runlocal=False, postfix='')[source]

Wrapper method to call AFLOWpi.plot.opdos in the high level user interface.

Parameters:

self – the plotter object

Keyword Arguments:
 
  • yLim (list) – a tuple or list of the range of energy around the fermi/Highest occupied level energy that is to be included in the plot.
  • LSDA (bool) – Plot the up and down of a spin polarized orbital projected DOS calculation.
  • runlocal (bool) – a flag to choose whether or not to run the wrapped function now or write it to the _ID.py to run during the workflow
  • postfix (string) – a string of an optional postfix to the plot filename for every calculation.
Returns:

None

phonon(runlocal=False, postfix='', THz=True)[source]
prep.prep_split_step(calcs, subset_creator, subset_tasks=[], mult_jobs=False, substep_name='SUBSET', keep_file_names=False, clean_input=True, check_function=None, fault_tolerant=False)[source]
prep.remove_blank_lines(inp_str)[source]

Removes whitespace lines of text

Parameters:inp_str (str) – input string of text
Returns:the same string with blank lines removed
prep.runAfterAllDone(calcs, command, faultTolerant=True)[source]

Adds a command to the BATCH command block at the end of each calculation’s _ID.py for all calculations in the set. Used to execute a command over all calculations in particular step have completed.

Parameters:

calcs (dict) – a dictionary of dicionaries representing the set of calculations

Keyword Arguments:
 
  • command (str) – the text to be added to the BATCH block
  • faultTolerant (bool) – a flag to choose if we return True if some of the calculations ran but did not complete successful
Returns:

None

prep.scfs(aflowkeys, allAFLOWpiVars, refFile, pseudodir=None, build_type='product', convert=False)[source]

Read a reference input file, and construct a set of calculations from the allAFLOWpiVars dictionary defining values for the keywords in the reference input file. This will also create directory within the set directory for every calculation in the set.

Parameters:
  • allAFLOWpiVars (dict) – a dictionary whose keys correspond to the keywords in the reference input file and whose values will be used to construct the set of calculations
  • refFile (str) – a filename as a string, a file object, or a string of the file that contains keywords to construct the inputs to the different calculations in the set
Keyword Arguments:
 
  • pseudodir (str) – path of the directory that contains your Pseudopotential files The value in the AFLOWpi config file used will override this.
  • build_type (str) –

    how to construct the calculation set from allAFLOWpiVars dictionary:

    zip | The first calculation takes the first entry from the list of
    each of the keywords. The second calculation takes the second
    and so on. The keywords for all lists in allAFLOWpiVars must be
    the same length for this method.
    product | Calculation set is formed via a “cartesian product” with
    the values the list of each keyword combined. (i.e if
    allAFLOWpiVars has one keyword with a list of 5 entires and
    another with 4 and a third with 10, there would be 2000
    calculations in the set formed from them via product mode.
Returns:

A dictionary of dictionaries containing the set of calculations.

class prep.tb_plotter(calcs)[source]

Class for adding common plotting functions from AFLOWpi.plot module to the high level user interface.

bands(yLim=[-5, 5], DOSPlot='', runlocal=False, postfix='')[source]
dos(yLim=[-5, 5], runlocal=False, postfix='')[source]
opdos(yLim=[-5, 5], runlocal=False, postfix='')[source]
optical(runlocal=False, postfix='', x_range=None)[source]

Wrapper method to call AFLOWpi.plot.epsilon in the high level user interface.

Parameters:

self – the plotter object

Keyword Arguments:
 
  • nm (bool) – whether to plot in nanometers for spectrum or eV for energy
  • runlocal (bool) – a flag to choose whether or not to run the wrapped function now or write it to the _ID.py to run during the workflow
Returns:

None

transport(runlocal=False, postfix='', x_range=None)[source]

Wrapper method to call AFLOWpi.plot.epsilon in the high level user interface.

Parameters:

self – the plotter object

Keyword Arguments:
 
  • nm (bool) – whether to plot in nanometers for spectrum or eV for energy
  • runlocal (bool) – a flag to choose whether or not to run the wrapped function now or write it to the _ID.py to run during the workflow
Returns:

None

class prep.tight_binding(calcs, cond_bands=True, proj_thr=0.95, kp_factor=2.0, proj_sh=5.5, cond_bands_proj=True)[source]
bands(nk=1000, nbnd=None, eShift=15.0, cond_bands=True)[source]
dos(dos_range=[-5.5, 5.5], k_grid=None, projected=True, de=0.05, cond_bands=True, fermi_surface=False)[source]
effmass(temperature=[300.0, 300.0], step=1)[source]
optical(en_range=[0.05, 5.05], de=0.05)[source]
transport(temperature=[300], en_range=[-5.05, 5.05], de=0.05)[source]

Wrapper method to call AFLOWpi.scfuj.prep_transport and AFLOWpi.scfuj.run_transport in the high level user interface. Adds a new step to the workflow.

Parameters:

self – the _calcs_container object

Keyword Arguments:
 
  • epsilon (bool) – if True episilon tensor will be computed
  • temperature (list) – list of temperature(s) at which to calculate transport properties
Returns:

None

prep.totree(tobecopied, calcs, rename=None, symlink=False)[source]

Populate all the subdirectories for the calculation with the file in input

Parameters:
  • tobecopied (str) – filepath to be copied to the AFLOWpi directory tree
  • calcs (dict) – Dictionary of dictionaries of calculations
Keyword Arguments:
 
  • rename (bool) – option to rename the file/directory being moves into the AFLOWpi directory tree
  • symlink (bool) – whether to copy the data to the AFLOWpi directory tree or to use symbolic links
Returns:

None

prep.unlockAtomMovement(calcs)[source]

A Wrapper function that writes the function AFLOWpi.prep._unfreezeAtoms to the _ID.py

Parameters:calcs (dict) – a dictionary of dicionaries representing the set of calculations
Returns:None
prep.updateStructs(calcs, update_structure=True, update_positions=True)[source]

A Wrapper function that writes the function AFLOWpi.prep._oneUpdateStructs to the _ID.py

Parameters:

calcs (dict) – a dictionary of dicionaries representing the set of calculations

Keyword Arguments:
 
  • update_structure (bool) – if True update the cell parameter if possible from the output of previous calculations in the workflow.
  • update_positions (bool) – if True update the atomic positions if possible from the output of previous calculations in the workflow.
Returns:

The identical set of calculations as the input to this function

prep.updatelogs(calcs, logname, runlocal=False)[source]
prep.varyCellParams(oneCalc, ID, param=(), amount=0.15, steps=8, constraint=None)[source]

Forms and returns a set of calcs with varied cell params must be in A,B,C, and, in degrees,alpha,beta,gamma and then returns it.

Parameters:
  • oneCalc (dict) – a dictionary containing properties about the AFLOWpi calculation
  • ID (str) – ID string for the particular calculation and step
Keyword Arguments:
 
  • param (tuple) – the params assoc. with the amount and step. i.e. (‘celldm(1)’,’celldm(3))
  • amount (float) – percentage amount to be varied up and down. i.e (0.04,0.02,0.01)
  • steps (int) – how many steps to within each range. i.e (4,5,7)
  • constraint (list) – a list or tuple containing two entry long list or tuples with the first being the constraint type and the second the free parameter in params that its constraining for example in a orthorhombic cell: constraint=([“volume”,’c’],) allows for A and B to move freely but C is such that it keeps the cell volume the same in all calculations generated by the input oneCalc calculation.
Returns:

A dictionary of dictionaries representing a new calculation set

prep.writeToScript(executable, calcs, from_step=0)[source]

Generates calls on several functions to set up everything that is needed for a new step in the workflow. The mechanics of the _ID.py are written to it here.

Parameters:
  • calcs (dict) – dictionary of dictionaries of calculations
  • executable (str) – <DEFUNCT OPTION: HERE FOR LEGACY SUPPORT>
  • *args – <DEFUNCT OPTION: HERE FOR LEGACY SUPPORT>
Keyword Arguments:
 

**kwargs – <DEFUNCT OPTION: HERE FOR LEGACY SUPPORT>

Returns:

A set of calculations for a new step in the workflow