subroutine baphi(phi) ! ! Get bounce averaged potential, ! i.e. load phi_ba(kappa) from phi(theta) ! use itg_data implicit none complex, dimension(:,:,:) :: phi integer :: j, l, m, ntheta0, ntheta1 ! for k_theta>0 modes, we only need to calculate the bounce-averaged ! phi for trapped particles: phi_ba=0. do l=1,kd ntheta0=ldb/2+l ntheta1=ldb/2+2-l do j=ntheta1,ntheta0 phi_ba(l,:,:)=phi_ba(l,:,:)+phi(j,:,:)*wgtba1(l,j) enddo phi_ba(l,:,:)=phi_ba(l,:,:)/taub(l) enddo ! for k_theta=0 modes, we need the bounce-averaged phi for passing ! particles also: m=1 do l=kd+1,kdpass do j=1,ldb phi_ba(l,m,:)=phi_ba(l,m,:)+phi(j,m,:)*wgtba1(l,j) enddo phi_ba(l,m,:)=phi_ba(l,m,:)/taub(l) enddo end subroutine baphi