; Sanity test on matrix conventions. Mats Löfdahl 2012-04-04 ; Printing and multiplying row and column vectors. fmt='i5' journal,'test_printing_vectors.txt' ;; A 3-column by 2-row array: A = [ [0, 1, 2] ] ;; A 2-column by 3-row array: B = [ [1],$ [3],$ [5] ] print,'Check array dimensions with size( ,/dim):' print,'A:',size(A,/dim) print,'B:',size(B,/dim) print,' ' print,' ' print, '================================ With the # operator:' print,' ' printmatrix, A, NAME = 'A', op = '#', /PRINTOP, FMT = fmt print,' ' printmatrix, B, NAME = 'B', op = '#', /PRINTOP, FMT = fmt print,' ' printmatrix, A # B, NAME = 'A # B', op = '#', /PRINTOP, FMT = fmt print,' ' print,'OK, a 3-element column vector times a 3-element row vector is a 3x3 matrix.' print,' ' printmatrix, B # A, NAME = 'B # A', op = '#', /PRINTOP, FMT = fmt print,' ' print,'OK, a row vector times a column vector is a 1x1 matrix.' print,' ' print,' ' print, '================================ With the ## operator:' print,' ' printmatrix, A, NAME = 'A', op = '##', /PRINTOP, FMT = fmt print,' ' printmatrix, B, NAME = 'B', op = '##', /PRINTOP, FMT = fmt print,' ' printmatrix, A ## B, NAME = 'A ## B', op = '##', /PRINTOP, FMT = fmt print,' ' print,'OK, a row vector times a column vector is a 1x1 matrix.' print,' ' printmatrix, B ## A, NAME = 'B ## A', op = '##', /PRINTOP, FMT = fmt print,' ' print,'OK, a 3-element column vector times a 3-element row vector is a 3x3 matrix.'