|
|
intlinprog - minimaler Unterschied |
|
frage |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 21.08.2014, 20:24
Titel: intlinprog - minimaler Unterschied
|
|
Hallo,
wie klein darf der Unterschied zwischen den Werten im Vektor f bei intlinprog sein, damit die Werte noch unterschieden werden können?
Die Werte 2e-30 und 1e-30 können doch bestimmt nicht mehr unterschieden werden, da die Differenz zwischen dieser Werte doch zu gering sein dürfte.
Danke!
|
|
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 21.08.2014, 20:58
Titel:
|
|
Hallo,
die erste Frage wäre, ob die Zahlen überhaupt unterschieden werden können.
Angesichts von Gleitkommaarithmetik dürfte es kein Problem sein, die beiden genannten Zahlen voneinander zu unterscheiden. Nicht unterscheidbar wäre dagegen z.B. 1 + 2e-30 und 1 + 1e-30.
Wenn die Zahlen an sich voneinander unterschieden werden können, dann wird das auch intlinprog tun. Was im Laufe des Algorithmus passiert, dürfte schwer absehbar sein.
Darf man fragen, was die Motivation für die Frage ist?
Grüße,
Harald
|
|
|
frage |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 22.08.2014, 09:38
Titel:
|
|
Danke für deinen Hinweis.
In meinem f Vektor befinden sich Preis-Werte.
Wenn 1 + 2e-30 und 1 + 1e-30 nicht unterschieden werden kann, habe ich ein kleines Problem. Ich habe nämlich in meinem Vektor f Werte wie etwa 5+1e-30 , 5+2e-30 , 5+3e-30 , ....
Würden aber Werte wie z.B. 5+1e-9 , 5+2e-9 , 5+3e-9 , .... unterschieden werden? Warum kann 1e-30 und 2e-30 unterschieden werden, aber 1 + 2e-30 und 1 + 1e-30 nicht?
Wie klein darf die Differenz zwischen den Werten sein, damit sie unterschieden werden können? Was kann man alternativ machen?
Danke!
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 22.08.2014, 18:30
Titel:
|
|
Hallo,
Zitat: |
Würden aber Werte wie z.B. 5+1e-9 , 5+2e-9 , 5+3e-9 , .... unterschieden werden? |
Ja.
Zitat: |
Warum kann 1e-30 und 2e-30 unterschieden werden, aber 1 + 2e-30 und 1 + 1e-30 nicht? |
Wie gesagt: Gleitkommaarithmetik. Die Zahlen werden durch zwei Bestandteile, Mantisse und Exponent ausgedrückt, z.B. 8 = 1*2^3. Das bedingt eine Auflösung, die proportional zu den Zahlen ist.
http://de.wikipedia.org/wiki/Gleitkommazahl
Zitat: |
Wie klein darf die Differenz zwischen den Werten sein, damit sie unterschieden werden können? |
eps(x) gibt dir die kleinste Zahl epsilon aus, so dass x + epsilon von x unterschieden werden kann.
Grüße,
Harald
|
|
|
frage |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 25.08.2014, 10:56
Titel:
|
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
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
| RSS
Hosted by:
Copyright © 2007 - 2024
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.
|
|