Package sage :: Package calculus :: Module calculus :: Class Function_ceil
[hide private]
[frames] | no frames]

Class Function_ceil

source code

                      object --+                        
                               |                        
structure.sage_object.SageObject --+                    
                                   |                    
           structure.element.Element --+                
                                       |                
         structure.element.ModuleElement --+            
                                           |            
               structure.element.RingElement --+        
                                               |        
                              SymbolicExpression --+    
                                                   |    
                                   PrimitiveFunction --+
                                                       |
                                                      Function_ceil


The ceiling function.

The ceiling of $x$ is computed in the following manner.
\begin{enumerate}

\item The \code{x.ceil()} method is called and returned if it is there.
     If it is not, then \sage checks if $x$ is one of Python's
     native numeric data types.  If so, then it calls
     and returns \code{Integer(int(math.ceil(x)))}.

\item \sage tries to convert $x$ into a \class{RealIntervalField} with 53
      bits of precision. Next, the ceilings of the endpoints are computed.
      If they are the same, then that value is returned.  Otherwise, the
      precision of the \class{RealIntervalField} is increased until they
      do match up or it reaches \code{maximum_bits} of precision.

\item If none of the above work, \sage returns a \class{SymbolicComposition}
     object.
     
\end{enumerate}
     
EXAMPLES:
    sage: a = ceil(2/5 + x)
    sage: a
    ceil(x + 2/5)
    sage: a(4)
    5
    sage: a(4.0)
    5
    sage: ZZ(a(3))
    4
    sage: a = ceil(x^3 + x + 5/2)
    sage: a
    ceil(x^3 + x + 1/2) + 2
    sage: a(x=2)
    13

    sage: ceil(log(8)/log(2))
    3

    sage: ceil(5.4)
    6
    sage: type(ceil(5.4))
    <type 'sage.rings.integer.Integer'>

    sage: ceil(factorial(50)/exp(1))
    11188719610782480504630258070757734324011354208865721592720336801
    sage: ceil(SR(10^50 + 10^(-50)))
    100000000000000000000000000000000000000000000000001
    sage: ceil(SR(10^50 - 10^(-50)))
    100000000000000000000000000000000000000000000000000



Instance Methods [hide private]
 
_repr_(self, simplify=True)
File: sage/structure/element.pyx (starting at line 291)
source code
 
_latex_(self) source code
 
_maxima_init_(self) source code
 
_approx_(x)
Return the ceiling of x as a float.
 
__call__(self, x, maximum_bits=20000) source code

Inherited from PrimitiveFunction: __init__, _complex_approx_, number_of_arguments, plot, tex_needs_braces

Inherited from SymbolicExpression: __abs__, __cmp__, __eq__, __ge__, __gt__, __hash__, __int__, __le__, __long__, __lt__, __ne__, __nonzero__, __pow__, __str__, _add_, _axiom_init_, _complex_double_, _complex_mpfr_field_, _div_, _fast_float_, _gap_init_, _gp_init_, _integer_, _kash_init_, _macaulay2_init_, _magma_init_, _maple_init_, _mathematica_init_, _maxima_, _mpfr_, _mul_, _neg_, _octave_init_, _pari_init_, _polynomial_, _rational_, _real_double_, _real_rqdf_, _richcmp_, _singular_init_, _sub_, _sys_init_, arguments, coeff, coefficient, coefficients, coeffs, combine, conjugate, default_variable, denominator, derivative, diff, differentiate, display2d, exp_simplify, expand, expand_rational, expand_trig, factor, factor_list, find_maximum_on_interval, find_minimum_on_interval, find_root, full_simplify, function, gradient, hessian, imag, integral, integrate, inverse_laplace, laplace, limit, log_simplify, minpoly, n, nintegral, nintegrate, norm, numerator, numerical_approx, partial_fraction, poly, polynomial, power_series, radical_simplify, rational_expand, rational_simplify, real, roots, show, simplify, simplify_exp, simplify_full, simplify_log, simplify_radical, simplify_rational, simplify_trig, solve, subs, subs_expr, substitute, substitute_over_ring, taylor, trig_expand, trig_simplify, variables

Inherited from structure.element.RingElement: __div__, __idiv__, __imul__, __invert__, __mul__, __new__, __pos__, __rdiv__, __rmul__, __rpow__, __rtruediv__, __truediv__, _idiv_, _imul_, abs, additive_order, is_nilpotent, is_one, is_unit, multiplicative_order, order

Inherited from structure.element.ModuleElement: __add__, __iadd__, __isub__, __neg__, __radd__, __rsub__, __sub__, _iadd_, _ilmul_, _isub_, _lmul_, _rmul_

Inherited from structure.element.Element: __reduce__, __rxor__, __xor__, _cmp_, _im_gens_, base_base_extend, base_base_extend_canonical_sym, base_extend, base_extend_canonical, base_extend_canonical_sym, base_extend_recursive, base_ring, category, is_zero, parent

Inherited from structure.sage_object.SageObject: __repr__, _axiom_, _gap_, _gp_, _interface_, _interface_init_, _interface_is_cached_, _kash_, _macaulay2_, _magma_, _maple_, _mathematica_, _octave_, _pari_, _r_init_, _sage_, _singular_, db, dump, dumps, rename, reset_name, save, version

Inherited from object: __delattr__, __getattribute__, __reduce_ex__, __setattr__

Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

_repr_(self, simplify=True)

source code 
File: sage/structure/element.pyx (starting at line 291)

Overrides: structure.element.Element._repr_
(inherited documentation)

_maxima_init_(self)

source code 
Overrides: SymbolicExpression._maxima_init_

_approx_(x)

 
Return the ceiling of x as a float.
This is the smallest integral value >= x.

Overrides: PrimitiveFunction._approx_

__call__(self, x, maximum_bits=20000)
(Call operator)

source code 
Overrides: PrimitiveFunction.__call__