Table of contents
CSPICE_XPOSE6 transposes a 6x6 matrix.
Given:
m1 any double precision 6x6 matrix.
help, m1
DOUBLE = Array[6,6]
the call:
cspice_xpose6, m1, mout
returns:
mout a double precision, 6x6 matrix which contains the transpose of
`m1'.
help, mout
DOUBLE = Array[6,6]
`mout' may overwrite `m1'.
None.
Any numerical results shown for this example may differ between
platforms as the results depend on the SPICE kernels used as input
and the machine specific arithmetic implementation.
1) Given a 6x6 double precision matrix, find its transpose.
Example code begins here.
PRO xpose6_ex1
;;
;; Define the input matrix.
;;
m1 = [ [ 1.D0, 2.D0, 3.D0, 4.D0, 5.D0, 6.D0 ], $
[ 0.D0, 7.D0, 8.D0, 9.D0, 10.D0, 11.D0 ], $
[ 0.D0, 0.D0, 12.D0, 13.D0, 14.D0, 15.D0 ], $
[ 0.D0, 0.D0, 0.D0, 16.D0, 17.D0, 18.D0 ], $
[ 0.D0, 0.D0, 0.D0, 0.D0, 19.D0, 20.D0 ], $
[ 0.D0, 0.D0, 0.D0, 0.D0, 0.D0, 21.D0 ] ]
;;
;; Compute the transpose of `m1'.
;;
cspice_xpose6, m1, mout
;;
;; Display the results.
;;
print, 'Input matrix (M1):'
print
print, format='(6F6.1)', m1
print
print, 'Transpose of M1:'
print
print, format='(6F6.1)', mout
END
When this program was executed on a Mac/Intel/IDL8.x/64-bit
platform, the output was:
Input matrix (M1):
1.0 2.0 3.0 4.0 5.0 6.0
0.0 7.0 8.0 9.0 10.0 11.0
0.0 0.0 12.0 13.0 14.0 15.0
0.0 0.0 0.0 16.0 17.0 18.0
0.0 0.0 0.0 0.0 19.0 20.0
0.0 0.0 0.0 0.0 0.0 21.0
Transpose of M1:
1.0 0.0 0.0 0.0 0.0 0.0
2.0 7.0 0.0 0.0 0.0 0.0
3.0 8.0 12.0 0.0 0.0 0.0
4.0 9.0 13.0 16.0 0.0 0.0
5.0 10.0 14.0 17.0 19.0 0.0
6.0 11.0 15.0 18.0 20.0 21.0
Native IDL code to calculate the same matrix result:
mout = transpose(m1)
The IDL transpose function accepts arbitrary NxM matrices.
1) If the input argument `m1' is undefined, an error is signaled
by the IDL error handling system.
2) If the input argument `m1' is not of the expected type, or it
does not have the expected dimensions and size, an error is
signaled by the Icy interface.
3) If the output argument `mout' is not a named variable, an
error is signaled by the Icy interface.
None.
None.
ICY.REQ
None.
J. Diaz del Rio (ODC Space)
E.D. Wright (JPL)
-Icy Version 1.0.3, 10-AUG-2021 (JDR)
Edited the header to comply with NAIF standard. Added complete
code example.
Added -Parameters, -Exceptions, -Files, -Restrictions,
-Literature_References and -Author_and_Institution sections, and moved
existing example to -Particulars.
Removed reference to the routine's corresponding CSPICE header from
-Abstract section.
Added arguments' type and size information in the -I/O section.
-Icy Version 1.0.2, 13-JUN-2011 (EDW)
Edits to comply with NAIF standard for Icy headers.
-Icy Version 1.0.1, 09-DEC-2005 (EDW)
Added -Examples section.
-Icy Version 1.0.0, 16-JUN-2003 (EDW)
transpose a 6x6 matrix
|