|
|
|
einfache Frage zur Fortschreibung des Maximums |
|
| beginner111 |

Forum-Newbie
|
 |
Beiträge: 2
|
 |
|
 |
Anmeldedatum: 10.06.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 10.06.2012, 21:19
Titel: einfache Frage zur Fortschreibung des Maximums
|
 |
| |
 |
|
Servus
Ich bin über jede Hilfe dankbar, da ich absoluter Einsteiger bin.
Es geht um die Fortschreibung des Spaltenmaximums eines Vektors.
Man nehme einen beliebigen SpaltenVektor z.B. x= [-5,10,1,5,8,12]',
herauskommen soll dann als Ergebnis der Prozedur:= [-5,10,10,10,10,12]' .
Also möchte man eine Prozedur erschaffen welche nach diesem Schema vorgeht: [max{a1};max{a1,a2};..............;max{a1,.....,an}]
Also ein Vergleich der einzelnenWerte und Ausgabe des Maximums bis zu diesem Punkt.
Folgenderweise lautet meine bisherige laufende Funktion:
function[spaltenmax]= maxx(x)
% Funktion zur Fotschreibung des Spaltenmaximums eines Vektors
spaltenmax=[max(x(1,1));max(max(x(1,1)),x(2,1));max(max(max(x(1,1)),x(2,1)),x(3,1));...
max(max(max(max(x(1,1)),x(2,1)),x(3,1)),x(4,1))];
Meine Frage lautet nun wie ich das Problem umsetze sodass mir die Funktion ein Ergebnis für jeden möglich großen Spaltenvektor ausgeben kann.
Vielen Dank
|
|
|
|
|
|
| denny |

Supporter
|
 |
Beiträge: 3.853
|
 |
|
 |
Anmeldedatum: 14.02.08
|
 |
|
 |
Wohnort: Ulm
|
 |
|
 |
Version: R2012b
|
 |
|
|
 |
|
Verfasst am: 11.06.2012, 11:48
Titel:
|
 |
Hallo nutze einfach dazu eine FOR-Loop:
|
|
|
|
| Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 11.06.2012, 12:32
Titel:
|
 |
Hallo beginner111, hallo denny,
Das wiederholte Aufrufen von MAX wird ineffizient für große Arrays, da immer größere Speicher-Abschnitte bearbeitet werden müssen, die dann irgendwann nicht mehr in den Cache passen. Deshalb würde ich dies mit einer sequentiellen Schleife lösen:
Ich kann den Laufzeitunterschied zur Zeit nicht messen.
Gruß, Jan
|
|
|
|
| beginner111 |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 2
|
 |
|
 |
Anmeldedatum: 10.06.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 11.06.2012, 22:48
Titel:
|
 |
Vielen Dank denny und Jan:)
Könntet ihr mir vielleicht noch sagen, ob man dieses Problem darüberhinaus auch ohne kontrollstrukturen(schleifen etc.) lösen kann?
|
|
|
|
|
|
|
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.
|
|