Data update
This commit is contained in:
parent
4bb20c9b71
commit
cbaf4c4b64
12390 changed files with 318560 additions and 27248 deletions
|
|
@ -0,0 +1,58 @@
|
|||
CL-USER> ;; create a 4-dimensional array
|
||||
(make-array '(5 4 3 2) :initial-element 0)
|
||||
#4A((((0 0) (0 0) (0 0))
|
||||
((0 0) (0 0) (0 0))
|
||||
((0 0) (0 0) (0 0))
|
||||
((0 0) (0 0) (0 0)))
|
||||
(((0 0) (0 0) (0 0))
|
||||
((0 0) (0 0) (0 0))
|
||||
((0 0) (0 0) (0 0))
|
||||
((0 0) (0 0) (0 0)))
|
||||
(((0 0) (0 0) (0 0))
|
||||
((0 0) (0 0) (0 0))
|
||||
((0 0) (0 0) (0 0))
|
||||
((0 0) (0 0) (0 0)))
|
||||
(((0 0) (0 0) (0 0))
|
||||
((0 0) (0 0) (0 0))
|
||||
((0 0) (0 0) (0 0))
|
||||
((0 0) (0 0) (0 0)))
|
||||
(((0 0) (0 0) (0 0))
|
||||
((0 0) (0 0) (0 0))
|
||||
((0 0) (0 0) (0 0))
|
||||
((0 0) (0 0) (0 0))))
|
||||
CL-USER> ;; bind it to a variable (in the REPL, '*' is the value of the last evaluated form)
|
||||
(defparameter arr *)
|
||||
ARR
|
||||
CL-USER> ;; query array rank (number of dimensions) and dimensions
|
||||
(array-rank arr)
|
||||
4
|
||||
CL-USER> (array-dimensions arr)
|
||||
(5 4 3 2)
|
||||
CL-USER> ;; access, set, and access again element
|
||||
(aref arr 3 2 1 1)
|
||||
0
|
||||
CL-USER> (setf (aref arr 3 2 1 1) 2)
|
||||
2
|
||||
CL-USER> (aref arr 3 2 1 1)
|
||||
2
|
||||
CL-USER> ;; arrays are stored row-major order and elements can be accessed (and set) that way
|
||||
;; first let's get the row-major index
|
||||
(array-row-major-index arr 3 2 1 1)
|
||||
87
|
||||
CL-USER> (setf (row-major-aref arr 87) 3)
|
||||
3
|
||||
CL-USER> (aref arr 3 2 1 1)
|
||||
3
|
||||
CL-USER> ;; adjustable arrays can be reshaped
|
||||
(make-array '(3 3 3) :adjustable t :initial-element 0)
|
||||
#3A(((0 0 0) (0 0 0) (0 0 0))
|
||||
((0 0 0) (0 0 0) (0 0 0))
|
||||
((0 0 0) (0 0 0) (0 0 0)))
|
||||
CL-USER> (adjust-array * '(4 4 4) :initial-element 1)
|
||||
#3A(((0 0 0 1) (0 0 0 1) (0 0 0 1) (1 1 1 1))
|
||||
((0 0 0 1) (0 0 0 1) (0 0 0 1) (1 1 1 1))
|
||||
((0 0 0 1) (0 0 0 1) (0 0 0 1) (1 1 1 1))
|
||||
((1 1 1 1) (1 1 1 1) (1 1 1 1) (1 1 1 1)))
|
||||
CL-USER> ;; some built-in limits for arrays (they seem to be memory bound):
|
||||
(list array-rank-limit array-dimension-limit array-total-size-limit)
|
||||
(129 35184372088832 35184372088832)
|
||||
Loading…
Add table
Add a link
Reference in a new issue