#matlab
#matlab
Вопрос:
Привет, почему я получаю эту ошибку?
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:
Потому 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)
И получаем что-то вроде этого: