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