To calculate the U parameter for the example of NiO according to the article of Georg K. H. Madsen and Pavel Nov ́ak ( Constraint U ), there are 3 ways:
First way: The interactive mode
Download the file in the following link
Interactive mode
You will find the following files:
You will find the following files:
NiO.struct
NiO.struct_sgroup
NiO.inst
NiO.in1_
NiO.in2_+.5-1
NiO.in2_+.50
NiO.incdn_+.5-1
NiO.incdn_+.50
NiO.incup_+.5-1
NiO.incup_+.50
NiO_+.5-1.scf
NiO_+.50.scf
Now, follow the steps in the following procedure:
This procedure tries to reproduce the result in "Constraint_U.pdf". The result is different between WIEN2k 11.1, 12.1, and 14.2. More testing is needed, but the result seems to also be different depending on what fft package (fftpack,fftw3,etc) is used.
WIEN2k_14.2 (Release 15/10/2014)
Create NiO sesssion in w2web and place "NiO.inst" and "NiO.struct" from input_files into the NiO directory.
username@computername:~/wien/wiendata/NiO$ ls
NiO.inst NiO.struct
username@computername:~/wien/wiendata/NiO$ x supercell
Program generates supercell from a WIEN struct file.
Filename of struct file:
NiO.struct
Number of cells in x direction:
2
Number of cells in y direction:
2
Number of cells in z direction:
2
Optional shift all atoms by the same amount (fractional coordinates).
Please enter x shift:
0
Please enter y shift:
0
Please enter z shift:
0
Current structure has lattice type F
Enter your target lattice type: (P,B,F)
F
Target lattice type will be F
Supercell generated sucessfully.
Stored in struct file: NiO_super.struct
You may need to replace an atom by an impurity or distort the positions, ....
0.0u 0.0s 0:22.00 0.0% 0+0k 0+32io 0pf+0w
username@computername:~/wien/wiendata/NiO$ cp NiO_super.struct NiO.struct
In StructGen of w2web, next to "Atom 1", add 1 in the second box to label Ni as Ni1 and save the struct file ("save file and clean up").
username@computername:~/wien/wiendata/NiO$ x sgroup
0.0u 0.0s 0:00.00 0.0% 0+0k 0+16io 0pf+0w
username@computername:~/wien/wiendata/NiO$ cp NiO.struct_sgroup NiO.struct
username@computername:~/wien/wiendata/NiO$ init_lapw -s nn
next is nn
next is nn
> nn (12:01:28) specify nn-bondlength factor: (usually=2) [and optionally dlimit, dstmax (about
1.d-5, 20)]
2
DSTMAX: 20.0000000000000
iix,iiy,iiz 3 3 5 47.5620000000000
47.5620000000000 79.2700000000000
NAMED ATOM: Ni1 Z changed to IATNR+999 to determine equivalency
NAMED ATOM: Ni2 Z changed to IATNR+999 to determine equivalency
NAMED ATOM: Ni3 Z changed to IATNR+999 to determine equivalency
NAMED ATOM: O 1 Z changed to IATNR+999 to determine equivalency
NAMED ATOM: O 2 Z changed to IATNR+999 to determine equivalency
ATOM 1 Ni1 ATOM 4 O 1
RMT( 1)=2.30000 AND RMT( 4)=1.65000
SUMS TO 3.95000 LT. NN-DIST= 3.96350
ATOM 2 Ni2 ATOM 4 O 1
RMT( 2)=2.30000 AND RMT( 4)=1.65000
SUMS TO 3.95000 LT. NN-DIST= 3.96350
ATOM 3 Ni3 ATOM 5 O 2
RMT( 3)=2.30000 AND RMT( 5)=1.65000
SUMS TO 3.95000 LT. NN-DIST= 3.96350
ATOM 4 O 1 ATOM 3 Ni3
RMT( 4)=1.65000 AND RMT( 3)=2.30000
SUMS TO 3.95000 LT. NN-DIST= 3.96350
ATOM 5 O 2 ATOM 3 Ni3
RMT( 5)=1.65000 AND RMT( 3)=2.30000
SUMS TO 3.95000 LT. NN-DIST= 3.96350
NN ENDS
0.0u 0.0s 0:05.10 0.7% 0+0k 0+128io 0pf+0w
-----> check in NiO.outputnn for overlapping spheres,
coordination and nearest neighbor distances
-----> continue with sgroup or edit the NiO.struct file (c/e)
c
next is sgroup
> sgroup (12:01:46) 0.0u 0.0s 0:00.00 0.0% 0+0k 0+16io 0pf+0w
Names of point group: m-3m 4/m -3 2/m Oh
Names of point group: m-3m 4/m -3 2/m Oh
Names of point group: mmm 2/m 2/m 2/m D2h
Names of point group: 4mm 4mm C4v
Names of point group: -43m -43m Td
Number and name of space group: 225 (F m -3 m)
-----> check in NiO.outputsgroup for proper symmetry, compare
with your struct file and later with NiO.outputs
sgroup has also produced a new struct file based on your old one.
If you see warnings above, consider to use the newly generated
struct file, which you can view (edit) now.
-----> continue with symmetry (old case.struct) or use/edit NiO.struct_sgroup ? (c/e)
c
next is symmery
> symmetry (12:02:07) 0.0u 0.0s 0:00.02 50.0% 0+0k 0+96io 0pf+0w
-----> check in NiO.outputs the symmetry operations,
the point symmetries and compare with results from sgroup
if you find errors (often from rounding errors of positions), apply x patchsymm
-----> continue with lstart or edit the NiO.struct_st file (c/e/x)
c
next is lstart
An old NiO.inst file is present. Do you want to overwrite it (N/y)
N
> lstart (12:02:19) SELECT XCPOT:
recommended: PBE [(13) GGA of Perdew-Burke-Ernzerhof 96]
LDA [( 5)]
WC [(11) GGA of Wu-Cohen 2006]
PBESOL [(19) GGA of Perdew etal. 2008]
5
SELECT ENERGY to separate core and valence states:
recommended: -6.0 Ry (check how much core charge leaks out of MT-sphere)
ALTERNATIVELY: specify charge localization
(between 0.97 and 1.0) to select core state
-6
Atomic configuration for atom: Ni1 Z= 28.00
E-up(Ry) E-dn(Ry) Occupancy q/sphere core-state
1S -602.170457 -602.169307 1.00 1.00 1.0000 T
2S -72.020744 -71.934905 1.00 1.00 1.0000 T
2P* -62.899233 -62.834395 1.00 1.00 1.0000 T
2P -61.618225 -61.551468 2.00 2.00 1.0000 T
3S -8.189165 -8.028612 1.00 1.00 0.9998 T
3P* -5.414017 -5.256866 1.00 1.00 0.9991 F
3P -5.250259 -5.094388 2.00 2.00 0.9989 F
3D* -0.743370 -0.604805 2.00 2.00 0.9590 F
3D -0.725441 -0.587515 3.00 1.00 0.9598 F
4S -0.442635 -0.417372 1.00 1.00 0.3754 F
Atomic configuration for atom: O 1 Z= 8.00
E-up(Ry) E-dn(Ry) Occupancy q/sphere core-state
1S -37.545830 -37.545830 1.00 1.00 1.0000 T
2S -1.745453 -1.745453 1.00 1.00 0.8444 F
2P* -0.677426 -0.677426 1.00 1.00 0.7629 F
2P -0.674720 -0.674720 1.00 1.00 0.7619 F
LSTART ENDS
0.7u 0.0s 0:26.06 2.9% 0+0k 0+2144io 0pf+0w
-----> continue with kgen or edit the NiO.inst file and rerun lstart (c/e)
c
-----> in NiO.in1_st select RKmax ( usually 5.0 - 9.0 )
-----> in NiO.in2_st select LM's, GMAX and Fermi-Energy method
> inputfiles prepared (12:02:59)
inputfiles prepared
next is kgen
> kgen (12:02:59) NUMBER OF K-POINTS IN WHOLE CELL: (0 allows to specify 3 divisions of G)
Change RKmax to 5 in NiO.in1_st and NiO.in1
1
length of reciprocal lattice vectors: 0.686 0.686 0.686 1.000 1.000 1.000
1 k-points generated, ndiv= 1 1 1
KGEN ENDS
0.0u 0.0s 4:05.47 0.0% 0+0k 0+40io 0pf+0w
-----> check in NiO.klist number of generated K-points
-----> continue with dstart or execute kgen again or exit (c/e/x)
c
next is dstart
> dstart -p (12:07:16) running dstart in single mode
DSTART ENDS
8.6u 0.0s 0:08.84 97.3% 0+0k 4448+1320io 12pf+0w
-----> check in NiO.outputd if gmax > gmin, normalization
-----> new NiO.in0 generated
-----> do you want to perform a spinpolarized calculation ? (n/y)
y
> dstart -up -p (12:07:53) running dstart in single mode
DSTART ENDS
8.5u 0.0s 0:08.58 99.7% 0+0k 0+1320io 0pf+0w
> dstart -dn -p (12:08:02) running dstart in single mode
DSTART ENDS
8.5u 0.0s 0:08.60 99.7% 0+0k 0+1320io 0pf+0w
-----> do you want to perform an antiferromagnetic calculation ? (N/y)
N
init_lapw finished ok
username@computername:~/wien/wiendata/NiO$ runsp_lapw
...
in cycle 19 ETEST: .0003117250000000 CTEST: .0023933
hup: Command not found.
LAPW0 END
LAPW1 END
LAPW1 END
LAPW2 END
LAPW2 END
CORE END
CORE END
MIXER END
> stop
username@computername:~/wien/wiendata/NiO$ save_lapw -d NiO_orig
Place "NiO.in1_", "NiO.in2_+.5-1", "NiO.in2_+.50", "NiO.incup_+.50", "NiO.incdn_+.50", "NiO.incup_+.5-1", and "NiO.incdn_+.5-1" from input_files into the case directory
username@computername:~/wien/wiendata/NiO$ cp NiO.in1_ NiO.in1
username@computername:~/wien/wiendata/NiO$ cp NiO.in2_+.50 NiO.in2
username@computername:~/wien/wiendata/NiO$ cp NiO.incup_+.50 NiO.incup
username@computername:~/wien/wiendata/NiO$ cp NiO.incdn_+.50 NiO.incdn
username@computername:~/wien/wiendata/NiO$ runsp_lapw
...
in cycle 16 ETEST: .0002088800000000 CTEST: .0057837
hup: Command not found.
LAPW0 END
LAPW1 END
LAPW1 END
LAPW2 END
LAPW2 END
CORE END
CORE END
MIXER END
> stop
username@computername:~/wien/wiendata/NiO$ save_lapw -d NiO_+.50
username@computername:~/wien/wiendata/NiO$ restore_lapw -f -d NiO_orig
username@computername:~/wien/wiendata/NiO$ cp NiO.in1_ NiO.in1
username@computername:~/wien/wiendata/NiO$ cp NiO.in2_+.5-1 NiO.in2
username@computername:~/wien/wiendata/NiO$ cp NiO.incup_+.5-1 NiO.incup
username@computername:~/wien/wiendata/NiO$ cp NiO.incdn_+.5-1 NiO.incdn
username@computername:~/wien/wiendata/NiO$ runsp_lapw
...
in cycle 36 ETEST: .0001699250000000 CTEST: .0035903
hup: Command not found.
LAPW0 END
LAPW1 END
LAPW1 END
LAPW2 END
LAPW2 END
CORE END
CORE END
MIXER END
> stop
username@computername:~/wien/wiendata/NiO$ save_lapw -d NiO_+.5-1
username@computername:~/wien/wiendata/NiO/NiO_+.50$ grepline :fer 'NiO.scf' 1
in 1 files:
NiO.scf::FER : F E R M I - ENERGY(GAUSS-.M.)= 0.4779683788
username@computername:~/wien/wiendata/NiO/NiO_+.50$ grepline :3dd001 'NiO.scf' 2 | head -2 | tail -1
NiO.scf::3DD001: 3D* 0.109619395 Ry
username@computername:~/wien/wiendata/NiO/NiO_+.50$ grepline ':3d 001' 'NiO.scf' 2 | head -2 | tail -1
NiO.scf::3D 001: 3D 0.126211972 Ry
username@computername:~/wien/wiendata/NiO/NiO_+.5-1$ grepline :fer 'NiO.scf' 1
in 1 files:
NiO.scf::FER : F E R M I - ENERGY(GAUSS-.M.)= 0.5182555839
username@computername:~/wien/wiendata/NiO/NiO_+.5-1$ grepline :3dd001 'NiO.scf' 2 | head -2 | tail -1
NiO.scf::3DD001: 3D* -0.291937436 Ry
username@computername:~/wien/wiendata/NiO/NiO_+.5-1$ grepline ':3d 001' 'NiO.scf' 2 | head -2 | tail -1
NiO.scf::3D 001: 3D -0.273539538 Ry
Note: A copy of the NiO.scf files are in output_files.
Use a text editor to edit F_eff.pl in script. Then, execute the script:
username@computername:~/wien/wiendata/NiOUfiles$ ./F_eff.pl
eV = 5.99808373432882
F_eff = 0.440841079988889 Ry = 5.99808373432882 eV
0.438 - F_eff = -0.00284107998888894 Ry
WIEN2k_14.2 (Release 15/10/2014)
Create NiO sesssion in w2web and place "NiO.inst" and "NiO.struct" from input_files into the NiO directory.
username@computername:~/wien/wiendata/NiO$ ls
NiO.inst NiO.struct
username@computername:~/wien/wiendata/NiO$ x supercell
Program generates supercell from a WIEN struct file.
Filename of struct file:
NiO.struct
Number of cells in x direction:
2
Number of cells in y direction:
2
Number of cells in z direction:
2
Optional shift all atoms by the same amount (fractional coordinates).
Please enter x shift:
0
Please enter y shift:
0
Please enter z shift:
0
Current structure has lattice type F
Enter your target lattice type: (P,B,F)
F
Target lattice type will be F
Supercell generated sucessfully.
Stored in struct file: NiO_super.struct
You may need to replace an atom by an impurity or distort the positions, ....
0.0u 0.0s 0:22.00 0.0% 0+0k 0+32io 0pf+0w
username@computername:~/wien/wiendata/NiO$ cp NiO_super.struct NiO.struct
In StructGen of w2web, next to "Atom 1", add 1 in the second box to label Ni as Ni1 and save the struct file ("save file and clean up").
username@computername:~/wien/wiendata/NiO$ x sgroup
0.0u 0.0s 0:00.00 0.0% 0+0k 0+16io 0pf+0w
username@computername:~/wien/wiendata/NiO$ cp NiO.struct_sgroup NiO.struct
username@computername:~/wien/wiendata/NiO$ init_lapw -s nn
next is nn
next is nn
> nn (12:01:28) specify nn-bondlength factor: (usually=2) [and optionally dlimit, dstmax (about
1.d-5, 20)]
2
DSTMAX: 20.0000000000000
iix,iiy,iiz 3 3 5 47.5620000000000
47.5620000000000 79.2700000000000
NAMED ATOM: Ni1 Z changed to IATNR+999 to determine equivalency
NAMED ATOM: Ni2 Z changed to IATNR+999 to determine equivalency
NAMED ATOM: Ni3 Z changed to IATNR+999 to determine equivalency
NAMED ATOM: O 1 Z changed to IATNR+999 to determine equivalency
NAMED ATOM: O 2 Z changed to IATNR+999 to determine equivalency
ATOM 1 Ni1 ATOM 4 O 1
RMT( 1)=2.30000 AND RMT( 4)=1.65000
SUMS TO 3.95000 LT. NN-DIST= 3.96350
ATOM 2 Ni2 ATOM 4 O 1
RMT( 2)=2.30000 AND RMT( 4)=1.65000
SUMS TO 3.95000 LT. NN-DIST= 3.96350
ATOM 3 Ni3 ATOM 5 O 2
RMT( 3)=2.30000 AND RMT( 5)=1.65000
SUMS TO 3.95000 LT. NN-DIST= 3.96350
ATOM 4 O 1 ATOM 3 Ni3
RMT( 4)=1.65000 AND RMT( 3)=2.30000
SUMS TO 3.95000 LT. NN-DIST= 3.96350
ATOM 5 O 2 ATOM 3 Ni3
RMT( 5)=1.65000 AND RMT( 3)=2.30000
SUMS TO 3.95000 LT. NN-DIST= 3.96350
NN ENDS
0.0u 0.0s 0:05.10 0.7% 0+0k 0+128io 0pf+0w
-----> check in NiO.outputnn for overlapping spheres,
coordination and nearest neighbor distances
-----> continue with sgroup or edit the NiO.struct file (c/e)
c
next is sgroup
> sgroup (12:01:46) 0.0u 0.0s 0:00.00 0.0% 0+0k 0+16io 0pf+0w
Names of point group: m-3m 4/m -3 2/m Oh
Names of point group: m-3m 4/m -3 2/m Oh
Names of point group: mmm 2/m 2/m 2/m D2h
Names of point group: 4mm 4mm C4v
Names of point group: -43m -43m Td
Number and name of space group: 225 (F m -3 m)
-----> check in NiO.outputsgroup for proper symmetry, compare
with your struct file and later with NiO.outputs
sgroup has also produced a new struct file based on your old one.
If you see warnings above, consider to use the newly generated
struct file, which you can view (edit) now.
-----> continue with symmetry (old case.struct) or use/edit NiO.struct_sgroup ? (c/e)
c
next is symmery
> symmetry (12:02:07) 0.0u 0.0s 0:00.02 50.0% 0+0k 0+96io 0pf+0w
-----> check in NiO.outputs the symmetry operations,
the point symmetries and compare with results from sgroup
if you find errors (often from rounding errors of positions), apply x patchsymm
-----> continue with lstart or edit the NiO.struct_st file (c/e/x)
c
next is lstart
An old NiO.inst file is present. Do you want to overwrite it (N/y)
N
> lstart (12:02:19) SELECT XCPOT:
recommended: PBE [(13) GGA of Perdew-Burke-Ernzerhof 96]
LDA [( 5)]
WC [(11) GGA of Wu-Cohen 2006]
PBESOL [(19) GGA of Perdew etal. 2008]
5
SELECT ENERGY to separate core and valence states:
recommended: -6.0 Ry (check how much core charge leaks out of MT-sphere)
ALTERNATIVELY: specify charge localization
(between 0.97 and 1.0) to select core state
-6
Atomic configuration for atom: Ni1 Z= 28.00
E-up(Ry) E-dn(Ry) Occupancy q/sphere core-state
1S -602.170457 -602.169307 1.00 1.00 1.0000 T
2S -72.020744 -71.934905 1.00 1.00 1.0000 T
2P* -62.899233 -62.834395 1.00 1.00 1.0000 T
2P -61.618225 -61.551468 2.00 2.00 1.0000 T
3S -8.189165 -8.028612 1.00 1.00 0.9998 T
3P* -5.414017 -5.256866 1.00 1.00 0.9991 F
3P -5.250259 -5.094388 2.00 2.00 0.9989 F
3D* -0.743370 -0.604805 2.00 2.00 0.9590 F
3D -0.725441 -0.587515 3.00 1.00 0.9598 F
4S -0.442635 -0.417372 1.00 1.00 0.3754 F
Atomic configuration for atom: O 1 Z= 8.00
E-up(Ry) E-dn(Ry) Occupancy q/sphere core-state
1S -37.545830 -37.545830 1.00 1.00 1.0000 T
2S -1.745453 -1.745453 1.00 1.00 0.8444 F
2P* -0.677426 -0.677426 1.00 1.00 0.7629 F
2P -0.674720 -0.674720 1.00 1.00 0.7619 F
LSTART ENDS
0.7u 0.0s 0:26.06 2.9% 0+0k 0+2144io 0pf+0w
-----> continue with kgen or edit the NiO.inst file and rerun lstart (c/e)
c
-----> in NiO.in1_st select RKmax ( usually 5.0 - 9.0 )
-----> in NiO.in2_st select LM's, GMAX and Fermi-Energy method
> inputfiles prepared (12:02:59)
inputfiles prepared
next is kgen
> kgen (12:02:59) NUMBER OF K-POINTS IN WHOLE CELL: (0 allows to specify 3 divisions of G)
Change RKmax to 5 in NiO.in1_st and NiO.in1
1
length of reciprocal lattice vectors: 0.686 0.686 0.686 1.000 1.000 1.000
1 k-points generated, ndiv= 1 1 1
KGEN ENDS
0.0u 0.0s 4:05.47 0.0% 0+0k 0+40io 0pf+0w
-----> check in NiO.klist number of generated K-points
-----> continue with dstart or execute kgen again or exit (c/e/x)
c
next is dstart
> dstart -p (12:07:16) running dstart in single mode
DSTART ENDS
8.6u 0.0s 0:08.84 97.3% 0+0k 4448+1320io 12pf+0w
-----> check in NiO.outputd if gmax > gmin, normalization
-----> new NiO.in0 generated
-----> do you want to perform a spinpolarized calculation ? (n/y)
y
> dstart -up -p (12:07:53) running dstart in single mode
DSTART ENDS
8.5u 0.0s 0:08.58 99.7% 0+0k 0+1320io 0pf+0w
> dstart -dn -p (12:08:02) running dstart in single mode
DSTART ENDS
8.5u 0.0s 0:08.60 99.7% 0+0k 0+1320io 0pf+0w
-----> do you want to perform an antiferromagnetic calculation ? (N/y)
N
init_lapw finished ok
username@computername:~/wien/wiendata/NiO$ runsp_lapw
...
in cycle 19 ETEST: .0003117250000000 CTEST: .0023933
hup: Command not found.
LAPW0 END
LAPW1 END
LAPW1 END
LAPW2 END
LAPW2 END
CORE END
CORE END
MIXER END
> stop
username@computername:~/wien/wiendata/NiO$ save_lapw -d NiO_orig
Place "NiO.in1_", "NiO.in2_+.5-1", "NiO.in2_+.50", "NiO.incup_+.50", "NiO.incdn_+.50", "NiO.incup_+.5-1", and "NiO.incdn_+.5-1" from input_files into the case directory
username@computername:~/wien/wiendata/NiO$ cp NiO.in1_ NiO.in1
username@computername:~/wien/wiendata/NiO$ cp NiO.in2_+.50 NiO.in2
username@computername:~/wien/wiendata/NiO$ cp NiO.incup_+.50 NiO.incup
username@computername:~/wien/wiendata/NiO$ cp NiO.incdn_+.50 NiO.incdn
username@computername:~/wien/wiendata/NiO$ runsp_lapw
...
in cycle 16 ETEST: .0002088800000000 CTEST: .0057837
hup: Command not found.
LAPW0 END
LAPW1 END
LAPW1 END
LAPW2 END
LAPW2 END
CORE END
CORE END
MIXER END
> stop
username@computername:~/wien/wiendata/NiO$ save_lapw -d NiO_+.50
username@computername:~/wien/wiendata/NiO$ restore_lapw -f -d NiO_orig
username@computername:~/wien/wiendata/NiO$ cp NiO.in1_ NiO.in1
username@computername:~/wien/wiendata/NiO$ cp NiO.in2_+.5-1 NiO.in2
username@computername:~/wien/wiendata/NiO$ cp NiO.incup_+.5-1 NiO.incup
username@computername:~/wien/wiendata/NiO$ cp NiO.incdn_+.5-1 NiO.incdn
username@computername:~/wien/wiendata/NiO$ runsp_lapw
...
in cycle 36 ETEST: .0001699250000000 CTEST: .0035903
hup: Command not found.
LAPW0 END
LAPW1 END
LAPW1 END
LAPW2 END
LAPW2 END
CORE END
CORE END
MIXER END
> stop
username@computername:~/wien/wiendata/NiO$ save_lapw -d NiO_+.5-1
username@computername:~/wien/wiendata/NiO/NiO_+.50$ grepline :fer 'NiO.scf' 1
in 1 files:
NiO.scf::FER : F E R M I - ENERGY(GAUSS-.M.)= 0.4779683788
username@computername:~/wien/wiendata/NiO/NiO_+.50$ grepline :3dd001 'NiO.scf' 2 | head -2 | tail -1
NiO.scf::3DD001: 3D* 0.109619395 Ry
username@computername:~/wien/wiendata/NiO/NiO_+.50$ grepline ':3d 001' 'NiO.scf' 2 | head -2 | tail -1
NiO.scf::3D 001: 3D 0.126211972 Ry
username@computername:~/wien/wiendata/NiO/NiO_+.5-1$ grepline :fer 'NiO.scf' 1
in 1 files:
NiO.scf::FER : F E R M I - ENERGY(GAUSS-.M.)= 0.5182555839
username@computername:~/wien/wiendata/NiO/NiO_+.5-1$ grepline :3dd001 'NiO.scf' 2 | head -2 | tail -1
NiO.scf::3DD001: 3D* -0.291937436 Ry
username@computername:~/wien/wiendata/NiO/NiO_+.5-1$ grepline ':3d 001' 'NiO.scf' 2 | head -2 | tail -1
NiO.scf::3D 001: 3D -0.273539538 Ry
Note: A copy of the NiO.scf files are in output_files.
Use a text editor to edit F_eff.pl in script. Then, execute the script:
username@computername:~/wien/wiendata/NiOUfiles$ ./F_eff.pl
eV = 5.99808373432882
F_eff = 0.440841079988889 Ry = 5.99808373432882 eV
0.438 - F_eff = -0.00284107998888894 Ry
Second way: The batch mode
Download the script in the following link
NiO-Script
Follow the steps in the following procedure:
You create a reprtory "NiO" and you put the script in and in terminal you do the following:
> cd NiO
> dos2unix NiOscript
> chmod +x NiOscript
> ./NiOscript
You will get the following result:
Output:
Obtained with: WIEN2k_14.2 (Release 15/10/2014)
NiO_+.50 :FER 0.4780478813
NiO_+.50 :3dd001 0.109677912
NiO_+.50 :3d 001 0.126271892
NiO_+.5-1 :FER 0.5182276205
NiO_+.5-1 :3dd001 -0.291784933
NiO_+.5-1 :3d 001 -0.273388240
F_eff = .44064107697777777777 Ry = 5.99536249335964444433 eV
0.438 - F_eff = -.00264107697777777777
Percent Error = .60298561136478944500 %
Download the script in the following link
NiO-Script
Follow the steps in the following procedure:
You create a reprtory "NiO" and you put the script in and in terminal you do the following:
> cd NiO
> dos2unix NiOscript
> chmod +x NiOscript
> ./NiOscript
You will get the following result:
Output:
Obtained with: WIEN2k_14.2 (Release 15/10/2014)
NiO_+.50 :FER 0.4780478813
NiO_+.50 :3dd001 0.109677912
NiO_+.50 :3d 001 0.126271892
NiO_+.5-1 :FER 0.5182276205
NiO_+.5-1 :3dd001 -0.291784933
NiO_+.5-1 :3d 001 -0.273388240
F_eff = .44064107697777777777 Ry = 5.99536249335964444433 eV
0.438 - F_eff = -.00264107697777777777
Percent Error = .60298561136478944500 %
Third way: The mixed mode
I have modified the previous script to make it suitable for a general purpose and needs only the input files.
To download the script click on the link below:
U-Parameter -Script
The execution of the script is as follows:
- Put the script and the input files in the same repertory
- on the terminal do the following:
> cd NiO
> dos2unix NiO-Reg
> chmod +x NiO-Reg
> ./NiO-Reg
- The execution of the supercell command will be in interactive mode
- After the opening of the struct file you add the number "1" after the first atom and you delete the space after the added number as follows:
MULT= 1 ISPLIT= 2
Ni1 NPT= 781 R0=0.00005000 RMT= 2.3000 Z: 28.0
LOCAL ROT MATRIX: 1.0000000 0.0000000 0.0000000
- Save the modification of the struct file and close it.
- After the calculation continues in the batch mode.
You will get the same result:
Output:
Obtained with: WIEN2k_14.2 (Release 15/10/2014)
NiO_+.50 :FER 0.4780478813
NiO_+.50 :3dd001 0.109677912
NiO_+.50 :3d 001 0.126271892
NiO_+.5-1 :FER 0.5182276205
NiO_+.5-1 :3dd001 -0.291784933
NiO_+.5-1 :3d 001 -0.273388240
F_eff = .44064107697777777777 Ry = 5.99536249335964444433 eV
0.438 - F_eff = -.00264107697777777777
Percent Error = .60298561136478944500 %
I have modified the previous script to make it suitable for a general purpose and needs only the input files.
To download the script click on the link below:
U-Parameter -Script
The execution of the script is as follows:
- Put the script and the input files in the same repertory
- on the terminal do the following:
> cd NiO
> dos2unix NiO-Reg
> chmod +x NiO-Reg
> ./NiO-Reg
- The execution of the supercell command will be in interactive mode
- After the opening of the struct file you add the number "1" after the first atom and you delete the space after the added number as follows:
MULT= 1 ISPLIT= 2
Ni1 NPT= 781 R0=0.00005000 RMT= 2.3000 Z: 28.0
LOCAL ROT MATRIX: 1.0000000 0.0000000 0.0000000
- Save the modification of the struct file and close it.
- After the calculation continues in the batch mode.
You will get the same result:
Output:
Obtained with: WIEN2k_14.2 (Release 15/10/2014)
NiO_+.50 :FER 0.4780478813
NiO_+.50 :3dd001 0.109677912
NiO_+.50 :3d 001 0.126271892
NiO_+.5-1 :FER 0.5182276205
NiO_+.5-1 :3dd001 -0.291784933
NiO_+.5-1 :3d 001 -0.273388240
F_eff = .44064107697777777777 Ry = 5.99536249335964444433 eV
0.438 - F_eff = -.00264107697777777777
Percent Error = .60298561136478944500 %
1 Comments
nothing gain with out pain
ReplyDelete