WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Zeiterhöhung

 

snowtim
Forum-Anfänger

Forum-Anfänger


Beiträge: 49
Anmeldedatum: 31.03.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 06.10.2010, 17:27     Titel: Zeiterhöhung
  Antworten mit Zitat      
Hallo alle zusammen.
ich brauch mal einwenig hilfe stehe gerade auf dem Schlauch.
ich habe zwei verschiedene Messreihen die eine hat ihre Zeitangaben nach unserer Zeit aufgezeichnet und die andere Messreihe nach der UTC-Zeit also sind dort alle Messreihen eine Stunde später.
Jetzt war mein gedanke wenn ich einfach mit:
Code:

testStruct.time=testStruct.time+0.0417

die gesammte Messreihe um eine stunde erhöhe kommt ich auf die selbe zeit, wenn ich mir dann mit:
Code:

datestr(KarlsruheStruct.time)

die Zeitreihe anzeigen lasse sieht auch alles richtig aus. doch leider habe ich dann einen Fehler in meinem weiterem m.file der vor der Zeit anderung immer lief. dort lasse ich über intersect(....) mir die identischen zeitwerte raus suchen. doch leider erhalte ich jetzt hier keine identischen Zeiten mehr obwohl ich Zeitreihen über mehrere Tage habe.
liegt der Fehler in der Stunden erhöhung, geht es nich einfach mit 0.0417?
wenn ja wie geht es sonst?
schon mal danke
gruß Tim
Private Nachricht senden Benutzer-Profile anzeigen


Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 06.10.2010, 23:46     Titel: Re: Zeiterhöhung
  Antworten mit Zitat      
Hallo snowtim,

Die Idee 0.041667 ist fast 1 / 24, aber eben nicht ganz genau. Floatingpoint-Zahlen sind nicht geeignet für manuelle Veränderungen.
Wenn Du die Zeiten zunächst per DATEVEC umwandelst, ist das Addieren einer Stunde sicherer.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
snowtim
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 49
Anmeldedatum: 31.03.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.10.2010, 14:11     Titel:
  Antworten mit Zitat      
Danke für die antwort, es hat mit 1/24 geklappt war mein denk Fehler aber wenn ich es mit datevec umwandele wie kann ich es dann um eine Stunde erhöhen?
da bekomme ich ja folgendes raus:
ans =

1.0e+003 *

2.0100 0.0030 0.0100 0 0.0100 0.0000

und jetzt mit
ans(4)=ans(4)+1; mache komme ich nicht zum gewünschten ziel...
es läuft jetzt zwar mit 1/24 aber die andere Möglichkeit würde mich doch noch interessieren.
Gruß
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 07.10.2010, 23:27     Titel:
  Antworten mit Zitat      
Hallo snowtim,

Code:
format long g
x = now;
>> x = 734418.972062338
y = datevec(x)
>> y = [2010, 10, 7, 23, 19, 46.18]
y(4) = y(4) + 1;
>> y = [2010, 10, 7, 25, 19, 46.18]   % invalid time!
x2 = datenum(y)
>> x2 = 734419.013729005
 

Das macht zwar zuerst mal nichts anderes als 1/24 zu x hinzuzuaddieren. Aber es ist trotzdem sicherer, weil Du die Rundungsfehler-Probleme von Matlab's DATENUM managen läßt.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
snowtim
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 49
Anmeldedatum: 31.03.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 08.10.2010, 14:36     Titel:
  Antworten mit Zitat      
Hi Jan
super viel dank für die Antwort. jetzt bin ich wieder einstückchen weiter...
gruß Tim
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button 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.