2017-04-12 10 views
0

固有ベクトルEvのベクトル([Ev、Ed] = eig(A)から得られる)を降順でソートする必要があります。私はまた、並べ替えで使用されるインデックスが必要です。Matlabのesort.mの代替関数

コントロールシステムツールボックスに付属しているesort.mを使用することはできません(これは持っておらず、入手できません)。私が使用できるesort.mの代替機能はありますか?

ありがとうございました。機能sortを使用して

答えて

1

realimagあなたが "コピー" esort機能することができます:

imre = rand(10,1)+rand(10,1)*1i; %random imaginary number 

re = real(imre);     %extract the real part 
im = imag(imre)*1i;    %extract the imaginary part 

[sorted,ind] = sort(re);   %sort according to the real part 
imre_sort = sorted+im(ind);  %add the imaginary part. 

だから、単純に似た機能:

function imre_sort = todelete(imre,ord) 
%ord can be 'ascend' or 'descend' 
    if nargin == 1 
     ord = 'ascend'; 
    end 

    re = real(imre); 
    im = imag(imre)*1i; 

    [sorted,ind] = sort(re,ord); 
    imre_sort = sorted+im(ind); 

end 
+0

感謝...これなら、私は見てみましょう働く –