9.93 EOSHIFT — End-off shift elements of an array
- Description:
-
EOSHIFT(ARRAY, SHIFT[, BOUNDARY, DIM])
performs an end-off shift on elements of ARRAY along the dimension of DIM. If DIM is omitted it is taken to be1
. DIM is a scalar of typeINTEGER
in the range of 1 \leq DIM \leq n) where n is the rank of ARRAY. If the rank of ARRAY is one, then all elements of ARRAY are shifted by SHIFT places. If rank is greater than one, then all complete rank one sections of ARRAY along the given dimension are shifted. Elements shifted out one end of each rank one section are dropped. If BOUNDARY is present then the corresponding value of from BOUNDARY is copied back in the other end. If BOUNDARY is not present then the following are copied in depending on the type of ARRAY.Array Type Boundary Value Numeric 0 of the type and kind of ARRAY. Logical .FALSE.
.Character(len) len blanks. - Standard:
-
Fortran 95 and later
- Class:
-
Transformational function
- Syntax:
-
RESULT = EOSHIFT(ARRAY, SHIFT [, BOUNDARY, DIM])
- Arguments:
-
ARRAY May be any type, not scalar. SHIFT The type shall be INTEGER
.BOUNDARY Same type as ARRAY. DIM The type shall be INTEGER
. - Return value:
-
Returns an array of same type and rank as the ARRAY argument.
- Example:
-
program test_eoshift integer, dimension(3,3) :: a a = reshape( (/ 1, 2, 3, 4, 5, 6, 7, 8, 9 /), (/ 3, 3 /)) print '(3i3)', a(1,:) print '(3i3)', a(2,:) print '(3i3)', a(3,:) a = EOSHIFT(a, SHIFT=(/1, 2, 1/), BOUNDARY=-5, DIM=2) print * print '(3i3)', a(1,:) print '(3i3)', a(2,:) print '(3i3)', a(3,:) end program test_eoshift
Next: EPSILON, Previous: DTIME, Up: Intrinsic Procedures [Contents][Index]
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-9.3.0/gfortran/EOSHIFT.html