Add more special-function rules#110
Conversation
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #110 +/- ##
=======================================
Coverage 54.51% 54.51%
=======================================
Files 22 23 +1
Lines 4309 4309
=======================================
Hits 2349 2349
Misses 1960 1960 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
Thank for adding these rules I think they are really useful. Just one correction, I think is better to put in the file Then I am actually curious on why you added them, you use them in your research/work? did you create these rules manually yourself or you translated them from the Mathematica ones? |
Done
Research - I would like to see first class open source symbolic integration available to the math/physics community.
I added these manually. They’re small standard identities chosen to match the existing rule style here, not translated from the Mathematica rules. |
Summary
Explanation
This PR adds low-risk special-function rules for cases that are already represented in the rule-based integration machinery.
The Hankel rules mirror the existing Bessel J/Y monomial recurrence structure, covering direct order-raising primitives and the same even-step recurrence form used by the current Bessel rules.
It also adds direct primitives for Airy derivative identities and the Airy differential equation cases:
∫ airyaiprime(a*x) dx∫ airybiprime(a*x) dx∫ x*airyai(x) dx∫ x*airybi(x) dxFinally, it adds integration-by-parts primitives for linear arguments of
erf,erfi,expinti,sinint, andcosint. These use standard derivative identities and do not add new dependencies or public API.Tests
julia --project=. test/methods/rule_based/test_special_functions.jl22/22julia --project=. test/runtests.jl195 passed, 1 broken