Verfasst am: 05.04.2016, 12:26
Titel: Matlab im Engine-Mode aus Python aufrufen - Version wählen
Hallo,
ich möchte aus Pyton heraus Matlab-Funktionen aufrufen. Auf meinem PC habe ich jedoch Matlab R2015a 64-Bit und Matlab R2012a 32-Bit.
Da verschiedene Simscape-Modelle nutze, habe ich das Problem, dass diese nicht mit allen Matlab-Versionen kompatibel sind. Zum Beispiel kann ich ein 64-Bit-Modell nicht mit Matlab R2012a 32-Bit aufrufen und muss daher die 64-Bit-Matlab-Version ausweichen.
Meine Frage ist:
Wie kann ich in Python auswählen, welche Matlab-Version ausgeführt wird?
Leider wird aktuell nur die Matlab-Version aufgerufen, die in der Umgebungsvariable an erster Stelle steht.
Mein Python-Code sieht so aus:
import matlab.engine
eng = matlab.engine.start_matlab() % Hier sollte die Matlab-Version ausgewählt werde können!
tf = eng.isprime(37)
print(tf)
die einfachste Lösung dürfte sein, in Python den Systempfad zu ändern. Eine bessere Lösung fällt mir nicht ein.
Falls diese Lösung nicht wünschenswert ist und keine weiteren Antworten kommen, bitte mal den Technischen Support von MathWorks kontaktieren. Vielleicht kennt man dort eine Lösung. Selbst wenn nicht, ist es ja gut zu wissen, welche Probleme die Anwender haben.
Meines Wissens gibt es die Python-Schnittstelle übrigens überhaupt erst seit R2014b. Ich weiß nicht, ob das dann mit R2012a funktionieren wird.
Grüße,
Harald
Zuletzt bearbeitet von Harald am 05.04.2016, 16:57, insgesamt einmal bearbeitet
Wie kann ich den systempfad in python aendern? Dachte auch schon daran, dass mein bei der engine-benutzung einen pfad zur matlab.exe angeben kann. Die mathworks-doc gibt das aber leider nichts her.
Hat damit schonmal jemand gearbeitet und kann mir ein möglichst einfaches Beispiel zeigen? Ich habe versucht das dort beschrieben nachzuverfolgen, aber erhalte leider nur Fehler
pythonTest ist einfach nur ein Matlab-Skript. Mit Quit wird Matlab geschlossen.
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
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.