BuildMultiRandomizedStructure#

class autoplex.data.rss.flows.BuildMultiRandomizedStructure(tag, generated_struct_numbers, buildcell_options=None, fragment_file=None, fragment_numbers=None, remove_tmp_files=True, initial_selection_enabled=False, selected_struct_numbers=None, bcur_params=None, random_seed=None, num_processes=1, name='do_randomized_structure_generation')[source]#

Bases: Maker

Maker to create random structures by ‘buildcell’.

Parameters:
  • tag (str) – Tag of systems. It can also be used for setting up elements and stoichiometry. For example, ‘SiO2’ will generate structures with a 2:1 ratio of Si to O.

  • generated_struct_numbers (list[int]) – Expected number of generated randomized unit cells.

  • buildcell_option (dict) – Customized parameters for buildcell.

  • fragment_file (Atoms | list[Atoms] (optional)) – Fragment(s) for random structures, e.g. molecules, to be placed indivudally intact. atoms.arrays should have a ‘fragment_id’ key with unique identifiers for each fragment if in same Atoms. atoms.cell must be defined (e.g. Atoms.cell = np.eye(3)*20).

  • fragment_numbers (list[str] (optional)) – Numbers of each fragment to be included in the random structures. Defaults to 1 for all specified.

  • remove_tmp_files (bool) – Remove all temporary files raised by buildcell to save memory.

  • initial_selection_enabled (bool) – If true, sample structures using CUR.

  • selected_struct_numbers (list) – Number of structures to be sampled.

  • bcur_params (dict) – Parameters for Boltzmann CUR selection.

  • random_seed (int) – A seed to ensure reproducibility of CUR selection.

  • num_processes (int) – Number of processes to use for parallel computation.

  • name (str) – Name of the flows produced by this maker.

  • buildcell_options (list[dict] | None)

make()[source]#

Maker to create random structures by buildcell.