Its interesting.........calculators used Taylor Series to evaluate Log's and
Ln's internally. I wonder if Cold Fusion does as well???
----- Original Message -----
From: "Gonzo Rock" <[EMAIL PROTECTED]>
To: "CF-Talk" <[EMAIL PROTECTED]>
Sent: Thursday, August 23, 2001 11:09 AM
Subject: Re: Buggy log10 function in CF 5.0
> WOW! Way to go Brian!
>
> However, I vote that the ColdFusion Developers fix the function or rip it
out of the package... no answer is better than wrong answers.
>
> By your demonstration, perhaps you can provide them with the expertise to
repair their code. :-)
>
>
> At 08:41 AM 8/23/01 -0500, you wrote:
> >Your situation got me thinking back to my old math days, Jason. When
> >complaining why we had to learn how to estimate logarithms using Taylor
> >Series, our teacher would remark "what would you do, if the LOG button on
> >your calculator suddenly quit working?". Seems rather fitting huh?
> >
> >Anyway, I was able to find a Taylor Series that gives a "close fit" for a
> >natural logarithm (LN). Using that series, I wrote a little cfloop that
> >will, given an input value and a precision variable, use the Taylor
Series
> >to give a close estimate of the Log base 10 of the input value. Check it
> >out:
> >
> ><cfset Temp_Var = 0>
> ><cfloop Index="x" From="1" TO="#variables.Precision_Value#">
> > <cfif variables.x EQ 1>
> > <cfset Temp_Var = (Input_Variable-1) / (input_variable+1)>
> > <cfelse>
> > <cfset Temp_Var = variables.Temp_Var + ( 1/(x+(x-1)) * (
> >(Input_Variable-1)/(Input_Variable+1) )^(x+(x-1)) )>
> > </cfif>
> > </cfloop>
> >
> ><cfset Natural_Log_Var = Temp_Var * 2> <!--- Entire series is
multiplied
> >by 2 --->
> ><cfset Log_Base_Ten = Temp_Var * 0.4342> <!--- Multiply natural log by
> >.4342 to get Log base 10 --->
> >
> >You've now got the natural log of the input value, as well as the Log
base
> >10. As you probably know, the Taylor Series is only a close estimation
of
> >the actual value. The higher your precision value, the closer the
> >estimation is to the actual value. With a precision value of 10, i got
> >precision within 1/1000th of the actual value. Not bad.
> >
> >Anyway, I hope this helps....even if it doesn't, its been kinda fun :)
> >
> >Brian
> >----- Original Message -----
> >From: "Snyder, Jason" <[EMAIL PROTECTED]>
> >To: "CF-Talk" <[EMAIL PROTECTED]>
> >Sent: Wednesday, August 22, 2001 6:30 PM
> >Subject: Buggy log10 function in CF 5.0
> >
> >
> >> I wrote a UDF that uses the log10 function and I noticed something was
a
> >bit fishy. When I isolated the log10 function and fed it 31 it spit out
> >1.49136169383. When I fed it 32 it spit out 3. (I was expecting
something
> >more like 1.50514997832.) I went to cflib like what was suggested in a
> >previous message and picked up logN. At first this was looking better
but
> >then I noticed something fishy once again. I noticed that when the input
> >value is 9 on base 10 [logN(9,10)] it returned 9. My calculator comes up
> >with 0.95424250943932 which seems much more reasonable. What can I do
short
> >of using cfx if I need something that can do logarithms?
> >>
> >>
> >
>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Structure your ColdFusion code with Fusebox. Get the official book at
http://www.fusionauthority.com/bkinfo.cfm
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq
Archives: http://www.mail-archive.com/[email protected]/
Unsubscribe: http://www.houseoffusion.com/index.cfm?sidebar=lists