Database Generation
Generate a database generation template file using atl_gen_configuration_file -t database_generation.
Attention
All keys are mandatory unless stated otherwise.
Database - [database]
General settings and file paths for the database.
database_name:
Description: Name of the database to be used for internal reference and as the filename.
Type:
(str)Example:
'my_material_db'.
min_num_atoms:
Description: Minimum number of atoms allowed in the generated structures.
Type:
(int)Default:
64.
max_num_atoms:
Description: Maximum number of atoms allowed in the generated structures.
Type:
(int)Default:
128.
min_cell_size:
Description: Minimum cell size in Angstrom.
Type:
(float)Default:
5.0.
relax_struct_path:
Description: Path to a folder containing DFT optimized structures.
Type:
(optional, str)Default:
''.
database_path:
Description: Path where the final database will be saved.
Type:
(str, PosixPath)Default:
''.
rng_seed:
Description: Numerical value used to fix the RNG seed. If not specified, it will be chosen randomly each run.
Type:
(optional, int)Example:
42.
overwrite_db:
Description: Allow database overwrite. If false, and the database exists, the new database name will include a timestamp.
Type:
(optional, bool)Default:
False.
Composition - [database.composition]
Settings for the composition of the database.
size:
Description: Maximum number of structures to generate for the database.
Type:
(int)Default:
7500.
Ratios - [database.composition.ratios]
Fraction of different structure types. The sum of the fractions must be equal to 1.0.
bulk:
Description: Fraction of structures that will be bulk.
Type:
(float)Default:
0.4.
surface:
Description: Fraction of structures that will be surfaces.
Type:
(float)Default:
0.6.
cluster:
Description: Fraction of structures that will be clusters.
Type:
(optional, float)Default:
0.0.
Plot_Db - [database.plot_db]
Display and Export Options for the phase diagram plot.
show:
Description: Whether to display the database with a phase diagram after creation.
Type:
(optional, bool)Default:
True.
format:
Description: Format for the figure.
Type:
(optional, str)Default:
'png'.Possible values are:
png,svg.
Rc_Params - [database.plot_db.rc_params]
Matplotlib rcParams for the plot.
font.family:
Description: Font family for the phase diagram plot.
Type:
(str)Default:
'monospace'.
font.size:
Description: Font size for the phase diagram plot.
Type:
(int)Default:
14.
Show_Db_Ase - [database.show_db_ase]
ASE GUI display options.
Attention
This section is optional.
show:
Description: Whether to display the database using ASE GUI after creation.
Type:
(optional, bool)Default:
False.
Export - [database.export]
Export options for the database.
export:
Description: Whether to export the database.
Type:
(bool)Default:
True.
format:
Description: Export format supported by ASE (e.g., ‘extxyz’).
Type:
(str)Default:
'extxyz'.
file_path:
Description: Path where the exported file will be saved.
Type:
(str, PosixPath)Default:
''.
file_name:
Description: Name of the exported file.
Type:
(str)Default:
'export_db_filename'.
Phase_Diagram - [phase_diagram]
Description of the phase diagram.
material_name:
Description: Internal name for the material in the phase diagram.
Type:
(str)Default:
'default_material_name'.
element_list:
Description: List of elements to include in the phase diagram.
Type:
(list[str])Example:
['Cu', 'O']
base_element:
Description: Symbol of the most abundant element in the phase.
Type:
(str)Example:
'Cu'.
Phase Definition - [phase_diagram.phase]
Defines a specific phase within the phase diagram. Multiple phases can be added.
Phase Definition - [phase_diagram.phase.XXXXX]
This key describes settings for dynamic entries. Several entries can be added by using different key names.
The key name (XXXXX) is used as the reference name. Replace XXXXX with a name of your choice.
Accepted parameters for each entry:
name:
Description: Name to be used as reference for the phase.
Type:
(str)Example:
'alpha'.
cluster_element:
Description: Symbol of the element defining the cluster.
Type:
(optional, str)
prototype:
Description: Materials Project ID of the prototypical structure.
Type:
(str)Example:
'mp-30'.
offset:
Description: Fraction of composition allowed over and under the phase limits.
Type:
(float)Default:
0.1.
limit_max_num_structures:
Description: Maximum number of structures to generate for this phase.
Type:
(optional, int)Default:
100.
allow_modifications:
Description: Allow modifications (supercells, replacements, etc.) to the base structure.
Type:
(optional, bool)Default:
True.
use_cache:
Description: Store structures in cache to speed up generation. Can consume a lot of disk space.
Type:
(optional, bool)Default:
False.
Parameters using composition. prefix:
Parameters using replacements. prefix:
replacements.replace:
Description: Whether to replace specific elements. Elements in element_list will be considered for replacement and replaced by a single element species.
Type:
(optional, bool)Default:
False.
replacements.element_list:
Description: List of elements to be replaced.
Type:
(optional, list[str])Example:
['Ti']
replacements.replace_with:
Description: Element to replace with.
Type:
(optional, str)Example:
'Ir'.
Generation - [generation]
Structure generation settings.
generate_type:
Description: Types of structures to generate.
Type:
(list[str])Default:
['bulk', 'surface', 'cluster'].Possible values are:
bulk,surface,cluster.
Bulk - [generation.bulk]
Bulk structure generation settings.
num_struct:
Description: Number of structures to generate.
Type:
(int)Default:
25.
num_repeat:
Description: Number of repeats for each structure.
Type:
(int)Default:
5.
supercell_max_idx:
Description: Maximum Miller index for the bulk supercells.
Type:
(int)Default:
2.
Surface - [generation.surface]
Surface structure generation settings.
min_miller_index:
Description: Minimum Miller index used to generate surface structures.
Type:
(int)Default:
1.
max_miller_index:
Description: Maximum Miller index used to generate surface structures.
Type:
(int)Default:
3.
min_slab_size_ang:
Description: Minimum slab thickness in Angstrom.
Type:
(optional, float)Default:
7.0.
min_vacuum_size_ang:
Description: Minimum size of the vacuum layer in Angstroms.
Type:
(float)Default:
12.0.
get_supercells:
Description: Whether to generate supercells for surface structures.
Type:
(bool)Default:
True.
fixed_layers:
Description: Number of fixed layers in the surface slab.
Type:
(int)Default:
3.
max_number_supercells:
Description: Maximum number of surface supercells to generate.
Type:
(int)Default:
200.
save_in_db:
Description: Whether to save generated surfaces in the database.
Type:
(bool)Default:
True.
num_replacements:
Description: Number of replacement percentages to generate for each structure.
Type:
(int)Default:
20.
num_repeat_replace:
Description: Number of repeats for each replacement.
Type:
(int)Default:
2.
frac_slabs_save:
Description: Fraction of slabs to save after generation.
Type:
(optional, float)Default:
0.1.
frac_supercells_save:
Description: Fraction of unreplaced supercells to save after generation.
Type:
(optional, float)Default:
0.1.
max_slab_num:
Description: Maximum number of slabs to gather from the slab generation.
Type:
(int)Default:
15.
n_workers:
Description: Maximum number of workers for parallel processing.
Type:
(optional, int)
Deformation - [deformation]
Lattice deformation settings.
Attention
This section is optional.
lattice_frac_deform_max:
Description: Maximum deformation value as a percentage of the lattice side length.
Type:
(float)Default:
0.05.
lattice_frac_deform_min:
Description: Minimum deformation value as a percentage of the lattice side length.
Type:
(float)Default:
0.01.
num_repeats:
Description: Number of repeats for each structure with random deformations.
Type:
(int)Default:
5.
limit_max_num_deformations:
Description: Maximum number of lattice deformations to generate.
Type:
(int)Default:
100.
Perturbation - [perturbation]
Perturbation settings.
Attention
This section is optional.
filter_struct_types:
Description: Types of structures to which the perturbation will be applied.
Type:
(list[str])Default:
['bulk', 'surface'].Possible values are:
bulk,surface,cluster.
limit_max_num_perturbs:
Description: Maximum number of perturbations to generate.
Type:
(int)Default:
100.
num_repeats:
Description: Number of repeats for each structure with random perturbations.
Type:
(int)Default:
1.
perturbation_ang:
Description: Perturbation magnitude in Angstrom.
Type:
(optional, float)Default:
0.04.
Adsorbates - [adsorbates]
Adsorbate placement settings.
Attention
This section is optional.
filter_struct_types:
Description: Types of structures to which adsorbates will be added.
Type:
(optional, list[str])Default:
['surface'].Possible values are:
bulk,surface,cluster.
limit_max_num_perturbs:
Description: Maximum number of structures with adsorbates to generate.
Type:
(optional, int)Default:
100.
num_repeats:
Description: Number of repeats for each structure.
Type:
(int)Default:
1.
adsorbate_species:
Description: List of adsorbate species to consider.
Type:
(list[str])Example:
['H', 'H2O']
Struct_Filters - [struct_filters]
Settings for filtering out incorrect structures.
Attention
This section is optional.
No_Neighbors - [struct_filters.no_neighbors]
Filter for structures with atoms that have no neighbors.
cov_rad_multiplier:
Description: Multiplier applied to the covalent radii to be used as cutoff radius for the neighbor check.
Type:
(optional, float)Default:
1.2.
Layer_Distance - [struct_filters.layer_distance]
Filter for layer distances in surface slabs.
Attention
This section is optional.
max_layer_distance_ang:
Description: Maximum accepted distance between layers in Angstrom.
Type:
(optional, float)Default:
4.0.
Duplicate_Slabs - [struct_filters.duplicate_slabs]
Filter for duplicate slabs.
Attention
This section is optional.
tolerance:
Description: Tolerance for the duplicate slabs filter.
Type:
(optional, float)Default:
0.2.
Vacancies - [vacancies]
Settings for vacancy generation.
filter_struct_types:
Description: Types of structures to which vacancies will be applied.
Type:
(list[str])Default:
['bulk', 'surface'].Possible values are:
bulk,surface,cluster.
limit_max_num_vacancies:
Description: Maximum number of structures with vacancies to generate.
Type:
(optional, int)Default:
400.
num_repeats:
Description: Number of repeats for each structure with different random vacancies.
Type:
(int)Default:
3.
max_vacancy_percentage:
Description: Maximum vacancies to generate as a percentage of the total number of atoms.
Type:
(float)Default:
0.75.
min_vacancy_percentage:
Description: Minimum vacancies to generate as a percentage of the total number of atoms.
Type:
(float)Default:
0.025.
element_list:
Description: List of elements to consider for the vacancies.
Type:
(list[str])Example:
['O']
Targeted_Modification - [targeted_modification]
Settings for targeted structural modifications.
Attention
This section is optional.
Central_Atom_Octahedral - [targeted_modification.central_atom_octahedral]
Apply perturbations to the central atom in octahedral sites.
Attention
This section is optional.
filter_phases:
Description: Only apply the modification to the following phases.
Type:
(optional, list[str])Example:
['rutile', 'original_IrO2']
filter_struct_types:
Description: Types of structures to which the modification will be applied.
Type:
(optional, list[str])Default:
['bulk', 'surface'].Possible values are:
bulk,surface,cluster.
central_element:
Description: Symbol of the central element of the octahedral site.
Type:
(optional, str)Example:
'Ir'.
num_repeats:
Description: Number of repeats for each structure with different perturbations.
Type:
(optional, int)Default:
3.
limit_max_num_modifications:
Description: Maximum number of modified structures to generate.
Type:
(optional, int)Default:
200.
max_perturbation_ang:
Description: Maximum perturbation movement of the central atom in Angstrom.
Type:
(optional, float)Default:
0.2.
Concave_Hull - [concave_hull]
Settings for descriptors and concave hull generation.
Attention
This section is optional.
gen_concave_hull:
Description: Whether to generate the concave hull of the descriptors for all structures in the database.
Type:
(optional, bool)Default:
False.
descriptor:
Description: Descriptor to use for the concave hull generation.
Type:
(optional, str)Default:
'SOAP'.Possible values are:
SOAP,MACE.
dim_reduction:
Description: Dimensionality reduction method for the concave hull generation.
Type:
(optional, str)Default:
'autoencoder'.Possible values are:
PCA,autoencoder.
plot_filename:
Description: Filename for the figure displaying the concave hull.
Type:
(optional, str)Default:
'descriptors_concave_hull.png'.