码迷,mamicode.com
首页 > 其他好文 > 详细

matlab数值微积分

时间:2018-10-01 22:13:14      阅读:361      评论:0      收藏:0      [点我收藏+]

标签:多项式   结果   trap   width   vector   函数   0.00   一个   变量   

1、polyval()     %多项式构造函数,参数为系数vector,自变量vector   

f=[9,-5,3,7]; x=-2:0.01:5;   %x的范围为-2到5

y=polyval(f,x);     %x为自变量范围,f为多项式系数

plot(x,y, ’linewidth’,2);

xlabel(‘x’); ylabel(‘y’);

set(gca,’fontsize’,14);

 

2、polyder()   %求导

p=[5 0 -2 1];  %5x^4-2x^2+x

polyder(p);  %结果为20     0    -4     0

 

3、当x=7时,导数值

p=[5 0 -2 1];    %5x^4-2x^2+x

polyval(polyder(p),7);

 

4、conv()  %  用于表示f(x)=(20x^3+7x^2)(x^3+4x)这种的多个因式

的乘积

y1=[20 7 0 0]; y2=[1 0 4 0];

f=conv(y1,y2);

5、polyint()    %给不定积分一个确定的常数项k,...

f(x)=x+4;  对其积分得 1/2x^2+4x+k

p=[5 0 -2 0 1];  %f(x)

polyint(p,3);   %给定积分后常数项k为3

polyval( polyint(p,3),7 );  %计算f(7)的积分    

 

6、diff()  %向量相邻元素的差异,用于计算斜率

x=[1 2]; y=[5 7];  %x1,x2   y1,y2

slope=diff(y) ./ diff(x);   %计算的是点(1,5) (2,7)的斜率

 

7、计算整个定义域内的导数

h=0.5;  x=0:h:2*pi;

y=sin(x); m=diff(y)./diff(x);        %计算sin’(x)

 

8、计算二次微分,三次微分

x=-2:0.005:2;  y=x.^3;

m=diff(y)./diff(x);      %一阶导    

m2=diff(m)./diff(x(1:end-1));  %m的维度比x少1 ,二阶导

plot(x,y,x(1:end-1),m,x(1:end-2),m2);

legend(‘f(x)‘, ‘f`(x)‘, ‘f``(x)‘);   %做图像标注

 

9、计算定积分,利用微分长方形累加  计算4x^3 在区间[0,2]的积分

h=0.05; x=0:h:2;         

midpoint=(x(1:end-1)+x(2:end))./2;  %计算每个长方形的中点 (Xmid )

y=4*midpoint.^3;        %结果为15.99   

s=sum(h*y);      %所有梯形的底乘高 总和

 

10、trapz()   计算定积分,利用梯形累加

h=0.05; x=0:h:2; y=4*x.^3;        %h为梯形的高

s=h*trapz(y);    %结果为16.01

 

11、integral2 二重积分   integral3三重积分

f=@(x,y) y.*sin(x)+8.*cos(y);   %要积分的函数

integral2(f,pi,2*pi,0,pi);  %参数为:函数,第一层积分区间,第二层积分区间

integral3(f,0,pi,0,1,-1,1);

matlab数值微积分

标签:多项式   结果   trap   width   vector   函数   0.00   一个   变量   

原文地址:https://www.cnblogs.com/lidan-prime/p/9735830.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!