On Fri, Jan 13, 2012 at 5:31 PM, Bill Gosper <billgosper@gmail.com> wrote:
On Fri, Jan 13, 2012 at 11:51 AM, Bill Gosper <billgosper@gmail.com>wrote:
What about Remezing Spouge? This unfinished, three term (toy) example<http://gosper.org/rspouge3.png> looks pretty promising (on all of z>0!). But we can squeeze six fudgefactors into three terms <http://gosper.org/rspouge3+3.png>. Does this cost closer to three or six? --Bill
Here's <http://gosper.org/rspouge4+4.png> double precision with four terms, eight parameters, z>4. But if it costs like eight terms, we can do *way* better.
Spoke too soon--the process seems to run out of steam. With eight c parameters, z>8, I get only 20D. Let's see if Corey and Julian feel like Remezing Lanczos.
--rwg
Are you using E^x -> (1 + Tanh[x/2])/(1 - Tanh[x/2]) ?
I.e.,-1 + 2/(1 - Tanh[x/2]).
Robert>I have gotten the 10-term "munafacmu34" version performing to near the limits of what's possible in a 32-digit floating-point (Dekker style double-double) numerics library.
To answer your question *"How many divides is a '+a5*z^2' worth?"*, I'd say it's probably about a one-to-one tradeoff. In other words, if you add one term to a polynomial to save one divide in the "Gamma[x+1]=x Gamma[x]" iteration, that would be about a break-even. So if you can reduce the minimum argument by 2 via adding one term, that's a win.
The bigger issue I'm dealing with is the transcendental operations. My Sinh() is doing an 8-step Taylor series (for 1/z <= 1/14), Exp() is a 16 to 20 step Taylor series, and Log() is a little slower than Exp(). Since we need about 5 of these transcendentals to use the approximation formula, that's where most the computation time is being spent.
- Robert
[1] See bibliography at mrob.com/pub/math/f161.html
On Tue, Jan 10, 2012 at 19:14, Bill Gosper <billgosper@gmail.com <http://gosper.org/webmail/src/compose.php?send_to=billgosper%40gmail.com>> wrote:
(Sorry about (no subject).)> Hmm, "only" 26 digits with seven b*ggerfactors on z>9:>> http://gosper.org/munafacmu26.png>> Note that the z^7 means we only need ~20 digit values for the seven> b*ggerfactors, but it looks like we'll need > eight, ior larger "9" for> quad (34digit)> precision. How many divides is a "+a5*z^2" worth?> --rwg>
-- Robert Munafo -- mrob.com Follow me at: gplus.to/mrob - fb.com/mrob27 - twitter.com/mrob_27 -mrob27.wordpress.com - youtube.com/user/mrob143 - rilybot.blogspot.com