# ABINIT, geometry builder and symmetry related input variables:

## List and description.

This document lists and provides the description of the name (keywords) of the "geometry builder and symmetry related" input variables to be used in the main input file of the abinit code.

##### Copyright (C) 1998-2017 ABINIT group (DCA,XG,RC,YG,FJ)

### Content of the file : alphabetical list of "geometry builder and symmetry related" variables.

A.
B. brvltt
C. chempot
D.
E.
F.
G. genafm
H.
I.
J.
K.
L.
M.
N. natrd nobj nzchempot
O. objaat objaax objan objarf objaro objatr objbat objbax objbn objbrf objbro objbtr
P. ptgroupma
Q.
R.
S. spgaxor spgorig spgroup spgroupma
T. tolsym
U.
V. vaclst vacnum
W.
X. xyzfile

brvltt
Mnemonics: BRaVais LaTTice type
Executable: abinit
Mentioned in topics: UnitCell, SmartSymm.
Moderately used: [29/907] in abinit tests, [0/136] in tuto abinit tests. Tuto test list: {}.
Variable type: integer
Default is 0
Only relevant if spgroup != 0

Set the type of Bravais lattice. The cell defined by acell and rprim or angdeg should be the CONVENTIONAL cell.

If brvltt=0, the code will assign brvltt from the space group information spgroup, and produce the symmetry operations for the conventional unit cell. If the conventional cell is not primitive, the user should set chkprim=0.

If brvltt=-1, the code will assign brvltt from the space group information, then reduce the unit cell to a primitive unit cell. The echo of acell and rprim might thus differ from those derived directly from the input variables. Also, the input variable xred will refer to the CONVENTIONAL unit cell, but its echo will refer to the preprocessed PRIMITIVE unit cell. There is of course no problem with xangst and xcart, as they are independent of the unit cell.

The echo of brvltt in the output file will be one of the following Bravais lattices:

- 1 = Primitive with no associated translations
- 2 = Inner centered with (a/2 + b/2 + c/2) associated translation
- 3 = Face centered with (a/2 + b/2; b/2 + c/2; c/2 + a/2) associated translations
- 4 = C - centered with (a/2 + b/2) associated translation
- 5 = A - centered with (b/2 + c/2) associated translation
- 6 = B - centered with (c/2 + a/2) associated translation
- 7 = Rhombohedral lattice.

The user might also input directly these values, although they might not be consistent with spgroup.

The space groups 146, 148, 155, 160, 161, 166, 167, when used with spgaxor=1 (hexagonal axes) will have brvltt=7 and two associated translations: (2/3, 1/3, 1/3) and (1/3, 2/3, 2/3).
For more details see the space group help file .

Go to the top | Complete list of input variables

chempot
Mnemonics: spatially varying CHEMical POTential
Executable: abinit
Mentioned in topic: Artificial.
Rarely used: [2/907] in abinit tests, [0/136] in tuto abinit tests. Test list: {v8:[30,31]}.
Variable type: real(3,nzchempot,ntypat)
Default is 0.0
Only relevant if nzchempot/=0

For each type of atoms, from 1 to ntypat, specifies the spatially varying chemical potential, through the specification of nzchempot triplets of real numbers. They give data for nzchempot delimiting planes, all parallel to each other, each determined by its z reduced coordinate. The first real number is the z reduced coordinate of the delimiting plane. The second real number is the value of the chemical potential for this type of atom on this plane. The third real number is the derivative of the chemical potential fior this type of atom with respect to the z reduced coordinate, evaluated on this plane. In the space between delimiting planes, a piecewise cubic polynomial interpolation is determined : the cubic polynomial between two delimiting planes will have the imposed chemical potentials and derivatives on the two delimiting planes. The z reduced coordinates must be ordered in increasing values, and cannot span more than 1.0 . There is an automatic periodic boundary condition imposed. Specifying two identical z reduced coordinates is allowed, and means that the first one applies to the adjacent space with lower values of z, while the second applies to the adjacent space with higher values of z. When the spatial chemical potential is defined only for one type of atom (and no chemical potential is present for the other atoms), simply set the related values to *0.0 in the chempot array. In the present input array, reduced positions, energies and derivatives of energies are mixed. Hence, although the chemical potential is an energy, one cannot use the usual energy definitions (i.e. the chemical potential is always to be input in Hartree atomic units).

Go to the top | Complete list of input variables

genafm
Mnemonics: GENerator of the translation for Anti-FerroMagnetic space group
Executable: abinit
Mentioned in topics: spinpolarisation, SmartSymm.
Rarely used: [1/907] in abinit tests, [0/136] in tuto abinit tests. Test list: {v3:[22]}.
Variable type: real(3)
Default is 3*0

This input variable might be used to define a Shubnikov type IV magnetic space group (anti-ferromagnetic space group). The user is advised to consult "The mathematical theory of symmetry in solids, Representation theory for point groups and space groups, 1972, C.J. Bradley and A.P. Cracknell, Clarendon Press, Oxford."
A Shubnikov type IV magnetic space group might be defined by its Fedorov space group (set of spatial symmetries, that do not change the magnetization), and one translation associated with a change of magnetization. genafm is precisely this translation, in reduced coordinates (like xred)
Thus, one way to specify a Shubnikov IV magnetic space group, is to define both spgroup and genafm. Alternatively, one might define spgroup and spgroupma, or define by hand the set of symmetries, using symrel, tnons and symafm

Go to the top | Complete list of input variables

natrd
Mnemonics: Number of AToms ReaD
Executable: abinit
Mentioned in topics: AtomManipulator, SmartSymm.
Moderately used: [52/907] in abinit tests, [1/136] in tuto abinit tests. Tuto test list: {tutorial:[nuc_1]}.
Variable type: integer
Default is natom

Gives the number of atoms to be read from the input file, in the case the atom manipulator or the smart symmetriser is used. In this case, natrd is also used to dimension the array typat, and the arrays xred, xangst and xcart.
Must take into account the vacancies (see vacnum and vaclst).
Despite possible vacancies, cannot be bigger than natom.

Go to the top | Complete list of input variables

nobj
Mnemonics: Number of OBJects
Executable: abinit
Characteristic: INPUT_ONLY
Mentioned in topic: AtomManipulator.
Rarely used: [3/907] in abinit tests, [0/136] in tuto abinit tests. Test list: {v1:[40,42,43]}.
Variable type: integer
Default is 0

Gives the number of 'objects' to be used by the atom manipulator in order to find the full set of atoms. At present, only one or two objects can be defined, identified as objects 'a' and 'b'.
Related variables for object 'a' are : objan, objaat, objarf, objatr, objaro, objaax. Related variables for object 'b' are : objbn , objbat , objbrf , objbtr , objbro , objbax .

More detailed explanation : when the atom manipulator is used (i.e. when nobj==1 or nobj==2), the code will be given a primitive set of atoms, from which it will have to deduce the full set of atoms.
An object will be specified by the number of atoms it includes (objan or objbn ), and the list of these atoms (objaat or objbat ).
Examples of physical realisation of an object can be a molecule, or a group of atom to be repeated, or a part of a molecule to be rotated. The atom amnipulator can indeed repeat these objects (objarf or objbrf ), rotate them (objaro or objbro ) with respect to an axis (objaax or objbax ), and translate them (objatr or objbtr ). After having generated a geometry thanks to rotation, translation and repetition of objects, it is possible to remove some atoms, in order to create vacancies (vacnum and vaclst). The number of atoms in the primitive set, those that will be read from the input file, is specified by the variable natrd. It will be always smaller than the final number of atoms, given by the variable natom. The code checks whether the primitive number of atoms plus those obtained by the repetition operation is coherent with the variable natom, taking into account possible vacancies.
You should look at the other variables for more information. Go to objan, for example.

Go to the top | Complete list of input variables

nzchempot
Mnemonics: Number of Z reduced coordinates that define the spatial CHEMical POTential
Executable: abinit
Mentioned in topic: Artificial.
Rarely used: [2/907] in abinit tests, [0/136] in tuto abinit tests. Test list: {v8:[30,31]}.
Variable type: integer
No default

Defines the number of z reduced coordinates that defines the spatially varying chemical potential. See the input variable chempot, of which nzchempot is the second dimension.

Go to the top | Complete list of input variables

objaat
Mnemonics: OBJect A : list of AToms
Executable: abinit
Characteristic: INPUT_ONLY
Mentioned in topic: AtomManipulator.
Rarely used: [3/907] in abinit tests, [0/136] in tuto abinit tests. Test list: {v1:[40,42,43]}.
Variable type: integer(objan)
No default
Only relevant if 'nobj==1'

Gives the list of atoms in object a. This list is specified by giving, for each atom, its index in the list of coordinates (xred, xangst or xcart), that also corresponds to a type of atom (given by the array type). These objects can be thought as molecules, or groups of atoms, or parts of molecules, to be repeated, rotated and translated to generate the full set of atoms.
Look at objarf for further explanations.

Go to the top | Complete list of input variables

objaax
Mnemonics: OBJect A : AXis
Executable: abinit
Characteristic: INPUT_ONLY, LENGTH
Mentioned in topic: AtomManipulator.
Rarely used: [2/907] in abinit tests, [0/136] in tuto abinit tests. Test list: {v1:[42,43]}.
Variable type: real(6)
No default (Comment: objaax must be provided if (nobj==1 and one component of objaro != 0). Moreover, objaax AND objbax must be provided if ( nobj == 2 and one component of objbro != 0 ).)

Gives, for each object, the cartesian coordinates of two points (first point : objaax(1:3) second point : objaax(4:6). By default, given in Bohr atomic units (1 Bohr=0.5291772108 Angstroms), although Angstrom can be specified, if preferred, since these variables have the 'LENGTH' characteristics.
The two points define an axis of rotation of the corresponding object.
Note that the rotation of the object is done BEFORE the object is translated.
The sign of the rotation angle is positive if the object is to be rotated clockwise when looking to it along the axis, from point 1 (coordinates 1:3) toward point 2 (coordinates 4:6).

Go to the top | Complete list of input variables

objan
Mnemonics: OBJect A : Number of atoms
Executable: abinit
Characteristic: INPUT_ONLY
Mentioned in topic: AtomManipulator.
Rarely used: [3/907] in abinit tests, [0/136] in tuto abinit tests. Test list: {v1:[40,42,43]}.
Variable type: integer
No default (Comment: objan MUST be provided if nobj==1. objan and objbn MUST be provided if nobj==2.)

Gives the number of atoms in object a. The list of atoms is given by the variables objaat.

Go to the top | Complete list of input variables

objarf
Mnemonics: OBJect A : Repetition Factors
Executable: abinit
Characteristic: INPUT_ONLY
Mentioned in topic: AtomManipulator.
Rarely used: [3/907] in abinit tests, [0/136] in tuto abinit tests. Test list: {v1:[40,42,43]}.
Variable type: integer(3)
Default is [1, 1, 1]

Gives three repetition factors of the objects a.
This gives the opportunity to generate a three-dimensional set of repeated objects, although a simple one-dimensional repetition will be easily obtained through the specification of
'nrep' 1 1
where 'nrep' is the 1D repetition factor.
The initial rotation and translation of the object, as well as the increment of rotation or translation from one object to the next are specified by the variables objaro and objatr, for object a,
Note that the atom manipulator will generate the full set of atoms from the primitive set of atoms using the following order : it will process each atom in the primitive list one by one, determine whether it belongs to either object a or object b, and then repeat it taking into account the proper rotation and translation, with the fastest varying repetition factor being the first, then the second, then the third.
In the final list of atoms, one will first find the atoms generated from atom 1 in the primitive list, then those generated from atom 2 in the primitive list, and so on.
If the atom manipulator is only used to rotate or translate an object, without repeating it, simply use 1 1 1, which is also the Default value.

Go to the top | Complete list of input variables

objaro
Mnemonics: OBJect A : ROtations
Executable: abinit
Characteristic: INPUT_ONLY
Mentioned in topic: AtomManipulator.
Rarely used: [2/907] in abinit tests, [0/136] in tuto abinit tests. Test list: {v1:[42,43]}.
Variable type: real(4)
Default is 4*0.0d0 (Comment: (no rotation))

Give, for each object, the angles of rotation in degrees to be applied to the corresponding object.
The rotation is applied before the translation, and the axis is defined by the variables objaax and objbax. See the latter variables for the definition of the sign of the rotation.
The first component objaro(1) and objbro (1) gives the angle of rotation to be applied to the first instance of the object. The second, third or fourth component (resp.) gives the increment of rotation angle from one instance to the next instance, defined by the first, second or third repetition factor (resp.) . This allows to generate 3D arrays of molecules with different rotation angles.

Go to the top | Complete list of input variables

objatr
Mnemonics: OBJect A : TRanslations
Executable: abinit
Characteristic: INPUT_ONLY, LENGTH
Mentioned in topic: AtomManipulator.
Rarely used: [3/907] in abinit tests, [0/136] in tuto abinit tests. Test list: {v1:[40,42,43]}.
Variable type: real(12)
Default is 12*0.0d0 (Comment: (no translation))

Give, for each object, the vectors of translations, in cartesian coordinates, to be applied to the corresponding object. By default, given in Bohr atomic units (1 Bohr=0.5291772108 Angstroms), although Angstrom can be specified, if preferred, since these variables have the 'LENGTH' characteristics.
The translation is applied after the rotation.
The first vector objatr(3,1) and objbtr(3,1) gives the translation to be applied to the first instance of the object. The second, third or fourth component (resp.) gives the increment of translation from one instance to the next instance, defined by the first, second or third repetition factor (resp.) . This allows to generate 3D arrays of molecules.
In general, when the objects are repeated, a translation vector must be given, since otherwise, the repeated objects pack in the same region of space. As an exception, one can have a set of molecules regularly spaced on a circle, in which case, only rotations are needed.
Not present in the dtset array (no internal).

Go to the top | Complete list of input variables

objbat
Mnemonics: OBJect B : list of AToms
Executable: abinit
Characteristic: INPUT_ONLY
Mentioned in topic: AtomManipulator.
Rarely used: [2/907] in abinit tests, [0/136] in tuto abinit tests. Test list: {v1:[42,43]}.
Variable type: integer(objbn)
No default
Only relevant if nobj==2

Gives the list of atoms in object b. This list is specified by giving, for each atom, its index in the list of coordinates (xred, xangst or xcart), that also corresponds to a type of atom (given by the array type). These objects can be thought as molecules, or groups of atoms, or parts of molecules, to be repeated, rotated and translated to generate the full set of atoms.
Look at objbrf for further explanations.

Go to the top | Complete list of input variables

objbax
Mnemonics: OBJect B : AXis
Executable: abinit
Characteristic: INPUT_ONLY, LENGTH
Mentioned in topic: AtomManipulator.
Rarely used: [1/907] in abinit tests, [0/136] in tuto abinit tests. Test list: {v1:[43]}.
Variable type: real(6)
No default (Comment: objbax must be provided if (nobj==1 and one component of objaro != 0). Moreover, objaax AND objbax must be provided if ( nobj == 2 and one component of objbro != 0 ).)

Gives, for each object, the cartesian coordinates of two points (first point : objbax(1:3) second point : objbax(4:6). By default, given in Bohr atomic units (1 Bohr=0.5291772108 Angstroms), although Angstrom can be specified, if preferred, since these variables have the 'LENGTH' characteristics.
The two points define an axis of rotation of the corresponding object.
Note that the rotation of the object is done BEFORE the object is translated.
The sign of the rotation angle is positive if the object is to be rotated clockwise when looking to it along the axis, from point 1 (coordinates 1:3) toward point 2 (coordinates 4:6).

Go to the top | Complete list of input variables

objbn
Mnemonics: OBJect B : Number of atoms
Executable: abinit
Characteristic: INPUT_ONLY
Mentioned in topic: AtomManipulator.
Rarely used: [2/907] in abinit tests, [0/136] in tuto abinit tests. Test list: {v1:[42,43]}.
Variable type: integer
No default (Comment: objan and objbn MUST be provided if nobj==2.)

Gives the number of atoms in either object b. The list of atoms is given by the variables objbat.

Go to the top | Complete list of input variables

objbrf
Mnemonics: OBJect B : Repetition Factors
Executable: abinit
Characteristic: INPUT_ONLY
Mentioned in topic: AtomManipulator.
Rarely used: [2/907] in abinit tests, [0/136] in tuto abinit tests. Test list: {v1:[42,43]}.
Variable type: integer(3)
Default is [1, 1, 1]

Gives three repetition factors of the objects a or b.
This gives the opportunity to generate a three-dimensional set of repeated objects, although a simple one-dimensional repetition will be easily obtained through the specification of
nrep 1 1 <r> where nrep is the 1D repetition factor.
The initial rotation and translation of the object, as well as the increment of rotation or translation from one object to the next are specified by the variables objbro and objbtr, for object b.
Note that the atom manipulator will generate the full set of atoms from the primitive set of atoms using the following order : it will process each atom in the primitive list one by one, determine whether it belongs to either object a or object b, and then repeat it taking into account the proper rotation and translation, with the fastest varying repetition factor being the first, then the second, then the third.
In the final list of atoms, one will first find the atoms generated from atom 1 in the primitive list, then those generated from atom 2 in the primitive list, and so on.
If the atom manipulator is only used to rotate or translate an object, without repeating it, simply use 1 1 1, which is also the Default value.

Go to the top | Complete list of input variables

objbro
Mnemonics: OBJect B : ROtations
Executable: abinit
Characteristic: INPUT_ONLY
Mentioned in topic: AtomManipulator.
Rarely used: [1/907] in abinit tests, [0/136] in tuto abinit tests. Test list: {v1:[43]}.
Variable type: real(4)
Default is 4*0.0d0 (Comment: (no rotation))

Give, for each object, the angles of rotation in degrees to be applied to the corresponding object.
The rotation is applied before the translation, and the axis is defined by the variables objaax and objbax. See the latter variables for the definition of the sign of the rotation.
The first component objaro(1) and objbro (1) gives the angle of rotation to be applied to the first instance of the object. The second, third or fourth component (resp.) gives the increment of rotation angle from one instance to the next instance, defined by the first, second or third repetition factor (resp.) . This allows to generate 3D arrays of molecules with different rotation angles.

Go to the top | Complete list of input variables

objbtr
Mnemonics: OBJect B : TRanslations
Executable: abinit
Characteristic: INPUT_ONLY, LENGTH
Mentioned in topic: AtomManipulator.
Rarely used: [2/907] in abinit tests, [0/136] in tuto abinit tests. Test list: {v1:[42,43]}.
Variable type: real(12)
Default is 12*0.0d0 (Comment: (no translation))

Give, for each object, the vectors of translations, in cartesian coordinates, to be applied to the corresponding object. By default, given in Bohr atomic units (1 Bohr=0.5291772108 Angstroms), although Angstrom can be specified, if preferred, since these variables have the 'LENGTH' characteristics.
The translation is applied after the rotation.
The first vector objatr(3,1) and objbtr(3,1) gives the translation to be applied to the first instance of the object. The second, third or fourth component (resp.) gives the increment of translation from one instance to the next instance, defined by the first, second or third repetition factor (resp.) . This allows to generate 3D arrays of molecules.
In general, when the objects are repeated, a translation vector must be given, since otherwise, the repeated objects pack in the same region of space. As an exception, one can have a set of molecules regularly spaced on a circle, in which case, only rotations are needed.

Go to the top | Complete list of input variables

ptgroupma
Mnemonics: PoinT GROUP number for the MAgnetic space group
Executable: abinit
Characteristic: INTERNAL_ONLY
Mentioned in topics: spinpolarisation, SmartSymm.
Variable type: integer
Default is 0

This internal variable characterizes a Shubnikov type III magnetic space group (anti-ferromagnetic space group). The user is advised to consult "The mathematical theory of symmetry in solids, Representation theory for point groups and space groups, 1972, C.J. Bradley and A.P. Cracknell, Clarendon Press, Oxford."
A Shubnikov type III magnetic space group might be defined by its Fedorov space group (set of all spatial symmetries, irrespective of their magnetic action), and the halving space group (only the symmetries that do not change the magnetization).
The specification of the halving space group might be done by specifying, for each point symmetry, the magnetic action. See Table 7.1 of the above-mentioned reference. Magnetic point groups are numbered from 1 to 58.

Related input variables : spgroup, spgroupma, genafm

Go to the top | Complete list of input variables

spgaxor
Mnemonics: SPace Group : AXes ORientation
Executable: abinit
Mentioned in topic: SmartSymm.
Rarely used: [8/907] in abinit tests, [0/136] in tuto abinit tests. Test list: {v1:[91,92,93,96],v3:[22,28,38],v4:[28]}.
Variable type: integer
Default is 1

It is taken into account only when spgroup/=0; it allows one to define the axes orientation for the specific space groups for which this is needed. Trigonal groups (number 146,148,155,160,161,166,167):

- 1 represents the hexagonal axes
- 2 represents the rhombohedral axes

Orthorhombic space groups : there are six possibilities corresponding to the possible axes permutations

- 1 abc -> abc
- 2 abc -> cab
- 3 abc -> bca
- 4 abc -> acb
- 5 abc -> bac
- 6 abc -> cba

Monoclinic : there are 3 or 9 possibilities depending on the space group. See the space group help file for details. In the log/output file the notation used to describe the monoclinic groups is for example:
15:c1, A2/a_c = C2/c
where,

- 15 represents the space group number,
- c1 the orientation as it appears on the web page,
- A is the real Bravais type lattice,
- 2/a the existent symmetry elements,
- _c marks the orientation of the two-fold axis or of the mirror plane,
- C2/c represents the parent space group.

How to determine which spgaxor you need:

1. check the reduced positions you have, for more symmetric positions, e.g. 1/2 1/4 3/4 etc... Let us say your symmetric positions are in the first coordinate (a axis) and you are using spgroup 62.
2. look up the raw space group Wyckoff positions on the Bilbao server to see where they put the corresponding symmetric positions. For spgroup 62 Bilbao puts the 1/4 3/4 in the second coordinate, ie along the b axis.
3. in this case you need to swap the axes from the original abc order to a new order where the Bilbao axis (b) is in the first position. In this case you have 2 possibilities, spgaxor 3 or 5. If you have more than one highly symmetric coordinate you may have only a single possibility.

Go to the top | Complete list of input variables

spgorig
Mnemonics: SPace Group : ORIGin
Executable: abinit
Mentioned in topic: SmartSymm.
Rarely used: [3/907] in abinit tests, [0/136] in tuto abinit tests. Test list: {v1:[91,93,95]}.
Variable type: integer
Default is 1
Only relevant if spgroup!=0

Gives the choice of origin for the axes system.
It is defined according to the origin choice in the International Tables of Crystallography.
It applies only to the space groups 48, 50, 59, 70, 85, 86, 88, 125, 126, 129, 130, 133, 134, 137, 141, 142, 201, 203, 222, 224, 227, 228.
For details see the space group help file .

Go to the top | Complete list of input variables

spgroup
Mnemonics: SPace GROUP number
Executable: abinit
Mentioned in topics: crystal, UnitCell, SmartSymm.
Moderately used: [37/907] in abinit tests, [1/136] in tuto abinit tests. Tuto test list: {tutorial:[nuc_1]}.
Variable type: integer
Default is 0

Gives the number of the space group.
If spgroup is 0, the code assumes that all the symmetries are input through the symrel matrices and the tnons vectors, or obtained from the symmetry finder (the default when nsym==0).
It should be between 1 and 230. This option can be used to obtain all the atoms in the unit cell, starting from the asymmetric unit cell.
The references for computing the symmetry corresponding to the space groups are :

- International Tables for Crystallography, 1983, Ed. Theo Hahn, D. Reidel Publishing Company
- The mathematical theory of symmetry in solids, Representation theory for point groups and space groups, 1972, C.J. Bradley and A.P. Cracknell, Clarendon Press, Oxford.

For details see the space group help file .
Go to the top | Complete list of input variables

spgroupma
Mnemonics: SPace GROUP number defining a MAgnetic space group
Executable: abinit
Characteristic: INPUT_ONLY
Mentioned in topics: spinpolarisation, SmartSymm.
Moderately used: [20/907] in abinit tests, [0/136] in tuto abinit tests. Tuto test list: {}.
Variable type: integer
Default is 0

This input variable might be used to define a Shubnikov magnetic space group (anti-ferromagnetic space group). The user is advised to consult "The mathematical theory of symmetry in solids, Representation theory for point groups and space groups, 1972, C.J. Bradley and A.P. Cracknell, Clarendon Press, Oxford."
A Shubnikov type IV magnetic space group might be defined by its Fedorov space group (set of spatial symmetries that do not change the magnetization), and an additional magnetic space group number spgroupma.
A Shubnikov type III magnetic space group might be defined by its Fedorov space group (set of all spatial symmetries, irrespective of their magnetic action), and an additional magnetic space group number spgroupma.
For the additional number spgroupma, we follow the definition of Table 7.4 of the above-mentioned Bradley and Cracknell textbook.
Thus, one way to specify a Shubnikov IV magnetic space group, is to define both spgroup and spgroupma.
For example, the group P2_1/c_prime has spgroup=14 and spgroupma=78.
Alternatively, for Shubnikov IV magnetic groups, one might define spgroup and genafm. For both the type III and IV, one might define by hand the set of symmetries, using symrel, tnons and symafm.

Go to the top | Complete list of input variables

tolsym
Mnemonics: TOLERANCE for SYMmetries
Executable: abinit
Mentioned in topic: crystal.
Rarely used: [2/907] in abinit tests, [0/136] in tuto abinit tests. Test list: {v5:[78],v7:[13]}.
Variable type: real
Default is 1e-08

Gives the tolerance on the atomic positions (reduced coordinates), primitive vectors, or magnetization, to be considered equivalent, thanks to symmetry operations. This is used in the recognition of the set of symmetries of the system, or the application of the symmetry operations to generate from a reduced set of atoms, the full set of atoms. Note that a value larger than 0.01 is considered to be unacceptable.
Note : ABINIT needs the atomic positions to be symmmetric to each others within 1.e-8 . If tolsym is set to a larger value than 1.e-8, then the input atomic coordinates will be automatically symmetrized by the symmetry operations that will have been found.

Go to the top | Complete list of input variables

vaclst
Mnemonics: VACancies LiST
Executable: abinit
Characteristic: INPUT_ONLY
Mentioned in topic: AtomManipulator.
Rarely used: [1/907] in abinit tests, [0/136] in tuto abinit tests. Test list: {v1:[40]}.
Variable type: integer(vacnum)
No default

Gives the identification number(s) of atoms to be subtracted from the set of atoms that are obtained after having rotated, translated and repeated the objects.
Useful to created vacancies.

Go to the top | Complete list of input variables

vacnum
Mnemonics: VACancies NUMber
Executable: abinit
Mentioned in topic: AtomManipulator.
Rarely used: [1/907] in abinit tests, [0/136] in tuto abinit tests. Test list: {v1:[40]}.
Variable type: integer
Default is 0

Gives the number of atoms to be subtracted from the list of atoms after the rotations, translations and repetitions have been done. The list of these atoms is contained in vaclst.

Go to the top | Complete list of input variables

xyzfile
Mnemonics: XYZ FILE input for geometry
Executable: abinit
Characteristic: INPUT_ONLY
Mentioned in topic: crystal.
Rarely used: [1/907] in abinit tests, [0/136] in tuto abinit tests. Test list: {v6:[10]}.
Variable type: string
No default

Gives the name of a xyz format file, to take natom, ntypat, typat, znucl, and xangst from. This input can not be mixed with normal atom specifications for other datasets.

Notes: do not quote the file name in the abinit input file, simply leave a space after xyzfile. The xyz format is the number of atoms on the first line, a comment line, then one line per atom, with the element as a 2 letter symbol ("As" "O" or "Pu") and the three cartesian coordinates in Angstrom.

Go to the top | Complete list of input variables