2014-03-30 2 views
1

나는 어떤 프로그래밍 언어가 matlab에 의해 호출 될 수 있는지 알고 싶다.프로그래밍 언어는 matlab에서 호출 할 수 있습니까?

예를 들어 나는 matlab에서 C 함수와 아마도 java를 사용할 수 있다고 확신한다.

산업 프로젝트에이 물건이 필요하므로 잘 작동하는 것이 필요합니다. 예를 들어, matlab에 파이썬 함수를 호출하는 튜토리얼을 찾았지만별로 좋지 않고 안정적인 해결책이 아닙니다.

나는 필드의 전문가가 아니며 matlab에 대한 지식이 매우 제한적입니다. 그러니 그 대답에 인내하십시오.

이 프로젝트는 기계 학습과 관련이 있으며 소프트웨어는 클러스터에서 실행될 것입니다.

이 게시물에 따른 편집 Embedding Python in MATLAB 파이썬을 사용하여 numpy를 가져올 때 문제가있는 것처럼 보입니다. 이 환경에서 파이썬을 사용하는 유일한 이유는 numpy 라이브러리입니다. 그것이 없으면 거의 쓸모가 없습니다.

Java 또는 C 라이브러리를 사용하여 비슷한 문제가 발생할 것이라고 생각합니까?

+0

매트랩 C, C++ 및 Java를 호출 할 수 있습니다. – otherDewi

+0

@otherDewi - .NET 어셈블리 (C#/VB)를 호출 할 수도 있습니다. – bavaza

답변

2

대부분의 인터페이스는 다음과 같습니다 : Windows 플랫폼에서

  • COM : 파이썬

    http://www.mathworks.de/de/help/matlab/external-interfaces.html

    내가 다른 솔루션을 참조하십시오. 이를 위해서는 응용 프로그램을 등록하고 클러스터에서 가능하고 허용되는지 확인해야합니다.

  • XMLRPC 또는 SOAP. Matlab에서 Java 클래스를 사용해야 할 수도 있지만, 이미 알았 듯이 이것은 매우 간단합니다. 클러스터에 사용할 수있는 Java VM이 있는지 확인하고 Java가없는 많은 matlab을 실행하십시오.
  • 파이썬 코드를 c에 임베드하여 C 코드를 실행하는 mex 함수를 작성할 수 있습니다. http://docs.python.org/2/extending/embedding.html
  • 파이썬 용 명령 줄 인터페이스를 사용하십시오.

문서화 된 제한 외에도 이러한 솔루션에는 아무런 문제가 없습니다. C 또는 Matlab에 익숙하다면 두 번째 또는 세 번째 옵션을 선택합니다. 이것은 matlab에 대한 매우 기본적인 지식을 가지고 파이썬에 접근 할 수있는 래퍼 (wrapper)를 작성할 수있게 해준다.

1

이를 달성하기 위해 두 가지 방법이 있습니다 :

  1. 쓰기 MEX 기능, 기본적으로 C/C++ 또는 포트란 방법이다, matlab에 고유의 API를 사용합니다. 그런 다음 M- 언어 파일로 작성된 함수처럼 이들 메소드를 호출 할 수 있습니다. 이 내용은 here입니다.
  2. Java, .NET, C/C++ 및 COM 서버로 작성된 외부 라이브러리를 호출하십시오. 이 내용은 here입니다. 내가 MEX 기능을 작성하는 기존 라이브러리를 참조 후 더 힘들어이라고 주장하지만

두 가지 방법, 당신은 무엇을하고 있는지 잘 이해를 필요로한다.

0

내가 프로그래밍 언어에 대해 잘 모르겠어요하지만 당신은 실행을 실행하여 EXE 파일에 의해 그것을 할 수 있습니다 : 당신이 결과를 필요로하는 경우 ('C \ someCompiledProgram.exe') 그리고 당신은 사용할 수 있습니다 [상태, 결과 = 당신은 여기에 대해 읽을 수 있습니다

시스템 ('명령') : http://nf.nci.org.au/facilities/software/Matlab/techdoc/ref/system.html

관련 문제