Info
Cette question est clôturée. Rouvrir pour modifier ou répondre.
Cell contents reference from a non-cell array object ERROR
    8 vues (au cours des 30 derniers jours)
  
       Afficher commentaires plus anciens
    
Hi everybody, error occurs in Ed=Ed{j};
I don't know what is it and will be grateful for any suggestion.
Ned=zeros(ne,1);
for i=1:ne
    for j=1:lc
        Ed=Ed{j};
        Ned(i)=bar3s(Ex(i,:),Ey(i,:),Ez(i,:),[E Ep(i,1)],Ed(i,:));
    end
end
--------------------------------------------------------------
function [es]=bar3s(ex,ey,ez,ep,ed)
 b=[ ex(2)-ex(1); ey(2)-ey(1); ez(2)-ez(1) ];
 L=sqrt(b'*b);
   n=b'/L;   G=[   n      zeros(size(n)); zeros(size(n))     n   ];
   E=ep(1); A=ep(2); Kle=E*A/L*[ 1 -1; 1  1];
N=E*A/L*[-1 1]*G*ed';
 es=N;
0 commentaires
Réponses (1)
  David Sanchez
      
 le 15 Déc 2014
        Ed{j} is the content of element j within cell array Ed, and you are trying to assign that value to the cell array itself Ed:
Ed=Ed{j}; %!!!!!
2 commentaires
  David Sanchez
      
 le 15 Déc 2014
				You might try something like this:
Ned=zeros(ne,1);
for i=1:ne
    for j=1:lc
        % Ed=Ed{j}; %%%%%no need for this line
        Ned(i)=bar3s(Ex(i,:),Ey(i,:),Ez(i,:),[E Ep(i,1)],Ed{j}(i,:)); % the cell content is plugged with no need of intermediaries
    end
end
Cette question est clôturée.
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!