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

"current directory" nicht änderbar

 

floh91
Forum-Anfänger

Forum-Anfänger


Beiträge: 40
Anmeldedatum: 25.02.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 27.02.2009, 16:34     Titel: "current directory" nicht änderbar
  Antworten mit Zitat      
Ich bekommen den Standardordner von Matlab nicht geändert, es klappt einfach nicht.

Egal, was ich über File | Set path einstellen (Ordner hinzufügen, Ordner löschen), die Einstellungen sind nach jedem Neustart von Matlab zurückgesetzt. Ebenso, wenn ich den Ordner über addpath('Ordner') hinzufügen.

Ich finde auch keine Datei, wo ich die Einstellungen händisch ändern könnte.

Was mach ich da falsch? Matlab ist Version R2008b.

--------------------

Das aktuelle Problem welches ich hierbei habe ist, dass ich jedesmal eine Fehlermeldung bekomme, wenn ich aus einem anderen Verzeichnis einen m.file aufrufe.

Zitat:
??? Attempt to execute SCRIPT
Geschwindigkeitsplot as a function:
C:\Dokumente und Einstellungen\testperson\Eigene
Dateien\MATLAB\test.m


Egal was ich mache. Ich werde generell auf diesen Pfad hingewiesen.

Danke schön schon einmal für eure Hilfe.
Private Nachricht senden Benutzer-Profile anzeigen


steve
Ehrenmitglied

Ehrenmitglied



Beiträge: 2.022
Anmeldedatum: 03.09.07
Wohnort: Wien
Version: R2023b
     Beitrag Verfasst am: 27.02.2009, 16:42     Titel:
  Antworten mit Zitat      
Moin,

hast du denn in der ersten Zeile von test.m
Code:
stehen?

Das nach dem Starten von Matlab immer der Pfad zum Matlab-Installationsordner ausgewählt ist, liegt daran, dass in der Verknüpfung unter "Ausführen in" dieser Pfad eingestellt ist. Dort kannst du den auch ändern. Das Hinzufügen von Ordnern über Set Path hat nur Einfluss auf das Suchverhalten von Matlab nach Funktionen, denn nach Hinzufügen von Ordnern sucht Matlab auch in diesen nach Funktionen die du aufrufst, dazu müssen diese aber auch als Funktion abgespeichert sein (siehe oben).

Gruß
Alex
_________________

>> I told me to.

____________________________________
Matlab Cheat Sheet
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 27.02.2009, 16:43     Titel:
  Antworten mit Zitat      
Der Pfad oder besser Suchpfad (File-Set Path) hat nicht unbedingt etwas mit dem 'current directory' zu tun.
Den Pfad nicht manuell in der defpath.m ändern.
Was sagt
Code:
which -all Geschwindigkeitsplot
?[/code]
 
floh91
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 40
Anmeldedatum: 25.02.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 27.02.2009, 17:16     Titel:
  Antworten mit Zitat      
Anonymous hat Folgendes geschrieben:
Der Pfad oder besser Suchpfad (File-Set Path) hat nicht unbedingt etwas mit dem 'current directory' zu tun.
Den Pfad nicht manuell in der defpath.m ändern.
Was sagt
Code:
which -all Geschwindigkeitsplot
?[/code]


er gibt mir exakt diesen Pfad an

Zitat:
C:\Dokumente und Einstellungen\testperson\Eigene
Dateien\MATLAB\Geschwindigkeitsplot.m


In dem m.file ist jedoch an keiner Stelle dieser Pfad angegeben Confused

In der ersten Zeile habe ich stehen:

Code:



Der ganze file sieht so aus:

Code:
          %% Geschwindigkeit an der Stelle x
clear all
close all

display('Plot des Geschwindigkeitsprofils an der Stelle x.')

% Datein importieren

d=uigetdir('','Select folder with dat data');
cd(d);
pr=dir('*.dat');
names={pr.name};
numfiles=numel(names);
%% Loop for different files
for f=1:numfiles
%% Get the file names and organize them
Daten=load(names{1,f})
....
end

% Schleife zum Zählen der Dateien

file = dir('*.dat');
t = size(file);

for i = 1:t(1)
   filename = file(i).name;
   
       fid = fopen(filename,'r');
   Daten = textscan(fid,'%f %f %f',16301,'headerlines',0);
    fclose(fid);

K=[];
while size(K,1) == 0;
X = input('x-Wert:');
e = input('Toleranz:');

Daten=Daten' ;

K=find(Daten(:,1)>X-e &  Daten(:,1)< X+e);
Y=Daten(K,2);
C=Daten(K,3);

if size (K,1) == 0;
    display('Konnte keine Daten filtern. Möglicherweise ist der Toleranzwert zu klein.')
end
end
%% Daten plotten

% neues Fenster
figure;

% Plot formatieren

% Plotten
plot(C,Y)

set(gca,...
     'Gridlinestyle','-','xMinorGrid','off','yMinorGrid','off',...
     'Fontname', 'Helvetica','fontsize',20);
set(1,'units','centimeters','position',[0 0 8 8], ...
     'PaperOrientation', 'portrait', 'PaperPositionMode', 'auto',...
     'papersize',[14 10]);
xlabel('Geschwindigkeit [m/s]')
ylabel('y-Position [mm]')

% Speichern

eingabe = input('Soll die Grafik gespeichert werden? J/N [J]:','s');
if isempty(eingabe)
    eingabe = 'N';
end
if eingabe == 'J';
    ordner = uigetdir('','Ordner ausw�hlen: ');
        cd(ordner);
        name = input('Dateinamen eingeben','s');
        if isempty(name);
            name = ['Geschwindigkeitsprofil',num2str(i),'.png'];
        else
            x = size(name);
            name(1,x(2)+1:x(2)+4) = '.png';
        end
        print('-dpng',name)
end


Irgendwo ist da noch der Wurm drin.
Ich weiß nur noch nicht wo Embarassed
Private Nachricht senden Benutzer-Profile anzeigen
 
steve
Ehrenmitglied

Ehrenmitglied



Beiträge: 2.022
Anmeldedatum: 03.09.07
Wohnort: Wien
Version: R2023b
     Beitrag Verfasst am: 27.02.2009, 17:18     Titel:
  Antworten mit Zitat      
steve hat Folgendes geschrieben:

hast du denn in der ersten Zeile von test.m
Code:
stehen?


Den Post müsstest du dann schon mit berücksichtigen - da steht warum das nicht funktioniert!

Gruß
Alex
_________________

>> I told me to.

____________________________________
Matlab Cheat Sheet
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 27.02.2009, 17:28     Titel:
  Antworten mit Zitat      
Ich nehme an, der Code oben ist Geschwindigkeitsplot.m, oder?
Und den Code zu test.m habe wir nicht gesehen, oder?
Ich tippe mal, du rufst irgendwo in test.m Geschwindigkeitsplot.m auf, und zwar falsch, nämlich als Funktion 'geschwindigkeitsplot(bla)' und nicht als Skript 'geschwindigkeitsplot'.
 
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 - 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.