corrdump

->What does this program do? 1) It reads the lattice file (specified by the -l option). 2) It determines the space group of this lattice and writes it to the sym.out file. 3) It finds all symmetrically distinct clusters that satisfy the conditions specified by the options -2 through -6. For instance, if -2=2.1 -3=1.1 is specified, only pairs shorter than 2.1 units and triplets containing no pairs longer than 1.1 will be selected. 4) It writes all clusters found to clusters.out. If the -c option is specified, clusters are read from clusters.out instead. 5) It reads the structure file (specified by the -s option). 6) It determines, for that structure, the correlations associated with all the clusters chosen earlier. This information is then output on one line, in the same order as in the clusters.out file. See below for conventions used to calculate correlations. 7) It writes the files corrdump.log containting the list of all adjustements needed to map the (possibly relaxed) structure onto the ideal lattice. ->File formats Lattice and structure files Both the lattice and the structure files have a similar structure. First, the coordinate system a,b,c is specified, either as [a] [b] [c] [alpha] [beta] [gamma] or as: [ax] [ay] [az] [bx] [by] [bz] [cx] [cy] [cz] Then the lattice vectors u,v,w are listed, expressed in the coordinate system just defined: [ua] [ub] [uc] [va] [vb] [vc] [wa] [wb] [wc] Finally, atom positions and types are given, expressed in the same coordinate system as the lattice vectors: [atom1a] [atom1b] [atom1c] [atom1type] [atom2a] [atom2b] [atom2c] [atom1type] etc. In the lattice file: -The atom type is a comma-separated list of the atomic symbols of the atoms that can sit the lattice site. -In a binary, the first symbol listed is assigned a spin of -1. In general, ordering of the atom symbol corresponds to value of s=0,1,... in the table 'Convention used to calculate the correlations' below. -When only one symbol is listed, this site is ignored for the purpose of calculating correlations, but not for determining symmetry. -The atomic symbol 'Vac' or 'Va' is used to indicate a vacancy. In the structure file: -The atom type is just a single atomic symbol (which, of course, has to be among the atomic symbols given in the lattice file). -Vacancies do not need to be specified. Examples The fcc lattice of the Cu-Au system: 1 1 1 90 90 90 0 0.5 0.5 0.5 0 0.5 0.5 0.5 0 0 0 0 Cu,Au The Cu3Au L1_2 structure: 1 1 1 90 90 90 1 0 0 0 1 0 0 0 1 0 0 0 Au 0.5 0.5 0 Cu 0.5 0 0.5 Cu 0 0.5 0.5 Cu A lattice for the Li_x Co_y Al_(1-y) O_2 system: 0.707 0.707 6.928 90 90 120 0.3333 0.6667 0.3333 -0.6667 -0.3333 0.3333 0.3333 -0.3333 0.3333 0 0 0 Li,Vac 0.3333 0.6667 0.0833 O 0.6667 0.3333 0.1667 Co,Al 0 0 0.25 O Symmetry file format (sym.out) [number of symmetry operations] 3x3 matrix: point operation 1x3 matrix: translation repeat, etc. Note that if you enter more than one unit cell of the lattice, sym.out will contain some pure translations as symmetry elements. Cluster file format (clusters.out) for each cluster: [multiplicity] [length of the longest pair within the cluster] [number of points in cluster] [coordinates of 1st point] [number of possible species-2] [cluster function] [coordinates of 2nd point] [number of possible species-2] [cluster function] etc. repeat, etc. (Multiplicity and length are ignored when reading in the clusters.out file.) For each 'point' the following convention apply -The coordinates are expressed in the coordinate system given in the first line (or the first 3 lines) of the lat.in file. -The 'number of possible species' distinguishes between binaries, ternaries, etc... Since each site can accomodate any number of atom types, this is specified for each point of the cluster. -In multicomponent system, the cluster function are numbered from 0 to number of possible species-2. In the simple of a binary system [number of possible species-2] [cluster function] are just 0 0. For a ternary, the possible values are 1 0 and 1 1. All the utilities that are not yet multicomponent-ready just ignore the entries [number of possible species-2] [cluster function]. Convention used to calculate the correlations: The cluster functions in a m-component system are defined as function '0' : -cos(2*PI* 1 *s/m) function '1' : -sin(2*PI* 1 *s/m) . . . -cos(2*PI*[m/2]*s/m) -sin(2*PI*[m/2]*s/m) <--- the last sin( ) is omitted if m is even where the occupation variable s can take any values in {0,...,m-1} and [...] denotes the 'round down' operation. Note that, these functions reduce to the single function (-1)^s in the binary case. Special options: -sym: Just find the space group and then abort. -clus: Just find space group and clusters and then abort. -z: To find symmetry operations, atoms are considered to lie on top of one another when they are less than this much apart. -sig: Number of significant digits printed. ->Cautions When vacancies are specified, the program may not be able to warn you that the structure and the lattice just don't fit. Carefully inspect the corrdump.log file! If the structure has significant cell shape relaxations, the program will be unable to find how it relates to the ideal lattice. The problem gets worse as the supercell size of the structure gets bigger. There is no limit on how far an atom in a structure can be from the ideal lattice site. The program first finds the atom that can be the most unambiguously assigned to a lattice site. It then finds the next best assignement and so on. This is actually a pretty robust way to do this. But keep in mind that the -z option does NOT control this process.

[email protected] Wed, Dec 6, 2023 12:55:16 PM