Vektorlänge bei VectorPlot < Mathematica < Mathe-Software < Mathe < Vorhilfe
|
Aufgabe | Gegeben ein VektorFeld. Plotte das Vektorfeld mit den Nullisoklinen. Jeder Vektor soll die gleiche relative Länge besitzen. Relativ meint, legt man ein Lineal an, so ist jeder Vektor gleich lang, unabhängig von der Skalierung der Achsen. |
Der Mathematicacode ist folgender:
a = 0.3
Gamma = 3
Epsilon = 0.01
graphs := Plot[{-v*(v - a)*(v - 1)}, {v, -0.4, 1.2},
PlotRange -> {{-0.4, 1.2}, {-0.2, 0.3}},
PlotStyle -> {{Black, Thick}, {Black, Thick}}, AspectRatio -> 1,
AxesStyle -> Arrowheads[0.03] ]
vecs := VectorPlot[{-v*(v - a)*(v - 1) -
w, [mm] \[Epsilon]*(v [/mm] - [mm] \[Gamma]*w)}, [/mm] {v, -0.4, 1.2}, {w, -0.198,
0.25}, Axes -> True, VectorScale -> {0.04, Automatic, None}]
Show[graphs, vecs, AxesLabel -> {"v", "w"}]
Das erzeugt dieses Bild:
[Dateianhang nicht öffentlich]
Zwar hat hier jeder Vektor die gleiche Länge, aber nur, wenn beide Achsen auf dem gleichen Intervall gezeigt sind. Das ist aber nicht das, was ich möchte.
Hat jemand eine Idee, wie ich VectorScale sagen kann, dass jeder Vektor "gleich lang" ist?
Dateianhänge: Anhang Nr. 1 (Typ: png) [nicht öffentlich]
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 16:20 Sa 21.01.2012 | Autor: | matux |
$MATUXTEXT(ueberfaellige_frage)
|
|
|
|