'' Attempted to access sorted_evalue(0); index must be a positive integer or logical. '' how to remove this??????
    5 views (last 30 days)
  
       Show older comments
    
    prema13
 on 24 Feb 2016
  
    
    
    
    
    Answered: Azzi Abdelmalek
      
      
 on 24 Feb 2016
             %calculate eigen vector & eigen value of cm = evector & evalue
    evector = dfdb * rvector;
    evalue = diag( rvalue );
    %clear rvector rvalue
    disp( 'Calculated Eigen Vectors & Eigen Values of CM' );
    [sorted_evalue, index] = sort( evalue );            %sorted in acending order
    sorted_evalue = flipud( sorted_evalue );            %rearranged in decending order
    index = flipud( index );                            %rearranged corresponding indies also
    %Now rearrange eigenvectors in the order of rearranged eigen values
    evector( :, 1:nof ) = evector ( :, index );
    smallest_evalue = (1/100) * sorted_evalue(0);            % to obtain the effective eigen values
    for i = 1:nof
        if (sorted_evalue(i) < smallest_evalue )
            break;
        end
        evalue = [ ];
    end
    index = i+1;
0 Comments
Accepted Answer
  Azzi Abdelmalek
      
      
 on 24 Feb 2016
        The error is du to sorted_evalue(0). In Matlab the indices begin at 1, the 0 is not allowed
0 Comments
More Answers (0)
See Also
Categories
				Find more on Array Geometries and Analysis in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
