How to plot implicit function with conditions?
Afficher commentaires plus anciens
I need to plot a function / surface of the form f(x,y,z)=0
But, I also need to put some constraints like
-3.14< $\sqrt{x+y}$ <3.14
How can i achieve this?
Réponses (2)
Use "fimplicit" or "fimplicit3" and select ranges for the variables:
4 commentaires
Abir Ghosh
le 10 Juil 2022
Torsten
le 10 Juil 2022
And what is the function f for which you want to plot the surface f(x,y,z)=0 ?
Here is an example:
fimplicit(@fun)
function values = fun(x,y)
values = NaN(size(x));
values(x+y<0) = x.^2+y.^2-1.0;
end
Abir Ghosh
le 11 Juil 2022
Doesn't look that nice ...
fimplicit3(@fun,[-5 5 -5 5 -5 5])
function values = fun(x,y,z)
[theta,r] = cart2pol(x,y);
%r = sqrt(x.^2+y.^2);
%theta = atan2(y,x);
values = NaN(size(x));
for i=1:numel(x)
if abs(z(i)+r(i)) < pi && abs(z(i)-r(i)) < pi
values(i) = (tan(z(i)+r(i))+tan(z(i)-r(i))) - (tan(z(i)+r(i))-tan(z(i)-r(i))).*cos(theta(i));
end
end
end
Catégories
En savoir plus sur Surface and Mesh 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!

