Vektor dyn. erstellen Simulink < Matlab < Mathe-Software < Mathe < Vorhilfe
|
Status: |
(Frage) reagiert/warte auf Reaktion | Datum: | 10:59 Do 30.11.2006 | Autor: | Robson |
Ich versuche seit 2 Tagen in Simulink einen dynmischen Vektor zu generieren. Also ich bekomme eine natürliche Zahl als Eingang und muss dann einen Vektor erstellen, der von 1 bis zu dieser Zahl geht. In Matlab schreibt man ja
y = 1:x;
und man bekommt nen Vektor von 1 bis x. Aber wie geht das in Simulink? Ich bekomme es einfach nicht hin.
Kann mir irgendwer helfen? Danke.
Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.
|
|
|
|
Hallo,
willst du einen Block hat, der die Breite seines Ausgang je nach Eingangswert verändert? Oder doch eher einen, der ein n Elemente langes Array nacheinander rausschiebt?
Der erste Fall dürfte problematisch sein.
Für den zweiten habe ich in Simulink keine fertige Lösung gefunden, aber man könnte selbst eine S-function erzeugen, also eine eigene Matlab-Funktion, die das Gewünschte bewerkstelligt. Dazu solltest du dir mal in dem Simulink Library Browser die Kategorie "S-function demos" ansehen. Dort ist ein etwas umfangreiches Template zu finden und einige Beispiele.
Dann könnte deine Funktion bei jedem Zeitschritt das nächste Elemente deiner Folge 1:u ausgeben.
Gruß
Martin
|
|
|
|
|
Status: |
(Frage) überfällig | Datum: | 14:19 Fr 01.12.2006 | Autor: | Robson |
Hallo
Ja ich möchte das erste.
Ich hab schon gemerkt, dass es schwer ist. Ich hab es jetzt erstmal so gelöst, dass ich eine Maximallänge bestimme und den Rest des Vektors mit Nullen fülle. Ist zwar nicht das Gelbe vom Ei, aber es erfüllt erstmal seinen Zweck.
Vielleicht bekomm ich es ja noch raus oder jemand hat noch eine Idee???
MfG
Robson
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 14:20 Mo 01.01.2007 | Autor: | matux |
$MATUXTEXT(ueberfaellige_frage)
|
|
|
|