Non-linear Implicit function plot

Hi I am trying to plot an implicit function. My function contains both scalars and vectors (a*x^3) - (3*b*(norm(-V1+(x+y)*V2)^3)) = 0, where a, b are scalars and V1 and V2 are some unit vectors. I want to plot 'x vs y'. I tried various methods like fimplicit, fplot, ezplot and also mupad (plot(plot::Implicit2d()) But failed Is there is a way to plot this ?

Réponses (2)

Star Strider
Star Strider le 2 Jan 2017
There probably is a way to plot it, but you have to tell us (and MATLAB) what you want as your independent variables.
Guessing here. See if this does what you want:
a = 5.5;
b = 2.3;
V1 = [1; 2; 3];
V2 = [2; 4; 7];
f = @(x,y) (a*x.^3) - (3*b*(norm(-V1+(x+y).*V2).^3));
figure(1)
ezsurf(f, [-5 5 -5 5])

1 commentaire

Chaluvadi Kiran
Chaluvadi Kiran le 2 Jan 2017
Modifié(e) : Chaluvadi Kiran le 2 Jan 2017
Hi, I am expecting a 2D plot(x vs y) not 3D. My implicit function is (a*x^3) - (3*b*(norm(-V1+(x+y)*V2)^3)) = 0 (equals to zero)

Connectez-vous pour commenter.

Roger Stafford
Roger Stafford le 2 Jan 2017
You could plot it using a third variable, t:
n = 200;
t = linspace(-2,2,n); % <-- Choose appropriate range for t
for k = 1:n
x(k) = (3*b/a)^(1/3)*norm(-V1+t(k)*V2);
y(k) = t(k)-x(k);
end
plot(x,y,y-)
axis equal
The trick is to choose the appropriate range for variable t to get the desired ranges for x and y.

Catégories

En savoir plus sur Line Plots dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by