Verfasst am: 21.08.2012, 09:06
Titel: Auswertung von 2 Matrixen einer Testfahrt.
Ich mache zurzeit ein Praktikum und muss auch mit Matlab programmieren. Habe bis jetzt einen 1 Semester lang einen Matlab Kurs in der Uni gemacht.
Zurzeit muss ich eine Testfahrt auswerten.
Ich habe zwei Matrizen mit je 2 Spalten. Die linke ist jeweils ein Zeitvektor.
Für die erste Matrix gibt die Rechte spalte die Schwenkposition eines Schweinwerfers an.
(e.g.)
(SollPos_R)
zeit (s) position (grad)
0.093 1.413
0.197 1.407
0.283 1.402
0.405 1.352
..............
1715.032 -3.432
In der Zweiten Matrix stellen nummern zwischen 1-8 bestimmte modi des Scheinwerfers da.
(e.g.)
(P_rechts)
zeit modus
0.083 2
0.191 4
0.301 4
0.397 4
.....
1715.013 3
Die beiden probleme sind, das ein Vektor 171506 Zeilen lang ist und der andere 171402 lang ist. Das Programm sollte eigentlich alle 10millisec. eine
Aufnahme machen. Dies geschieht leider nicht Zeitsynchron.
____
Meine erste Aufgabe war nicht besondes schwer. Da musste ich nur in einem Bardiagramm in Prozent zeigen wie lange der in realation zur fahrzeit zwischen 1 und 2 grad ist (e.g. 15% der fahrzeit), wie oft zwischen 2 und 3 grad (e.g. 7%fahrzeit)........
______________
Code:
y=SollPos_R; %select relevant vector
y(:,1)=[]; %Erase time vector
____________________________
Das war kein problem und funktioniert ohne Probleme.
Nun soll ich das gleiche machen aber diesmal soll ich das nur machen, wenn der Schweinwerfer in Modus 4 ist. Das ist natürlich schwierig werden, wegen der nicht synchronen Zeit. Ausserdem ist die fahrt insgesamt 5stundne lang. Ich habe 10 matrizen von den beiden. Ich dachte daran einen loop zu benuzen, aber bei mehr als 1,6 Millionen Punkten könnte dies sehr lange dauern. Gibt es irgenteine Methode über min(differences) oder so die Angepassten Zeiträume anzugleichen, ohne das es drei Stunden rechnen in Anspruch nehmen wird?
Verfasst am: 21.08.2012, 17:31
Titel: Re: Auswertung von 2 Matrixen einer Testfahrt.
Hallo piddy,
Mit INTERP1 sollte man in wenigen Sekundenbruchteilen die Indices herausfinden können, die zu den Zeiten gehören, bei denn bestimmte Werte vorliegen. Selbst mit einer Schleife wäre dies in wenigen Sekunden zu machen, wenn man berücksichtigt, dass beide Zeit-Spalten chronologisch sortiert sind. Versuche es einfach mal und poste, was Du bisher gemacht hast. Konkrete Fragen lassen sich besser beantworten, ohne dass wir gleich deine Hausaufgaben lösen.
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
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.