guozheng029 发表于 2007-5-25 09:14

Matlab程序运算的问题

我在Matlab中用积分运算的时候不出结果,老有这个警告,怎么解决呢??积分上下限已定。


Warning: Explicit integral could not be found.

无水1324 发表于 2007-5-25 11:03

被积函数太复杂,很难求得其解!
你用的数值积分吗?

guozheng029 发表于 2007-5-25 11:27

呵呵

matlab 我还是菜鸟级人物,我就只用了一个int命令。
这种情况该怎么解决呢??

pengweicai 发表于 2007-5-25 11:30

一般采用数值积分。

无水1324 发表于 2007-5-25 11:56

原帖由 guozheng029 于 2007-5-25 11:27 发表 http://www.chinavib.com/forum/images/common/back.gif
matlab 我还是菜鸟级人物,我就只用了一个int命令。
这种情况该怎么解决呢??

我也是用int进行数值积分
曾经遇到过类似的问题,好像是要把方程做一下化简,就可以了!

pengweicai 发表于 2007-5-25 12:44

最好把你的方程 贴出来。

guozheng029 发表于 2007-5-27 21:56

谢谢各位

这个问题我找老师帮忙解决了,用数值积分中的复化simpson算法!我把积分程序贴出来,各位可以看看,
%% 数值积分%%
clear;
syms x;
n=length(y);   % y被积函数,
h=(x(n)-x(1))/n; % x横坐标值
I=1:2:n;% 奇数坐标
II=2:2:n;%偶数坐标
S0=y(1)+y(n);
S1=sum(y(I));
S2=sum(y(II));
S=abs(h*(S0+4*S1+2*S2)/3);


S为最终的积分值.
页: [1]
查看完整版本: Matlab程序运算的问题