polB |
- Date: 2017/04/21 13:47
- Name: SH
Dear all,
I have calculated the polarization of single-layer black phospohrus using polB.
The collinear caculations are OK. But the noncollinear calculations (including spin-orbit coupling) tell the system is metallic!
The calculated results are here..
Previous eigenvalue solver = Band atomnum = 4 ChemP = -0.169286727905 (Hartree) E_Temp = 300.000000000000 (K) Total_SpinS = 0.000000000000 (K) Spin treatment = non-collinear
r-space primitive vector (Bohr) tv1= 6.232922 0.000000 0.000000 tv2= 0.000000 8.738700 0.000000 tv3= 0.000000 0.000000 37.794520 k-space primitive vector (Bohr^-1) rtv1= 1.008064 0.000000 0.000000 rtv2= 0.000000 0.719007 0.000000 rtv3= 0.000000 0.000000 0.166246
Cell_Volume=2058.578131 (Bohr^3)
Specify the number of grids to discretize reciprocal a-, b-, and c-vectors (e.g 2 4 3) k1 0.00000 0.06250 0.12500 0.18750 0.25000 0.31250 0.37500 0.43750 0.50000 0.56250 0.62500 0.68750 0.75000 0.81250 0.87500 0.93750 k2 0.00000 0.06250 0.12500 0.18750 0.25000 0.31250 0.37500 0.43750 0.50000 0.56250 0.62500 0.68750 0.75000 0.81250 0.87500 0.93750 k3 0.00000
Specify the direction of polarization as reciprocal a-, b-, and c-vectors (e.g 0 0 1 ) calculating the polarization along the b-axis ....
The number of strings for Berry phase : AB mesh=16
calculating the polarization along the b-axis .... 1/ 2 Metallic !! Metallic !! Metallic !! Metallic !!
......
*************************************************************** Electric polarization (muC/cm^2) : Berry phase ***************************************************************
Background Core Electron Total
Px -0.00000000 86.61765583 -nan -nan Py -0.00000000 242.87990603 -nan -nan Pz -0.00000000 1050.44561810 -nan -nan
And the input file is here..
System.CurrrentDirectory ./ # default=./ System.Name P level.of.stdout 2 # default=1 (1-3) level.of.fileout 1 # default=1 (0-2) HS.fileout on memory.usage.fileout off scf.restart off
Species.Number 1 <Definition.of.Atomic.Species P P8.0-s4p4d1 P_PBE13 Definition.of.Atomic.Species>
Atoms.Number 4 Atoms.SpeciesAndCoordinates.Unit frac # ang|au|frac <Atoms.SpeciesAndCoordinates 1 P 0.0000000000 0.5892191217 0.4474197434 2.5 2.5 2 P 0.0000000000 0.4107808783 0.5525802566 2.5 2.5 3 P 0.5000000000 0.0892191317 0.5525802566 2.5 2.5 4 P 0.5000000000 0.9107808683 0.4474197434 2.5 2.5 Atoms.SpeciesAndCoordinates> Atoms.UnitVectors.Unit ang # ang|au <Atoms.UnitVectors 3.2983204210 0.0000000000 0.0000000000 0.0000000000 4.6243213707 0.0000000000 0.0000000000 0.0000000000 20.0000000000 Atoms.UnitVectors>
scf.XcType GGA-PBE # LDA|LSDA-CA|LSDA-PW|GGA-PBE scf.SpinPolarization nc # on|off|nc scf.SpinOrbit.Coupling on scf.ElectronicTemperature 300 # default=300 (K) scf.energycutoff 200 # default=150 (Ry) scf.maxIter 100 # default=40 scf.EigenvalueSolver band # DC|GDC|Cluster|Band scf.Kgrid 20 14 1 # means n1 x n2 x n3 scf.Mixing.History 40 # default=5 scf.Mixing.StartPulay 20 # default=6 scf.Mixing.EveryPulay 1 scf.criterion 1.0e-8 # default=1.0e-6 (Hartree) scf.lapack.dste dstevx # dstevx|dstedc|dstegr,default=dstevx scf.Mixing.Type Rmm-Diisk # Simple|Rmm-Diis|Gr-Pulay|Kerker|Rmm-Diisk
in polB.c EigenVal3[spin][i] = EigenVal1[spin][i]; <- line 585 printf("%lf\n", EigenVal1[spin][i]); <- I inserted this statement for checking the eigenvalue I found the eigenvalues is different from those is P.out file obtained by openmx.
How can I fix it?
Thanks for your help in advance.
Regards,
SH
| |