Is there a way to balance accuracy with speed of integration on the 34S as with HP's that can integrate? The HP's give the user the ability to require, say, 4 significant digits of accuracy vs. the full 12 digits in order to arrive at a result in a significantly shorter amount of time. Can this be accomplished on the wonderful 34S?
The integration routine is modeled after the IG routine from the HP 41 PPC ROM. It uses the display accuracy to determine the number of iterations by means of the x≈ Y comparison command. You can improve the integration speed by setting a different display mode such as FIX 4 or SCI 4.
However, an integral that is approximately zero will hit a snag and will continue iterating long after it should.
Nobody like the Gauss-Kronrod quadrature I initially implemented which was fast and good for smooth functions but in no way adaptive.
- Pauli
(02-22-2014 12:35 PM)Paul Dale Wrote: [ -> ]However, an integral that is approximately zero will hit a snag and will continue iterating long after it should.
Pauli, I remember we had a discussion on this very topic some time ago, and I suggested a possible fix: compare the current value of \(\int f(x)\) with an approximation of \(\int |f(x)|\). It worked well with the examples we discussed then. Details can be found
here, cf. message 6 ff.
This change was supposed to get implemented in v. 3460 resp. 3462. So I thought this issue had been resolved.
Dieter
Sorry, Dieter is correct. We implemented a fix for the integral approaching zero. I'd just forgotten about it.
- Pauli
This thread was moved from the General forum by request.
χαιρε, Δρακων. Now it's where ο δημος will look for it.
d:-)
(02-23-2014 09:42 PM)Paul Dale Wrote: [ -> ]We implemented a fix for the integral approaching zero.
I see the fix got implemented, but one final improvement I posted back then still is missing (cf. last message in the mentioned thread). It's one single line that should be added:
Code:
...
FC?C f_final /* final iteration done? */
x[approx]? Y /* or convergence? */
JMP int_done
RCL/ r_SkAbs
RCL/ r_deltau
RCL/ r_ba4 <== add this line
ABS
...
Maybe it can be added with the next update.
Dieter
Dieter, I must have missed that final improvement. Added now but not built.
- Pauli
(02-27-2014 09:28 PM)Paul Dale Wrote: [ -> ]Dieter, I must have missed that final improvement. Added now but not built.
My Job! Build 3530 is Committed to SVN...