mtimes.m
上传用户:haiyisale
上传日期:2013-01-09
资源大小:3246k
文件大小:1k
源码类别:

波变换

开发平台:

Matlab

  1. function P = mtimes(A,B)
  2. %MTIMES Laurent matrices multiplication.
  3. %   P = MTIMES(A,B) returns a Laurent matrix which is
  4. %   the product of the two Laurent matrices A and B.
  5. %   M. Misiti, Y. Misiti, G. Oppenheim, J.M. Poggi 29-Mar-2001.
  6. %   Last Revision 12-Jun-2003.
  7. %   Copyright 1995-2004 The MathWorks, Inc.
  8. %   $Revision: 1.1.6.3 $ $Date: 2004/04/13 00:39:18 $ 
  9. if isnumeric(A)
  10.     if length(A)==1 , A = A*eye(size(B.Matrix,1)); end
  11.     A = laurmat(A);
  12. elseif isnumeric(B)
  13.     if length(B)==1 , B = B*eye(size(A.Matrix,2)); end
  14.     B = laurmat(B);
  15. end
  16. MA = A.Matrix;
  17. MB = B.Matrix;
  18. [rA,cA] = size(MA);
  19. [rB,cB] = size(MB);
  20. if cA~=rB
  21.     msg = sprintf('Error using ==> *nInner matrix dimensions must agree.');
  22.     error(msg)
  23. end
  24. MP = cell(rA,cB);
  25. for i=1:rA
  26.     for j=1:cB
  27.         S = laurpoly(0,0);
  28.         for k=1:cA
  29.             S = S+MA{i,k}*MB{k,j};
  30.         end
  31.         MP{i,j} = S;
  32.     end
  33. end
  34. P = laurmat(MP);