Azzera filtri
Azzera filtri

Info

Questa domanda è chiusa. Riaprila per modificarla o per rispondere.

Cell contents reference from a non-cell array object ERROR

3 visualizzazioni (ultimi 30 giorni)
Hamid
Hamid il 15 Dic 2014
Chiuso: MATLAB Answer Bot il 20 Ago 2021
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;

Risposte (1)

David Sanchez
David Sanchez il 15 Dic 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 Commenti
David Sanchez
David Sanchez il 15 Dic 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

Questa domanda è chiusa.

Tag

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by