Hi Sage,

I'm not sure if it's that I'm not doing this right, but I have this 
function that has a ceiling in it. I defined it like so:

botrk(h0_prime, a0, s0, c0) = h0_prime / ceil(log(20 * (a0 + 25) / (h0_prime 
+ 20 * (a0 + 25)), 0.95)) * (s0 + 0.4) * (1 + c0)

But it won't do approximations of the ceiling, only returning another 
symbolic expression that can't be approximated.

sage: botrk(3000, 10, 1, 0.1)
4620.00000000000/ceil(-19.4957257462237*log(7/37))
sage: botrk(3000, 10, 1, 0.1).n()
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-63-503406e1b435> in <module>()
----> 1 botrk(Integer(3000), Integer(10), Integer(1), RealNumber('0.1')).n()

/usr/lib/sagemath/local/lib/python2.7/site-packages/sage/symbolic/expression.so 
in sage.symbolic.expression.Expression._numerical_approx 
(sage/symbolic/expression.cpp:21011)()

TypeError: cannot evaluate symbolic expression numerically


Does anyone know how to approximate ceilings? For my purpose, I could just 
plug this in again and get a result, but I was hoping for a better, cleaner 
way of doing it.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-support" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-support+unsubscr...@googlegroups.com.
To post to this group, send email to sage-support@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-support?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to