eight 发表于 2007-6-1 00:18

“关于求解变上限积分问题”回复专贴

原帖: [示例]如何求解微分、积分方程的几个例子

lxc0531 发表于 2008-8-3 12:38

楼主你好

t=1:50:1000;
fun=@(t)exp(-(t-600)^2/2/196.62^2)/(sqrt(2*pi)*196.62);
for i=1:length(t)
    a(i)=quad(fun,1,t(i));
end
为什么我这个进不能运行呢
??? Error using ==> mpower
Matrix must be square.
Error in ==> quad at 62
y = f(x, varargin{:});
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
按你前面变上限函数积分上写的我改了一下
clear all
warning off
x=linspace(0,150);
for k=1:length(x)
    xx=x(k);
    fun=inline('exp(-(t-600)^2/2/196.62^2)/(sqrt(2*pi)*196.62)');
    w(k)=0.62.*2./sqrt(pi).*quadl(fun,0,1);
end
plot(x,w)
又是一片红
??? Error using ==> inlineeval
Error in inline expression ==> exp(-(t-600)^2/2/196.62^2)/(sqrt(2*pi)*196.62)
??? Error using ==> mpower
Matrix must be square.
Error in ==> inline.feval at 34
      INLINE_OUT_ = inlineeval(INLINE_INPUTS_, INLINE_OBJ_.inputExpr, INLINE_OBJ_.expr);
Error in ==> quadl at 64
y = feval(f,x,varargin{:}); y = y(:).';

[ 本帖最后由 lxc0531 于 2008-8-3 13:03 编辑 ]

ch_j1985 发表于 2008-8-3 12:55

原帖由 lxc0531 于 2008-8-3 12:38 发表
t=1:50:1000;
fun=@(t)exp(-(t-600)^2/2/196.62^2)/(sqrt(2*pi)*196.62]fun=@(t)exp(-(t-600)^2/2/196.62^2)/(sqrt(2*pi)*196.62);
for i=1:length(t)
    a(i)=quad(fun,0,t(i),t);
end
为什么我这个进不能运行 ...
fun=@(t)exp(-(t-600)^2/2/196.62^2)/(sqrt(2*pi)*196.62]fun=@(t)exp(-(t-600)^2/2/196.62^2)/(sqrt(2*pi)*196.62);
请问红色的代码是什么情况?

lxc0531 发表于 2008-8-3 13:04

回复 3楼 的帖子

好了哈 这个函数写错了么?还是什么原因
还有我这个inline fun=inline('exp(-(t-600)^2/2/196.62^2)/(sqrt(2*pi)*196.62)');写对了没得啊?

ch_j1985 发表于 2008-8-3 13:40

原帖由 lxc0531 于 2008-8-3 13:04 发表 http://www.chinavib.com/forum/images/common/back.gif
好了哈 这个函数写错了么?还是什么原因
还有我这个inline fun=inline('exp(-(t-600)^2/2/196.62^2)/(sqrt(2*pi)*196.62)');写对了没得啊?
首先,doc inline或help inline,看看inline函数的用法;
其次,要注意点乘exp(-(t-600).^2/2/196.62^2)/(sqrt(2*pi)*196.62);
最后,多看看置顶帖。
我电脑上没有装Matlab,所以也不能帮您试。
页: [1]
查看完整版本: “关于求解变上限积分问题”回复专贴