Main Content

C 및 Fortran용 MATLAB Engine API

MATLAB® C 및 Fortran 엔진 라이브러리에는 MATLAB을 계산 엔진으로 사용하여 사용자 자신의 프로그램에서 MATLAB을 호출할 수 있게 해 주는 루틴이 있습니다. MATLAB 엔진을 사용하려면 MATLAB이 설치되어 있어야 합니다. MATLAB Runtime만 설치된 컴퓨터에서는 MATLAB 엔진을 실행할 수 없습니다.

엔진 프로그램은 독립 실행형 프로그램입니다. 이런 프로그램은 UNIX® 시스템에서는 파이프를 통해, Microsoft® Windows® 시스템에서는 Microsoft COM(Component Object Model) 인터페이스를 통해 별개의 MATLAB 프로세스와 통신합니다. MATLAB은 MATLAB 프로세스를 시작하거나 종료하고, MATLAB과 데이터를 전송해 주고받고, MATLAB에서 처리할 명령을 보낼 수 있게 해주는 함수 라이브러리를 제공합니다.

MATLAB 엔진으로 할 수 있는 작업으로는 다음과 같은 것이 있습니다.

  • 예를 들어, 자신의 프로그램에서 배열을 반전하거나 FFT를 계산하는 수학 루틴을 호출합니다. 이런 식으로 사용할 때, MATLAB은 강력하고 프로그램 가능한 수학 서브루틴 라이브러리가 됩니다.

  • 특정 작업을 수행하는 전체 시스템을 개발합니다. 예를 들어, 프론트엔드(사용자 인터페이스)는 C로 프로그래밍하고 백엔드(분석)는 MATLAB으로 프로그래밍할 수 있습니다.

MATLAB 엔진은 사용자 자신의 프로그램에서 별개의 프로세스로 백그라운드에서 실행하는 방식으로 작동합니다. 이에는 다음과 같은 몇 가지 이점이 있습니다.

  • UNIX 시스템에서는 사용자 컴퓨터나 네트워크상의 다른 UNIX 컴퓨터(다른 아키텍처의 컴퓨터 포함)에서 엔진을 실행할 수 있습니다. 이 구성을 통해 워크스테이션에 사용자 인터페이스를 구현하고 네트워크상의 다른 곳에 있는 더 빠른 컴퓨터에서 계산 작업을 수행할 수 있습니다. 자세한 내용은 engOpen 함수 도움말 페이지를 참조하십시오.

  • 프로그램에서 전체 MATLAB 프로그램(코드 양이 상당히 많음)에 링크하도록 요구하는 대신, 작은 엔진 라이브러리에 링크합니다.

MATLAB 엔진은 HDF5 기반 형식의 MAT 파일을 읽을 수 없습니다. 이런 MAT 파일은 save 함수의 -v7.3 옵션을 사용하여 데이터를 저장하거나 C 또는 Fortran matOpen 함수에 대한 w7.3 모드 인수를 사용하여 열립니다.

참고

UNIX 플랫폼에서 MATLAB 엔진을 실행하려면 C 셸 csh/bin/csh에 설치되어 있어야 합니다.

MATLAB과 통신하기

UNIX 시스템에서 엔진 라이브러리는 파이프를 사용하여 엔진과 통신하며, 원격 실행을 위해 필요한 경우 rsh도 사용합니다. Microsoft Windows 시스템에서 엔진 라이브러리는 COM(Component Object Model) 인터페이스를 사용하여 엔진과 통신합니다.

관련 항목