Como iniciar o daemon matlab

1

Eu tenho um plist chamando um script python todos os dias. O script python chama diferentes rotinas matlab dependendo do seu sucesso. Isso funciona perfeitamente quando estou usando o computador, mas quando não estou usando, o daemon me dá o seguinte erro:

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.

Eu marquei "impedir que o computador durma" e desativei "habilitar poder nap" nas preferências de economia de energia, por isso acredito que o computador não entra no modo de suspensão. Ainda não é possível iniciar o matlab.

O problema pode ser uma questão de licença do matlab? Como posso iniciar o matlab sem que eu esteja "ativo" ou conectado?

    
por mabe 30.07.2015 / 14:44

1 resposta

0

Finalmente, descobri uma solução, bem, em vez disso, uma solução.

No script python eu estava usando o MatlabEngine por matlab. Aparentemente isso só começa quando o usuário está ativo. Os detalhes ainda não sei, mas deve ser algo complicado com a licença matlab e o modelo que o imac troca alguns minutos depois que o usuário fica inativo. Seria interessante entender isso corretamente ...

O que realmente funciona é usar comandos bash em vez do MatlabEngine para chamar o matlab. Isso não oferece a interação direta com a função matlab como o MatlabEngine mas, no meu caso, totalmente suficiente.

    
por 31.07.2015 / 10:18