|
|
Laufzeit einer for-Schleife erhöhen |
|
bwboundaries |

Forum-Newbie
|
 |
Beiträge: 4
|
 |
|
 |
Anmeldedatum: 09.06.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 21.08.2010, 23:55
Titel: Laufzeit einer for-Schleife erhöhen
|
 |
Ich möchte für folgenden Code die Laufzeit optimieren.
objects ist ein Structarray.
Die Variable halm wird erst an dieser stelle erzeugt, die Größe kan maximal zwischen 4 und 37 varieieren.
Hat jemand einen Tipp, wie ich die Laufzeit optimieren kann?
|
|
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 28.08.2010, 23:45
Titel: Re: Laufzeit einer for-Schleife erhöhen
|
 |
Hallo bwboundaries,
1. Vektorisiere das Programm! Z.B. statt:
besser:
2. Pre-allociere Speicher für "halm". Wenn Du nicht vor der Schleife weißt, wie groß "halm" wird, allociere die maximale Größe und entferne die ungenutzten Elemente am Schluß.
3. Auch dies läßt sich schön vektorisieren:
==>
4. Spare SQRT und berechne alles mit der quadrierten Distanz.
5. Nebenbei kann Dein Code-Beispiel nicht funktionieren:
Du veränderst den Schleifen-Zähler j innerhalb der Schleife. Das klappt in Matlab nicht.
Gruß, Jan
|
|
|
bwboundaries |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 4
|
 |
|
 |
Anmeldedatum: 09.06.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 29.08.2010, 15:32
Titel:
|
 |
@Jan:
Das sind ja ein paar sehr gute Hinweise.
Danke für die Hilfe.
|
|
|
|
|
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.
|
|