Wie starte ich den matlab daemon?

437
mabe

Ich habe eine Liste, die jeden Tag ein Python-Skript aufruft. Das Python-Skript ruft je nach Erfolg unterschiedliche Matlab-Routinen auf. Dies funktioniert einwandfrei, wenn ich den Computer verwende, aber wenn ich es nicht verwende, gibt der Dämon folgende Fehlermeldung aus:

Traceback (most recent call last): File "/Users/<username>/Documents/daemontest/matlab_batcher.py", line 108, in <module> eng = matlab.engine.start_matlab() File "/Library/Python/2.7/site-packages/matlab/engine/__init__.py", line 92, in start_matlab eng = MatlabEngine(option) File "/Library/Python/2.7/site-packages/matlab/engine/matlabengine.py", line 230, in __init__ self.__dict__["_matlab"] = pythonengine.createMATLAB(tokens) matlab.engine.EngineError: MATLAB process can not be created. 

Ich habe in den Energiespar-Einstellungen "Energiesparmodus aktivieren" und "Energie-Napf aktivieren" deaktiviert. Ich glaube, der Computer geht nicht in den Ruhezustand. Es kann immer noch nicht Matlab starten.

Könnte das Problem ein Matlab-Lizenzproblem sein? Wie kann ich matlab starten, ohne dass ich "aktiv" oder angemeldet bin?

1

1 Antwort auf die Frage

0
mabe

Endlich eine Lösung gefunden, na ja, eher eine Umgehung.

Im Python-Skript habe ich MatlabEngine von matlab verwendet. Anscheinend beginnt dies nur, wenn der Benutzer aktiv ist. Die Details, die ich immer noch nicht kenne, müssen jedoch mit der Matlab-Lizenz und dem Modell, auf das der imac umgestellt wird, einige Minuten nach dem Inaktivieren des Benutzers sein. Wäre interessant, das richtig zu verstehen ...

Was tatsächlich funktioniert, ist die Verwendung von Bash-Befehlen anstelle von MatlabEngine zum Aufrufen von Matlab. Dies bietet nicht die direkte Interaktion mit der Matlab-Funktion als MatlabEngine, aber für meinen Fall völlig ausreichend.