Skip to content

Commit 39dc575

Browse files
First cut at Hypergeometric2F1 and some other Hypergeometric function revisions (#1431)
In addition to adding Hypergeometric2F1, we start moving code to `mathics.eval.specialfns.hypergeom` Fixes #1187 Most of the eval functions have been moved out of `mathics.builtin.specialfns.hypergeom`. And in the process, we expand hyper results to match what WMA does more closely. Some prior erroneous evaluation was therefore corrected. However, this PR is already large, so Hypergeometric2U will be handled separately. Moving eval code for `MeijerG`, was attempted, but that causes a weird interaction with `test/doc/doc_common.py`, which somehow makes it think that hypergeom is included more than once. --------- Co-authored-by: Aravindh Krishnamoorthy <aravindh.krishnamoorthy@fau.de>
1 parent 9e3ec3b commit 39dc575

File tree

6 files changed

+507
-124
lines changed

6 files changed

+507
-124
lines changed

CHANGES.rst

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ New Builtins
99

1010
* ``$SessionID``
1111
* ``BinaryReadList``
12+
* ``Hypergeometric2F1``
1213

1314
Internals
1415
---------
@@ -17,6 +18,19 @@ Mathics scanner exceptions of class TranslateError are incompatible
1718
with previous versions, and now store error parameters, "name", "tag", and
1819
"args".
1920

21+
WMA Compatibility
22+
-----------------
23+
24+
Hypergeometric functions have been revised to conform better to WMA behavior by
25+
expanding hypergeometric results.
26+
27+
Bugs
28+
----
29+
30+
* Fixed #1187
31+
32+
33+
2034
8.0.1
2135
-----
2236

mathics/builtin/messages.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -192,6 +192,7 @@ class General(Builtin):
192192
"fnsym": (
193193
"First argument in `1` is not a symbol " "or a string naming a symbol."
194194
),
195+
"hdiv": "`1` does not exist. Arguments are not consistent.",
195196
"heads": "Heads `1` and `2` are expected to be the same.",
196197
"ilsnn": (
197198
"Single or list of non-negative integers expected at " "position `1`."

0 commit comments

Comments
 (0)