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

Matlab, Rundungen, Unterschied: Windows Linux?

 

torsten23
Forum-Anfänger

Forum-Anfänger


Beiträge: 42
Anmeldedatum: 21.11.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.07.2010, 18:00     Titel: Matlab, Rundungen, Unterschied: Windows Linux?
  Antworten mit Zitat      
Hallo,

irgendwie bin ich gerade auf etwas gestoßen, was ich mir nicht so recht erklären kann...

ich führe unter Windows 7.8.0 64bit ein bestimmtes Programm aus

unter unter Linux auch 64bit

und zwar geht es um

http://www.mathworks.de/matlabcentr.....cipial-component-analysis

eine PCA auf einen Datensatz mit der Größe: 15786 140

Wenn ich nun unter Unix folgendes ausrechne...

X=rohdatensatz;
pc13=pcafunc(X,13);

ergibt dann

sum(sum(pcafunc(X,13)-pc13)))

=0

save('pc13.mat','pc13')

wenn ich allerdings pc13.mat und rohdatensatz auf einen andern PC in diesem Fall Windows kopiere komme ich bei

sum(sum(pcafunc(X,13)-pc13)))

auf Werte in der Größenordnung

1.28

Warum kommt da nicht auf beiden PC "0" raus? Rundungen?


Weitere vielleicht interessante Zahlenwerte sind vielleicht:


>> min(min(pcafunc(X,13)-pc13))
-0.2441

>> max(max(pcafunc(X,13)-pc13))
0.3246
Private Nachricht senden Benutzer-Profile anzeigen


torsten23
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 42
Anmeldedatum: 21.11.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.07.2010, 18:30     Titel:
  Antworten mit Zitat      
eps, realmin, realmax sind auch gleich groß..


>> eps
ans =
2.2204e-16
>> realmin
ans =
2.2251e-308
>> realmax
ans =
1.7977e+308
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 18.07.2010, 19:23     Titel:
  Antworten mit Zitat      
Hallo,

kannst du da ein reproduzierbares Beispiel geben?

Ansonsten:
was ist max(pc13(:)) bzw. max(pcafunc(X,13))? Wenn das sehr groß sein sollte, dann kann auch 1 ein ganz normaler Rundungsfehler sein - vor allem, wenn die sich vielleicht noch akkumulieren. Sollte man also immer in Relation zu den Größen sehen.

Dass überhaupt unterschiedliche Ergebnisse herauskommen (wenn wirklich *genau* dasselbe gemacht wurde), erklärt sich wohl dadurch, dass im Hintergrund BLAS-Routinen ausgeführt werden und die von System zu System unterschiedlich implementiert sind.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
torsten23
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 42
Anmeldedatum: 21.11.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.07.2010, 19:49     Titel:
  Antworten mit Zitat      
hm,


>> max(max(pcafunc(rawmul.X,11)) ist

1.0883e+03

würde noch nicht sagen, dass das recht groß wäre?

ja ich denke dass ich überall das gleiche mache... hab die Dateien von Linux auf Windows kopiert und nochmal ausgeführt...


ich hab durch = 0 praktisch unter Linux festgestellt, dass in der Datei wirklich dass richtig Ergebnis von pcafunc .... drinsteht...

auf dem andern PC scheint das Ergebnis von pcafunc allerdings anders zu sein?

Torsten

pcafunc.m
 Beschreibung:
Funktion

Download
 Dateiname:  pcafunc.m
 Dateigröße:  865 Bytes
 Heruntergeladen:  374 mal
rawdata.zip
 Beschreibung:
Beispieldatensatz (.mat)

Download
 Dateiname:  rawdata.zip
 Dateigröße:  3.61 MB
 Heruntergeladen:  388 mal
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.