v_rotmr2qr

PURPOSE ^

V_ROTMR2QR converts a matrix of real quaternion matrices to quaternion vectors

SYNOPSIS ^

function qr=v_rotmr2qr(mr)

DESCRIPTION ^

V_ROTMR2QR converts a matrix of real quaternion matrices to quaternion vectors
 Inputs: 

     MR(4m,4n,...)   mxn matrix of real quaternion matrices (each 4x4)

 Outputs: 

     QR(4m,n,...)   mxn matrix of real quaternion vectors (each 4x1)

 In matrix form, quaternions can be multiplied and added using normal matrix 
 arithmetic. Each element of an mxn matrix of quaternions is itself a 4x4 block
 so the total dimension of MR is 4m x 4n.

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

0001 function qr=v_rotmr2qr(mr)
0002 %V_ROTMR2QR converts a matrix of real quaternion matrices to quaternion vectors
0003 % Inputs:
0004 %
0005 %     MR(4m,4n,...)   mxn matrix of real quaternion matrices (each 4x4)
0006 %
0007 % Outputs:
0008 %
0009 %     QR(4m,n,...)   mxn matrix of real quaternion vectors (each 4x1)
0010 %
0011 % In matrix form, quaternions can be multiplied and added using normal matrix
0012 % arithmetic. Each element of an mxn matrix of quaternions is itself a 4x4 block
0013 % so the total dimension of MR is 4m x 4n.
0014 
0015 %
0016 %      Copyright (C) Mike Brookes 2000-2018
0017 %      Version: $Id: v_rotmr2qr.m 10865 2018-09-21 17:22:45Z dmb $
0018 %
0019 %   VOICEBOX is a MATLAB toolbox for speech processing.
0020 %   Home page: http://www.ee.ic.ac.uk/hp/staff/dmb/voicebox/voicebox.html
0021 %
0022 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0023 %   This program is free software; you can redistribute it and/or modify
0024 %   it under the terms of the GNU General Public License as published by
0025 %   the Free Software Foundation; either version 2 of the License, or
0026 %   (at your option) any later version.
0027 %
0028 %   This program is distributed in the hope that it will be useful,
0029 %   but WITHOUT ANY WARRANTY; without even the implied warranty of
0030 %   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
0031 %   GNU General Public License for more details.
0032 %
0033 %   You can obtain a copy of the GNU General Public License from
0034 %   http://www.gnu.org/copyleft/gpl.html or by writing to
0035 %   Free Software Foundation, Inc.,675 Mass Ave, Cambridge, MA 02139, USA.
0036 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0037 s=size(mr);
0038 s(2)=s(2)/4;
0039 mr=reshape(mr,s(1),[]);
0040 qr=reshape(mr(:,1:4:end),s);
0041 if ~nargout
0042     qr=qr(1:4); % select the first element
0043     v_rotqr2ro(qr(:)); % plot a rotated cube
0044 end

Generated by m2html © 2003