Comment appeler le code MATLAB à partir de C?

J’ai du code qui trace des sortingangles dans MATLAB.

Je dois pouvoir en quelque sorte exécuter ce code à partir de mon programme C qui génère ces points.

Est-ce possible? Comment ceci peut être fait?

Juste une pensée: puis-je en quelque sorte incorporer du code MATLAB en C, afin qu’il puisse comstackr sur un compilateur C?

Le site Mathworks contient tous les détails . une vidéo de démonstration de l’appel du moteur Matlab à partir de C, ainsi que du compilateur Matlab vers C.

Comme indiqué précédemment par les répondeurs, vous pouvez appeler une copie en direct de MATLAB à partir de C via l’interface de MATLAB Engine .

Si le produit final doit être utilisé sans copie en direct de MATLAB, vous pouvez déployer l’application à l’aide de MATLAB Comstackr . Cependant, comme l’a suggéré une autre réponse, MATLAB Comstackr ne convertit pas les programmes MATLAB en code C (et ne l’a pas encore fait pour quelques versions). Au lieu de cela, il archive et chiffre votre programme MATLAB et le regroupe dans une bibliothèque exécutable ou partagée qui s’exécute sur le Runtime MATLAB Comstackr (partageable sans redevance). La bibliothèque exécutable ou partagée peut ensuite être appelée à partir de C.

Sinon, vous pouvez également inverser la procédure et appeler votre code C depuis MATLAB, en utilisant soit loadlibrary, soit l’ interface MEX de MATLAB.

Mise à jour: à partir de la version R2011a, vous pouvez également utiliser MATLAB Coder pour générer du code C directement à partir d’un sous-ensemble du langage MATLAB.

Regardez cette présentation sur l’intégration des algorithmes MATLAB dans des applications C ou C ++ http://www.mathworks.com/videos/integrating-matlab-algorithms-in-c-or-c-applications-86431.html