MATLAB Answers

athi
0

How can I get values for f in a matrix of dimension(100,1)?

athi
さんによって質問されました 2017 年 9 月 18 日
最新アクティビティ Jan
さんによって 回答されました 2017 年 9 月 18 日
for x=linspace(-1,1,10)
for y=linspace(-1,1,10)
f= (1-x).^2 +100*(y-x.^2).^2
end
end

  0 件のコメント

サインイン to comment.

2 件の回答

回答者: José-Luis
2017 年 9 月 18 日
編集済み: José-Luis
2017 年 9 月 18 日

f =@(x,y) (1-x).^2 +100*(y-x.^2).^2;
dummy = linspace(-1,1,10);
[xx,yy] = ndgrid(dummy,dummy);
result = f(xx,yy);
result = result(:);
Alternatively:
result = bsxfun(f,dummy,dummy.');
result = result(:);

  0 件のコメント

サインイン to comment.


回答者: Jan
2017 年 9 月 18 日

Since R2016b with auto-expanding:
x = linspace(-1,1,10);
y = linspace(-1,1,10).';
f = (1-x).^2 + 100*(y - x.^2).^2;
f = f(:)

  0 件のコメント

サインイン to comment.



Translated by