|
|
Workaround für varibale Arraylängen bei Embedded Matlab ? |
|
amin |
Forum-Anfänger
|
|
Beiträge: 45
|
|
|
|
Anmeldedatum: 11.05.09
|
|
|
|
Wohnort: Karlsruhe
|
|
|
|
Version: R2009b
|
|
|
|
|
|
Verfasst am: 02.06.2009, 09:51
Titel: Workaround für varibale Arraylängen bei Embedded Matlab ?
|
|
|
|
|
Hallo,
ich möchte mit Embedded Matlab aus einem M-File ersteinmal C-Code generieren um diesen später in eine S-Function zu packen.
Jetzt habe ich schon aus diversen Webinars gelernt, dass ich die Arraygrösse gernerell auf das potentielle Maximum definieren muss. Das funktioniert auch soweit.
Mein Problem ist jetzt aber, dass ich bei Funktionen wie der Standartabweichung oder dem Mittelwert und vielen anderen Funktionen, ein flasches Ergebnis bekomme, wenn ich das Array mit Nullen aufgefüllt ist.
Jetzt dachte ich mir, ist ja kein Problem. Da übergebe ich mit dem Array einfach auch die Arraygrösse und löse das folgendermasen:
Jedoch funktioniert das auch nicht. Das kann ich jedoch nicht ganz nachvollziehen, da hier eigentlich kein Array mit einer Variablen Länge erstellt wird.
Wie löst Ihr soetwas ? Muss ich jetzt jede Funktion aus Matlab selbst neu schreiben, oder gibt´s da einen Workaround ?
Beschreibung: |
Build File für mean_var.m |
|
Download |
Dateiname: |
build_mean_var.m |
Dateigröße: |
74 Bytes |
Heruntergeladen: |
501 mal |
Beschreibung: |
Beispielfile aus dem oben gezeigtem Code |
|
Download |
Dateiname: |
mean_var.m |
Dateigröße: |
88 Bytes |
Heruntergeladen: |
586 mal |
Zuletzt bearbeitet von amin am 02.06.2009, 13:49, insgesamt einmal bearbeitet
|
|
|
|
|
amin |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 45
|
|
|
|
Anmeldedatum: 11.05.09
|
|
|
|
Wohnort: Karlsruhe
|
|
|
|
Version: R2009b
|
|
|
|
|
|
Verfasst am: 02.06.2009, 10:18
Titel:
|
|
Hallo,
ich habe nochmal in ein Webinar reingeschaut:
Algorithm Design and Code Generation with Embedded MATLAB
Hier wird in Minute 42 ein vergleichbares Problem gezeigt, und er löst es tatsächlich mit Neuschreiben der Funktionen. Bei ihm sind´s zwar einfach Minima und Maxima Suchen. Aber das kann´s ja dennoch nicht sein. Denn es gibt ja auch erheblich kompliziertere Funktionen.
Wenn man am Ende ohnehin alles neu schreiben muss, dann kann man es im Prinzip auch gleich in C schreiben.
Wie löst ihr denn dieses Problem ?
|
|
|
amin |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 45
|
|
|
|
Anmeldedatum: 11.05.09
|
|
|
|
Wohnort: Karlsruhe
|
|
|
|
Version: R2009b
|
|
|
|
|
|
Verfasst am: 04.06.2009, 12:57
Titel:
|
|
Da es offensichtlich keine andere Lösung gibt, habe ich nun alle verwendeten Matlab Funktionen selbst neu geschrieben.
So geht´s zumindest.
Dennoch denke ich das es dafür eigentlich eine bessere Lösung geben sollte.
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2025
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|