matlab对分段函数积分
functionF=FX(L,h,n)a=1/6fori=1:1:n+3fork=1:1:n+3f=@(x)a*((x+2)^3).*(x>=-2&x<-1)+a*((x...
function F=FX(L,h,n)
a=1/6
for i=1:1:n+3
for k=1:1:n+3
f=@(x)a*((x+2)^3).*(x>=-2 & x<-1)+a*((x+2)^3-4*(x+1)^3).*(x>=-1 & x<0)+a*((2-x)^3-4*(1-x)^3).*(x>=0 & x<1)+a*((2-x)^3).*(x>=1 & x<=2)
g=@(x)a*((x+2)^3).*(x>=-2 & x<-1)+a*((x+2)^3-4*(x+1)^3).*(x>=-1 & x<0)+a*((2-x)^3-4*(1-x)^3).*(x>=0 & x<1)+a*((2-x)^3).*(x>=1 & x<=2)
f(i,k)=@(x)f(x/h-(i-2)).*g(x/h-(k-2))
FX(i,k)=quad(f(i,k),0,L)
end
end
FX运行不出来,请帮我看看是哪里出错了 不胜感激 展开
a=1/6
for i=1:1:n+3
for k=1:1:n+3
f=@(x)a*((x+2)^3).*(x>=-2 & x<-1)+a*((x+2)^3-4*(x+1)^3).*(x>=-1 & x<0)+a*((2-x)^3-4*(1-x)^3).*(x>=0 & x<1)+a*((2-x)^3).*(x>=1 & x<=2)
g=@(x)a*((x+2)^3).*(x>=-2 & x<-1)+a*((x+2)^3-4*(x+1)^3).*(x>=-1 & x<0)+a*((2-x)^3-4*(1-x)^3).*(x>=0 & x<1)+a*((2-x)^3).*(x>=1 & x<=2)
f(i,k)=@(x)f(x/h-(i-2)).*g(x/h-(k-2))
FX(i,k)=quad(f(i,k),0,L)
end
end
FX运行不出来,请帮我看看是哪里出错了 不胜感激 展开
1个回答
展开全部
function F=FX(L,h,n)
F=zeros(n+3);
f=@(x)1/6*((x+2).^3).*(x>=-2 & x<-1)+1/6*((x+2).^3-4*(x+1).^3).*(x>=-1 & x<0)+...
1/6*((2-x).^3-4*(1-x).^3).*(x>=0 & x<1)+1/6*((2-x).^3).*(x>=1 & x<=2);
g=@(x)1/6*((x+2).^3).*(x>=-2 & x<-1)+1/6*((x+2).^3-4*(x+1).^3).*(x>=-1 & x<0)+...
1/6*((2-x).^3-4*(1-x).^3).*(x>=0 & x<1)+1/6*((2-x).^3).*(x>=1 & x<=2);
for i=1:1:n+3
for k=1:1:n+3
fg=@(x)f(x/h-(i-2)).*g(x/h-(k-2));
F(i,k)=quad(fg,0,L);
end
end
F=zeros(n+3);
f=@(x)1/6*((x+2).^3).*(x>=-2 & x<-1)+1/6*((x+2).^3-4*(x+1).^3).*(x>=-1 & x<0)+...
1/6*((2-x).^3-4*(1-x).^3).*(x>=0 & x<1)+1/6*((2-x).^3).*(x>=1 & x<=2);
g=@(x)1/6*((x+2).^3).*(x>=-2 & x<-1)+1/6*((x+2).^3-4*(x+1).^3).*(x>=-1 & x<0)+...
1/6*((2-x).^3-4*(1-x).^3).*(x>=0 & x<1)+1/6*((2-x).^3).*(x>=1 & x<=2);
for i=1:1:n+3
for k=1:1:n+3
fg=@(x)f(x/h-(i-2)).*g(x/h-(k-2));
F(i,k)=quad(fg,0,L);
end
end
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询