Interoperando entre Matlab y C #

Después de echar un vistazo por Internet, parece que es posible interpolar entre C # y Matlab. Me pregunto si alguien ha tenido éxito y qué hicieron para hacerlo. Si es posible, de alguna manera, quitárselo sin el uso de COM. Gracias por tu tiempo.

Sí, muy posible. Aunque terminé usando la interfaz C y llamé a eso usando una DLL de modo mixto (y obteniendo C # para llamar a eso … pero eso era porque también estaba interactuando con algún otro código C). Es bastante sencillo. En las computadoras donde desea ejecutar su progtwig, deberá instalar Matlab Runtime MCRInstaller.exe.

editar: eliminado el enlace roto

A partir de la versión R2009a de MATLAB, se puede acceder a los objetos .NET desde MATLAB:

http://www.mathworks.com/help/techdoc/matlab_external/brpb5k6.html

En versiones anteriores de MATLAB, es posible acceder a objetos .NET desde MATLAB utilizando CCW:

http://www.mathworks.com/support/solutions/data/1-5U8HND.html?solution=1-5U8HND

y el motor MATLAB de .NET:

http://www.mathworks.com/access/helpdesk/help/techdoc/index.html?/access/helpdesk/help/techdoc/matlab_external/f135590.html#f135616

También puede usar MATLAB Builder NE para envolver el código m en ensamblajes .NET.

http://www.mathworks.com/products/netbuilder/

Sí, logré hacer eso y fue casi indoloro.

Tendría que comstackr su código MATLAB para .NET (como se explica en las respuestas anteriores), ejecutar el instalador MCR, referenciar MWArray.dll y el dll de código comstackdo en su proyecto .NET y listo.

La única molestia fue el casting (¡y algunas veces múltiples fundiciones!) Que la interfaz te obliga (usando explícitamente a los operadores de cast)

Hay un contenedor .NET gratuito y de código abierto para Matlab, y es muy simple: http://www.codeproject.com/KB/dotnet/matlabeng.aspx

Yo uso esto.

En el prelanzamiento R2009a puede llamar a los ensamblados de .net desde MATLAB.

No estoy seguro de lo mucho que esto se aplica a usted, pero intente buscar ejecutables de MATLAB o MEX Básicamente, es realmente fácil escribir un progtwig en C o FORTRAN, incluir algunas bibliotecas y funciones, y luego puede usar su función C o FORTRAN. en matlab

Si está dispuesto a gastar dinero, esto puede ser lo que necesita:

http://www.mathworks.com/products/netbuilder/

Puede generar contenedores para el código de Matlab que permiten que se llame desde .NET y COM.