声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 2052|回复: 4

[混合编程] matlab与c#混合编程的问题与心得

[复制链接]
发表于 2007-10-11 16:13 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
最近在搞matlab与c#混合编程,发现了一些问题,说出来大家讨论一下:
(1) matlab中的乘幂运算是非常好用的,但变成com组件后被C#调用起来真是问题多多,我现在束手无策。c#不支持sqrt的写法,连'^'后面是小数都会抛出异常,真是让人郁闷。
(2)matlab中的画图功能在c#能得到很好的应用。
(3)做成的com组件不论是在matlab中生成还是在c#中的初始化都比较耗时间。
所以建议大家在这两者混合编程时,尽量考虑清楚那部分功能在那个程序中实现,而不是一股脑的将计算功能交给matlab,将GUI功能交给c#,这样不仅使程序非常臃肿,而且耗时耗力,出力不讨好。

评分

1

查看全部评分

回复
分享到:

使用道具 举报

发表于 2007-10-11 16:44 | 显示全部楼层
不错 希望go on
发表于 2007-10-11 17:44 | 显示全部楼层
c和matlab都学了。。可是还不知道怎么混合用。。有书可以介绍下么
 楼主| 发表于 2007-10-11 17:52 | 显示全部楼层

回复 #1 fishlover 的帖子

我实在不甘心自己写的一堆matlab程序就这样白白泡汤了,自己又重新想了一下,经过测试我的想法是可行的。
1   matlab中的乘幂运算在c#中的解决方法:
    (1)乘幂计算的原始matlab函数是power(x,y),在c#中的函数是Math.Pow(x,y),所以可以将matlab中的乘幂运算  (是指幂不是整数时)统统写成power(x,y)形式。
缺点:程序写起来和c#一样很麻烦,而且matlab7.4a也没有向c#中的函数提示功能,郁闷ing
    (2)若matlab程序中改动太多且不好改时,可以将乘幂运算交给c#。
2  matlab传参数给c#时,若是复数是一定要注意用MWComplex class,否则返回的参数是null,传过来的参数根本没法用

[ 本帖最后由 ChaChing 于 2010-7-24 22:41 编辑 ]

评分

1

查看全部评分

发表于 2008-1-18 22:12 | 显示全部楼层
有没有matlab与c#混合编程方面的参考书?
共享一下,共同学习。
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-26 07:37 , Processed in 0.110898 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表