setenv TASKSET "no" if ( ! $?USE_REMOTE ) setenv USE_REMOTE 0 if ( ! $?MPI_REMOTE ) setenv MPI_REMOTE 0 setenv WIEN_GRANULARITY 1 setenv DELAY 0.1 setenv SLEEPY 1
loop_ _space_group_symop_operation_xyzmuss es
loop_ _symmetry_equiv_pos_as_xyzheissen.
| j = l + s/2 | k | maximale Besetzung | |||||
| l | s = -1 | s = +1 | s = -1 | s = +1 | s = -1 | s = +1 | |
| s | 0 | 1/2 | -1 | 2 | |||
| p | 1 | 1/2 | 3/2 | 1 | -2 | 2 | 4 |
| d | 2 | 3/2 | 5/2 | 2 | -3 | 4 | 6 |
| f | 3 | 5/2 | 7/2 | 3 | -4 | 6 | 8 |
Für die k-Punkt-Parallelisierung muss man eine .machines-Datei anlegen mit den Einträgen (für einen Quadcore-Proz)
1 2 0 (nmod, natorb, ipr) PRATT 1.0 (BROYD/PRATT, mixing) 5 1 2 (iatom nlorb, lorb) 6 1 2 (iatom nlorb, lorb) 1 (nsic 0..AFM, 1..SIC, 2..HFM) 0.52 0.00 (U J (Ry) Note: we recommend to use U_eff = U-J and J=0) 0.52 0.00 (U J)Wie bei der DOS wird also für jedes Atom das Orbital und der U-Parameter angegeben.
-9. (Emin cutoff energy) 2 (number of atoms for which density matrix is calculated) 5 1 2 (index of 1st atom, number of L's, L1) 6 1 2 (index of 1st atom, number of L's, L1) 0 0 (r-index, (l,s)index)Dabei bedeutet:
Title -0.50 0.001 1.500 0.002 # EMIN, DE, EMAX, Gauss-broadening(>;de) 15 N 0.000 # NUMBER OF DOS-CASES below, G/L/B broadening (Ry) 0 1 total # atom, case=column in qtl-header, label 1 1 Fe11 2 1 Fe12 15 1 S11 16 1 S12 17 1 S21 18 1 S22 19 1 S31 20 1 S32 21 1 S41 22 1 S42 23 1 S51 24 1 S52 25 1 S61 26 1 S62 SUM: 3 6 # Zahl der Summen, maximal Zahl von DOS-Zeilen von oben 4 5 6 7 8 9 10 11 12 13 14 15
ACHTUNG: Bei zentrierten Gittern ist die BZ des konventionellen Gitters kleiner (reziproker Raum!) als bei primitive setting. D.h. man sieht zwar bei conventionell die Richtungen besser, aber es fehlen Teile des k-Raums! Am besten erstmal genau das anschauen. Dann in primitive setting die Richtungen so auswählen, dass sie von den Richtungen zu den conventionell passen (z.B. wir bei einem I-Gitter aus 0,1/2,0 (d.h. der konventionellen b-Achse) 1/4,-1/4,1/4. Geplottet werden muss dann aber bis 1/2,-1/2,1/2!!. Unbedingt support-k-path dazu anschauen!!
| M11 | M12 | M13 | ||||
| [ x y z ] | * | M21 | M22 | M23 | = | [x-neu y-neu z-neu] |
| M31 | M32 | M33 |
300 300 300 # number of 3D-gridpoints in a-, b- and c-direction 0.0 0.0 # extend (pos.)/reduce (neg.) ploting grid by some fraction of the lattice vectors 0.0 0.0 # 2nd line: a-direction, 3rd line: b-direction, 4th line: c-direction 0.0 0.0 # all values set to 0.0: use full unit cell add # no: use file 9; add: sum of files 9 and 11; sub: difference of 9 and 11 conv # calculate density in conventional (conv) or primitive (prim) cell
BEGIN_BLOCK_DATAGRID_3D 9:clmval+++11:clmvaldn BEGIN_DATAGRID_3D_und am Ende analog:
END_DATAGRID_3D_ END_BLOCK_DATAGRID_3D
SURF
1 (atom in center of surface !! including MULT)
200 0.0 3.1415926536 (theta, 200 points, from zero to pi)
200 0.0 6.283185 (phi)
0.04 1.0 4 (step along gradient line, rmin, check)
1.45 0.04 (initial R for search, step (a.u))
3 3 3 (nshell)
IRHO ("INTEGRATE" rho)
WEIT (WEIT (surface weights from case.surf), NOWEIT)
30 (30 radial points outside min(RMIN,RMT))
END
Da zur Berechnung von AIM die bindungskritischen Punkte berechnet werden, kann man diese
unter :PC in der Datei *.outputaim finden (in Bohr-basierten Einheiten)
bzw. mit dem Skript extractaim_lapw in die Datei critical_points_ang
(in Angstrom-basierten Einheiten) rausschreiben lassen. :PC 0.5852 0.1704 0.2538 -0.1709E-01 -0.1543E-01 0.5221E-01 -1 0.1969E-01 0.3520E-01 -2 2.521 -3 2.530Die letzten vier Zahlen sind die Atome mit Abständen zum BCP, direkt davor steht die Dichte (in Bohr3), d.h. *6.755 ergibt die Dichte in A3 (hier: 0.03520 * 6.755 = 0.238).
Eine nette Alternative zur Bestimmung von bindungskritischen Punkten, Ladungsverteilungen und sonstigen Analysen der Elektronendichte (oder auch anderem) ist das Programm critic2, das auch mit Elk-Output klarkommt.
| Programm | liest | schreibt | ||
| immer | optional | immer | optional | |
| NN | nn.def | ???.outputnn | ???.struct_nn | |
| ???.struct | ||||
| LSTART | lstart.def | ???.outputst | ???.rspup | |
| ???.struct | ???.rsp | ???.rspdn | ||
| ???.inst | ???.in0_st | ???.vsp_st | ||
| ???.in1_st | ???.vspdn_st | |||
| ???.in2_st | ???.sigma | |||
| ???.inc_st | ||||
| ???.inm_st | ||||
| ???.inm_restart | ||||
| SYMMETRY | symmetry.def | ???.outputs | ???.struct_st | |
| ???.struct | ???.in2_st | ???.in2_st | ||
| KGEN | kgen.def | ???.outputkgen | ||
| ???.struct | ???.klist | |||
| ???.kge | ||||
| DSTART | dstart.def | ???.outputd | ||
| ???.struct | ???.clmsum(up) | |||
| ???.rsp(up) | dstart.err | |||
| ???.in1 | ||||
| ???.in2 | ||||
| Programm | liest | schreibt | ||
| immer | optional | immer | optional | |
| SPAGHETTI | spaghetti.def | ???.qtl | ???.spaghetti_ps | ???.spaghetti_ene |
| ???.insp | ???.outputsp | |||
| ???.struct | ||||
| ???.output1 | ||||
| TETRA | dstart.def | ???.outputd | ||
| ???.struct | ???.clmsum(up) | |||
| ???.rsp(up) | dstart.err | |||
| ???.in1 | ||||
| LAPW3 | dstart.def | ???.outputd | ||
| ???.struct | ???.clmsum(up) | |||
| ???.rsp(up) | dstart.err | |||
| ???.in1 | ||||
| XSPEC | dstart.def | ???.outputd | ||
| ???.struct | ???.clmsum(up) | |||
| ???.rsp(up) | dstart.err | |||
| ???.in1 | ||||
| OPTIC | dstart.def | ???.outputd | ||
| ???.struct | ???.clmsum(up) | |||
| ???.rsp(up) | dstart.err | |||
| ???.in1 | ||||
| JOINT | dstart.def | ???.outputd | ||
| ???.struct | ???.clmsum(up) | |||
| ???.rsp(up) | dstart.err | |||
| ???.in1 | ||||
| KRAM | dstart.def | ???.outputd | ||
| ???.struct | ???.clmsum(up) | |||
| ???.rsp(up) | dstart.err | |||
| ???.in1 | ||||
| OPTIMIZE | dstart.def | ???.outputd | ||
| ???.struct | ???.clmsum(up) | |||
| ???.rsp(up) | dstart.err | |||
| ???.in1 | ||||
| MINI | dstart.def | ???.outputd | ||
| ???.struct | ???.clmsum(up) | |||
| ???.rsp(up) | dstart.err | |||
| ???.in1 | ||||