Re: Error in HypergeometricPFQ-package?
- To: mathgroup at smc.vnet.net
- Subject: [mg5752] Re: [mg5715] Error in HypergeometricPFQ-package?
- From: BobHanlon at aol.com
- Date: Tue, 14 Jan 1997 10:42:29 -0500
- Sender: owner-wri-mathgroup at wolfram.com
You can define the derivative along the following lines: Unprotect[HypergeometricPFQ]; HypergeometricPFQ/: D[HypergeometricPFQ[numlist_, denlist_, z_], z_] := (Times @@ numlist) * HypergeometricPFQ[numlist+1, denlist+1, z] / (Times @@ denlist); Protect[HypergeometricPFQ]; However, version 3 offers a better solution, that is, a means to a closed form expression for HypergeometricPFQ[{1/2, 1, 1}, {2, 2}, x] and its derivative: func1 = HypergeometricPFQ[{1/2, 1, 1}, {2, 2}, x] HypergeometricPFQ[{1/2, 1, 1}, {2, 2}, x] func2 = (D[func1, x] // Simplify) (2*(-1 + Sqrt[1 - x] + Log[4] - 2*Log[1 + Sqrt[1 - x]]))/x^2 func3 = ((D[HypergeometricPFQ[{a, 1, 1}, {2, 2}, x], x] // Simplify) /. a -> 1/2) -((2*(-((-1 + Sqrt[1 - x] + x)/Sqrt[1 - x]) + 1/2*x*HypergeometricPFQ[{1/2, 1, 1}, {2, 2}, x]))/x^2) func4 = func1 /. (Solve[func2 == func3, func1] // Simplify)[[1]] (4 - 4/Sqrt[1 - x] + (4*x)/Sqrt[1 - x] - 2*Log[4] + 4*Log[1 + Sqrt[1 - x]])/x Factoring out 4, this simplifies further to func5 = 4(1 - Sqrt[1 - x] - Log[2] + Log[1 + Sqrt[1 - x]])/x; Double-checking the derivation of the closed-form expression (Series[func1, {x, 0, 9}] == Series[func5, {x, 0, 9}]) // Simplify True (D[func5, x] // FullSimplify) == func2 True --------------------- Forwarded message: From: helge.berglann at bio.uio.no (Helge Berglann) To: mathgroup at smc.vnet.net To: mathgroup at smc.vnet.net The following HypergeometricPFQ-function generated by the SymbolicSum-Package gives an error when I try to derivate it. I use Mathematica 2.2 and I have followed the Hypergeometric Fix (Technical Note) I found on MathSource. D[HypergeometricPFQ[{1/2,1,1},{2,2},4.77206 hit1],hit1] Thread::tdlen: Objects of unequal length in 4.77206 <<1>> + {0, 0} + {0, 0, 0} cannot be combined. Has anybody a solution for this problem? Helge