Unable to perform assignment because the indices on the left side are not compatible with the size of the right side.

1 vue (au cours des 30 derniers jours)
% INPUT OF INITIAL MATERIAL DISTRIBUTION
% ONLY in 1st ITERATION
if (a==1)
fid = fopen('emat_initial.txt','r');
temp = fscanf(fid,'%g',[1 inf]);
emat(:,1) = temp';
fclose(fid);
end
Error showing in this line emat(:,1) = temp';

Réponse acceptée

KSSV
KSSV le 21 Sep 2021
emat = cell([],1) ;
% INPUT OF INITIAL MATERIAL DISTRIBUTION
% ONLY in 1st ITERATION
if (a==1)
fid = fopen('emat_initial.txt','r');
temp = fscanf(fid,'%g',[1 inf]);
emat{1} = temp';
fclose(fid);
end
The problem is because of size temp. Know the isze of temp and initialize emat. If size is not know save them into a cell array as shown in the code.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by