5.6. [config] section

This section specifies configurations such as alloy coordination. An example is shown as follows:

[config]
unitcell = [[8.1135997772, 0.0000000000, 0.0000000000],
            [0.0000000000, 8.1135997772, 0.0000000000],
            [0.0000000000, 0.0000000000, 8.1135997772]]
supercell = [1,1,1]

[[config.base_structure]]
type = "O"
coords = [
    [0.237399980, 0.237399980, 0.237399980],
    [0.762599945, 0.762599945, 0.762599945],
    ...
    [0.262599975, 0.262599975, 0.762599945],
    ]

[[config.defect_structure]]
coords = [
    [0.000000000, 0.000000000, 0.000000000],
    [0.749999940, 0.249999985, 0.499999970],
    ...
    [0.124999993, 0.624999940, 0.124999993],
    ]
[[config.defect_structure.groups]]
name = 'Al'
# species = ['Al']    # default
# coords = [[[0,0,0]]]  # default
num = 16
[[config.defect_structure.groups]]
name = 'Mg'
# species = ['Mg']    # default
# coords = [[[0,0,0]]]  # default
num = 8

5.6.1. Input Format

Keywords and their values are specified by a keyword and its value in the form keyword = value. Comments can also be entered by adding # (Subsequent characters are ignored).

5.6.2. Key words

In the case of solver.type != "potts"

  • Specify lattice

    • unitcell

      Format : list

      Description : Lattice vector \(\bf{a}, \bf{b}, \bf{c}\) by the list format [ \(\bf{a}, \bf{b}, \bf{c}\) ] .

    • supercell

      Format : list

      Description : The size of super lattice by the list format[ \(\bf{a}, \bf{b}, \bf{c}\) ].

    • init_structure

      Format : str

      Description : The name of structure file (e.g., POSCAR, cif) to be used as the initial structure. If not specified, the initial structure is generated randomly based on [[config.base_structure]] and [[config.defect_structure]].

    • constraint_module

      Format : bool (“true” or “false”)

      Description : Whether to apply a constraint condition to configurations. The default value is false.

      When it is set to true, the constraint condition is given as a user-defined function with the name constraint_func in constraint_module.py. This function takes structure data of pymatgen.core.Structure type, and returns a boolean value. The module may also contain a function named constraint_energy that evaluates energy from the structure data in the shuffle operation.

    • constraint

      Format : str

      Description : The name of the user-defined function used for a constraint condition to configurations. If it is not specified, no constraint is applied. The default is unspecified.

      The constraint condition is given as a function that takes structure data of pymatgen.core.Structure type and returns a boolean value. The parameter constraint specifies the name of the function in the form "module_name.function_name". When constraint_module is also set to true, the value of constraint is adopted for the function name.

  • [[config.base_structure]] section

    type and coords specify the atomic species that do not move in Monte Carlo calculation and their coordinates. If there are multiple atomic species, specify multiple [[config.base_structure]] sections.

    • type

      Format : str

      Description : Atomic specie.

    • coords

      Format : list of lists or str

      Description : Coordinates. Specify a list of N elements (number of atoms) arranged in 3 elements representing 3D coordinates, or a string of coordinates arranged in N rows and 3 columns.

  • [[config.defect_structure]] section

    This sections specifies the lattice coordinates (coords) and atoms (or atom groups) (groups) that can reside on those lattice sites. Monte Carlo sampling is performed on the lattice specified in this section. In Ver. 1.0, conversion tools from POSCAR and cif will be available.

    • coords

      Format : list of lists or str

      Description : The coordinates of the lattice sites where atoms reside. A list of N elements (number of atoms) arranged in 3 elements representing 3D coordinates, or a string of coordinates arranged in N rows and 3 columns.

    • [[config.defect_structure.groups]] section

      The atom group information to be updated by Monte Carlo.

      • name

        Format : str

        Description : The name of atomic group.

      • species

        Format : list

        Description : The atomic species belonging to the atom group. The default value is a list containing only one specified by name. A vacancy can be represented by an empty list [].

      • coords

        Format : list of lists of lists or str

        Description : The coordinates of each atom in the atom group in each direction of local orientation. N (number of atoms) three-element lists, each of which is a list of three elements representing three-dimensional coordinates, is specified as a three-fold list, arranged by orientation. For example, if there are two atoms in the atom group and there are three different orientations, x,y,z, then coords can be specified as:

        coords = [
        [ # dir-1
        [0.0, 0.0, 0.0], [0.5, 0.0, 0.0]
        ],
        [ # dir-2
        [0.0, 0.0, 0.0], [0.0, 0.5, 0.0]
        ],
        [ # dir-3
        [0.0, 0.0, 0.0], [0.0, 0.0, 0.5]
        ],
        ]
        

        The default value is [[0.0, 0.0, 0.0]], so this keyword can be omitted if there is only one atom in the atom group.

      • relaxation

        Format : list of lists or str

        Description : Whether to optimize structure (coordinates) or not for each atom and dimension. A list of N elements (number of atoms) with 3 booleans (“true” or “false”), or a string of “true” or “false” arranged in N rows and 3 columns. Default is ["true", "true", "true"] for all the atoms.

      • magnetization

        Format : list

        Description : Magnetization (the difference between the number of up and down electrons) for each atom. Default is 0.0 for all the atoms.

      • num

        Format : int

        Description : The number of atom groups of the type specified in this section.

  • [[config.chemical_potential]] section

    This section specifies the chemical potentials of the atoms and atom groups for the grand canonical sampling.

    • species

      Format : str, or list of strs

      Description : Name of atom or atom group, or a list of names of atom groups when a set of atom groups are considered simultaneously.

    • mu

      Format : float

      Description : The value of chemical potential that corresponds to species.

  • [[config.grandcanonical_move]] section

    This section specifies how the atoms or atom groups are added/removed. It also describes how atoms of one type are replaced by those of another type when such processes are considered.

    • add/remove atoms or atom groups:

      • species

        Format : str, or list of strs

        Description : Name of atom or atom group, or a list of names of atom groups when a set of atom groups are considered simultaneously.

    • replace atoms:

      • from, to

        Format : str, or list of strs

        Description : Names of atoms or atom groups to be replaced are specified in the form of from A to B. It also implies the reverse process from B to A. The number of atoms of from and to must be equal, and the atoms are assumed to belong to the same defect sublattice.

    If grandcanonical_move is not specified, the addition/removal of species of chemical_potential are implicitly introduced. Otherwise, only the specified processes may occur.

In the case of solver.type = "potts"

  • Q

    Format : int

    Description : The local degree of freedom of a spin.

  • L

    Format : List of integers

    Description : Size of a hyper cubic lattice.