WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

DRINGEND !!! M-FILE AUFRUF !!

 

Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 22.10.2011, 16:52     Titel: DRINGEND !!! M-FILE AUFRUF !!
  Antworten mit Zitat      
Hallo Leute ich brauch dringend Hilfe!

Um ein extrem großes Matlab m.file zu verkleiner, hab ich eine so genannte main.m geschrieben die jetzt einzelne M-files aufrufen soll!!!

Nur wie mache ich das richtig ? ich probiere schon den ganzen nachmittag an matlab herum, nur Fehlermeldungen!

1. Ich habe nur den Dateinamen eingegeben (mit .m Endung und ohne)

2. ich habe den load befehl probiert. Load Datei.m und Load datei

3. ich hab den kompletten Pfad eingegeben usw. aber es funktioniert nicht Sad

Wo ist der Fehler ? was muss ich beachten ? Die datein liegen alle im selben order (=selber Pfad) auf dem Desktop!


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.502
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 22.10.2011, 17:11     Titel:
  Antworten mit Zitat      
Hallo,

bitte die Fehlermeldungen angeben.
"load" ist im Zusammenhang mit .m-Dateien absolut sinnlos. Ebensowenig ist eine Angabe von Verzeichnissen notwendig, wenn alle Dateien im momentanen Verzeichnis liegen.

Wenn es sich um ein Skript (keine Ein- und Ausgabeargumente) handelt, wird es durch Angabe des Dateinamen (ohne .m) aufgerufen.
Wenn es sich um eine Funktion mit Ein- und Ausgabeargumenten handelt, müssen diese auch übergeben werden.

Für weitere Unterstützung müsstest du mehr Code zur Verfügung stellen. Ich schlage aber auch mal vor, dass du dich in der Doku mal gründlich in scripts und functions einliest.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Checker

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 23.10.2011, 09:30     Titel:
  Antworten mit Zitat      
Benutze Run, dann funtkioniert das

EDITIERT, Jan S, 23-Oct-2011 14:00, Der goMatlab-Knigge ist ein wertvoller Leitfaden für die Kommunikation in diesem Forum:
http://www.gomatlab.de/der-kleine-gomatlab-de-knigge-t125.html
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.502
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 23.10.2011, 10:42     Titel:
  Antworten mit Zitat      
Hallo,

RUN ist lediglich dann von Nutzen, wenn es sich um Skripte handelt und diese sich weder im momentanen Verzeichnis noch im MATLAB-Suchpfad befinden.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Matt Lappen
Forum-Anfänger

Forum-Anfänger


Beiträge: 42
Anmeldedatum: 23.10.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 23.10.2011, 18:00     Titel:
  Antworten mit Zitat      
Ich würde die einzelnen m-Files als function (Funktions-Header) definieren und die notwendigen Variablen an die entsprechenden Funktionen übergeben, bei großer Anzahl von Variablen am besten mit Struct-Arrays arbeiten.

Der Vorteil dabei ist, dass nicht alle Variablen im base-Workspace liegen, sondern immer im funktionseigenen caller-Workspace berechnet werden.
Somit lässt sich definitiv Laufzeit einsparen, da du einen deutlich schlankeren Datensatz im Base-WS hast.
Die Funktionen können Variablen als Übergabeparameter haben oder auch mittels assignin('base', 'var', val) auch wieder in den Base-WS geschrieben werden.
Code:
function [out] = function teilskript(input)
% Dein Skript hier rein schreiben

Dann in einem bekannten Matlabpfad abspeichern und von deinem Skript aus aufrufen.

Der run-Befehl sollte zwar funktionieren, aber bzgl Laufzeit nichts nutzen. Einfach mal die großen Variablen mittels clear selektiv aus dem WS entfernen, kann auch schonmal Wunder wirken...
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button 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.