-
-
Notifications
You must be signed in to change notification settings - Fork 137
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
Tweaks to #337 #339
Tweaks to #337 #339
Conversation
Thanks, that's perfect!
If the tolerance is set to small enough, then the final interpolation should be irrelevant and can safely be skipped. I think what you're seeing is indeed that the contribution of the final interpolation is negligible. The In addition I decided to get rid of I also got rid of the two mentions of the "piecewise quadratic". See the comments I made in the code. |
On the code comments: these all look good. I'll let you make those tweaks somewhere and then merge them into this branch. On the business of the spline: right, but I distinctly recall it being a quadratic spline being very important to get correct results before! Adding in square roots definitely gave the wrong thing. Thank you -- if you could run those experiments and figure out what's going on here then that would be great. Maybe with a test flag inside the VBT code that when enabled does the "wrong" thing, and have a test that asserts that under those circumstances, the KS test fails. (I recall getting failing KS tests with something like |
Sounds good, I'll make the edits shortly.
As I said, the difference between the quadratic spline and the sqrt-quadratic spline only comes out when tolerance is large. You can see a demonstration here: https://github.com/andyElking/diffrax_STLA/blob/devel/VBT_spline_test.ipynb |
I made the necessary edits and made a PR to pull those into diffrax/new_pr_branch |
f84e731
to
1aed77c
Compare
Closing as I've pushed all the updates here back to #337. |
This PR has two commits:
My intention is that this supersede #337, as it has a tidier commit history.
@andyElking: I'm now mostly happy with this PR. However, on the mathematics: I noticed that if I set
z=0
on thelevy_area==""
branch at the end ofVirtualBrownianTree._evaluate_leaf
, then the conditional statistics tests still seem to pass. Likewise if I chancejnp.sqrt(jnp.abs(sr * ru / su))
to justjnp.abs(sr * ru / su)
, then these tests again still seem to pass. Do you know what is going on here?