Графическое изображение Неявных Алгебраических уравнений в MATLAB

Я хочу вывести неявные функции на печать в MATLAB. Как x^3 + xy + y^2 = 36, уравнения, которые не могут быть превращены в простую параметрическую форму. Есть ли какой-либо простой метод?

18
задан Arkapravo 15 October 2014 в 20:56
поделиться

2 ответа

Вот несколько вариантов ...

Использование ezplot (или fplot , рекомендованного в более новых версиях):

Самым простым решением является использование функции ​​ezplot :

ezplot('x.^3 + x.*y + y.^2 - 36', [-10 10 -10 10]);

Что дает вам следующий график:

enter image description here


Использование контура :

Другой вариант - создать набор точек, в которых вы будете оценивать функцию f (x, y) = x ^ 3 + x * y + y ^ 2 , а затем используйте функцию contour , чтобы построить контурные линии, где f (x, y) равно 36:

[x, y] = meshgrid(-10:0.1:10);   % Create a mesh of x and y points
f = x.^3+x.*y+y.^2;              % Evaluate f at those points
contour(x, y, f, [36 36], 'b');  % Generate the contour plot
xlabel('x');                     % Add an x label
ylabel('y');                     % Add a y label
title('x^3 + x y + y^2 = 36');   % Add a title

Приведенный выше график даст вам график, почти идентичный графику, созданному ezplot :

enter image description here

31
ответ дан 30 November 2019 в 07:03
поделиться

Implot2 и implot из Matlab Central, похоже, делают эту работу.

2
ответ дан 30 November 2019 в 07:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: