matlab07-微积分

本文详细介绍了MATLAB中如何进行多项式微积分和数值微积分的操作。在多项式微积分部分,讨论了如何使用polyval和polyder进行微分和积分。而在数值微积分部分,讲解了数值微分的计算方法,包括使用差分计算斜率,并通过Midpoint Rule和Trapezoid Rule进行数值积分的实践应用。
摘要由CSDN通过智能技术生成

一:多项式微积分

使用一个行向量表示一个多项式
行向量元素表示对应项的系数
n个元素表示n-1次多项式
如:f(x)=x^3-2x-5
p=[1 0 -2 -5]

1.多项式微分(polynomial differentiation)
  1. f=polyval(p,x的取值):求出多项式的值
a=[9,-5,3,7];%a=[9 -5 3 7]
x=-2:0.01:5;
f=polyval(a,x);
plot(x,f,'LineWidth',2);
xlabel('x');
ylabel('f(x)');
set(gca,'FontSize',14);

请添加图片描述

  1. polyder (poly):求多项式微分,返回结果多项式行向量,结果行向量维数为微分前维数减一(常数项微分为0)
    请添加图片描述

练习:

请添加图片描述
conv(a,b)
计算出两个多项式相乘的结果系数向量

a=[20 -7 5 10];
b=[ 4 12 -3];
c=conv(a,b);
x=-2:0.01:1;
f=polyval(c,x);
f1=polyval(polyder(c),x);
plot(x,f,':b',x,f1,'-r');
legend('f(x)','f(x)的一阶导数');

请添加图片描述

  1. d
  2. d
  3. d
  4. d
  5. d
  6. d
  7. d
2.多项式积分(polynomial integration)
  1. polyint(p,k):对p定积分,k为自定义常数项,结果行向量维数为微分前维数加一(常数项)

请添加图片描述

二:数值微积分

1.数值微分(numerical differentiation)

两点之间的斜率:f(x2)-f(x1)/(x2-x1)

  1. diff(vector):算出vector相邻两元素的差(后—前),结果为vector
    diff(y)./diff(x):所有点中,相邻两点,两两斜率
    练习1:求出sin(pi/2)的近似斜率
>> y=[sin(pi/2) sin(pi/2+0.001)];
>> x=[pi/2 pi/2+0.001];
>> diff(y)./diff(x)

ans =

  -5.0000e-04

>> y=[sin
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值