1
General Questions and Answers / DFT+U + SOC
« on: July 12, 2019, 15:13 »
Dear QATK developers
I have a question concerning the use of QATK to perform DFT+U calculations including spin-orbit coupling since I am interested in the magnetic anisotropy (using the MAE study object) of a magnetic system that necessitate a +U treatment.
It seems from the vnl interface that it is not allowed. However I still tried by explictely defining the exchange correlation in my python script (I alrady did that to perform DFT+U with VdW which is also in principle not allowed):
#----------------------------------------
# Exchange-Correlation
#----------------------------------------
exchange_correlation = ExchangeCorrelation(
exchange=PerdewBurkeErnzerhofExchange,
correlation=PerdewBurkeErnzerhofCorrelation,
number_of_spins=4,
hubbard_term=Dual,
spin_orbit=True,
)
exchange_correlation._setShortName("None")
However I get the following error message when the code start the calculation that includes SOC:
** Back Engine Exception : The SpinMatrix is NONCOLLINEAR, hence it can only be accessed with ALL_SPIN
** Location of Exception : spinmatrix.h:520
Is there a way to solve this issue?
best
Cyrille
ps: I am using 2019 version.
I have a question concerning the use of QATK to perform DFT+U calculations including spin-orbit coupling since I am interested in the magnetic anisotropy (using the MAE study object) of a magnetic system that necessitate a +U treatment.
It seems from the vnl interface that it is not allowed. However I still tried by explictely defining the exchange correlation in my python script (I alrady did that to perform DFT+U with VdW which is also in principle not allowed):
#----------------------------------------
# Exchange-Correlation
#----------------------------------------
exchange_correlation = ExchangeCorrelation(
exchange=PerdewBurkeErnzerhofExchange,
correlation=PerdewBurkeErnzerhofCorrelation,
number_of_spins=4,
hubbard_term=Dual,
spin_orbit=True,
)
exchange_correlation._setShortName("None")
However I get the following error message when the code start the calculation that includes SOC:
** Back Engine Exception : The SpinMatrix is NONCOLLINEAR, hence it can only be accessed with ALL_SPIN
** Location of Exception : spinmatrix.h:520
Is there a way to solve this issue?
best
Cyrille
ps: I am using 2019 version.