Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
type(type_bfield), | public, | save | :: | bfield |
Type used in t_params to store all relevant information for bfields and constraining fields
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
logical, | public | :: | lbfield | = | .False. | ||
logical, | public | :: | lbfield_constr | = | .False. | ||
logical, | public | :: | lbfield_all | = | .False. | ||
logical, | public | :: | lbfield_trans | = | .False. | ||
logical, | public | :: | lbfield_mt | = | .False. | ||
logical, | public | :: | ltorque | = | .False. | ||
integer, | public | :: | ibfield | = | 0 | ||
integer, | public | :: | ibfield_constr | = | 0 | ||
integer, | public | :: | itscf0 | = | 0 | ||
integer, | public | :: | itscf1 | = | 10000 | ||
real(kind=dp), | public, | dimension (:,:), allocatable | :: | bfield | |||
real(kind=dp), | public, | dimension (:), allocatable | :: | bfield_strength | |||
real(kind=dp), | public, | dimension (:,:), allocatable | :: | bfield_constr | |||
real(kind=dp), | public, | dimension (:), allocatable | :: | theta | |||
real(kind=dp), | public, | dimension (:), allocatable | :: | phi | |||
real(kind=dp), | public, | dimension (:,:,:,:), allocatable | :: | thetallmat | |||
real(kind=dp), | public, | dimension(:,:), allocatable | :: | mag_torque |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | ifile | |||
integer, | intent(out) | :: | ios |
Allocate initial magnetic field parameters to be broadcasted via mpi
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(type_bfield), | intent(inout) | :: | bfield | |||
integer, | intent(in) | :: | natyp | |||
logical, | intent(in) | :: | lbfield | |||
logical, | intent(in) | :: | lbfield_constr | |||
logical, | intent(in) | :: | lbfield_all | |||
logical, | intent(in) | :: | lbfield_trans | |||
logical, | intent(in) | :: | lbfield_mt | |||
logical, | intent(in) | :: | ltorque | |||
integer, | intent(in) | :: | ibfield | |||
integer, | intent(in) | :: | ibfield_constr | |||
integer, | intent(in) | :: | itscf0 | |||
integer, | intent(in) | :: | itscf1 | |||
integer, | intent(in) | :: | npan_log | |||
integer, | intent(in) | :: | npan_eq | |||
integer, | intent(in) | :: | ncheb | |||
integer, | intent(in) | :: | ntotd | |||
integer, | intent(in) | :: | nfund | |||
integer, | intent(in) | :: | ncelld | |||
integer, | intent(in) | :: | lmax | |||
integer, | intent(in) | :: | iend | |||
integer, | intent(in), | dimension (natyp) | :: | ntcell | ||
integer, | intent(in), | dimension (0:ntotd, natyp) | :: | ipan_intervall | ||
integer, | intent(in), | dimension (1:(2*lmax+1)**2,natyp) | :: | ifunm | ||
integer, | intent(in), | dimension (ncleb, 4) | :: | icleb |
Pointer array |
|
real(kind=dp), | intent(in), | dimension (ncleb) | :: | cleb |
GAUNT coefficients (GAUNT) |
|
real(kind=dp), | intent(in), | dimension (ntotd*(ncheb+1), nfund, ncelld) | :: | thetasnew |
interpolated shape function in Chebychev radial mesh |
Writes the atom-wise constraining field to bconstr_out.dat
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | natyp | |||
real(kind=dp), | intent(in), | dimension(4,natyp) | :: | bconstr_in |
bx, by, bz, mspin |
|
real(kind=dp), | intent(inout), | dimension(natyp,3) | :: | bconstr_out |
bx, by, bz |
Reads the atom-wise constraining field from bconstr.dat
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | natyp | |||
real(kind=dp), | intent(out), | dimension(natyp,3) | :: | bconstr_out |
bx, by, bz |
Reads the atom-wise magnetic field from bfield.dat
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(type_bfield), | intent(inout) | :: | bfield | |||
integer, | intent(in) | :: | natyp |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | natom |
Adds magnetic field to the LL' expansion of the potential
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(type_bfield), | intent(in) | :: | bfield | |||
integer, | intent(in) | :: | iatom | |||
integer, | intent(in) | :: | lmax | |||
integer, | intent(in) | :: | nspin | |||
integer, | intent(in) | :: | irmdnew | |||
integer, | intent(in) | :: | imt1 | |||
integer, | intent(in) | :: | iend | |||
integer, | intent(in) | :: | ncheb | |||
real(kind=dp), | intent(in) | :: | theta | |||
real(kind=dp), | intent(in) | :: | phi | |||
integer, | intent(in), | dimension (1:(2*lmax+1)**2) | :: | ifunm | ||
integer, | intent(in), | dimension (ncleb, 4) | :: | icleb |
Pointer array |
|
real(kind=dp), | intent(in), | dimension (ncleb) | :: | cleb |
GAUNT coefficients (GAUNT) ! CHECK THE DIMENSION AND HOW IT IS USED!!! |
|
real(kind=dp), | intent(in), | dimension (irmdnew, nfund) | :: | thetasnew | ||
character(len=*), | intent(in) | :: | mode |
either '1' or 'transpose', depending whether SOC potential is constructed for right or left solution |
||
complex(kind=dp), | intent(in), | dimension(lmmaxd, lmmaxd, irmdnew) | :: | vnspll0 |
input potential in (l,m,s) basis |
|
complex(kind=dp), | intent(out), | dimension(lmmaxd, lmmaxd, irmdnew) | :: | vnspll1 |
input potential in (l,m,s) basis |
|
real(kind=dp), | intent(in), | dimension(1:(lmax+1)**2,1:(lmax+1)**2,1:irmdnew) | :: | thetansll |
Shape function LL' expansion
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(out), | dimension((lmax+1)**2,(lmax+1)**2,irmdnew) | :: | thetansll | ||
integer, | intent(in) | :: | lmax | |||
integer, | intent(in) | :: | imt1 | |||
integer, | intent(in) | :: | iend | |||
integer, | intent(in) | :: | irmdnew | |||
real(kind=dp), | intent(in), | dimension (irmdnew, nfund) | :: | thetasnew | ||
integer, | intent(in), | dimension (1:(2*lmax+1)**2) | :: | ifunm | ||
integer, | intent(in), | dimension (ncleb, 4) | :: | icleb |
Pointer array |
|
real(kind=dp), | intent(in), | dimension (ncleb) | :: | cleb |
GAUNT coefficients (GAUNT) |