Non-linear Implicit function plot
2 views (last 30 days)
Show older comments
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 ?

0 Comments
Answers (2)
Star Strider
on 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])
Roger Stafford
on 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.
0 Comments
See Also
Categories
Find more on Line Plots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!