updated prfile subr, added comments and minor changes in ic_gb
This commit is contained in:
parent
ce10204479
commit
f3fb3962d1
@ -421,16 +421,16 @@
|
|||||||
implicit none
|
implicit none
|
||||||
write(4,*)' #sst R z phi psi rhot ne Te Btot '// &
|
write(4,*)' #sst R z phi psi rhot ne Te Btot '// &
|
||||||
'Nperp Npl ki alpha tau Pt dIds nh iohkw index_rt ddr'
|
'Nperp Npl ki alpha tau Pt dIds nh iohkw index_rt ddr'
|
||||||
write(8,*) ' #istep j k xt yt zt rt psin'
|
write(8,*) ' #istep j k xt yt zt rt'
|
||||||
write(9,*) ' #istep j k xt yt zt rt psin'
|
write(9,*) ' #istep j k xt yt zt rt'
|
||||||
write(17,*) ' #sst Dr_Nr1 Di_Nr1'
|
write(17,*) ' #sst Dr_Nr1 Di_Nr1'
|
||||||
write(33,*) ' #i jk sst x y R z psi tauv Npl alpha index_rt'
|
write(33,*) ' #i jk sst x y R z psi tauv Npl alpha index_rt'
|
||||||
write(12,*) ' #i sst psi w1 w2'
|
write(12,*) ' #sst w1 w2'
|
||||||
write(7,*)'#Icd Pa Jphip dPdVp rhotj rhotjava rhotp rhotpav '// &
|
write(7,*)'#Icd Pa Jphip dPdVp rhotj rhotjava rhotp rhotpav '// &
|
||||||
'drhotjava drhotpav ratjamx ratjbmx stmx psipol chipol index_rt '// &
|
'drhotjava drhotpav ratjamx ratjbmx stmx psipol chipol index_rt '// &
|
||||||
'Jphimx dPdVmx drhotj drhotp'
|
'Jphimx dPdVmx drhotj drhotp'
|
||||||
write(48,*) '#rhop rhot Jphi Jcdb dPdV Icdins Pins'
|
write(48,*) '#rhop rhot Jphi Jcdb dPdV Icdins Pins'
|
||||||
write(66,*) "# psipol0 chipol0 powrfl"
|
! write(66,*) "# psipol0 chipol0 powrfl"
|
||||||
end subroutine prfile
|
end subroutine prfile
|
||||||
|
|
||||||
|
|
||||||
|
@ -372,6 +372,14 @@ contains
|
|||||||
snps=zero
|
snps=zero
|
||||||
end if
|
end if
|
||||||
|
|
||||||
|
! Gaussian beam: exp[-ik0 zt] exp[-i k0/2 S(xt,yt,zt)]
|
||||||
|
! xt,yt,zt, cartesian coordinate system with zt along the beamline and xt in the z = 0 plane
|
||||||
|
! S(xt,yt,zt) = S_real +i S_imag = Qxx(zt) xt^2 + Qyy(zt) yt^2 + 2 Qxy(zt) xt yt
|
||||||
|
! (csiw, etaw) and (csiR, etaR) intensity and phase ellipse, rotated by angle phiw and phiR
|
||||||
|
! S(xt,yt,zt) = csiR^2 / Rccsi +etaR^2 /Rceta - i (csiw^2 Wcsi +etaw^2 Weta)
|
||||||
|
! Rccsi,eta curvature radius at the launching point
|
||||||
|
! Wcsi,eta =2/(k0 wcsi,eta^2) with wcsi,eta^2 beam size at the launching point
|
||||||
|
|
||||||
phiwrad = phiw*degree
|
phiwrad = phiw*degree
|
||||||
phirrad = phir*degree
|
phirrad = phir*degree
|
||||||
csphiw = cos(phiwrad)
|
csphiw = cos(phiwrad)
|
||||||
@ -415,13 +423,13 @@ contains
|
|||||||
|
|
||||||
qqxx = qi1*cos(phic)**2 + qi2*sin(phic)**2
|
qqxx = qi1*cos(phic)**2 + qi2*sin(phic)**2
|
||||||
qqyy = qi1*sin(phic)**2 + qi2*cos(phic)**2
|
qqyy = qi1*sin(phic)**2 + qi2*cos(phic)**2
|
||||||
qqxy = -(qi1 - qi2)*sin(2*phic)
|
qqxy = -(qi1 - qi2)*sin(phic)*cos(phic)
|
||||||
wwxx = -dimag(qqxx)
|
wwxx = -dimag(qqxx)
|
||||||
wwyy = -dimag(qqyy)
|
wwyy = -dimag(qqyy)
|
||||||
wwxy = -half*dimag(qqxy)
|
wwxy = -dimag(qqxy)
|
||||||
rcixx = dble(qqxx)
|
rcixx = dble(qqxx)
|
||||||
rciyy = dble(qqyy)
|
rciyy = dble(qqyy)
|
||||||
rcixy = half* dble(qqxy)
|
rcixy = dble(qqxy)
|
||||||
|
|
||||||
dqi1 = -qi1**2
|
dqi1 = -qi1**2
|
||||||
dqi2 = -qi2**2
|
dqi2 = -qi2**2
|
||||||
@ -429,20 +437,20 @@ contains
|
|||||||
d2qi2 = 2*qi2**3
|
d2qi2 = 2*qi2**3
|
||||||
dqqxx = dqi1*cos(phic)**2 + dqi2*sin(phic)**2
|
dqqxx = dqi1*cos(phic)**2 + dqi2*sin(phic)**2
|
||||||
dqqyy = dqi1*sin(phic)**2 + dqi2*cos(phic)**2
|
dqqyy = dqi1*sin(phic)**2 + dqi2*cos(phic)**2
|
||||||
dqqxy = -(dqi1 - dqi2)*sin(2*phic)
|
dqqxy = -(dqi1 - dqi2)*sin(phic)*cos(phic)
|
||||||
d2qqxx = d2qi1*cos(phic)**2 + d2qi2*sin(phic)**2
|
d2qqxx = d2qi1*cos(phic)**2 + d2qi2*sin(phic)**2
|
||||||
d2qqyy = d2qi1*sin(phic)**2 + d2qi2*cos(phic)**2
|
d2qqyy = d2qi1*sin(phic)**2 + d2qi2*cos(phic)**2
|
||||||
d2qqxy = -(d2qi1 - d2qi2)*sin(2*phic)
|
d2qqxy = -(d2qi1 - d2qi2)*sin(phic)*cos(phic)
|
||||||
|
|
||||||
dwwxx = -dimag(dqqxx)
|
dwwxx = -dimag(dqqxx)
|
||||||
dwwyy = -dimag(dqqyy)
|
dwwyy = -dimag(dqqyy)
|
||||||
dwwxy = -half*dimag(dqqxy)
|
dwwxy = -dimag(dqqxy)
|
||||||
d2wwxx = -dimag(d2qqxx)
|
d2wwxx = -dimag(d2qqxx)
|
||||||
d2wwyy = -dimag(d2qqyy)
|
d2wwyy = -dimag(d2qqyy)
|
||||||
d2wwxy = -half*dimag(d2qqxy)
|
d2wwxy = -dimag(d2qqxy)
|
||||||
drcixx = dble(dqqxx)
|
drcixx = dble(dqqxx)
|
||||||
drciyy = dble(dqqyy)
|
drciyy = dble(dqqyy)
|
||||||
drcixy = half* dble(dqqxy)
|
drcixy = dble(dqqxy)
|
||||||
|
|
||||||
if(nrayr > 1) then
|
if(nrayr > 1) then
|
||||||
dr = rwmax/dble(nrayr-1)
|
dr = rwmax/dble(nrayr-1)
|
||||||
@ -507,7 +515,7 @@ contains
|
|||||||
dy0t = dcsiw*snphiw + detaw*csphiw
|
dy0t = dcsiw*snphiw + detaw*csphiw
|
||||||
x0t = uj(j)*dx0t
|
x0t = uj(j)*dx0t
|
||||||
y0t = uj(j)*dy0t
|
y0t = uj(j)*dy0t
|
||||||
z0t = -half*(rcixx*x0t**2 + rciyy*y0t**2 + 2*rcixy*x0t*y0t)
|
z0t = -half*(rcixx*x0t**2 + rciyy*y0t**2) + rcixy*x0t*y0t
|
||||||
|
|
||||||
dx0 = x0t*csps + snps*(y0t*csth + z0t*snth)
|
dx0 = x0t*csps + snps*(y0t*csth + z0t*snth)
|
||||||
dy0 = -x0t*snps + csps*(y0t*csth + z0t*snth)
|
dy0 = -x0t*snps + csps*(y0t*csth + z0t*snth)
|
||||||
|
Loading…
Reference in New Issue
Block a user