Wie Sie gesagt haben, dies nur für eine schnelle visuelle Kontrolle ist, würde ich von pi nur teilen:
n = 0.7854;
disp(['n in terms of pi: ', num2str(n/pi), '*pi']);
>> n in terms of pi: 0.25*pi
Ist dies etwas war Sie wollten oft tun, würde ich eine Funktion auf Ihrem local path wie so definieren
Dann
n = 0.7854;
[val, str] = wrtpi(n)
>> val = 0.25
str = n in terms of pi: 0.25*pi
Sie sagen, auch diese nur zur Identifizierung von Radiant Quadranten ist, abgesehen von ihnen zu lernen, können Sie auch einfach nur eine einfache Funktion
function q = quadrant(n)
Qs = pi*[0, 1/2, 1, 3/2]; % Quadrants
q = find(Qs <= mod(n,2*pi), 1, 'last'); % Index within the quadrants
% You could make this accept vector inputs using:
% q = arrayfun(@(x) find(Qs <= mod(x,2*pi), 1, 'last'), n)
end
Dann
quadrant(2*pi - 0.0001) % >> 4
quadrant(0.2) % >> 1
quadrant(1.6) % >> 2
Beachten Sie, dass die Verwendung der symbolischen Mathematik-Toolbox für etwas so Einfaches wahrscheinlich mehr Komplikationen und Verlangsamung verursacht als es hilft!
Gibt es einen bestimmten Grund, warum Sie möchten, dass es in 'Pi' ausgedrückt wird? 'pi/4 = 0,7854'. Wenn es Ihr Ziel ist, 'arctan (1)' in numerischen Berechnungen zu verwenden, dann sollte es Ihnen egal sein, wie es numerisch dargestellt wird - ob auf Ihrem persönlichen Rechner oder in MATLAB. Die physikalische Größe ist äquivalent. Wenn Sie es beispielsweise in einem Diagramm oder einer Figur anzeigen möchten, ist das anders. Bitte geben Sie an, welches Endziel dies wäre. – rayryeng
Hauptsächlich, dass es einfacher für mich ist, zu identifizieren, in welchem Quadranten meine Antwort in –
fällt. Quadranten sind in Vielfache von 'pi/2 = 1,57' aufgeteilt. Daher wäre ein Wert zwischen 0 und 1,57 der erste Quadrant, ein Wert zwischen 1,57 und 3,14 wäre der vierte Quadrant, ein Wert zwischen -1,57 und 0 wäre der zweite Quadrant und schließlich ein Wert zwischen -3,14 und -1,57 ist der dritte Quadrant. Ich würde Ihnen empfehlen, zu wissen, in welchem Quadranten numerische Bereiche verwendet werden, anstatt sich auf die Konvertierung zu verlassen, wie z. B. die unten angegebene Antwort. Wenn Sie den Code über einen längeren Zeitraum ausführen möchten, erhalten Sie anhand der folgenden Antwort Leistungsperioden. – rayryeng