-
-
Notifications
You must be signed in to change notification settings - Fork 805
Add Gauss hypergeometric function #216
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There is still more work to do on testing and documentation, just wanted to get the pull request started. |
@jrreed83 Awesome!!!!!!!!!! Thank you so much for working on this! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@jrreed83 Wow! This is great work! Appears some minor work is still left to do, but this is looking great!
If you have not already, you can use the make test-cov TESTS_FILTER=.*/hyp2f1/.*
command to generate a test coverage report which can be viewed using make view-cov
in order to help write test cases that hit various code paths.
Thanks again for working on this!
|
||
<!-- <equation class="equation" label="eq:gaussian_hypergeometric_function" align="center" raw="hyp2f1(a,b,c,z) = \sum_{n=0}^{\infty} \frac{(a)_n (b)_n}{(c)_n} \frac{z^n}{n!}" alt="Equation for Gaussian hypergeometric function."> --> | ||
|
||
<div class="equation" align="center" data-raw-text="hyp2f1(a,b,c,z) = \sum_{n=0}^{\infty} \frac{(a)_n (b)_n}{(c)_n} \frac{z^n}{n!}" data-equation="eq:gaussian_hypergeometric_function"> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
<div class="equation" align="center" data-raw-text="hyp2f1(a,b,c,z) = \sum_{n=0}^{\infty} \frac{(a)_n (b)_n}{(c)_n} \frac{z^n}{n!}" data-equation="eq:gaussian_hypergeometric_function"> | |
<div class="equation" align="center" data-raw-text="\operatorname{hyp2f1}(a,b,c,z) = \sum_{n=0}^{\infty} \frac{(a)_n (b)_n}{(c)_n} \frac{z^n}{n!}" data-equation="eq:gaussian_hypergeometric_function"> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Cool. Thanks for looking at it so far. There are definitely some implementation issues to work out because I have a lot of failing tests. I probably just forgot to transfer something over from the C code or something. Thanks for the heads up on the testing command too!
|
||
The Gaussian hypergeometric function is defined as | ||
|
||
<!-- <equation class="equation" label="eq:gaussian_hypergeometric_function" align="center" raw="hyp2f1(a,b,c,z) = \sum_{n=0}^{\infty} \frac{(a)_n (b)_n}{(c)_n} \frac{z^n}{n!}" alt="Equation for Gaussian hypergeometric function."> --> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
<!-- <equation class="equation" label="eq:gaussian_hypergeometric_function" align="center" raw="hyp2f1(a,b,c,z) = \sum_{n=0}^{\infty} \frac{(a)_n (b)_n}{(c)_n} \frac{z^n}{n!}" alt="Equation for Gaussian hypergeometric function."> --> | |
<!-- <equation class="equation" label="eq:gaussian_hypergeometric_function" align="center" raw="\operatorname{hyp2f1}(a,b,c,z) = \sum_{n=0}^{\infty} \frac{(a)_n (b)_n}{(c)_n} \frac{z^n}{n!}" alt="Equation for Gaussian hypergeometric function."> --> |
|
||
#### hyp2f1( a, b, c, z ) | ||
|
||
Evaluates the Gaussian hypergeometric function |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Evaluates the Gaussian hypergeometric function | |
Evaluates the Gaussian hypergeometric function. |
<!-- eslint no-undef: "error" --> | ||
|
||
```javascript | ||
var hyp2f1 = require( '@stdlib/math/base/special/hyp2f1' ); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This needs to be updated once the examples/index.js
file is complete.
b.fail( 'something went wrong' ); | ||
} | ||
} | ||
b.pass( 'benchmark finished' ); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Missing a b.toc();
statement (needed for timing) and an ending assertion (needed to prevent certain compiler optimizations).
# Examples | ||
|
||
``` python | ||
python> x = linspace(-1000, 1000, 2001) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This example needs to be updated.
|
||
|
||
def main(): | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This empty line can be removed, I believe.
# Basic values: | ||
n = 1000 | ||
a = 2*np.ones(n) | ||
b = np.ones(n ) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
b = np.ones(n ) | |
b = np.ones(n) |
# Basic values: | ||
n = 1000 | ||
a = np.ones(n) | ||
b = 2*np.ones(n ) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
b = 2*np.ones(n ) | |
b = 2*np.ones(n) |
# Basic values: | ||
n = 1000 | ||
a = np.ones(n) | ||
b = np.ones(n ) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
b = np.ones(n ) | |
b = np.ones(n) |
Resolves #122 .
Checklist
develop
.develop
branch.Description
This pull request:
Related Issues
This pull request:
Questions
No.
Other
No.
@stdlib-js/reviewers