7.2 符号微积分(ppt)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

专题七MATLAB符号计算7.2 符号微积分

☐符号函数的极限

☐符号函数的导数

☐符号函数的积分

1. 符号函数的极限

☐求符号函数极限的命令为limit,其调用格式为:

limit(f,x,a)

即求函数f关于变量x在a点的极限。

☐limit函数的另一种功能是求单边极限,其调用格式为:

limit(f,x,a,'right')

limit(f,x,a,'left')

例1 求下列极限。

(1)(2)

a

x a

x m m

a

x --→lim n

n n

)11(lim +

→>> syms a m x n;

>> f=(x^(1/m)-a^(1/m))/(x-a);>> limit(f,x,a) ans =

a^(1/m -1)/m >> g=(1+1/n)^n;>> limit(g,n,inf) ans =exp(1)即自然常数e 。

2. 符号函数的导数

MATLAB中的求导函数为:

diff(f,x,n)

即求函数f关于变量x的n阶导数。参数x的用法同求极限函数limit,可以缺省,默认值与limit相同,n的默认值是1。

例2 求下列函数的导数。

(1) ,求y'。(2)

,求、

。>> syms x y z;

>> f=sqrt(1+exp(x));

>> diff(f) ans =

exp(x)/(2*(exp(x) + 1)^(1/2))

x e y +=12y xe z y ='

x z 'y z >> g=x*exp(y)/y^2;>> diff(g,x) ans =

exp(y)/y^2 >> diff(g,y) ans =

(x*exp(y))/y^2 -(2*x*exp(y))/y^3

3. 符号函数的积分

(1)不定积分

在MATLAB中,求不定积分的函数是int(),其常用的调用格式为:

int(f,x)

即求函数f对变量x的不定积分。

例3 求下列不定积分。

(1)(2)

-dx x 3

2)3(⎰+dt

x xt

215>> syms x t;>> f=(3-x^2)^3;>> int(f)ans =

-x^7/7 + (9*x^5)/5 -9*x^3 + 27*x >> g=5*x*t/(1+x^2);

>> int(g,t) ans =

(5*t^2*x)/(2*(x^2 + 1))

(2)定积分

在MATLAB中,定积分的计算也使用int()函数,但调用格式有区别:

int(f,x,a,b)

其中,a、b分别表示定积分的下限和上限。

☐当函数f关于变量x在闭区间[a,b]可积时,函数返回一个定积分结果。☐当a、b中有一个是inf时,函数返回一个广义积分。

☐当a、b中有一个符号表达式时,函数返回一个符号函数。

例4 求下列定积分。

(1)(2)(3)dt t

x

x

⎰sin 2

4dx x ⎰-2

1

1dx

x ⎰+∞

∞-+211

>> syms x t;

>> int(abs(1-x),1,2)ans =1/2

>> int(1/(1+x^2),-inf,inf)ans =pi

>> int(4*x/t,t,2,sin(x))ans =

4*x*(log(sin(x)) -log(2))

河道水流量的估算问题

根据实际测量,得到河流某处宽600m,其横截面不同位置某一时刻的水深如下表所示。

x050100150200250300350400450500550600

h(x) 4.4 4.5 4.6 4.8 4.9 5.1 5.4 5.2 5.5 5.2 4.9 4.8 4.7

①若此刻水流的流速为0.6m/s,试估计该河流此刻的流量。

②已知x方向[50,60]区间为坡式护岸的下部护脚部分,根据相关堤防设计规范,抛石护岸护脚坡度应缓于1:1.5(正切值),请估计水流冲刷是否已破坏该区域的护脚。

分析:

①先拟合出河床曲线,然后进行定积分,计算出河流横截面,即可估计流量。

②根据河床曲线,计算其导函数,并判断相应范围内导函数的取值是否大于1:1.5。

xi=0:50:600;

yi=[4.4,4.5,4.6,4.8,4.9,5.1,5.4,5.2,5.5,5.2,4.9,4.8,4.7]; p=polyfit(xi,yi,3);

plot(xi,yi,'o',xi,polyval(p,xi));

syms y x;

y=poly2sym(p,x);

s=int(y,x,0,600);

v=s*0.6;

eval(v)

V的值为1787.4(m3/s)。

xi=0:50:600;

yi=[4.4,4.5,4.6,4.8,4.9,5.1,5.4,5.2,5.5,5.2,4.9,4.8,4.7];yn=-yi;

p=polyfit(xi,yn,3);

plot(xi,yn,'o',xi,polyval(p,xi));

syms y x yii;

y=poly2sym(p,x);

yii=diff(y,x); x=50:60; k=eval(yii); all(abs(k)<1/1.5)结果为1。x=50:60;y=polyval(p,x);k=diff(y)/1;all(abs(k)<1/1.5) 结果同样为1。all(i):若向量i 中所有元素非零,结果为1,否则结果为0。

相关文档
最新文档