Pergunta

Um pesquisador criou uma pequena simulação em MATLAB e queremos torná-lo acessível aos outros.Meu plano é levar a simulação, limpar algumas coisas e transformá-lo em um conjunto de funções.Então eu pretendo compilá-lo em uma biblioteca C e usar GOLE para criar um wrapper Python.Em que ponto eu deveria ser capaz de chamar a simulação a partir de uma pequena Django app.Pelo menos eu espero que sim.

Eu tenho o plano certo?Tem mais alguém fez algo semelhante?Você pode deixar-me saber se existe alguma sérias armadilhas que eu não estou ciente de no momento?

Foi útil?

Solução

Eu não ajudar muito, mas eu me lembro que eu era capaz de quebrar uma MATLAB simulação em DLL e, em seguida, chamá-lo a partir de um aplicativo Delphi.Funcionou muito bem.

Outras dicas

Uma coisa a se lembrar é que o compilador do Matlab, na verdade, não compilar o código de Matlab para o nativo de instruções de máquina.Ele simplesmente envolve-lo em um executável ou uma biblioteca com o seu próprio mecanismo de tempo de execução em que é executado.Você seria capaz de executar o seu código sem Matlab instalado, e você seria capaz de interface com outras linguagens, mas ainda vai ser interpretado código de Matlab, então não haveria nenhuma speedup.

Eu também tenta ctypes primeiro.

  1. Use o Matlab compilador para compilar o código em C.
  2. Compilar o código C em uma DLL.
  3. Use ctypes para carregar e chamar o código a partir desta DLL

O mais difícil passo é provavelmente 1, mas se você já sabe o Matlab e usamos o Matlab compilador, você não deve ter problemas sérios com ele.

Talvez tentar ctypes em vez de GOLE.Se tiver sido incluído como parte do Python 2.5, então ele deve ser bom :-)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top