subroutine baphi(phi) c c Get bounce averaged potential, c i.e. load phi_ba(kappa) from phi(theta) c implicit none include 'itg.par' include 'itg.cmn' complex phi(lz,mz,nz) real dtheta integer j,l,m,n,ntheta0,ntheta1 c for k_theta>0 modes, we only need to calculate the bounce-averaged c phi for trapped particles: dtheta=2.*x0/float(ldb) do m=1,md do n=1,nd do l=1,kd phi_ba(l,m,n)=0. ntheta0=ldb/2+l ntheta1=ldb/2+2-l do j=ntheta1,ntheta0 phi_ba(l,m,n)=phi_ba(l,m,n)+phi(j,m,n)*wgtba1(l,j) enddo phi_ba(l,m,n)=phi_ba(l,m,n)/taub(l) enddo enddo enddo c for k_theta=0 modes, we need the bounce-averaged phi for passing c particles also: m=1 do n=1,nd do l=kd+1,kdpass phi_ba(l,m,n)=0. do j=1,ldb phi_ba(l,m,n)=phi_ba(l,m,n)+phi(j,m,n)*wgtba1(l,j) enddo phi_ba(l,m,n)=phi_ba(l,m,n)/taub(l) enddo enddo return end