winak.screening package

Submodules

winak.screening.composition module

class winak.screening.composition.Stoichiometry

Keeps track of changes in stoichiometry. Also spawns new trajectories when the composition changes.

get(atoms)
has_changed(atoms, fallbackatoms)
make_traj()

winak.screening.criterion module

class winak.screening.criterion.Criterion

Bases: object

This class accepts or declines a step in any way you see fit.

evaluate(tmp, en)

subclasses must implement this method. Has to return a boolean if tmp is accepted

print_params()

subclasses must implement this method. Has to return a string containing all the important parameters

class winak.screening.criterion.GCMetropolis(T=0.0003166813596507346, energy='pot')

Bases: winak.screening.criterion.Criterion

Just copied and pasted for now, actually should work out of the box if the energy evaluator is correct.

evaluate(tmp, en)
print_params()
class winak.screening.criterion.Metropolis(T=0.0003166813596507346, energy='pot')

Bases: winak.screening.criterion.Criterion

evaluate(tmp, en)
print_params()

winak.screening.displacer module

winak.screening.energyevaluator module

class winak.screening.energyevaluator.EE(calc, optlog='opt.log')

Bases: object

This class relaxes an ase.atoms object in any way you see fit. The only restriction is, that it must have a get_energy and a print_params method as described below.

get_energy(atoms)

subclasses must implement this method. Has to return a list containting the optimized ase.atoms object and then the energy or None if something went wrong

print_params()

subclasses must implement this method. Has to return a string containing all the important parameters

class winak.screening.energyevaluator.grandEE(calc, opt, fmax, opt2=None, fmax2=None, optlog='opt.log', ecomp={}, mu={}, eref=0.0, adsorbate=None)

Bases: winak.screening.energyevaluator.EE

grandcanonical potential energy optimization. evaluates the free energy of formation for gas-phase molecules or the surface free energy per unit area for surface adsorptions/reconstructions starting with opt until fmax and then followed by opt2 until fmax2 is reached. Use of 2 optimizers is optional

get_energy(atoms)

comp is the composition array (i.e. n_i), mu is the array of chemical potentials, ecomp is the array of the total energy of components (e.g. atomic) DICTIONARIES

print_params()
class winak.screening.energyevaluator.potEE(calc, opt, fmax, opt2=None, fmax2=None, optlog='opt.log')

Bases: winak.screening.energyevaluator.EE

standard potential energy optimization, starting with opt until fmax and then followed by opt2 until fmax2 is reached. Use of 2 optimizers is optional

get_energy(atoms)

If it hasn’t converged after 3000 steps, it probably won’t ever

print_params()

winak.screening.ultimatescreener module

class winak.screening.ultimatescreener.UltimateScreener(atoms, EnergyEvaluator, Displacer, Criterion, trajectory='minima.traj', logfile='tt.log')

by Konstantin Krautgasser, November 2015

log(msg)
run(steps)

Screen for defined number of steps.

Module contents

Screening