|
|
|
Funktionen miteinander verknüpfen |
|
| Samstag |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 26.05.2012, 11:46
Titel: Funktionen miteinander verknüpfen
|
 |
Hallo,
ich möchte verschiedene Funktionen Verknüpfen. Bisher habe ich das hier:
Die Funktionen lauten also vz_0(t),vz_195(t),vz_390(t),vz_585(t) und vz1(t). So bekomme ich aber nur einen Vektor und keine neue Funktion! Wie kann ich aus den 5 Funktionen eine Funktion vz machen???
Grüße
|
|
|
|
|
|
| Samstag |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 26.05.2012, 22:48
Titel:
|
 |
Wieso klappt sowas hier nicht:
Er nimmt trotzdem für vz immer nur die erste Funktion vz1. Wo liegt der Fehler??
|
|
|
|
| Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 27.05.2012, 12:25
Titel:
|
 |
Hallo Samstag,
Solcghe Schwierigkeiten kann man gut mit dem Debugger untersuchen. Setze einen Breakpoint in die entsprechende Zeile und führe den Code im Command Window aus.
Hier würdest Du folgendes feststellen:
"0<=tz<=195" macht nicht, was Du erwartest. Matlab berechnet diesen Ausdruck von links nach rechts. Also "0 <= tz" zuerst. Dies stimmt für alle Elemente von "1:1180", also ist der Ausdruck immer TRUE, also LOGICAL(1). Im nächsten Schritt wird dann geprüft "logical(1) <= 195" und Matlab konvertiert "logical(1)" automatisch zu "double(1)" um vergleichen zu können. Und "1 <= 195" ist ebenfalls immer TRUE.
Als Lösung muss man "a < b < c" aufspalten in "a < b & b < c":
Nebenbei ließe sich das eleganter lösen, wenn die Variablen nicht den Index im Namen tragen würden, sondern z.B. vz{1}, vz{2} etc.
Gruß, Jan
|
|
|
|
| Samstag |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 27.05.2012, 12:35
Titel:
|
 |
Danke Jan. Habe es mittlerweile auch schon so abgeändert, aber jetzt verstehe ich was dahinter steckt. D.h. also es gibt keine Möglichkeit eine einzige Funktion draus zu machen!???! So wie es dasteht wäre es nämlich nur eine Übergangslösung.
Grüße
|
|
|
|
|
|
|
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 - 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.
|
|