Senior Sanchez
2012-06-26, 15:10:09
Hi,
Ich arbeite hier parallel mit Java und Matlab und mir sind in den Berechnungen doch schon auffallende Rundungsdifferenzen aufgefallen.
Im konkreten integriere ich einen Vektor von Double-Werten per cumtrapz. Diese Funktion habe ich in Java nachimplementiert. Ein einfacher Test (x = [0, 0.1111, 0.2222, 0.3333] integriert) zeigt nun bei Java das Ergebnis 0.49995 während Matlab 0.5000 ausgibt. Ich hab das ganze dann mal mit wolframalpha gegengetestet und das kommt auch auf 0.49995 wie Java.
Matlab soll aber angeblich 16 Nachkommastellen betrachten. Wie kommt es jetzt zu diesen Unterschieden? Oder ist es ein Darstellungsproblem von Matlab, dass nur 4 Nachkommastellen ausgegeben und deshalb gerundet wird?
Danke
Ich arbeite hier parallel mit Java und Matlab und mir sind in den Berechnungen doch schon auffallende Rundungsdifferenzen aufgefallen.
Im konkreten integriere ich einen Vektor von Double-Werten per cumtrapz. Diese Funktion habe ich in Java nachimplementiert. Ein einfacher Test (x = [0, 0.1111, 0.2222, 0.3333] integriert) zeigt nun bei Java das Ergebnis 0.49995 während Matlab 0.5000 ausgibt. Ich hab das ganze dann mal mit wolframalpha gegengetestet und das kommt auch auf 0.49995 wie Java.
Matlab soll aber angeblich 16 Nachkommastellen betrachten. Wie kommt es jetzt zu diesen Unterschieden? Oder ist es ein Darstellungsproblem von Matlab, dass nur 4 Nachkommastellen ausgegeben und deshalb gerundet wird?
Danke