Je voudrais tracer la surface de cette fonction dans Matlab:Comment tracer un graphique d'une surface personnalisée dans Matlab?
w=(m*(1-p))/(h-1+m*(1-p))
Où
h=0.98;
P=[0.05:0.001:0.98];
M=[0:0.001:1];
Le graphique devrait ressembler à ceci:
J'ai essayé de mettre en œuvre la fonction graphique en tant que:
h=0.98;
P=[0.05:0.001:0.98];
M=[0:0.001:1];
W=[];
for i=1:size(P, 2)
for j=1:size(M, 2)
p=P(i);
m=M(j);
w=(m*(1-p))/(h-1+m*(1-p));
if w>1000
w=1000;
end
if w<0
w=0;
end
W(i, j) = w;
end
end
mesh(M, P, W);
Mais puisque la fonction change rapidement autour de la condition aux limites, mon graphique a fini par ressembler à ceci:
Comment puis-je lisser la courbe et lui donner une grille agréable, uniforme comme dans le première image?
En bref: [limite de l'axe z] (http://www.mathworks.com/help/matlab/ref/zlim.html) à 10 lors du traçage , et je suggère 'meshgrid' au lieu de boucles. –