Hi,

while working a little with sage I encountered some problems sage has
concerning numerical precision at very small numbers.
I hope I can make my point with a little example.

sage: a=1e-175
sage: log(a)
-402.952391273958

sage: log(2-a-2)
-infinity

As you can see sage has no problem evaluating log(a), but if you make
some computations with a, it will be disregarded.

My next approach using the numerical approximation method .n() shows
also some inconsequence.

sage: a.n(3000)
9.9999999999999999591421057981561172760359517840594637610381681203271426218
398700962941525716354631708608402128816567281624536848836577367469795392411
220011109485295768465799357318010252751732178407974254554038401714686355665
848001217909837164713986265000964892566636634526795754478479686133945236527
071065064513189551784144051652154369610524111495583091804490661938365977391
453819697791781023172096034811422121224133013894785904085438232868909835815
4296875000000000000000000000(...)000000000000000000000000000000000000000000000e-176

sage: (2-a-2).n(3000)
0.00000000000000000000000000000000000000(...)000000000000000000000000000000000

To put it in the right context, I am working on a program, where I
first compute some constants (very small ones) which will be used
afterwards.
Another problem is, that I get a SymbolicArithmetic type value after
some computation steps, which seem to be to complicated to work along
with for sage. So I have to approximate it with .n() to use it after
that point. And I think it is not the best way to approximate
intermediate values, isn't it?

Thank you
Michael

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to