|
|
while condition until vector > x |
|
windstaerke1313 |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 10.02.2017, 15:00
Titel: while condition until vector > x
|
|
Hallo zusammen,
ich probiere mich derzeit an eine while-Bedingung, in der ich die Differenz von 2 Vektoren V1 & V2 solange überprüfe, bis die Differenz einen Wert erreicht, der kleiner 0.05 ist.
Dabei sind im Vektor V1 gemessene, fixe Werte.
Die Werte im Vektor V2 werden durch eine Funktion immer wieder neu berechnet.
Mein Problem liegt jetzt darin, dass die while -Bedingung bereits erfüllt ist, sobald ein Wert im Differenzvektor (V1-V2) kleiner 0.05 ist.
Ich will aber, dass diese Bedingung erst erfüllt ist, wenn alle Werte in diesem Differenzvektor den kleinsten Wert haben bzw. kleiner 0.05 sind.
Meine Idee war das ganze über .> zu lösen, aber dabei kommt es zu der Fehlermeldung, dass ein unerwarteter Matlab-Operator genutzt worden ist.
hat jemand von euch schon einmal so ein ähnliches Problem gehabt?
Beste Grüße und einen schönen Start ins Wochenende
|
|
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.435
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 10.02.2017, 15:04
Titel:
|
|
Hallo,
wenn ich das richtig lese, widerspricht die Beschreibung ein wenig dem Code. Ich vermute aber, du möchtest das
Alternativ das Maximum der Abweichungen testen.
Grüße,
Harald
|
|
|
Gast |
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 10.02.2017, 15:54
Titel:
|
|
Hi Harald, danke für den Tipp.
Tatsächlich any der Befehl den ich dafür brauche, nochmals dankesehr!
Allerdings bleibe ich jetzt in der while Schleife gefangen, da diese Bedingung nicht auf alle werte in dem Differenzvektor zutrifft.
Es wäre also super rückwirkend nach der kleinsten gemeinsamen Differenz (alle Differenzen im Vektor aufaddiert) zu schauen.
Hättest du dafür auch noch einen Tipp?
Vermutlich müsste man die Differenz in einem Vektor abspeichern und pro Schleifendurchgang einen neuen Vektor erstellen und dann nach der niedrigsten Summe pro Vektor schauen?!
Also so in etwa:
Ist vermutlich etwas umständlich geschrieben.
Beste Grüße
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.435
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 10.02.2017, 16:11
Titel:
|
|
Hallo,
ich kann dir nicht folgen.
Um Endlosschleifen zu vermeiden, kannst du einen Zähler verwenden und diesen überprüfen.
Grüße,
Harald
|
|
|
|
|
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.
|
|