Matlab实验二符号计算 联系客服

发布时间 : 星期六 文章Matlab实验二符号计算更新完毕开始阅读2b8d62bbab00b52acfc789eb172ded630b1c98ee

实验二 符号计算一、实验目的

1.理解符号计算的本质,掌握符号计算的常规步骤; 2.学习认定符号表达式中独立变量; 3.学习求极限,符号积分;

4.掌握如何求微分方程解,代数方程的解。

二、实验任务

1.定义y?sin2(x)?(1?cos(2*x))/2,要求编写程序化简该表达式,理解符号计算实质。

y =

sin(x)^2+1/2-1/2*cos(2*x)

>> f=simple(y) f =

1-cos(2*x)

2.练习课后习题2第1题,说出以下四条指令产生的结果各属于哪种数据类型,是“双精度”对象,还是“符号”对象?体验符号常量和符号数字区别。

3/7+0.1;sym(3/7+0.1);vpa(sym(3/7+0.1));vpa(sym(3/7+0.1),4)

练习时,可使用class、whos、isa函数检验。下图为不同类型之间的转换。以数值矩阵A=[1/3,2.5;1/0.7,2/5]为例,进行符号矩阵和数值矩阵之间转换。

数值型 符号结

vpa

double

数值

str2num vpa

符号常数 符号量(表达式)

sym double

char

sym

str2double

字符串(表达式) double

int2str num2str mat2str

char ASCII

3.编写程序,求解sin(x)/x趋于0时的极限。 limit(f,x,0)

ans = 1

4.编写程序求解下面的微分方程

y''(t)?5*y'(t)?6*y(t)?f(t),y'(0)??1,y(0)?2,f(t)?3*sin(t)?2*t。2.4 dsolve('D2y-5*Dy+6*y=3*sin(t)+2*t','Dy(0)=-1','y(0)=2') 5.已知方程组x+y+z=1,x-y+z=2,2x-y-z=1,编写程序求解符号方程组2.6。 [x,y,z]=solve('x+y+z=1','x-y+z=2','2*x-y-z=1')

6.编写程序求解习题2第6题,求函数f(k)的Z变换。

k?0?a对函数f(k)??,当a为正实数时,求

k?0k?0?0symsum。实际上,这就是根据定义求Z变换问题。)

syms k z clear >> f=(a^k)*z^(-k) f =

(37/70)^k*z^(-k)

>> s=symsum(f,k,0,inf) s =

70*z/(-37+70*z)

k??f(k)z?k。(提示:

三、实验报告要求

实验报告要求采用标准报告纸手工书写。报告不要求写出全部程序,只需要

能体现中心思想的几条程序即可。

本次实验报告主要体现的内容有: 1.写出实验任务1到6的结果。

2.说明符号编程求解问题的步骤,可以上面的题目为例。

3.符号计算如何定义符号变量,符号表达式中如何认定符号变量。 4.你自己还进行了哪些练习?掌握了符号计算的哪些技巧?