Skip to content
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

Question: automatic integration #51

Closed
dholladay00 opened this issue May 15, 2017 · 3 comments
Closed

Question: automatic integration #51

dholladay00 opened this issue May 15, 2017 · 3 comments

Comments

@dholladay00
Copy link

With these rules, one can increase quadrature order very easily and with very low memory requirements.

Any ideas on how to use these efficiently in an automatic integrator? (I would like to be able to specify a tolerance and receive an estimate of the integral w/in that tolerance, but accurate error estimation is difficult.) I have not been able to obtain similar performance to spatially adaptive, fixed order quadratures.

Has anyone investigated something along these lines?

@dlfivefifty
Copy link
Member

Usually automatic integrators use low order quadrature rules on many small panels, with a focus on handling singularities, so it's not clear how useful fast high order quadrature schemes are.

In the case of Clenshaw-Curtis, you can use ApproxFuns adaptive constructor. But there is no error estimate.

@dholladay00
Copy link
Author

The issue with the adaptive methods is that they can require lots of storage, something like (quadrature order) x (recursion depth). I am looking for something with similar speed and/or convergence properties, but with much smaller memory requirements. This is fine on multi-core CPUs, and it might be for many-core CPUs like intel Knight's Landing (though I haven't verified that yet).

However, to run on the GPU, each thread in a warp has to compute an integral and so the I am very limited on memory. I tried Romberg integration, which had much lower memory requirements, but it turned out to be 70x slower, so I need to find the right balance.

I'll take a look at Clenshaw-Curtis. Thanks for the info @dlfivefifty!!

@hyrodium
Copy link
Collaborator

This issue seems inactive, so I'll close this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants