Matlab符号计算上机实验Word格式.docx
《Matlab符号计算上机实验Word格式.docx》由会员分享,可在线阅读,更多相关《Matlab符号计算上机实验Word格式.docx(28页珍藏版)》请在冰点文库上搜索。
.7598193629
y4=vpa(y,20)
y4=
.75981936291375673509
y5=vpa(y,50)
y5=
.75981936291375673508952104384661652147769927978516
二、设
为符号变量,
,
,试进行如下运算。
(1)
(2)
(3)对
进行因式分解,
(4)求
的反函数。
symsfgx;
f=x^4+2*x^2+1;
g=x^3+6*x^2+3*x+5;
h=f+g
i=f*g
expand(i)
factor(f)
h=
x^4+8*x^2+6+x^3+3*x
i=
(x^4+2*x^2+1)*(x^3+6*x^2+3*x+5)
ans=
x^7+6*x^6+5*x^5+17*x^4+7*x^3+16*x^2+3*x+5
(x^2+1)^2
三、指出下面各条语句的输出结果
f=sym('
2*u'
);
subs(f,'
u'
2)
f2=subs(f,'
'
u+2'
)
a=3;
subs(f2,'
a+2)
a+2'
symsxy
f3=subs(f,'
x+y)
subs(f3,[x,y],[1,2])
subs(f3,[x,y],[x+y,x+y])
subs(f,'
f2=subs(f,'
a=3;
subs(f2,'
symsxy
f3=subs(f,'
subs(f3,[x,y],[1,2])
subs(f3,[x,y],[x+y,x+y])
4
f2=
2*(u+2)
14
2*((a+2)+2)
f3=
2*x+2*y
6
6*x+4*y
四、简化
symsx;
f=(1/x^3+6/x^2+12/x+8)^(1/3);
y1=simplify(f)
((2*x+1)^3/x^3)^(1/3)
五、设a、b定义如下,试上机输出factor(a)和factor(b)的结果,并指出哪个结果才是12345678901234567890的因式分解,为什么?
a=sym('
12345678901234567890'
b=sym(12345678901234567890)
y1=factor(a)
y2=factor(b)
(2)*(3)^2*(5)*(101)*(3803)*(3607)*(27961)*(3541)
(2)^11*(7)*(7324703)*(117570121)
a=sym('
%直接创建符号常量
b=sym(12345678901234567890);
%将数值常量转换为符号常量
有误差
x1=factor(a)
x1=
(2)*(3)^2*(5)*(101)*(3803)*(3607)*(27961)*(3541)
x2=factor(b)
x2=
(2)^11*(7)*(7324703)*(117570121)
isequal(x1,x2)
0
六、替换函数subs的使用。
(1)试指出下面程序中的f1、f2、f3、f4、f5的值。
symsax;
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})
symsax;
f1=
a*y+5
3^(1/2)+5
6.7321
f4=
5.00006.00006.73217.00006.73216.00005.0000
f5=
5.00005.50006.73218.00008.46417.50005.0000
(2)试指出下面替换的结果,并说明理由。
symsxy;
f=2*x+y;
subs(f,{x,y},{x+y,x-y})
f=2*x+y;
subs(f,{x,y},{x+y,x-y})
5*x-3*y
理由:
替换过程中先用x+y替换x,得到2x+3y,再用x-y替换y,得到5x-3y.
七、创建符号变量有几种方法?
答:
MATLAB提供了两种创建符号变量和表达式的函数:
sym和syms。
八、下面三种表示方法有什么不同的含义?
(1)f=3*x^2+5*x+2
(2)f='
3*x^2+5*x+2'
(3)x=sym('
x'
f=3*x^2+5*x+2
表示在给定x时,将3*x^2+5*x+2的数值运算结果赋值给变量f,如果没有给定x则指示错误信息。
表示将字符串'
赋值给字符变量f,没有任何计算含义,因此也不对字符串中的内容做任何分析。
表示x是一个符号变量,因此算式f=3*x^2+5*x+2就具有了符号函数的意义,f也自然成为符号变量了。
九、用符号计算验证三角等式:
sin
(1)cos
(2)-cos
(1)sin
(2)=sin(1-2)
symsphi1phi2;
y=simple(sin(phi1)*cos(phi2)-cos(phi1)*sin(phi2))
sin(phi1-phi2)
十、因式分解:
f=x^4-5*x^3+5*x^2+5*x-6;
factor(f)
(x-1)*(x-2)*(x-3)*(x+1)
实验二MATLAB7.0符号计算在高等数学中的应用
1.掌握MATLAB7.0符号计算在极限中的应用;
2.掌握MATLAB7.0符号计算在微分、积分中的应用;
3.掌握MATLAB7.0符号计算在级数求和以及泰勒级数中的应用。
实验内容与结果:
一、求
上的定积分;
int(sin(x)+x,0,8)
-cos(8)+33
二、求符号表达式
的5次微分;
symsx
f=sin(x)+x^5;
df=diff(f,5)
df=
cos(x)+120
三、计算和
symsxhn;
L=limit((log(x+h)-log(x))/h,h,0)
M=limit((1-x/n)^n,n,inf)
L=
1/x
M=
exp(-x)
四、1计算级数
及其前100项的部分和;
symsn;
f=1/n^2;
S=symsum(f,n,1,inf)
S100=symsum(f,n,1,100)
S=
1/6*pi^2
S100=
158********330378*********28517553859702383498543709859889432834803818131090369901/972186144434381030589657976672623144161975583995746241782720354705517986165248000
2计算函数级数
symsnx;
f=x/n^2;
1/6*x*pi^2
五、
(1)设
求复合函数f(g(z));
(2)设
求复合函数f(g(z))。
(1)
symsxyzut;
f=x^2/(1+u);
g=cos(y+2*t);
compose(f,g,y)
cos(y+2*t)^2/(1+u)
compose(f,g,t)
cos(3*t)^2/(1+u)
六、计算sin(t)在t=0处的taylor级数、Fourier变换和Laplace变换。
symsts;
y=sin(t)
f=taylor(y,5,x,0)
ut=heaviside(t)
UT=fourier(ut)
MS=laplace(y,t,s)
sin(t)
f=
t-1/6*t^3
ut=
heaviside(t)
UT=
pi*dirac(w)-i/w
MS=
1/(s^2+1)
七、计算
的
和
。
z=y*x^2+3*y^2*x+2*y^3;
a=diff(z,y)
b=diff(a,x)
a=
x^2+6*y*x+6*y^2
b=
2*x+6*y
八、因式分解:
九符号函数绘图法绘制函数x=sin(3t)cos(t),y=sin(3t)sin(t)的图形,t的变化范围为[0,2]。
symst
ezplot(sin(3*t)*cos(t),sin(3*t)*sin(t),[0,pi])
十、
,用符号微分求df/dx。
f=[a,x^2,1/x;
exp(a*x),log(x),sin(x)];
df=diff(f)
[0,2*x,-1/x^2]
[a*exp(a*x),1/x,cos(x)]
实验三MATLAB7.0符号方程(组)求解和符号矩阵计算
1.掌握MATLAB7.0符号代数方程和符号代数方程组求解;
2.掌握MATLAB7.0符号符号微分方程和符号微分方程组求解;
3.掌握MATLAB7.0符号矩阵计算。
一、使用sym函数生成如下符号矩阵,
,试对这两个符号矩阵分别进行如下操作。
(3)求
的行列式
的逆
(5)求
的秩
(6)求
[1/x,1/(x+1);
1/(x+2),1/(x+3)]'
)
b=sym('
[x,1;
x+2,0]'
a-b;
a*b
det(a)
rank(a)
inv(b)
a^3
[1/x,1/(x+1)]
[1/(x+2),1/(x+3)]
[1+1/(x+1)*(x+2),1/x]
[1/(x+2)*x+1/(x+3)*(x+2),1/(x+2)]
2/x/(x+3)/(x+1)/(x+2)
2
[0,1/(x+2)]
[1,-1/(x+2)*x]
[1/x*(1/x^2+1/(x+1)/(x+2))+1/(x+1)*(1/(x+2)/x+1/(x+3)/(x+2)),1/x*(1/x/(x+1)+1/(x+1)/(x+3))+1/(x+1)*(1/(x+1)/(x+2)+1/(x+3)^2)]
[1/(x+2)*(1/x^2+1/(x+1)/(x+2))+1/(x+3)*(1/(x+2)/x+1/(x+3)/(x+2)),1/(x+2)*(1/x/(x+1)+1/(x+1)/(x+3))+1/(x+3)*(1/(x+1)/(x+2)+1/(x+3)^2)]
二、求解非线性方程组
s=solve('
x-0.7*sin(x)-0.2*cos(y)=0'
y-0.7*cos(x)+0.2*sin(y)=0'
disp('
s.x'
disp(s.x)
s.y'
disp(s.y)
s.x
.52652262191818418730769280519209
s.y
.50791971903684924497183722688768
三、已知
,求该方程的解。
Y=dsolve('
D2y+2*Dy+2*y=0'
y(0)=1'
Dy(0)=1'
sy=simple(Y)
expand(sy)
sy=
exp(-t)*(2*sin(t)+cos(t))
2/exp(t)*sin(t)+1/exp(t)*cos(t)
四、用符号函数法求解方程at2+b*t+c=0。
r=solve('
a*t^2+b*t+c=0'
t'
r=
1/2/a*(-b+(b^2-4*a*c)^(1/2))
1/2/a*(-b-(b^2-4*a*c)^(1/2))
五、用符号计算验证三角等式:
六、求矩阵
的行列式值、逆和特征根。
symsa11a12a21a22;
A=[a11,a12;
a21,a22]
AD=det(A)
AI=inv(A)
AE=eig(A)
A=
[a11,a12]
[a21,a22]
AD=
a11*a22-a12*a21
AI=
[a22/(a11*a22-a12*a21),-a12/(a11*a22-a12*a21)]
[-a21/(a11*a22-a12*a21),a11/(a11*a22-a12*a21)]
AE=
1/2*a11+1/2*a22+1/2*(a11^2-2*a11*a22+a22^2+4*a12*a21)^(1/2)
1/2*a11+1/2*a22-1/2*(a11^2-2*a11*a22+a22^2+4*a12*a21)^(1/2)
七、
八、绘制极坐标下sin(3*t)*cos(t)的图形。
ezpolar(sin(3*t)*cos(t))
九、求代数方程组
关于x,y的解。
S=solve('
a*x^2+b*y+c=0'
b*x+c=0'
S.x='
),disp(S.x)
S.y='
),disp(S.y)
S.x=
-c/b
S.y=
-c*(a*c+b^2)/b^3
十、求解微分方程(组)
1、
symsaxy
dsolve('
Dy=a*x'
1/2*a*x^2+C1
2、
symsft
Df=f+sin(t)'
-1/2*cos(t)-1/2*sin(t)+exp(t)*C1
3、
symsy
(Dy)^2+y^2=1'
1
-1
sin(t-C1)
-sin(t-C1)
4、
dsolve('
Dy=a*y'
y(0)=b'
b*exp(a*x)
5、
symsaxy;
D2y=-a^2*y'
y(0)=1,Dy(pi/a)=0'
cos(a*x)
6、
symsxyt;
Dx=y'
Dy=-x'
ans=
x:
[1x1sym]
y:
7、
y=dsolve('
y(0)=0'
sy=simple(y)
sin(x)
-sin(x)