DIAdem

cancel
Showing results for 
Search instead for 
Did you mean: 

Sortieren von Daten in DAC

llo Criss,

 

in meinem letzten Beispiel werden nur die Werte > 0 in das Array übertrsgen und nur die werden für die Berechnung berücksichtigt. Der NoValue Wert wird nur angezeigt, wenn ein Wert < 0 gemessen wurde, hat auf die Berechnung aber keinen Einfluß. Bei Bedarf könnte aber auch das letzte gültige Quantil angezeigt werden.

 

Gruß

Walter

0 Kudos
Message 21 of 35
(2,866 Views)

Achso. das klingt super. Wo muss ich das im Script ändern, dass dann das letzte gültige Quantil angezeigt wird?

 

Viele Grüße Criss

0 Kudos
Message 22 of 35
(2,858 Views)

Hier sind die Änderungen

 

Gruß

Walter

0 Kudos
Message 23 of 35
(2,855 Views)

Hallo Walter,

 

also bis jetzt läuft es echt gut. Nocheinmal vielen Dank!

Was mir aber noch Kopfzerbrechen bereitet ist die feste Länge des Arrays. Gibt es vielleicht doch eine Möglichkeit diese varibel bzgl. der Eingangswerte zu gestalten?

So, dass das Array nur so lang ist wie auch tatsächlich Werte existieren.

Denn ich habe einzelne Geschwindigkeitsbereiche in denen sehr viele Werte auftreten und andere in denen die Anzahl der Werte eher überschaubar ist. Die dynamische Fahrweise soll aber über die gesamte Messfahrt betrachtet werden.

 

Viele Grüße

Criss

0 Kudos
Message 24 of 35
(2,807 Views)

Hallo Criss,

 

ich hatte anfangs schon einmal darauf hingewiesen, dass allein die Performance zum Sortieren der Daten einen entscheidenden Einfluß hat. Hierzu weiter unten ein paar Messergebnisse auf einem duchschnittlich schnellen Rechner. Ich habe nur die Zeit zum Sortieren von 3 unterschiedlich großen Arrays gemessen:

 

Array mit 100 Werten dauert 0.0015s

Array mit 500 Werten dauert 0.034s

Array mit 1000 Werten dauert 0.25s

 

Das bedeutet, dass bei einem Array mit 1000 Werten eine Taktrate von 2 Hz nur noch sinnvoll ist. Jetzt kann man sicherlich einen sehr schnellen Rechner und vielleicht einen schnelleren Sortieralgorithmus einsetzten, aber das verschiebt das Problem nur ein wenig.

 

Gruß

Walter

 

 

 

0 Kudos
Message 25 of 35
(2,802 Views)

Ja ich weiß, dass die Länge des Arrays eine entschiedende Rolle spielt.

Mein Messtakt liegt nur bei 1 Hz. Mehr ist für die Untersuchung nicht vorgegeben.

 

Deshalb wäre eine Variable Array-Länge echt toll. Oder ist das gar nicht möglich?

 

Viele Grüße

Criss

0 Kudos
Message 26 of 35
(2,800 Views)

Theoretisch kann man auch ein array dynamisch anlegen. Da das dann aber mit jedem Takt gemacht werden muss, wird es richtig langsam. Das Script is so aufgebaut, das ohnehin nur die relevanten Daten Einfluß nehmen (im unten stehenden Script habe ich noch eine Korrektur gemacht).

Auf meinem Rechner is bei einer Länge von 1500 - 2000 Werten für das Array und einem Hz Taktrate eine Grenze erreicht. Das entspricht gut 25 Minuten Messfahrt ohne das ein Wert überschrieben wird.

 

Gruß

Walter

0 Kudos
Message 27 of 35
(2,790 Views)

Könntest du das Script bitte noch anhängen? Smiley Happy

 

Viele Grüße

Criss

0 Kudos
Message 28 of 35
(2,786 Views)

Da war ich etwas zu schnell. Hier ist es...

 

Gruß

Walter

0 Kudos
Message 29 of 35
(2,782 Views)

Guten Morgen,

 

ich bin es schonwieder. Ich habe das mal nachgerechnet.

Das Script ermittelt das 95. Quantil von dem gesamten Array. Wenn ich also in der Arraygröße nicht die tatsächliche Anzahl der Werte eingebe die auftreten sondern mehr, dann kommt ein anderer Wert als erwartet raus.

Kann man nur die in das Array übertragenen Werte berücksichtigen?

Ansonsten würde ich trotz der hohen Anforderungen an die Rechnerleistung ein dynamsichen Array probieren wollen. Vielleicht funktioniert es ja.

 

Könntest du mir da bitte nocheinmal helfen Walter?

 

Viele Grüße

Criss

0 Kudos
Message 30 of 35
(2,761 Views)