积分与数的MATLAB实现.doc
文本预览下载声明
积分与级数
1 积分问题
求解方法:
Q=quad(F,0,2); %自适应法Simpson法
F=int(f,x);
F=int(f,x,a,b);
1.1 定积分的数值解
例:绘制积分区域
f=inline(x.^3-x.^2+2*x+1);figure; hold on
fplot(f,[-1000,1000])
patch([-600 -600:800 800],[0 f(-600:800) 0],r);
例:计算x.^3-x.^2+2*x+1的定积分
内联函数M函数f=inline(x.^3-x.^2+2*x+1);
Q = quad(f,0,2);function y = myfun(x)
y= x.^3-x.^2+2*x+1;Q = quad(@myfun,0,2);
针对函数值序列的数值积分
trapz(sin(0:0.01:pi))*0.01 % 梯形数值积分
例:编程实现上例功能
自定义数值积分函数function area=getarea(f,x1,x2)
delta=0.01; % 子区间的宽度
x=x1:delta:x2;
y=feval(f,x);
area=cumsum(y)*delta;area=getarea(f,0,2); area(end)area=getarea(@myfun,0,2); area(end)
1.2 不定积分的解析解
例:已知,计算,并验证之。
syms x;
f=sin(x)/(x^2+4*x+3);
F=int(f,x);
f0=diff(F,x);
simple(f0)-f % 0
figure;
subplot(2,1,1);
ezplot(f,[-1 6]);
subplot(2,1,2);
ezplot(F,[-1 6]);
4次积分、求导验证
F=int(int(int(int(f))));
f0= diff(F,4);
simple(f0)-f % 0
例:考虑不可积问题和。
syms x; F=int(exp(-x^2/2))
% F= 1/2*pi^(1/2)*2^(1/2)*erf(1/2*2^(1/2)*x)
syms a x; G=int(x*sin(a*x^4)*exp(x^2/2))
1.2 定积分和无穷积分
例:计算
syms x t;
f=(-2*x^2+1)/(2*x^2-3*x+1)^2;
I=int(f,x,cos(t),exp(-2*t));
I=simple(I);
figure;
subplot(2,1,1); ezplot(f,-20,20);
subplot(2,1,2); ezplot(I,-20,20);
例:考虑不可积问题的定积分。
syms x;
I1=int(exp(-x^2/2),x,0,1.5); vpa(I1,10);
I2=int(exp(-x^2/2),x,0,inf); vpa(I2,10);
% 图示无穷积分的渐进过程
y1=[];
for x1=0:0.1:10;
I1=int(exp(-x^2/2),x,0,x1);
y1=[y1 vpa(I1,10)];
end
plot(0:0.1:10, double(y1),.-);
1.3 多重积分
例:对的偏导数求积分。
syms x y z;
f=sin(x^2*y)*exp(-x^2*y-z^2);
df=diff(diff(diff(f,x,2),y),z); df=simple(df);
% 积分次序1
f1=int(df,z); f1=int(f1,y); f1=int(f1,x); f1=int(f1,x); f1=simple(f1);
% 积分次序2
f2=int(df,x); f2=int(f2,x); f2=int(f2,y); f2=int(f2,z); f2=simple(f2);
simple(f2-f1)?; % 值为0
例:计算的值。
syms x y z;
I=int(int(int(4*x*z*exp(-x^2*y-z^2),x,0,2),y,0,pi),z,0,pi);
vpa(I,6)
2 函数的级数展开与级数求和
2.1 单变量的Taylor幂级数展开
求解方法:
x=0处的展开式:(maclaurin展开式)
x=a处的展开式:(Taylor展开式)
taylor(f,x,n);
例:在x=2和x=a处,展开。
% 原函数
syms x; f=sin(x)/(x^2+4*x+3);
xs=0:0.1:3;
ys=subs(f,x,xs);
plot(
显示全部