График многопеременной функции в MATLAB - PullRequest
0 голосов
/ 07 декабря 2018

Я никогда не использовал MATLAB раньше, поэтому я очень потерян.Для моего класса исчисления нам было поручено найти определенную функцию, а затем использовать MATLAB для ее построения.С поиском функции проблем не было.Однако, пытаясь изобразить это, я выдернул свои волосы.Функция z (x, y) = xy (x + y) (2x + y) (3x + y) (x-2y) (x-3y) (x-4y).Любая помощь или совет с благодарностью.

1 Ответ

0 голосов
/ 07 декабря 2018

Вы можете определить дескриптор анонимной функции .

% define function
% .* denotes element wise multiplication
f = @(x,y) x.*y.*(x+y).*(2*x+y).*(3*x+y).*(x-2*y).*(x-3*y).*(x-4*y);

% define range and resolution for x and y
x = -20:0.5:20;
y = -20:0.5:20;

% create meshgrid for 3d plotting
[X, Y] = meshgrid(x,y);

% calculate z values (for meshgrid)
z = f(X, Y);

% plot the function
figure()
surf(x,y,z)

Для дальнейшего объяснения, поскольку вы хотите вычислить значение z для пар x и y, вы должны использовать поэлементное умножение .*.

Затем вам нужно создать meshgrid для значений x и y, чтобы иметь все возможные пары x и y в двух новых матрицах X и Y.Предоставление их вашей функции вычислит соответствующее значение z для всех этих пар.Вы можете использовать их для построения графиков, например, для серфинга.

enter image description here

...