[issue39733] Bug in hypergeometric function
12345NotFromHere54321
report at bugs.python.org
Sun Feb 23 15:55:30 EST 2020
New submission from 12345NotFromHere54321 <carlk at rocketmail.com>:
I want to evaluate Kummer's hypergeometric function.
Code:
import scipy.special as sc
import numpy as np
#Parameters etc:
p=2
s = -4.559190954155 -51.659216953928*1j
Evaluation:
s = -4.559190954155 -51.659216953928*1j
sc.hyp1f1(1/p, 1/p + 1, -s)
Output:
(0.999999999999721-2.57668886227691e-13j)
This is close to 1 and agrees with Mathematica (see below)
Because the parameters 1/p and 1/p+1 are real, we know that if we replace s by its conjugate, the output should be the conjugate of the first output. This turns out not to be the case:
Evaluation:
s = -4.559190954155 -51.659216953928*1j
s = np.conj(s)
sc.hyp1f1(1/p, 1/p + 1, -s)
Output:
(0.8337882727951572+0.1815268182862942j)
This is very far from 1. There seems to be a bug.
Mathematica:
s = (-4.559190954155+51.659216953928I)
sconj=Conjugate[s]
Hypergeometric1F1[1/2,3/2,-s]
Hypergeometric1F1[1/2,3/2,-sconj]
Out[9]= 1.+1.99922*^-11 \[ImaginaryI]
Out[10]= 1.-1.99922*^-11 \[ImaginaryI]
----------
messages: 362539
nosy: 12345NotFromHere54321
priority: normal
severity: normal
status: open
title: Bug in hypergeometric function
type: behavior
versions: Python 3.7
_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue39733>
_______________________________________
More information about the Python-bugs-list
mailing list