Re: Simplifying expressions containing Bessel functions?
- To: mathgroup at smc.vnet.net
- Subject: [mg76864] Re: Simplifying expressions containing Bessel functions?
- From: dimitris <dimmechan at yahoo.com>
- Date: Tue, 29 May 2007 04:50:37 -0400 (EDT)
- References: <f3dpbp$ft0$1@smc.vnet.net>
FunctionExpand and FullSimplify know rules like this. In[41]:= o = D[x*BesselJ[1, x], x] Through[{FunctionExpand, FullSimplify}[o]] Out[41]= BesselJ[1, x] + (1/2)*x*(BesselJ[0, x] - BesselJ[2, x]) Out[42]= {x*BesselJ[0, x], x*BesselJ[0, x]} However you should use FunctionExpand for issues like this. As other examples consider In[49]:= D[x^2*BesselJ[10, x], x, x, x] Through[{FunctionExpand, FullSimplify}[%]] Out[49]= BesselJ[9, x] + 2*(BesselJ[9, x] - BesselJ[11, x]) - BesselJ[11, x] + 3*x*((1/2)*(BesselJ[8, x] - BesselJ[10, x]) + (1/2)*(-BesselJ[10, x] + BesselJ[12, x])) + (1/2)*x^2*((1/2)*((1/2)*(BesselJ[7, x] - BesselJ[9, x]) + (1/2)*(- BesselJ[9, x] + BesselJ[11, x])) + (1/2)*((1/2)*(-BesselJ[9, x] + BesselJ[11, x]) + (1/2)*(BesselJ[11, x] - BesselJ[13, x]))) Out[50]= {((12960 - 192*x^2 + x^4)*BesselJ[7, x])/x^2 - (3*(69120 - 1264*x^2 + 7*x^4)*BesselJ[8, x])/x^3, (x*(12960 - 192*x^2 + x^4)*BesselJ[7, x] - 3*(69120 - 1264*x^2 + 7*x^4)*BesselJ[8, x])/x^3} In[59]:= Integrate[x*BesselJ[2, x], x, x, x] Through[{FunctionExpand, FullSimplify}[%]] Out[59]= (-x^2)*HypergeometricPFQ[{1/2}, {3/2, 2}, -(x^2/4)] - (1/24)*x^4*HypergeometricPFQ[{3/2}, {5/2, 3}, -(x^2/4)] Out[60]= {(1/2)*BesselJ[1, x]*(8*x - 3*Pi*x^2*StruveH[0, x]) + (3/2)*BesselJ[0, x]*(-2*x^2 + Pi*x^2*StruveH[1, x]), (1/2)*x*(BesselJ[1, x]*(8 - 3*Pi*x*StruveH[0, x]) + 3*x*BesselJ[0, x]*(-2 + Pi*StruveH[1, x]))} BTW, recently it was a thread about BeselJ. Take a look here http://groups.google.gr/group/comp.soft-sys.math.mathematica/browse_thread/thread/4f43efab17e4515d/74f2e76fe93c9e21?lnk=gst&q=BesselJ&rnum=1&hl=el#74f2e76fe93c9e21 Dimitris / AES : > Is there any kind of Simplification procedure in Mathematica that will > somehow apply the recursion relations between Bessel functions of orders > n-1, n and n+1 to eliminate the highest orders in an expression? > > I realize this is not a simple topic -- but it would be nice if > > D[x BesselJ[1, x], x] > > would yield > > x BesselJ[0, x] > > rather than > > BesselJ[1, x] + (x/2) ( BesselJ[0, x] - BesselJ[2, x] )