refl/gray/after_onestep: fixed test for 2nd pass, fixed exin2,eyin2 evaluation, added test for powrfl<0

This commit is contained in:
Daniele Micheletti 2019-03-14 10:47:39 +00:00
parent 4c508f0943
commit 49303ac2e3

View File

@ -424,7 +424,7 @@ c central ray re-enters the plasma
. (taumn.lt.1.0e+30_wp_.and.taumn.gt.taucr)))) then . (taumn.lt.1.0e+30_wp_.and.taumn.gt.taucr)))) then
istop=1 istop=1
else if(ipass.gt.1 .and. index_rt.eq.1 .and. else if(ipass.gt.1 .and. index_rt.eq.1 .and.
. ((iowmin.gt.1 .and. aknmin.gt.0) .or. . ((iowmax.gt.1 .and. aknmin.gt.0) .or.
. (iowmax.le.1 .and. iop(1,1).gt.2))) then . (iowmax.le.1 .and. iop(1,1).gt.2))) then
c flag second pass mode coupling as unset c flag second pass mode coupling as unset
powrfl=-1.0_wp_ powrfl=-1.0_wp_
@ -448,7 +448,7 @@ c determine mode coupling at the plasma boundary
c look for first ray hitting the plasma, starting from the central c look for first ray hitting the plasma, starting from the central
c and evaluate polarization c and evaluate polarization
if (ivac.eq.1) then if (ivac.eq.1) then
y(1:3)=xvjk(:,j,k) y(1:3)=xvvac
y(4:6)=anvjk(:,j,k) y(4:6)=anvjk(:,j,k)
call fwork(y,dery) call fwork(y,dery)
call pol_limit(exin2,eyin2) call pol_limit(exin2,eyin2)
@ -477,6 +477,7 @@ c initial polarization (possibly reflected)
end if end if
end do end do
end do end do
if(powrfl.lt.0.0_wp_) powrfl=0.0_wp_
strfl11=i*dst strfl11=i*dst
write(6,*) ' ' write(6,*) ' '
write(6,*) 'Reflected power fraction =',powrfl write(6,*) 'Reflected power fraction =',powrfl