anchor.diff:  
   double precision :: fourpi,f,prod,prodp,binom,accu,bigR,bigI,ylm
   double precision :: theta_AC0,phi_AC0,theta_BC0,phi_BC0,ac,bc,big
  -double precision :: areal,freal,breal,t1,t2,int_prod_bessel
  +double precision :: areal,freal,breal,t1,t2,int_prod_bessel, int_prod_bessel_num_soph_p
   double precision :: arg
   
   integer :: ntot,ntotA,m,mu,mup,k1,k2,k3,ntotB,k1p,k2p,k3p,lambda,lambdap,ktot
  
positive.code:       do l=0,lmax
  
          array_R(ktot,k,l,0,lambdap)= freal & 
                                       *int_prod_bessel(ktot+2,g_a+g_b+dz_kl(k,l),0,lambdap,areal,breal)
        enddo
      enddo
    enddo
   enddo
  
negative.code:    do m=-l,l
      prod=bigI(0,0,l,m,n_a(1),n_a(2),n_a(3))
      prodp=bigI(0,0,l,m,n_b(1),n_b(2),n_b(3))
  
        accu=accu+prod*prodp*v_kl(k,l)*int_prod_bessel_num_soph_p(ktot+2,g_a+g_b+dz_kl(k,l),0,0,areal,breal,arg)
  
     enddo
    enddo
   enddo
  