kigubkur.elfun.ceil
Elementary Function: ceiling function, ⌈x⌉ = smallest integer ≥ x.
ceiling
(require '[kigubkur.elfun [ceil :refer [ceiling]]])
Examples
Ceiling of a number
=> (ceiling 1.6)
2
Ceiling of a vector
=> (def r [[1.2 2.4 3.5 4.7]])
=> (def c [[1.2][2.4][3.5][4.7]])
=> (view r)
[1.2 2.4 3.5 4.7]
Order -> 1 x 4
=> (ceiling r)
[[2 3 4 5]]
=> (view c)
[1.2]
[2.4]
[3.5]
[4.7]
Order -> 4 x 1
=> (ceiling c)
[[2] [3] [4] [5]]
Ceiling of a matrix
=> (def M [[1.0 2.1 3.2 4.3 5.4] [1.5 2.6 3.7 4.8 5.9] [1.0 2.1 3.2 4.3 5.4] [1.5 2.6 3.7 4.8 5.9]])
=> (view M)
[1.0 2.1 3.2 4.3 5.4]
[1.5 2.6 3.7 4.8 5.9]
[1.0 2.1 3.2 4.3 5.4]
[1.5 2.6 3.7 4.8 5.9]
Order -> 4 x 5
=> (view (ceiling M))
[1 3 4 5 6]
[2 3 4 5 6]
[1 3 4 5 6]
[2 3 4 5 6]
Order -> 4 x 5
Floor of a block
(require '[kigubkur.construct [blocking :refer [block]]])
=> (def L [[1.0 2.1 3.2 4.3 5.4 6.5 7.6 8.7 9.8 10.9]
[1.9 2.8 3.7 4.6 5.5 6.4 7.3 8.2 9.1 10.0]
[1.1 2.2 3.3 4.4 5.5 6.6 7.7 8.8 9.9 10.9]
[1.9 2.8 3.7 4.6 5.5 6.4 7.3 8.2 9.1 10.9]])
=> (def B (block L 5))
=> (pprint B)
[[{:A11 [[1.0 2.1 3.2 4.3 ]
[1.9 2.8 3.7 4.6]
[1.1 2.2 3.3 4.4 ]
[1.9 2.8 3.7 4.6]],
:A12 [[5.4 6.5 7.6 8.7]
[5.5 6.4 7.3 8.2]
[5.5 6.6 7.7 8.8]
[5.5 6.4 7.3 8.2]],
:A13 [[9.8 10.9]
[9.1 10.0]
[9.9 10.9]
[9.1 10.9]]}]]
=> (pprint (ceiling B))
[[{:A11 [[1 3 4 5]
[2 3 4 5]
[2 3 4 5]
[2 3 4 5]],
:A12 [[6 7 8 9]
[6 7 8 9]
[6 7 8 9]
[6 7 8 9]],
:A13 [[10 11]
[10 10]
[10 11]
[10 11]]}]]
ceiling
(ceiling X)
Returns the ceiling of a number or every element of a matrix or a block (i.e. element-wise ceiling); ceiling of x, ⌈x⌉ ≝ smallest integer ≥ x.
Syntax: (ceiling X)
s.t X
is a scalar or a kigubkur© matrix (or both blocks)
Note: if x ∈ {##NaN
, ##Inf
, ##-Inf
}, returns ##NaN
.