Cell: Difference between revisions

Jump to navigation Jump to search
5 bytes added ,  12:47, 24 August 2021
m
m (Text replacement - "http://help.dyalog.com" to "https://help.dyalog.com")
Line 47: Line 47:
In order to create a hierarchy of cells some ordering on the [[Axis|axes]] of an array must be used, with each smaller cell taking up a subset of the axes of a larger cell. For a particular cell rank, the axes will be split into two parts, with the axes used by the cells forming the ''cell shape'' and the other axes forming the [[frame]]. The choice to use trailing axes for a cell follows naturally from the [[ravel order]] of an array: because cells are handled as individual units but the frame is not, each cell should be contiguous in memory. The only choice which ensures this property is to use the trailing axes, those which are closer together in ravel order, for cells.
In order to create a hierarchy of cells some ordering on the [[Axis|axes]] of an array must be used, with each smaller cell taking up a subset of the axes of a larger cell. For a particular cell rank, the axes will be split into two parts, with the axes used by the cells forming the ''cell shape'' and the other axes forming the [[frame]]. The choice to use trailing axes for a cell follows naturally from the [[ravel order]] of an array: because cells are handled as individual units but the frame is not, each cell should be contiguous in memory. The only choice which ensures this property is to use the trailing axes, those which are closer together in ravel order, for cells.


The interactive tool at the right displays both trailing-axis cells (those used by APL) and leading-axis cells (the opposite choice). While each trailing-axis cell can be denoted with a single rectangle, leading-axis cells may require multiple rectangles to represent. This fact mirrors the properties of cells in ravel order: each leading-axis cell is a single region in the array's ravel, but in a trailing-axis no two elements are adjacent (except in the degenerate cases of 0-cells, full-rank cells, and length-1 axes).
The interactive tool at the right displays both trailing-axis cells (those used by APL) and leading-axis cells (the opposite choice). While each trailing-axis cell can be denoted with a single rectangle, leading-axis cells may require multiple rectangles to represent. This fact mirrors the properties of cells in ravel order: each leading-axis cell is a single region in the array's ravel, but in a trailing-axis cell no two elements are adjacent (except in the degenerate cases of 0-cells, full-rank cells, and length-1 axes).


== Hierarchy ==
== Hierarchy ==

Navigation menu