Evaluate Function at different data points from vectors

40 次查看(过去 30 天)
I have three vectors
x = [ 0.05 0.06 ]
y = [ 1.23 1.41 ]
z = [ 0.1 0.2]
Now I want to evaluate function at all values such as
f(0.05,1.23,0.1)=2.6629
f(0.05,1.23,0.2)=2.7629
f(0.05,1.41,0.1)=3.1381
f(0.05,1.41,0.2)=3.2381
f(0.06,1.23,0.1)=2.6729
f(0.06,1.23,0.2)=2.7729
f(0.06,1.41,0.1)=3.1481
f(0.06,1.41,0.2)=3.2481
These values should be saved in a vector.

采纳的回答

Thiago Henrique Gomes Lobato
编辑:Thiago Henrique Gomes Lobato 2020-6-28
Use meshgrid to generate all combinations and make your function accept vector entries. Ex:
f = @(x,y,z)x.*y+z; % Insert your function
x = [ 0.05 0.06 ];
y = [ 1.23 1.41 ];
z = [ 0.1 0.2];
[XX,YY,ZZ] = meshgrid(x,y,z); % Create all possible combinations
w = f(XX(1:end),YY(1:end),ZZ(1:end))
w =
0.1615 0.1705 0.1738 0.1846 0.2615 0.2705 0.2738 0.2846
  2 个评论

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Surface and Mesh Plots 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by