How to save these values in a matrix
古いコメントを表示
hello , example : clc;clear all;close all; a=variable;b=variable2; for i=1:0.1:10 for j=1:0.1:10 ax=i-a; ay=j-b; z=[ax ay]; end end this is a very simple example but the point is i want to save all the results of ax and ay in the Z in the workspace as a matrix not the last value of ax and ay , Thanks for your help :)
1 件のコメント
Honglei Chen
2012 年 2 月 28 日
Please format your question
http://www.mathworks.com/matlabcentral/answers/13205-tutorial-how-to-format-your-question-with-markup
回答 (1 件)
Honglei Chen
2012 年 2 月 28 日
Use a for loop and preallocate z, i.e., add
z = zeros(91*91,2)
at front and then replace the assignment to z with
clc;clear all;close all; a=1;b=2;
z = zeros(91*91,2);
i = 1:0.1:10;
j = 1:0.1:10;
for m = 1:numel(i)
for n = 1:numel(j)
ax=i(m)-a;
ay=j(n)-b;
z((m-1)*numel(i)+n,:) = [ax ay];
end
end
4 件のコメント
Ahmed Hassaan
2012 年 2 月 28 日
Honglei Chen
2012 年 2 月 28 日
sorry, didn't notice that you are using 0.1 step. See the updated answer above.
Ahmed Hassaan
2012 年 2 月 28 日
Honglei Chen
2012 年 2 月 28 日
It's because of the precision, you can either round it, or specify all possible i's and j's and then iterate the number of elements. See the updated example.
カテゴリ
ヘルプ センター および File Exchange で Creating and Concatenating Matrices についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!