나는 짧은 질문이 있습니다 : 내가 (역 고속 푸리에 변환) C 코드에서 matlab에 fuction를의 IFFT를 호출하고 싶은전화 matlab에 IFFT에서 C
전 C에 대한 MATLAB API를 이해하려고 노력했지만, 내가 할 수있는 어떻게 인수를 전달하는 방법에 대한 예제 또는 C 코드 내에서 matlab 에의 내부 fuction 호출하는 방법을 찾을 수 없습니다
어떤 힌트를 크게 극명하게 될 것입니다!
줄리아
나는 짧은 질문이 있습니다 : 내가 (역 고속 푸리에 변환) C 코드에서 matlab에 fuction를의 IFFT를 호출하고 싶은전화 matlab에 IFFT에서 C
전 C에 대한 MATLAB API를 이해하려고 노력했지만, 내가 할 수있는 어떻게 인수를 전달하는 방법에 대한 예제 또는 C 코드 내에서 matlab 에의 내부 fuction 호출하는 방법을 찾을 수 없습니다
어떤 힌트를 크게 극명하게 될 것입니다!
줄리아
MATLAB 코더 응용 프로그램을 사용하여 스크립트에서 C 코드를 생성 할 수 있습니다. 그건 ifft 호출 가능해야합니다. 가장 어려운 방법은 exec() matlab을 사용하고 출력을 다시 가져 오는 것입니다. 올리버의 대답은 확실히 가장 깨끗하고 최상의 경로입니다.
MATLAB에서 호출 할 c/C++ 기반 함수를 사용하는 방법은 mex 파일을 작성하는 것입니다. 기본 단계는 다음과 같습니다
쓰기 AC/C++ 스크립트, 당신은()
를 빌드 .mex (64 비트 시스템에 대한 .mexw64)를 생성하기 위해 (예를 들어 비주얼 스튜디오를 사용하여) IFFT 말 파일.
당신이 당신의 .mex 파일
다양한 MATLAB 및 C/C++ 코드 사이의 인터페이스가 특정 규칙을 따라야을 한 번 MATLAB 코드로부터 IFFT()를 호출합니다. 도서관처럼 꽤 많이 https://www.mathworks.com/help/matlab/ref/mex.html
.mex 파일입니다
https://www.mathworks.com/help/matlab/matlab_external/standalone-example.html
다음는 C/C를 구축하는 방법 ++ 스크립트를 .mex 파일에있다가 : 여기를 참조 할 수 있습니다 예입니다 . 빌드 한 후 MATLAB 스크립트와 동일한 폴더에 넣으면 실행할 수 있습니다.
희망이 있습니다.
Matlab의 FFT는 [FFTW] (http://www.fftw.org/) 위에 구현됩니다. 따라서 직접 사용하는 것이 좋습니다. –
확인 충분히 공평하게 들리는데, 나는 그것이 fftw보다 MATLAB을 더 쉽게 호출 할 것이라고 생각했다. –