mxlzhenzhu 发表于 2019-1-12 18:07

两个同阶矩阵的Bialternate Product

本帖最后由 mxlzhenzhu 于 2019-1-12 18:08 编辑

两个同阶矩阵的Bialternate Product,定义及其性质如下:


下面的代码可以用来计算两个矩阵的Bialternate Product, 拿走不谢。

function AB=Bialternate_Prod(A,B)
%% Compute the bialternate_Product of matrix A & B
%% Format:AB=Bialternate_Prod(A,B)
%% mxl.2019-1-12
n=size(A,1);
if n<=2
    error('Input Error.');
end

if size(A,1)~=size(A,2)||size(A,1)~=size(B,1)||size(A,1)~=size(B,2)
    error('Input Error.');
end





=find(tril(true(n,n),-1));
=sort(v1,'ascend');
v2=v2(ki);

m=n*(n-1)/2;
AB=zeros(m,m);
for loopi=1:m
    p=v1(loopi);q=v2(loopi);
    for loopj=1:m
      r=v1(loopj);s=v2(loopj);
      
      M=[A(p,r) A(p,s)
            B(q,r) B(q,s)];
      N=[B(p,r) B(p,s)
            A(q,r) A(q,s)];
      
      deta=det(M);detb=det(N);
      
      AB(loopi,loopj)=(deta+detb)/2;
      
    end
end


end


页: [1]
查看完整版本: 两个同阶矩阵的Bialternate Product