MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   MATLAB论坛 (https://www.labfans.com/bbs/forumdisplay.php?f=6)
-   -   [MATLAB毕业设计] 求助(急):matlab编程 (https://www.labfans.com/bbs/showthread.php?t=8418)

ncc198611 2009-05-17 17:41

求助(急):matlab编程
 
syms x;
for k=1:10
for l=1:10
ak=(k-1/2)*pi;
al=(l-1/2)*pi;
num2str(ak);
aa=strcat('(sinh((',num2str(ak),')*x).*sinh((',num2str(al),')*x))');
bb=strcat('(sin((',num2str(al),')*x).*sinh((',num2str(ak),')*x))');
pp=strcat('(',num2str(ak),').*(',num2str(al),').*((inline(aa,x))+(inline(bb,x)))')
ss(k,l)=quadl(inline(pp),0,1)

end
end
请高手帮忙看一下有什么错误,帮改一下,如果把aa,bb这项直接带到pp中能出结果,因为像aa,bb这样的项有很多,而且在strcat('( )')又不能分行,函数太长不便于打印。谢谢了。

ncc198611 2009-05-17 21:42

回复: 求助(急):matlab编程
 
有人知道吗,谢谢大家,真的很急。

ncc198611 2009-05-17 22:34

回复: 求助(急):matlab编程
 
运行结果如下,谢谢赐教
pp =

(1.5708).*(1.5708).*((inline(aa,x))+(inline(bb,x)))

??? Error using ==> inline.feval
Not enough inputs to inline function.

Error in ==> quadl at 64
y = feval(f,x,varargin{:}); y = y(:).';

TTT_IOU 2009-05-17 22:46

回复: 求助(急):matlab编程
 
不太理解你的意思,看下程序可否:
syms x
format long e
ss=zeros(10,10);
for k=1:3
for l=1:3
ak=(k-1/2)*pi;
al=(l-1/2)*pi;
aa=sinh(ak*x)*sinh(al*x);
bb=sin(al*x)*sinh(ak*x);
pp=ak*al*(aa+bb);
ss(k,l)=quadl(inline(pp),0,1);
end
end
不过,上界1应小点,不然会出现warning!

ncc198611 2009-05-18 20:35

回复: 求助(急):matlab编程
 
非常感谢你,我试了一下,应该可以。


所有时间均为北京时间。现在的时间是 11:28

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.