How to improve the speed of Matlab numerical integral?

10 次查看(过去 30 天)
I am interested in computing numerical integrals in Matlab. My program evaluates multiple integrals using a "for loop". I need both accuracy and speed. So, I am using the Matlab function "quadgk". I am able to obtain the correct results but the program consumes a lot of time which makes it impractical to compute large scale problems. Do you have suggestions?

采纳的回答

Nicolas Schmit
Nicolas Schmit 2017-10-10
If you have the parallel computing toolbox, you run can run your calculations in parallel using a parfor loop.

更多回答(1 个)

Jan
Jan 2017-10-10
What do you expect? There is no magic flag to increase the speed and no better function, which is not mentioned in the documentation.
Is your function to be integrated vectorized already? Did you reduce the number of expensive operations as far as possible (e.g. "2e-5" instead of "2*10^-5")? You want "accuracy and speed", but how much accuracy is sufficient? What about using integral?
For a more specific answer, post the relevant part of the code.

类别

Help CenterFile Exchange 中查找有关 Numerical Integration and Differentiation 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by