Introduced a new input parameter in the atomic code: rpwe the radius

at which the partial wave expansion is calculated. Default: rpwe=rlderiv.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6448 c92efa57-630b-4861-b058-cf58834340f0
This commit is contained in:
dalcorso 2010-02-23 17:54:28 +00:00
parent 39a8cc5f88
commit 361240fba8
4 changed files with 16 additions and 6 deletions

View File

@ -32,7 +32,7 @@ subroutine ld1_readin
file_potscf, file_screen, file_qvan, file_recon, &
file_wfcaegen, file_wfcncgen, file_wfcusgen, &
file_core, file_beta, file_chi, author, &
nld, rlderiv, eminld, emaxld, deld, &
nld, rpwe, rlderiv, eminld, emaxld, deld, &
ecutmin, ecutmax, decut, rytoev_fact, verbosity, &
frozen_core, lsdts, new_core_ps, cau_fact, &
lnc2paw, pawsetup, rcutnc2paw, & !paw
@ -71,6 +71,7 @@ subroutine ld1_readin
tr2, & ! the scf threshold
iswitch, & ! the type of calculation
nld, rlderiv, eminld, emaxld, deld,& ! log derivatives
rpwe, & ! the radius of the pwe
config, & ! a string with electron configuration
lsd, & ! if 1 lsda is computed
rel, & ! 0 non-relativistic calculation
@ -175,6 +176,7 @@ subroutine ld1_readin
tr2 = 1.0e-14_dp
iswitch=1
rpwe=0.0_dp
rlderiv=4.0_dp
eminld=-3.0_dp
emaxld=3.0_dp
@ -245,6 +247,8 @@ subroutine ld1_readin
if (nld > nwfsx) &
call errore('ld1_readin','too many nld',1)
if (nld>0 .and. rpwe==0.0_DP) rpwe=rlderiv
if ( noscf .and. iswitch /= 1) call errore('ld1_readin',&
'hydrogenic levels available only with iswitch=1',1)
if ( noscf .and. lsd == 1 ) call errore('ld1_readin',&

View File

@ -64,7 +64,8 @@ module ld1inc
rlderiv, & ! the radius of logarithmic derivatives
eminld, & ! the minimum energy
emaxld, & ! the maximum energy
deld ! the deltae of energy
deld, & ! the deltae of energy
rpwe ! the radius of the partial wave expansion
!
! the variables which define the pseudopotential
!

View File

@ -22,7 +22,7 @@ subroutine partial_wave_expansion
use ld1_parameters, only : nwfsx
use ld1inc, only : grid, nld, nbeta, nspin, rel, ikk, file_pawexp, &
betas, ddd, qq, lls, jjs, pseudotype, vpstot, vnl, &
rlderiv, npte, emaxld, eminld, deld, phis, rcutus, rcloc
rpwe, npte, emaxld, eminld, deld, phis, rcutus, rcloc
implicit none
integer :: &
@ -73,9 +73,9 @@ subroutine partial_wave_expansion
ze2=0.0_dp
do n=1,grid%mesh
if (grid%r(n) > rlderiv) go to 10
if (grid%r(n) > rpwe) go to 10
enddo
call errore('partial_wave_expansion','wrong rlderiv?',1)
call errore('partial_wave_expansion','wrong rpwe?',1)
10 ikrld = n-1
write(stdout,'(5x,''Computing the partial wave expansion '')')
npte= (emaxld-eminld)/deld + 1

View File

@ -127,9 +127,14 @@ input_description -distribution {Quantum Espresso} -program ld1.x {
}
}
var rpwe -type REAL {
info { radius (a.u.) at which partial wave expansions are calculated }
default { rlderiv }
}
message {
If the above parameters are not specified, logarithmic
derivatives are not calculated.
derivatives and partial wave expansions are not calculated.
}
}