.. include:: .. highlight:: none .. _config-section: [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 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). Key words ^^^^^^^^^^ In the case of ``solver.type != "potts"`` ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - Specify lattice - ``unitcell`` **Format :** list **Description :** Lattice vector :math:`\bf{a}, \bf{b}, \bf{c}` by the list format [ :math:`\bf{a}, \bf{b}, \bf{c}` ] . - ``supercell`` **Format :** list **Description :** The size of super lattice by the list format[ :math:`\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-orr: - ``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.