get_params_1a Subroutine

public subroutine get_params_1a(t_params, ipand, natypd, irmd, naclsd, ielast, nclsd, nrefd, ncleb, nembd, naezd, lm2d, nsra, ins, nspin, icst, ipan, ircut, lmax, ncls, nineq, idoldau, lly, krel, atom, cls, icleb, loflm, nacls, refpot, irws, iend, ez, vins, irmin, itmpdir, iltmp, alat, drdi, rmesh, zat, rcls, iemxd, visp, rmtref, vref, cleb, cscl, socscale, socscl, erefldau, ueff, jeff, solver, tmpdir, deltae, tolrdif, npan_log, npan_eq, ncheb, npan_tot, ipan_intervall, rpan_intervall, rnew, ntotd, nrmaxd, r_log, ntldau, itldau, lopt, vtrel, btrel, drdirel, r2drdirel, rmrel, irmind, lmpot, nspotd, npotd, jwsrel, zrel, itscf, natomimpd, natomimp, atomimp, iqat, naez, natyp, nref)

Set the values of the local variables according to the stored t_params so that they can be passed between different control modules, specifically for main1a

Arguments

Type IntentOptional Attributes Name
type(type_params), intent(in) :: t_params
integer, intent(in) :: ipand

Number of panels in non-spherical part

integer, intent(in) :: natypd

Number of kinds of atoms in unit cell

integer, intent(in) :: irmd

Maximum number of radial points

integer, intent(in) :: naclsd

Maximum number of atoms in a TB-cluster

integer, intent(inout) :: ielast
integer, intent(in) :: nclsd

Maximum number of different TB-clusters

integer, intent(in) :: nrefd

Number of diff. ref. potentials

integer, intent(in) :: ncleb

Number of Clebsch-Gordon coefficients

integer, intent(in) :: nembd

Number of 'embedding' positions

integer, intent(in) :: naezd

Number of atoms in unit cell

integer, intent(in) :: lm2d

(2LMAX+1)*2

integer, intent(inout) :: nsra
integer, intent(inout) :: ins

0 (MT), 1(ASA), 2(Full Potential)

integer, intent(inout) :: nspin

Counter for spin directions

integer, intent(inout) :: icst

Number of Born approximation

integer, intent(inout), dimension (natypd) :: ipan

Number of panels in non-MT-region

integer, intent(inout), dimension (0:ipand, natypd) :: ircut

R points of panel borders

integer, intent(inout) :: lmax

Maximum l component in wave function expansion

integer, intent(inout) :: ncls

Number of reference clusters

integer, intent(inout) :: nineq

Number of ineq. positions in unit cell

integer, intent(inout) :: idoldau

flag to perform LDA+U

integer, intent(inout) :: lly

LLY!> 0 : apply Lloyds formula

integer, intent(in) :: krel

Switch for non-relativistic/relativistic (0/1) program. Attention: several other parameters depend explicitly on KREL, they are set automatically Used for Dirac solver in ASA

integer, intent(inout), dimension (naclsd, naezd+nembd) :: atom

Atom at site in cluster

integer, intent(inout), dimension (naezd+nembd) :: cls

Cluster around atomic sites

integer, intent(inout), dimension (ncleb, 4) :: icleb

Pointer array

integer, intent(inout), dimension (lm2d) :: loflm

l of lm=(l,m) (GAUNT)

integer, intent(inout), dimension (nclsd) :: nacls

Number of atoms in cluster

integer, intent(inout), dimension (naezd+nembd) :: refpot

Ref. pot. card at position

integer, intent(inout), dimension (natypd) :: irws

R point at WS radius

integer, intent(inout) :: iend

Number of nonzero gaunt coefficients

complex(kind=dp), intent(inout), dimension (iemxd) :: ez
real(kind=dp), intent(inout), dimension (irmind:irmd, lmpot, nspotd) :: vins

Non-spherical part of the potential

integer, intent(inout), dimension (natypd) :: irmin

Max R for spherical treatment

integer, intent(inout) :: itmpdir
integer, intent(inout) :: iltmp
real(kind=dp), intent(inout) :: alat

Lattice constant in a.u.

real(kind=dp), intent(inout), dimension (irmd, natypd) :: drdi

Derivative dr/di

real(kind=dp), intent(inout), dimension (irmd, natypd) :: rmesh
real(kind=dp), intent(inout), dimension (natypd) :: zat

Nuclear charge

real(kind=dp), intent(inout), dimension (3, naclsd, nclsd) :: rcls

Real space position of atom in cluster

integer, intent(in) :: iemxd

Dimension for energy-dependent arrays

real(kind=dp), intent(inout), dimension (irmd, npotd) :: visp

Spherical part of the potential

real(kind=dp), intent(inout), dimension (nrefd) :: rmtref

Muffin-tin radius of reference system

real(kind=dp), intent(inout), dimension (nrefd) :: vref
real(kind=dp), intent(inout), dimension (ncleb, 2) :: cleb

GAUNT coefficients (GAUNT)

real(kind=dp), intent(inout), dimension (krel*lmax+1, krel*natypd+(1-krel)) :: cscl

Speed of light scaling

real(kind=dp), intent(inout), dimension (natypd) :: socscale

Spin-orbit scaling

real(kind=dp), intent(inout), dimension (krel*lmax+1, krel*natypd+(1-krel)) :: socscl
real(kind=dp), intent(inout), dimension (natypd) :: erefldau

the energies of the projector's wave functions (REAL)

real(kind=dp), intent(inout), dimension (natypd) :: ueff

input U parameter for each atom

real(kind=dp), intent(inout), dimension (natypd) :: jeff

input J parameter for each atom

character(len=10), intent(inout) :: solver

Type of solver

character(len=80), intent(inout) :: tmpdir
complex(kind=dp), intent(inout) :: deltae

Energy difference for numerical derivative

real(kind=dp), intent(inout) :: tolrdif

Tolerance for r<tolrdif (a.u.) to handle vir. atoms

integer, intent(inout), dimension (natypd) :: npan_log
integer, intent(inout), dimension (natypd) :: npan_eq
integer, intent(inout) :: ncheb

Number of Chebychev pannels for the new solver

integer, intent(inout), dimension (natypd) :: npan_tot
integer, intent(inout), dimension (0:ntotd, natypd) :: ipan_intervall
real(kind=dp), intent(inout), dimension (0:ntotd, natypd) :: rpan_intervall
real(kind=dp), intent(inout), dimension (nrmaxd, natypd) :: rnew
integer, intent(in) :: ntotd
integer, intent(in) :: nrmaxd
real(kind=dp), intent(inout) :: r_log
integer, intent(inout) :: ntldau

number of atoms on which LDA+U is applied

integer, intent(inout), dimension (natypd) :: itldau

integer pointer connecting the NTLDAU atoms to heir corresponding index in the unit cell

integer, intent(inout), dimension (natypd) :: lopt

angular momentum QNUM for the atoms on which LDA+U should be applied (-1 to switch it OFF)

real(kind=dp), intent(inout), dimension (irmd*krel+(1-krel), natypd) :: vtrel

potential (spherical part)

real(kind=dp), intent(inout), dimension (irmd*krel+(1-krel), natypd) :: btrel

magnetic field

real(kind=dp), intent(inout), dimension (irmd*krel+(1-krel), natypd) :: drdirel

derivative of radial mesh

real(kind=dp), intent(inout), dimension (irmd*krel+(1-krel), natypd) :: r2drdirel

(r**2 * drdi)

real(kind=dp), intent(inout), dimension (irmd*krel+(1-krel), natypd) :: rmrel

radial mesh

integer, intent(in) :: irmind

IRM-IRNSD

integer, intent(in) :: lmpot

(LPOT+1)**2

integer, intent(in) :: nspotd

Number of potentials for storing non-sph. potentials

integer, intent(in) :: npotd

(2(KREL+KORBIT)+(1-(KREL+KORBIT))NSPIND)*NATYP)

integer, intent(inout), dimension (natypd) :: jwsrel

index of the WS radius

integer, intent(inout), dimension (natypd) :: zrel

atomic number (cast integer)

integer, intent(inout) :: itscf
integer, intent(in) :: natomimpd

Size of the cluster for impurity-calculation output of GF should be 1, if you don't do such a calculation

integer, intent(inout) :: natomimp

Size of the cluster for impurity-calculation output of GF should be 1, if you don't do such a calculation

integer, intent(inout), dimension (natomimpd) :: atomimp
integer, intent(inout), dimension (natypd) :: iqat

The site on which an atom is located on a given site

integer, intent(out) :: naez

Number of atoms in unit cell

integer, intent(out) :: natyp

Number of kinds of atoms in unit cell

integer, intent(out) :: nref

Number of diff. ref. potentials