Plotting 4dimentional data error

2 ビュー (過去 30 日間)
james
james 2012 年 3 月 14 日
Hi all I'm trying to plot the data to see the global minimum point. I'm presented with the equation
C = (1.10471.*((Z).^2)*((X).^2))+(0.0481*(Y*Z)*14*X);
my first issue is that when I try to produce a plot of this I get the error
??? Error using ==> mtimes Inputs must be 2-D, or at least one input must be scalar.
Error in ==> Untitled4 at 5 C = (1.10471.*((Z).^2)*((X).^2))+(0.0481*(Y*Z)*14*X);
My code is x = -10:1:10; y = -10:1:10; z = -10:1:10; [X,Y,Z] = meshgrid(x,y,z); C = (1.10471.*((Z).^2)*((X).^2))+(0.0481*(Y*Z)*14*X); surf(X,Y,Z,C); hold on; axis([-10 10 -10 10 10 10]);
Many thanks

採用された回答

james
james 2012 年 3 月 14 日
I changed my code to allow for this and still get the mistake!
x = -9:1:10;
y = -9:1:10;
z = -9:1:10;
[X,Y,Z] = meshgrid(x,y,z);
C = (1.10471.*((Z).^2)*((X).^2))+(0.0481*(Y.*Z)*14*X);
surf(X,Y,Z,C);
hold on;
axis([-10 10 -10 10 10 10]);
  1 件のコメント
Walter Roberson
Walter Roberson 2012 年 3 月 14 日
C = (1.10471.*((Z).^2) .* ((X).^2))+(0.0481*(Y.*Z)*14*X);

サインインしてコメントする。

その他の回答 (1 件)

Sean de Wolski
Sean de Wolski 2012 年 3 月 14 日
))+(0.0481*(Y*Z)*14*X);
))+(0.0481*(Y.*Z)*14*X);
Note difference:
doc vectorize
to avoid these errors in the future.
  2 件のコメント
james
james 2012 年 3 月 14 日
Should this be done after every vector?
Sean de Wolski
Sean de Wolski 2012 年 3 月 14 日
Whenever you get a error using {mtimes, mrdivide, mpower, mldivide}
and you don't want to be doing element-by-element multiplication.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeStrategy & Logic についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by