24小时热门版块排行榜    

CyRhmU.jpeg
查看: 612  |  回复: 6
当前主题已经存档。
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

monitor2885

至尊木虫 (职业作家)

队长

[交流] 【求助】matlab和C

我用matlab编写了一个程序,保存为M文件。但是此程序很大,比如 t=0:0.0001:10000,这种长时间小步长的模拟计算。能不能把matlab的程序传入C语言,让C语言计算是不是快很多?可行吗?怎么操作?谢谢
回复此楼
Retirement
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lurencyj

木虫 (著名写手)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
余泽成(金币+1):谢谢应助,欢迎常来程序软件版! 2010-01-28 09:31
最好能找本算法的书看看龙格库塔法(ode45函数的算法)解常微分方程,在C数值计算函数库中都可以找到。好运!
很女子很弓虽大
7楼2010-01-28 09:18:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 7 个回答

xiegangmai

版主 (职业作家)

我没头衔

优秀版主优秀版主优秀版主


余泽成(金币+1,VIP+0):谢谢应助! 1-15 19:18
在MATLAB里用矢量计算,效率会比C中用循环计算高。
用循环的话,C的效率会高些。
没看到你的代码,不好判断。
明德厚学、求是创新
2楼2010-01-15 16:14:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

monitor2885

至尊木虫 (职业作家)

队长

引用回帖:
Originally posted by xiegangmai at 2010-1-15 16:14:
在MATLAB里用矢量计算,效率会比C中用循环计算高。
用循环的话,C的效率会高些。
没看到你的代码,不好判断。

function test
t=0:0.1:300;
[t,y]=ode45(@fun,t,[0 300]);
plot(t,y)
function dy=fun(t,y)
dy=zeros(2,1);
dy(1)=1+2*y(2);
dy(2)=3*(1-y(1)^2)*y(2)-y(1);

我用matlab编写了上述的test.m文件,怎么用C语言运行?让它运行速度快点。
Retirement
3楼2010-01-16 18:59:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

freehawk

银虫 (初入文坛)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
余泽成(金币+1):谢谢参与应助! 1-24 16:36
按照上面M文件的形式,将内容翻译成C语言,
5楼2010-01-24 14:16:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复(可上传附件)
信息提示
请填处理意见