pyxtal.optimize.common module
Common utlities for global search
- pyxtal.optimize.common.check_stable_structure(xtal, c_info, w_dir, job_tag, skip_ani, optimizer, disps=[0.5, 5.0], random=False, verbose=False)[source]
Check the stability of input xtal based on lattice mutation
- pyxtal.optimize.common.compute(row, pmg, work_dir, skf_dir, info=None)[source]
perform the benchmark for a ase db row object
- Arg:
row: ase db
- pyxtal.optimize.common.compute_par(row, pmg, work_dir, skf_dir, queue, compute)[source]
- Parameters:
xtal
queue
- pyxtal.optimize.common.load_reference_from_db(db_name, code=None)[source]
Load the reference data from the db file
- Parameters:
db_name (str) – database path
code (str) – code name
- Returns:
a list of args
- pyxtal.optimize.common.mutator(xtal, smiles, opt_lat, ref_pxrd=None, dr=0.125, random_state=None)[source]
A random mutation.
- pyxtal.optimize.common.optimizer(struc, atom_info, workdir, tag='job_0', opt_lat=True, calculators=None, max_time=180, skip_ani=False, pre_opt=False)[source]
Structural relaxation for each individual pyxtal structure.
- Parameters:
struc – pyxtal
workdir – working directory
calculators – e.g., [‘CHARMM’, ‘GULP’]
- Returns:
a dictionary with xtal, energy and time
- pyxtal.optimize.common.optimizer_par(xtals, ids, mutates, job_tags, randomizer, optimizer, smiles, block, num_block, atom_info, workdir, sgs, comp, lattice, torsions, molecules, sites, ref_pmg, matcher, ref_pxrd, use_hall, skip_ani, check_stable, pre_opt)[source]
A routine used for parallel structure optimization
- Parameters:
xtals – list of xtals
ids – list of structure ids
- pyxtal.optimize.common.optimizer_single(xtal, id, mutate, job_tag, randomizer, optimizer, smiles, block, num_block, atom_info, workdir, sgs, comp, lattice, torsions, molecules, sites, ref_pmg, matcher, ref_pxrd, use_hall, skip_ani, check_stable, pre_opt)[source]
A routine used for individual structure optimization
- Parameters:
xtal
id – structure id
randomizer
optimizer
- pyxtal.optimize.common.randomizer(smiles, sgs, comp, lattice=None, block=None, num_block=None, torsions=None, molecules=None, sites=None, use_hall=False, factor=1.1, random_state=None)[source]
A random structure generation engine
- Parameters:
smiles – e.g. [‘CCCCC’, ‘CC’]
sgs – e.g. [2, 4, 14]
comp – e.g. [0.5, 0.5]
lattice – pyxtal.Lattice object
block
num_block
torsions
molecules – pre-specified pyxtal_molecule object
- Returns:
PyXtal object