2016-06-15 3 views
0

Ich bin ein Anfänger Lerner in Simulink. Ich habe versucht, die einheitlichen Zufallszahlen in aufsteigender Reihenfolge mit dem Matlab Function Block in Simulink zu sortieren. Irgendwie hat es nicht funktioniert. Hier ist der Code, den ich in einer MATLAB-Funktion geschrieben habeSortierung von einheitlichen Zufallszahlen mit Matlab-Funktion in Simulink

function y = fcn(u) 
%#codegen 

y =sort(log(u)/-0.0089); 

Kann mir jemand dabei helfen?

+0

Warum hat es nicht funktioniert? Haben Sie einen Fehler erhalten? Wenn ja, was war es? Sind die Zahlen falsch? Wenn ja, geben Sie ein Beispiel. –

+0

Dieser Teil der Funktion sieht gut aus. Wie nennt man 'fcn', mit anderen Worten, was ist' du'? Bitte machen Sie ein minimales, vollständiges und überprüfbares Beispiel (http://stackoverflow.com/help/mcve). – mars

+0

Es gab mir keinen Fehler. Als ich versuchte, das Ergebnis von y im Gültigkeitsbereich zu sehen, ist es immer noch in zufälliger Reihenfolge, nicht in aufsteigender Reihenfolge. Das Beispiel ist so. Ich möchte einheitliche Zufallszahlen von 0 bis 1 erzeugen. Also ist hier der einheitliche Zufallszahlenblock von Simulink (das ist die Eingabe). Und danach habe ich den Matlab-Funktionsblock benutzt. Hier muss ich einen Matlab-Code schreiben, der die Funktion y = fcn (u)% # codegen y = sort (u); Soweit ich weiß, wird der Simulink im Matlab-Funktionsblock automatisch die einheitliche Zufallszahl als u zuweisen. Ich hoffe, meine Erklärung ist klarer als zuvor. – Nad

Antwort

0

Mit genau Ihrer Funktion funktioniert das folgende Modell wie erwartet. Was machst du sonst so?

enter image description here

+0

Hallo Phil. Danke dafür. Wie sortiere ich die Zufallszahl, die ich mit der Sortierfunktion aus der Ausgabe bekommen habe? Wie kopierst du dieses Bild aus dem Matlab? Kannst du mir das beibringen? Es ist einfacher, wenn ich es dir zeigen kann. – Nad

+0

Und wissen Sie auch, wie Sie alle Zufallszahlen in einem Array in Simulink sammeln? Weißt du, welchen bestimmten Block ich verwenden soll, um sie in einem Array zu halten? – Nad

+0

Das obige Bild ist ein Screenshot, kein Bild, das von MATLAB exportiert wurde. –