00001
00002
00003
00004
00005
00006
00007 subroutine sphbess_dx(x,l,dxsj,dxsy)
00008 implicit none
00009 real(8) :: x, dxsj, dxsy
00010 integer :: l
00011 real(8) :: rtpi2 = 1.253314154753822d0
00012 real(8) :: xnu, xrj, xry, xrjp, xryp
00013 real(8) :: oneover2x, rtpi2overx
00014
00015 xnu = dble(l) + 0.5d0
00016 call bessjy(x,xnu,xrj,xry,xrjp,xryp)
00017 oneover2x = 0.5d0/x
00018 rtpi2overx = rtpi2/sqrt(x)
00019 dxsj = rtpi2overx*(xrjp - oneover2x*xrj)
00020 dxsy = rtpi2overx*(xryp - oneover2x*xry)
00021 end subroutine sphbess_dx