ошибка Matlab минус, размеры матрицы должны совпадать - PullRequest
1 голос
/ 06 октября 2011

Привет, почему я получаю эту ошибку?

x = linspace(-1,1,20);
y = linspace(-2,2,40);
z = (1.+sin(pi.*x)).*((3.+cos(1.065.*y)).^2).*exp(-x.^2 -(y.^2)./4);

??? Ошибка при использовании ==> минус Размеры матрицы должны совпадать.

1 Ответ

4 голосов
/ 06 октября 2011

Потому что x и y не имеют одинаковый размер.Вероятно, вы захотите использовать здесь: meshgrid.

Код будет выглядеть примерно так:

      [x,y] = meshgrid(linspace(-1,1,20),linspace(-2,2,40));
      z = (1.+sin(pi.*x)).*((3.+cos(1.065.*y)).^2).*exp(-x.^2 -(y.^2)./4);

Тогда вы можете визуализировать как:

      surf(x,y,z)

Иполучить такие вещи:

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...