Ich portiere Code, der in Oktave erstellt wurde, in pylab. Eine der portierten Gleichungen liefert in Python dramatisch andere Ergebnisse als in der Oktave.
Der beste Weg, dies zu erklären, ist, die von octave und pylab erzeugten Plots aus derselben Gleichung zu zeigen.
Hier ist ein vereinfachter Ausschnitt der Originalgleichung in Oktave. In diesem kleinen Testskript wird das Ergebnis der Funktion mit phi, das bei Null gehalten wird, von ~ (-pi, pi):
aufgetragen %Vor%Das resultierende Oktavdiagramm sieht folgendermaßen aus:
Die gleiche Gleichung wurde kopiert und von Oktave in Python eingefügt, wobei '^' durch '**' ersetzt, 'acos' durch 'arccos' ersetzt und 'asin' durch 'arcsin' ersetzt wurde. Derselbe Bereich von Theta wurde aufgetragen, wobei phi bei Null gehalten wurde:
%Vor%Pythons Ergebnis sieht folgendermaßen aus:
Ich kann nicht feststellen, was die Unterschiede verursacht, Irgendwelche Ideen?
Probieren Sie from __future__ import division
aus, um Fehler zu vermeiden, die sich aus der Unterteilung des Bodens ergeben.
Tags und Links python matlab matplotlib equation octave