erorr in for loop
古いコメントを表示
could you please help me to correct these small calculations
w=0:0.02:5;
for i=1:length(w)
a(i)=w.^4-12.*(w.^2);
b(i)=w.^8-144.*(w.^4);
c(i)=9.*(w.^6)+256.*(w.^2);
Real(i)= a(i)/(b(i)+c(i));
end
thank you
採用された回答
その他の回答 (1 件)
Image Analyst
2016 年 5 月 2 日
Try this:

w=0:0.02:5;
a = w.^4-12.*(w.^2);
b = w.^8-144.*(w.^4);
c = 9.*(w.^6)+256.*(w.^2);
ratios = a ./ (b+c);
plot(w, ratios, 'b*-');
grid on;
% Set up figure properties:
% Enlarge figure to full screen.
set(gcf, 'Units', 'Normalized', 'OuterPosition', [0 0 1 1]);
% Get rid of tool bar and pulldown menus that are along top of figure.
set(gcf, 'Toolbar', 'none', 'Menu', 'none');
% Find w where ratios == 1
differences = ratios-1;
[minDifference, indexOfMin] = min(differences)
% Plot a circle there
hold on;
plot(w(indexOfMin), ratios(indexOfMin), 'ro', 'MarkerSize', 15, 'LineWidth', 2);
message = sprintf('ratios is closest to 1 at index %d where ratios(%d) = %f',...
indexOfMin, indexOfMin, w(indexOfMin));
uiwait(helpdlg(message));
カテゴリ
ヘルプ センター および File Exchange で Loops and Conditional Statements についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!