2014秋实验四 - MATLAB的符号计算二答案

更新时间:2023-11-01 05:33:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

实验四 MATLAB的符号计算(二)

130123096 段石磊

一、 实验目的

1.掌握MATLAB7.0 subs、simple、simplify、finverse等函数的应用;

2.掌握利用MATLAB7.0计算极限和级数的方法,计算复合、反函数的方法; 3.了解利用MATLAB7.0计算taylor级数。

4.掌握利用MATLAB7.0来求解常微分方程的方法。

5.掌握利用MATLAB7.0符号计算中的ezplot及ezplot3绘图方法。 二、实验内容

4232f(x)?x?2x?1g(x)?x?6x?3x?5,试进行如下运算。 x1.设为符号变量,,

(1)f(x)?g(x),

(2)f(x)?g(x),

(3)对f(x)进行因式分解, (4)求g(x)的反函数。

f=sym('x^4+2*x^2+1') g=sym('x^3+6*x^2+3*x+5') a=f+g

f =x^4+2*x^2+1 g =x^3+6*x^2+3*x+5 a =x^4+8*x^2+6+x^3+3*x b=f*g

b =x^4+2*x^2+1)*(x^3+6*x^2+3*x+5) c=factor(f) c =(x^2+1)^2 d=finverse(g) d

=1/2*(-60+4*x+4*(117-30*x+x^2)^(1/2))^(1/3)+6/(-60+4*x+4*(117-30*x+x^2)^(1/2))^(1/3)-2

2.(1)指出下面程序中的f1、f2、f3、f4、f5的值。 syms a x; f=a*sin(x)+5;

f1=subs(f,'sin(x)',sym('y')) f2=subs(f,{a,x},{2,sym(pi/3)}) f3=subs(f,{a,x},{2,pi/3}) f4=subs(subs(f,a,2),x,0:pi/6:pi) f5=subs(f,{a,x},{0:6,0:pi/6:pi}) (2)指出下面替换的结果。 >> syms x y; f=2*x+y;

>> subs(f,{x,y},{x+y,x-y})

2,(1) syms a x; f=a*sin(x)+5;

f1=subs(f,'sin(x)',sym('y')) f1 =a*y+5

f2=subs(f,{a,x},{2,sym(pi/3)}) f2 =3^(1/2)+5

f3=subs(f,{a,x},{2,pi/3}) f3 =6.7321

f4=subs(subs(f,a,2),x,0:pi/6:pi) f4 =

5.0000 6.0000 6.7321 7.0000 6.7321 6.0000 5.0000 f5=subs(f,{a,x},{0:6,0:pi/6:pi}) f5 =

5.0000 5.5000 6.7321 8.0000 8.4641 7.5000 5.0000 (2)

syms x y f=2*x+y f =2*x+y

subs(f,{x,y},{x+y,x-y}) ans =5*x-3*y

3. 用符号计算验证三角等式:

sin(?1)cos(?2)-cos(?1)sin(?2) =sin(?1-?2)

,a=?1,b=?2

y=sym('sin(a)*cos(b)-cos(a)*sin(b)') y =sin(a)*cos(b)-cos(a)*sin(b) simple(y) simplify:

sin(a)*cos(b)-cos(a)*sin(b) radsimp:

sin(a)*cos(b)-cos(a)*sin(b) combine(trig): sin(a-b) factor:

sin(a)*cos(b)-cos(a)*sin(b) expand:

sin(a)*cos(b)-cos(a)*sin(b) combine: sin(a-b) convert(exp):

-1/2*i*(exp(i*a)-1/exp(i*a))*(1/2*exp(i*b)+1/2/exp(i*b))+1/2*i*(1/2*exp(i*a)+1/2/exp(i*a))*(exp(i*b)-1/exp(i*b))

convert(sincos):

sin(a)*cos(b)-cos(a)*sin(b) convert(tan):

2*tan(1/2*a)/(1+tan(1/2*a)^2)*(1-tan(1/2*b)^2)/(1+tan(1/2*b)^2)-2*(1-tan(1/2*a)^2)/(1+tan(1/2*a)^2)*tan(1/2*b)/(1+tan(1/2*b)^2) collect(b):

sin(a)*cos(b)-cos(a)*sin(b) mwcos2sin:

sin(a)*cos(b)-cos(a)*sin(b) ans = sin(a-b)

4.设,求

z=sym('y^4*(sin(x)^4)+x^4*(cos(y)^4)') z =y^4*(sin(x)^4)+x^4*(cos(y)^4) diff(z)

ans =4*y^4*sin(x)^3*cos(x)+4*x^3*cos(y)^4

1??2axf??x??ax?elog(x)sin(x)??5.,用符号微分求df/dx。 ,syms a x

g=[a x^2 1/x;exp(a*x) log(x) sin(x)] diff(g) g =

[ a, x^2, 1/x] [ exp(a*x), log(x), sin(x)] ans =

[ 0, 2*x, -1/x^2] [ a*exp(a*x), 1/x, cos(x)]

6.用符号函数法求解方程at+b*t+c=0。

f=sym('a*t^2+b*t+c') solve(f) f =a*t^2+b*t+c ans =

1/2/a*(-b+(b^2-4*a*c)^(1/2)) 1/2/a*(-b-(b^2-4*a*c)^(1/2))

2

7.求微分方程的解: y'''-y''=x,y''(2)=4,y'(1)=7,y(1)=8

y=dsolve('D3y-D2y=x','D2y(2)=4,Dy(1)=7,y(1)=8','x') y =

-1/6*x^3+7*exp(x)/exp(2)-1/2*x^2-1/2*(-17*exp(2)+14*exp(1))/exp(2)*x+1/6

8.计算函数级数

syms x n

S??x2n?1n

?s1=symsum(x/n^2,1,inf) s1 =1/signum(n)^2*Inf

9. f(x)=ex分别求5阶、6阶泰勒展开式

syms x

s1=taylor(exp(x),5)

s1 =1+x+1/2*x^2+1/6*x^3+1/24*x^4 s2=taylor(exp(x),6)

s2 =1+x+1/2*x^2+1/6*x^3+1/24*x^4+1/120*x^5

10.符号函数绘图法绘制函数x=sin(3t)cos(t),y=sin(3t)sin(t)的图形,t的变化范围为[0,2?]。

11..设 x?zsin3z,y?zcos3z, 要求在z=0~10区间内画出x,y,z三维曲线。(用ezplot3)

补数值计算实验内容:

1.建立如下一个元胞数组,现在要求计算第一个元胞第4行第2列加上第二个元胞+第三个元胞里的第二个元素+最后一个元胞的第二个元素。 a={pascal(4),'hello';17.3500,7:2:100}

2.建立一个结构体的数组,包括3个人,字段有姓名,年龄,分数,其中分数由随机函数产生一个3行10列的数据表示了有10门课程,每门课程有三个阶段的分数。问题是: 问题1,如何找到第2个人的分数并显示出来

问题2,如何找到第2个人的每门课程3个阶段的平均分数并显示出来

问题3,全班同学的10门课程的每门课程的平均分如何计算出来?要求放到一个数组里。 问题4,找到这个班所有同学的姓名放到一个元胞数组里

分析:本次实验题量较少,在机房就只剩最后一题了,最后一题回寝写完的,实验不仅包含本章内容,还包含了第二章的元胞数组和结构数组,,很好地巩固了前面所学。表示最后一题很生疏,做了好久,还百度了些知识。

本文来源:https://www.bwwdw.com/article/ggf2.html

Top