fixed wrong declaration in dispersion plus some cleaning in colddisp and hermitian
This commit is contained in:
parent
df2faa8213
commit
89d104a299
@ -3,9 +3,9 @@ module dispersion
|
|||||||
use calcei_mod
|
use calcei_mod
|
||||||
implicit none
|
implicit none
|
||||||
integer, parameter :: dp=kind(1.0d0)
|
integer, parameter :: dp=kind(1.0d0)
|
||||||
integer, parameter :: tmax=5,npts=500
|
integer, parameter :: npts=500
|
||||||
real(dp), save :: ttv(npts+1),extv(npts+1)
|
real(dp), save :: ttv(npts+1),extv(npts+1)
|
||||||
real(dp), parameter :: dtex=2.0d0*tmax/dble(npts)
|
real(dp), parameter :: tmax=5.0d0,dtex=2.0d0*tmax/dble(npts)
|
||||||
!
|
!
|
||||||
contains
|
contains
|
||||||
!
|
!
|
||||||
@ -21,16 +21,14 @@ subroutine colddisp(xg,yg,npl,nprf,sox)
|
|||||||
real(dp) :: nprf ! N perpendicular to B (cold)
|
real(dp) :: nprf ! N perpendicular to B (cold)
|
||||||
real(dp) :: sox ! sox=-1 ==> O mode, sox=1 ==> X mode
|
real(dp) :: sox ! sox=-1 ==> O mode, sox=1 ==> X mode
|
||||||
!
|
!
|
||||||
real(dp) :: yg2,npl2,nprf2,n_f2,dnl,del
|
real(dp) :: yg2,npl2,dnl,del,dxg
|
||||||
!
|
!
|
||||||
npl2=npl*npl
|
npl2=npl*npl
|
||||||
dnl=1.0d0-npl2
|
dnl=1.0d0-npl2
|
||||||
|
dxg=1.0d0-xg
|
||||||
yg2=yg*yg
|
yg2=yg*yg
|
||||||
del=sqrt(dnl*dnl+4.0d0*npl2*(1.0d0-xg)/yg2)
|
del=sqrt(dnl*dnl+4.0d0*npl2*dxg/yg2)
|
||||||
n_f2=1.0d0-xg-xg*yg2*(1.0d0+npl2+sox*del)/(1.0d0-xg-yg2)/2.0d0
|
nprf=sqrt(dxg-npl2-xg*yg2*(1.0d0+npl2+sox*del)/(dxg-yg2)/2.0d0)
|
||||||
!
|
|
||||||
nprf2=n_f2-npl2
|
|
||||||
nprf=sqrt(nprf2)
|
|
||||||
!
|
!
|
||||||
end subroutine colddisp
|
end subroutine colddisp
|
||||||
!
|
!
|
||||||
@ -403,7 +401,6 @@ subroutine diel_tens_fr(xg,yg,mu,npl,e330,cr,ci,epsl,lrm,fast)
|
|||||||
!
|
!
|
||||||
llm=min(3,lrm)
|
llm=min(3,lrm)
|
||||||
!
|
!
|
||||||
dt=2.0d0*tmax/dble(npts)
|
|
||||||
bth2=2.0d0/mu
|
bth2=2.0d0/mu
|
||||||
bth=sqrt(bth2)
|
bth=sqrt(bth2)
|
||||||
mu2=mu*mu
|
mu2=mu*mu
|
||||||
@ -417,7 +414,7 @@ subroutine diel_tens_fr(xg,yg,mu,npl,e330,cr,ci,epsl,lrm,fast)
|
|||||||
upl2=bth2*x**2
|
upl2=bth2*x**2
|
||||||
upl=bth*x
|
upl=bth*x
|
||||||
gx=1.0d0+t*t/mu
|
gx=1.0d0+t*t/mu
|
||||||
exdx=cr*extv(i)*gx/rxt*dt
|
exdx=cr*extv(i)*gx/rxt*dtex
|
||||||
!
|
!
|
||||||
n1=1
|
n1=1
|
||||||
if(fast.gt.2) n1=-llm
|
if(fast.gt.2) n1=-llm
|
||||||
|
Loading…
Reference in New Issue
Block a user