rtable_redim
change the upper and lower bounds of the dimension(s) of an rtable
Calling Sequence
Parameters
Description
Thread Safety
Examples
rtable_redim(A, newDim, ...)
rtable_redim(A, subType)
A
-
rtable object
newDim
a new lower bound or lower..upper bound range, one per dimension
subType
a new rtable sub-type, such as Matrix or Vector[row]
The rtable_redim command changes the lower and upper bounds of each dimension of an Array, Matrix, or Vector.
If A is a Matrix or Vector, and one or more of the new lower bounds is not 1, A is changed into an Array.
Each newDim parameter specifies either a new lower bound for the corresponding dimension, or a range giving both the lower and upper bound for that dimension.
Because rtable_redim cannot change the size of a dimension, the lower..upper form of newDim is equivalent to specifying just the lower bound. The range form is useful for making the dimensions of one rtable match those of another (see the examples).
The number of newDim parameters specified can be at most the number of dimensions of A. If fewer newDims are specified, the remaining dimensions are left unchanged.
Instead of a sequence of new dimensions, rtable_redim can be passed a subType argument, which must be one of one of Array, Matrix, Vector[row] or Vector[column]. This changes A to have that rtable sub-type. If the specified sub-type was Matrix, Vector[row] or Vector[column], the dimensions are also changed to have lower bounds of 1.
Note that rtable_redim changes the dimensions (and possibly the subtype if A is a Matrix or Vector, or a subType was specified) in place. In other words, the rtable passed in is modified.
rtable_redim returns A after modifying it.
The rtable_redim command is thread-safe as of Maple 15.
For more information on thread safety, see index/threadsafe.
V≔Vector⁡x,y,z,w
V≔xyzw
rtable_redim⁡V,4
A≔Array⁡1..50,1..50,frandom⁡
sub1≔A6..8,16..18:
dims1≔rtable_dims⁡sub1
dims1≔6..8,16..18
sub2≔A26..28,36..38:
dims2≔rtable_dims⁡sub2
dims2≔26..28,36..38
subadd≔sub1+sub2:
Error, (in `rtable/Sum`) invalid input: dimensions do not match: Array(6 .. 8,16 .. 18) cannot be added to Array(26 .. 28,36 .. 38)
rtable_redim⁡sub2,dims1:
rtable_dims⁡sub1
6..8,16..18
rtable_dims⁡sub2
rtable_dims⁡subadd
rtable_redim⁡subadd,Matrix
0.53164695570.45791756850.87321267161.3030309420.45390106701.2396766010.24327613320.81611811190.2577136183
1..3,1..3
See Also
Array
ArrayTools[Alias]
Matrix
rtable
Vector
Download Help Document