Wie ein nichtlineares System von 3 Gleichungen mit drei symbolischen Variablen in MATLAB zeichnen?

StackOverflow https://stackoverflow.com/questions/925555

  •  06-09-2019
  •  | 
  •  

Frage

Ich habe nicht viel Erfahrung mit Matlab haben. Ich weiß, dass Sie Gleichungen mit zwei Variablen wie folgt dargestellt werden können,:

ezplot(f1)
hold on
ezplot(f2)
hold off;

Wie würden Sie drei Gleichungen plotten mit drei symbolischen Variablen?

Ein Beispiel System wäre:

x^2+y^2+z^2-1=0
2*x^2+y^2-4*z=0
3*x^2-4y+z^2=0

Es wäre ideal, wenn es eine Möglichkeit, eine beliebiges System von drei Gleichungen zu zeichnen ist.

War es hilfreich?

Lösung

Ich glaube, ezsurf nahe kommt, was Sie wollen. Sie würden zunächst jede Gleichung für z lösen müssen, dann eine Funktion für diese Gleichung machen und zeichnen sie mit ezsurf. Hier ist, wie es mit dem ersten Gleichung tun von oben:

func1 = @(x, y) sqrt(1-x.^2-y.^2);
ezsurf(func1);

Dies sollte die obere Hälfte einer Kugel an.

Um alle drei Gleichungen zeigen zusammen, können Sie Folgendes tun:

func1 = @(x, y) sqrt(1-x.^2-y.^2);
func2 = @(x, y) 0.5.*x.^2+0.25.*y.^2;
func3 = @(x, y) sqrt(4.*y-3.*x.^2);
ezsurf(func1, [-1 1 -1 1]);
hold on;
ezsurf(func2, [-1 1 -1 1]);
ezsurf(func3, [-1 1 -1 1]);
axis([-1 1 -1 1 0 1]);

und die resultierende Handlung wird wie folgt aussehen:

die Handlung Durch Drehen, werden Sie feststellen, dass es erscheinen zwei Punkte, wo alle drei Flächen schneiden Sie zwei Lösungen für das System von Gleichungen zu geben.

Andere Tipps

„festhalten“, sagt gerade nicht vorhandene Linien und Markierungen auf der aktuellen Achse zu löschen. Sie sollten nur in der Lage zu tun

ezplot(f1);
hold on;
ezplot(f2);
ezplot(f3);
hold off;

Ich habe noch nie EZplot so kann dir nicht helfen, mit dieser.

verwendet
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top