2016-05-27 5 views
0

C'est un simple réordonnancement de la matrice Zb. (Réorganiser par des valeurs de ordbar comme nouvel indice de Zb)Scilab index error

lZb = size(Zb,1); 
Zbtemp = zeros(lZb,lZb); 
for i = 1:lZb 
    for i2 = 1:lZb 
     b1=ordbar(i,1) 
     b2=ordbar(i2,1) 
     Zbtemp(b1,b2) = Zb(i,i2); 
    end 
end 

problème est la matrice Zbtemp a tous les numéros d'index qui sont ordbar. Mais dans les deux, on dit que l'index est invalide.

ordbar = [ 2. 
      3. 
      4. 
      5. 
      1.] 

et

Zb = [ 4+5*%i 4+5*%i 0   0   -4-5*%i  
     4+5*%i 6+9*%i 0   0   -6-9*%i  
     0   0  9+%i  9+%i  9+%i  
     0   0  9+%i  10+4*%i 10+4*%i 
     -4-5*%i -6-9*%i 9+%i  10+4*%i 18+21*%i ] 

En d'autres termes, les valeurs de l'indice existe (est valide) mais Scilab ne reconnaît pas l'indice.

Répondre

0

résolu avec abs()

b1=abs(ordbar(i,1)) 
b2=abs(ordbar(i2,1))