2008-08-07 3 views
9

연구원이 MATLAB에서 작은 시뮬레이션을 작성했으며 다른 사람들이이 시뮬레이션에 액세스 할 수 있도록하고 싶습니다. 제 계획은 시뮬레이션을하고, 몇 가지를 정리하고 그것을 일련의 기능으로 바꾸는 것입니다. 그런 다음 C 라이브러리로 컴파일하고 SWIG를 사용하여 Python 래퍼를 만들 계획입니다. 그 시점에서 작은 Django 앱에서 시뮬레이션을 호출 할 수 있어야합니다. 적어도 나는 그렇게 희망한다.MATLAB에서 공유 라이브러리를 만드는 경험이 있습니까?

올바른 계획이 있습니까? 다른 사람이 비슷한 일을 한 적이 있습니까? 그 순간에 내가 알지 못하는 심각한 함정이 있다면 알려 주실 수 있습니까?

답변

3

필자는별로 도움이되지 않지만 MATLAB 시뮬레이션을 DLL로 랩핑 한 다음 Delphi 앱에서 불러올 수 있음을 기억합니다. 그것은 정말로 잘 돌아갔다.

1

아마도 SWIG 대신 ctypes을 시도하십시오. 파이썬 2.5의 일부로 포함 되었다면, 그것은 훌륭해야합니다 :-)

2

또한 먼저 ctypes를 시도 할 것입니다.

  1. 는 DLL에 C 코드를 컴파일 C.
  2. 에 코드를 컴파일 할 매트랩 컴파일러를 사용합니다.
  3. 사용하는 ctypes로드하고 가장 어려운 단계는 아마도 1이 DLL

에서 코드를 호출,하지만 당신은 이미 matlab에 알고 matlab에 컴파일러를 사용하는 경우, 당신은 심각한 문제가 없어야합니다.

5

기억해야 할 점 중 하나는 Matlab 컴파일러가 실제로 Matlab 코드를 기본 기계 명령어로 컴파일하지 않는다는 것입니다. 독립 실행 형 실행 파일 또는이를 실행하는 자체 런타임 엔진이있는 라이브러리로 간단하게 래핑합니다. Matlab을 설치하지 않고도 코드를 실행할 수 있으며 다른 언어와 인터페이스 할 수 있지만 Matlab 코드로 해석되므로 속도가 향상되지 않습니다.

관련 문제