实验四 MATLAB符号运算

合集下载

MATLAB实验报告(1-4)

MATLAB实验报告(1-4)

信号与系统MATLAB第一次实验报告一、实验目的1.熟悉MATLAB软件并会简单的使用运算和简单二维图的绘制。

2.学会运用MATLAB表示常用连续时间信号的方法3.观察并熟悉一些信号的波形和特性。

4.学会运用MATLAB进行连续信号时移、反折和尺度变换。

5.学会运用MATLAB进行连续时间微分、积分运算。

6.学会运用MATLAB进行连续信号相加、相乘运算。

7.学会运用MATLAB进行连续信号的奇偶分解。

二、实验任务将实验书中的例题和解析看懂,并在MATLAB软件中练习例题,最终将作业完成。

三、实验内容1.MATLAB软件基本运算入门。

1). MATLAB软件的数值计算:算数运算向量运算:1.向量元素要用”[ ]”括起来,元素之间可用空格、逗号分隔生成行向量,用分号分隔生成列向量。

2.x=x0:step:xn.其中x0位初始值,step表示步长或者增量,xn 为结束值。

矩阵运算:1.矩阵”[ ]”括起来;矩阵每一行的各个元素必须用”,”或者空格分开;矩阵的不同行之间必须用分号”;”或者ENTER分开。

2.矩阵的加法或者减法运算是将矩阵的对应元素分别进行加法或者减法的运算。

3.常用的点运算包括”.*”、”./”、”.\”、”.^”等等。

举例:计算一个函数并绘制出在对应区间上对应的值。

2).MATLAB软件的符号运算:定义符号变量的语句格式为”syms 变量名”2.MATLAB软件简单二维图形绘制1).函数y=f(x)关于变量x的曲线绘制用语:>>plot(x,y)2).输出多个图像表顺序:例如m和n表示在一个窗口中显示m行n列个图像,p表示第p个区域,表达为subplot(mnp)或者subplot(m,n,p)3).表示输出表格横轴纵轴表达范围:axis([xmax,xmin,ymax,ymin])4).标上横轴纵轴的字母:xlabel(‘x’),ylabel(‘y’)5).命名图像就在subplot写在同一行或者在下一个subplot前:title(‘……’)6).输出:grid on举例1:举例2:3.matlab程序流程控制1).for循环:for循环变量=初值:增量:终值循环体End2).while循环结构:while 逻辑表达式循环体End3).If分支:(单分支表达式)if 逻辑表达式程序模块End(多分支结构的语法格式)if 逻辑表达式1程序模块1Else if 逻辑表达式2程序模块2…else 程序模块nEnd4).switch分支结构Switch 表达式Case 常量1程序模块1Case 常量2程序模块2……Otherwise 程序模块nEnd4.典型信号的MATLAB表示1).实指数信号:y=k*exp(a*t)举例:2).正弦信号:y=k*sin(w*t+phi)3).复指数信号:举例:4).抽样信号5).矩形脉冲信号:y=square(t,DUTY) (width默认为1)6).三角波脉冲信号:y=tripuls(t,width,skew)(skew的取值在-1~+1之间,若skew取值为0则对称)周期三角波信号或锯齿波:Y=sawtooth(t,width)5.单位阶跃信号的MATLAB表示6.信号的时移、反折和尺度变换:Xl=fliplr(x)实现信号的反折7.连续时间信号的微分和积分运算1).连续时间信号的微分运算:语句格式:d iff(function,’variable’,n)Function:需要进行求导运算的函数,variable:求导运算的独立变量,n:求导阶数2).连续时间信号的积分运算:语句格式:int(function,’variable’,a,b)Function:被积函数variable:积分变量a:积分下限b:积分上限(a&b默认是不定积分)8.信号的相加与相乘运算9.信号的奇偶分解四、小结这一次实验让我能够教熟悉的使用这个软件,并且能够输入简单的语句并输出相应的结果和波形图,也在一定程度上巩固了c语言的一些语法。

实验四MATLAB数值计算与符号计算

实验四MATLAB数值计算与符号计算

实验四 MATLAB数值计算与符号计算一、实验目的1.掌握数据插值和曲线拟合的方法2.掌握求数值导数和数值积分的方法3.掌握代数方程数值求解的方法4.掌握常微分方程数值求解的方法5.掌握求解优化问题的方法6.掌握求符号极限、导数和积分的方法7.掌握代数方程符号求解的方法8.掌握常微分方程符号求解的方法二、实验原理1.数据插值a) 一维数据插值 Y1=interp1(X,Y,X1,’method’)b) 二维数据插值 Z1=interp2(X,Y,Z,X1,Y1,’method’)2.曲线拟合[P,S]=polyfit(X,Y,m)3.符号对象的建立(1)符号量名=sym(符号字符串):建立单个的符号变量或常量;(2)syms arg1 arg2,…,argn:建立n个符号变量或常量。

4.基本符号运算(1)基本四则运算:+,-,*,\,^(2)分子与分母的提取:[n,d]=numden(s)(3)因式分解与展开:factor(s),expand(s)(4)化简:simplify, simple(s)5.符号函数及其应用(1)求极限:limit(f,x,a)(2)求导数:diff(f,x,a);(3)求积分:int(f,v)三、实验内容1.按下表用3次样条方法插值计算0~900范围内整数点的正弦值和0~750范围内整数点的正切值,然后用5次多项式拟合方法计算相同的函数值,并将两种计算结果进行比较。

x2=0:75;y1=sin(pi.*x1./180);y2=tan(pi.*x2./180);;a=interp1(x1,y1,45,'cublic')b=interp1(x1,y1,45,'cublic')p1=polyfit(x1,y1,5)p2=polyfit(x2,y2,5)c1=polyval(p1,x1);c2=polyval(p2,x2);subplot(2,1,1);plot(x1,c1,':o',x1,y1,'r');subplot(2,1,2);plot(x2,c2,':o',x2,y2,'r');10203040506070802.(1)求函数33()sin cos f x x x =+在点,,,6432x ππππ=的数值导数。

实验四MATLAB符号运算

实验四MATLAB符号运算

实验四MATLAB符号运算实验四MATLAB符号运算⼀、实验⽬的:1、掌握定义符号对象的⽅法;2、掌握符号表达式的运算法则以及符号矩阵运算。

3、掌握求符号函数极限及导数的⽅法。

4、掌握求符号函数定积分和不定积分的⽅法。

⼆、实验原理1、符号常量、符号变量、符号表达式的创建(1) 使⽤sym( )创建输⼊以下命令,观察Workspace 中A、B、f是什么类型的数据,占⽤多少字节的内存空间。

>>A=sym('1') %符号常量>>B=sym('x') %符号变量>>f=sym('2*x^2+3y-1') %符号表达式>>clear>>f1=sym('1+2') %有单引号,表⽰字符串>>f2=sym(1+2) %⽆单引号>>f3=sym('2*x+3')>>f4=sym(2*x+3) %为什么会出错>>x=1>>f4=sym(2*x+3)通过看MATLAB 的帮助可知,sym( )的参数可以是字符串或数值类型,⽆论是哪种类型都会⽣成符号类型数据。

(2) 使⽤syms 创建>>clear>>syms x y z %注意观察x,y,z都是什么类型的,它们的内容是什么>>x,y,z>>f1=x^2+2*x+1>>f2=exp(y)+exp(z)^2>>f3=f1+f2通过以上实验,知道⽣成符号表达式的第⼆种⽅法:由符号类型的变量经过运算(加减乘除等)得到。

⼜如:>>f1=sym('x^2+y +sin(2)')>>syms x y>>f2=x^2+y+sin(2)>>x=sym('2') , y=sym('1')>>f3=x^2+y+sin(2)>>y=sym('w')>>f4=x^2+y+sin(2)(3)符号矩阵创建>>syms a1 a2 a3 a4>>A=[a1 a2;a3 a4]>>A(1),A(3)或者>>B=sym('[ b1 b2 ;b3 b4] ')>>c1=sym('sin(x) ')>>c2=sym('x^2')>>c3=sym('3*y+z')>>c4=sym('3 ')>>C=[c1 c2; c3 c4]2、符号算术运算(1) 符号量相乘、相除符号量相乘运算和数值量相乘⼀样,分成矩阵乘和数组乘。

MATLAB实验报告(1-4)

MATLAB实验报告(1-4)

信号与系统MATLAB第一次实验报告一、实验目的1.熟悉MATLAB软件并会简单的使用运算和简单二维图的绘制。

2.学会运用MATLAB表示常用连续时间信号的方法3.观察并熟悉一些信号的波形和特性。

4.学会运用MATLAB进行连续信号时移、反折和尺度变换。

5.学会运用MATLAB进行连续时间微分、积分运算。

6.学会运用MATLAB进行连续信号相加、相乘运算。

7.学会运用MATLAB进行连续信号的奇偶分解。

二、实验任务将实验书中的例题和解析看懂,并在MATLAB软件中练习例题,最终将作业完成。

三、实验内容1.MATLAB软件基本运算入门。

1). MATLAB软件的数值计算:算数运算向量运算:1.向量元素要用”[ ]”括起来,元素之间可用空格、逗号分隔生成行向量,用分号分隔生成列向量。

2.x=x0:step:xn.其中x0位初始值,step表示步长或者增量,xn为结束值。

矩阵运算:1.矩阵”[ ]”括起来;矩阵每一行的各个元素必须用”,”或者空格分开;矩阵的不同行之间必须用分号”;”或者ENTER分开。

2.矩阵的加法或者减法运算是将矩阵的对应元素分别进行加法或者减法的运算。

3.常用的点运算包括”.*”、”./”、”.\”、”.^”等等。

举例:计算一个函数并绘制出在对应区间上对应的值。

2).MATLAB软件的符号运算:定义符号变量的语句格式为”syms 变量名”2.MATLAB软件简单二维图形绘制1).函数y=f(x)关于变量x的曲线绘制用语:>>plot(x,y)2).输出多个图像表顺序:例如m和n表示在一个窗口中显示m行n列个图像,p表示第p个区域,表达为subplot(mnp)或者subplot(m,n,p)3).表示输出表格横轴纵轴表达范围:axis([xmax,xmin,ymax,ymin])4).标上横轴纵轴的字母:xlabel(‘x’),ylabel(‘y’)5).命名图像就在subplot写在同一行或者在下一个subplot前:title(‘……’)6).输出:grid on举例1:举例2:3.matlab程序流程控制1).for循环:for循环变量=初值:增量:终值循环体End2).while循环结构:while 逻辑表达式循环体End3).If分支:(单分支表达式)if 逻辑表达式程序模块End(多分支结构的语法格式)if 逻辑表达式1程序模块1Else if 逻辑表达式2程序模块2…else 程序模块nEnd4).switch分支结构Switch 表达式Case 常量1程序模块1Case 常量2程序模块2……Otherwise 程序模块nEnd4.典型信号的MATLAB表示1).实指数信号:y=k*exp(a*t)举例:2).正弦信号:y=k*sin(w*t+phi)3).复指数信号:举例:4).抽样信号5).矩形脉冲信号:y=square(t,DUTY) (width默认为1)6).三角波脉冲信号:y=tripuls(t,width,skew)(skew的取值在-1~+1之间,若skew取值为0则对称)周期三角波信号或锯齿波:Y=sawtooth(t,width)5.单位阶跃信号的MATLAB表示6.信号的时移、反折和尺度变换:Xl=fliplr(x)实现信号的反折7.连续时间信号的微分和积分运算1).连续时间信号的微分运算:语句格式:d iff(function,’variable’,n)Function:需要进行求导运算的函数,variable:求导运算的独立变量,n:求导阶数2).连续时间信号的积分运算:语句格式:int(function,’variable’,a,b)Function:被积函数variable:积分变量a:积分下限b:积分上限(a&b默认是不定积分)8.信号的相加与相乘运算9.信号的奇偶分解四、小结这一次实验让我能够教熟悉的使用这个软件,并且能够输入简单的语句并输出相应的结果和波形图,也在一定程度上巩固了c语言的一些语法。

Matlab教学第四章 MATLAB符号运算(Symbolic)

Matlab教学第四章 MATLAB符号运算(Symbolic)

>> y=dsolve('Dy+2*x*y=x*exp(-x^2)','x') >> syms x; diff(y)+2*x*y - x*exp(-x^2)
f2=2*(u+2)
ans=14 ans=2*((a+2)+2) f3=2*x+2*y ans=6
符号矩阵
使用 sym 函数直接生成 >> A=sym('[1+x, sin(x); 5, exp(x)]') 将数值矩阵转化成符号矩阵 >> B=[2/3, sqrt(2); 5.2, log(3)]; >> C=sym(B) 符号矩阵中元素的引用和修改 >> A=sym('[1+x, sin(x); 5, exp(x)]'); >> A(1,2) % 引用 >> A(2,2)=sym('cos(x)') % 重新赋值
符号对象的基本运算
基本函数
三角函数与反三角函数、指数函数、对数函数等
sin、cos、tan、cot、sec、csc、… asin、acos、atan、acot、asec、 acsc、…
exp、log、log2、log10、sqrt abs、conj、real、imag
rank、det、inv、eig、lu、qr、svd
How 中记录的为简化过程中使用的方法。
f
2*cos(x)^2sin(x)^2
(x+1)*x*(x-1)
R
HOW
3*cos(x)^2-1 simplify
x^3-x combine(tri g)

matlab符号运算解方程

matlab符号运算解方程

matlab符号运算解方程
MATLAB是一款强大的数学计算工具,可以利用其符号运算功能方便地解方程。

符号运算是指以符号运算的形式表示数学问题,而非数值运算的计算。

具体步骤如下:
1. 在MATLAB中定义符号变量,可以使用“syms”命令。

例如,定义未知数x和y,可以输入“syms x y”。

2. 使用等于号“=”表示方程,例如“x + y = 5”。

3. 使用solve命令解方程,例如“solve(x + y = 5, x)”表示解出未知数x的值。

4. 对于多元方程组,可以使用solve命令同时解出所有未知数的值。

例如“solve(x + y = 5, 2*x + y = 7)”表示解出未知数x和y的值。

符号运算可以求出解析式解,便于进一步分析。

同时,MATLAB也可以进行数值运算,将符号解析式替换成数值代入进行计算,以得到近似解。

matlab的符号运算

matlab的符号运算

提问: sym(‘sqrt(3)’) 和 sym(sqrt(3))区别是什么?
第四章 MATLAB的符号运算
五、符号运算 2 sym函数 例如: sym(1/3,'f') sym(1/3,'e') sym(1/3,'r') sym(1/3,'d')
第四章 MATLAB的符号运算
五、符号运算 2 sym函数 例如:
第四章 MATLAB的符号运算
三、符号表达式的定义 MATLAB自变量确定原则: (1) x被视为默认的自变量。 (2)字母位置最接近x的小写字母; (。。。u,v,w,x,y,z。。。)
第四章 MATLAB的符号运算
三、符号表达式的定义 默认自变量实例
(1) sin(a*x+b*y) (2)a*x^2+b*x+c (3)1/(4+cos(t)) (4)4*x/y (5)2*a+b (6)2*i+4*j
符号表达式:包含数字、函数和变量的字符串, 不要求字符串中的变量有预先确定的值。 调用命令: sym 调用格式: f=sym(‘符号表达式’) 定义符号表达式,并将它赋值给变量f。
第四章 MATLAB的符号运算
三、符号表达式的定义
建立符号表达式有以下2种方法: (1)用sym函数建立符号表达式。 >> f=sym('a*x^2+b*x+c'); (2) 使用已经定义的符号变量组成符号表达式。 >> syms x y a b c >> f=a*x^2+b*x+c (?)利用单引号来生成符号表达式。 >> f='a*x^2+b*x+c'

实验4Matlab程序设计1

实验4Matlab程序设计1

实验4 Matlab程序设计1实验目的:1、掌握建立和执行M文件的方法;2、掌握实现选择结构的方法;3、掌握实现循环结构的方法。

实验内容:1. 从键盘输入一个4位整数,按如下规则加密后输出。

加密规则:每位数字都加上7,然后用和除以10的余数取代该数字;再把第一位与第三位交换,第二位与第四位交换。

2. 求分段函数的值。

2x +x-6, x <0且x式-3y = *x2—5x + 6 0Wxc 5 且x 式2及x 式3X2 _ X -1 其他用if语句实现,分别输出x=-5,-3,0,1,2,2.5,3,5时的y值。

3. 输入一个百分制成绩,要求输出成绩等级A、B、C、D、E,其中90~100分为A,80~89分为B,70~79分为C,60~69分为D,60分以下为E。

要求:(1)分别用if语句和swich语句实现。

(2)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。

4. 硅谷公司员工的工资计算方法如下:(1)工作时数超过120小时者,超过部分加发15% ;(2)工作时数低于60小时者,扣发700元;(3)其余按每小时84元计发。

试编程按输入的工号和该号员工的工时数,计算应发工资。

5. 设计程序,完成两位数的加、减、乘、除四则运算。

即:输入两个两位随机整数,再输入一个运算符号,做相应的运算,并显示相应的结果。

6. 建立5X 6矩阵,要求输出矩阵的第n行元素。

当n值超过矩阵的行数时,自动转为输出矩阵的最后一行元素,并给出出错信息。

7. 产生20 个两位随机整数,输出其中小于平均数的偶数。

实验代码及实验结果1.>> a=input(' 请输入一个四位整数:');请输入一个四位整数:9988>> a1=fix(a/1000);>> a2=rem(fix(a/100),10);>> a3=rem(fix(a/10),10);>> a4=rem(a,10);>> a1=rem(a1+7,10);>> a2=rem(a2+7,10);>> a3=rem(a3+7,10);>> a4=rem(a4+7,10);>> b=a1;a1=a3;a3=b;>> b=a2;a2=a4;a4=b;>> c=a1*1000+a2*100+a3*10+a4;>> disp(c)3.>> a=input C请输入一个四位整数:一); 请输人一个四f立整數:3988 »(a/1000);>> a2=ren(fix(a/100), 10);>> a3=ren(fiK(a/10)?10);>> 血(a, ID);» al=re&(al+^ 10);>> a^rsB(a2+7f 10);>> a3=rem(a3+7? 10):>> 丑"“血(M+C 10);>> b=al:a1=a3:a3=b;» b=a2:a2=a4:a4=b,» c-al *100(Hai2*l 0(H-a3*l 0+ttl;>> disp(c)55662.x=input('请输入x的值:');if x<0 & x~=-3y=x92+x-6;elseif x>=0 & x<5 & x~=2 & x~=3y=x.A2+5.*x+6elsey=x.A2-x-1;end请输入孟的値:[-瓦-亠0,1, 2t2. E f 3, 5]7 =29. 0000 IL ODDO -I. 0000 -1.0000 1. OODO 2.7500 5. QOOD(1) if语句:a=i nput('请输入成绩:');ig.ooooif a>=90 & a<=100disp('A');elseif a>=80 & a<90disp('B');elseif a>=70 & a<80disp('C');elseif a>=60 & a<70disp('D');elseif a<60 &a>=0disp('E');elsedisp('输入有误!'); end( 2) switch 语句:a=input(' 请输入成绩:'); switch fix(a/10)case{9}disp('A');case{8}disp('B');case{7}disp('C');case{6}disp('D');case nu m2cell(2:5)disp('E')otherwisedisp('输入有误!');end请输入咸绩:80E请输入咸绩;5E请输入成绩:1212输入有误I»4.n=i nput('请输入工号:’);a=i nput('请输入工作小时数:'); if a>=120 y=a*84+a*84*0.15;elseif a<120 & a>=60y=a*84;elsey=a*84-700;disp(y);end请输入工号:30请输入工作小时数:231232。

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

实验四 MATLAB 符号运算一、实验目的掌握符号变量和符号表达式的创建,掌握MATLAB 的symbol 工具箱的一些基本应用。

二、实验内容(1) 符号变量、表达式、方程及函数的表示。

(2) 符号微积分运算。

(3) 符号表达式的操作和转换。

(4) 符号微分方程求解。

三、实验步骤1. 符号运算的引入 在数值运算中如果求xx x πsin lim 0→,则可以不断地让x 接近于0,以求得表达式接近什么数,但是终究不能令0=x ,因为在数值运算中0是不能作除数的。

MATLAB 的符号运算能解决这类问题。

输入如下命令:>>f=sym('sin(pi*x)/x')>>limit(f,'x',0)>> f=sym('sin(pi*x)/x')f =sin(pi*x)/x>> limit(f,'x',0)ans =Pi2. 符号常量、符号变量、符号表达式的创建1) 使用sym( )创建输入以下命令,观察Workspace 中A 、B 、f 是什么类型的数据,占用多少字节的内存空间。

>> A=sym('1')>> B=sym('x')>> f=sym('2*x^2+3*y-1')>> clear>> f1=sym('1+2')>> f2=sym(1+2)>> f3=sym('2*x+3')>> f4=sym(2*x+3)>> x=1>> f4=sym(2*x+3)> A=sym('1')A =1>> B=sym('x')B =x>> f=sym('2*x^2+3*y-1')f =2*x^2+3*y-1>> clear>> f1=sym('1+2')f1 =1+2>> f2=sym(1+2)f2 =3>> f3=sym('2*x+3')f3 =2*x+3>> f4=sym(2*x+3)Undefined function or variable 'x'. >> x=1x =>> f4=sym(2*x+3)f4 =通过看MATLAB的帮助可知,sym( )的参数可以使字符串或数值类型,无论是哪种类型都会生成符号类型数据。

2)使用syms 创建>>syms x y z>>x,y,z>> f1=x^2+2*x+1>>f2=exp(y)+exp(z)^2>> f3=f1+f2>> clear>> syms x y z>> x,y,zx =xy =yz =z>> f1=x^2+2*x+1f1 =x^2+2*x+1>> f2=exp(y)+exp(z)^2f2 =exp(y)+exp(z)^2>> f3=f1+f2f3 =x^2+2*x+1+exp(y)+exp(z)^2通过以上实验,知道生成符号表达式的第二种方法:由符号类型的变量经过运算(加减乘除等)得到,又如:>> f1=sym('x^2+y+sin(2)')>> syms x y>> f2=x^2+y+sin(2)>> x=sym('2'),y=sym('1')>> f3=x^2+y+sin(2)>> y=sym('w')>> f4=x^2+y+sin(2)>> f1=sym('x^2+y+sin(2)')f1 =x^2+y+sin(2)>> syms x y>> f2=x^2+y+sin(2)f2 =x^2+y+4095111552621091/4503599627370496>> x=sym('2'),y=sym('1')x =2y =1>> f3=x^2+y+sin(2)f3 =26613109689473571/4503599627370496>> y=sin('w')Undefined function or method 'sin' for input arguments of type 'char'.>> y=sym('w')y =w>> f4=x^2+y+sin(2)f4 =22109510062103075/4503599627370496+w思考题:syms x 是不是相当于?)'('x sym x =理解:这两个式子是不相同的。

syms x 是定义x 为符号变量,而?)'('x sym x =是给x 赋值。

3. 符号复诊创建】>> syms a1 a2 a3 a4>> A=[a1 a2;a3 a4]>> A(1),A(3)>> syms a1 a2 a3 a4>> A=[a1 a2;a3 a4]A =[ a1, a2][ a3, a4]>> A(1),A(3)ans =a1ans =或者>> B=sym('[ b1 b2;b3 b4]') >> c1=sym('sin(x)')>> c2=sym('x^2')>> c3=sym('3*y+z')>> c4=sym('3')>> C=[c1 c2;c3 c4]>> B=sym('[ b1 b2;b3 b4]') B =[ b1, b2][ b3, b4]>> c1=sym('sin(x)')c1 =sin(x)>> c2=sym('x^2')c2 =x^2>> c3=sym('3*y+z')c3 =3*y+z>> c4=sym('3')c4 =3>> C=[c1 c2;c3 c4]C =[ sin(x), x^2][ 3*y+z, 3]练习:分别用sym 和syms 创建符号表达式:.,2sin cos 221t e y f x x f -=-+=4.符号算术运算1) 符号量相乘、相除符号量相乘运算和数值量相乘一样,分成矩阵乘和数组乘。

>> a=sym(5);b=sym(7);>> c1=a*b>> c2=a/b>> a=sym(5);B=sym([3 4 5]);>> C1=a*B,C2=a\B>> syms a b>> A=[5 a;b 3];B=[2*a b;2*b a];>> C1=A*B, C2=A.*B>> C3=A\B,C4=A./B>> a=sym(5);b=sym(7);>> c1=a*bc1 =35>> c2=a/bc2 =5/7>> a=sym(5);B=sym([3 4 5s]s]|Error: Expression or statement is incorrect--possibly unbalanced (, {, or [.>> a=sym(5);B=sym([3 4 5]);>> C1=a*B,C2=a\BC1 =[ 15, 20, 25]C2 =[ 3/5, 4/5, 1]>> syms a b>> A=[5 a;b 3];B=[2*a b;2*b a];>> C1=A*B, C2=A.*BC1 =[ 10*a+2*a*b, 5*b+a^2][ 2*a*b+6*b, b^2+3*a]C2 =[ 10*a, a*b][ 2*b^2, 3*a]>> C3=A\B,C4=A./BC3 =[ 2*a*(b-3)/(-15+a*b), (a^2-3*b)/(-15+a*b)] [ 2*b*(a-5)/(-15+a*b), -(5*a-b^2)/(-15+a*b)]C4 =[ 5/2/a, a/b][ 1/2, 3/a]2)符号数值任意精度控制和运算任意精度的VPA运算可以使用命令digits (设定默认的精度)和vpa (对指定对象以新的精度进行计算)来实现。

>> a=sym('2*sqrt(5)+pi')>> b=sym(2*sqrt(5)+pi)>> digits>> vpa(a)>> digits(15)>> vpa(a)>> c1=vpa(a,56)>> c2=vpa(b,56)>> a=sym('2*sqrt(5)+pi')a =2*sqrt(5)+pi>> b=sym(2*sqrt(5)+pi)b =8572296331135796*2^(-50)>> digitsDigits = 32>> vpa(a)ans =7.6137286085893726312809907207421>> digits(15)>> vpa(a)ans =7.61372860858937>> c1=vpa(a,56)c1 =7.6137286085893726312809907207420553550784061185981572696>> c2=vpa(b,56)c2 =7.6137286085893727261009189533069729804992675781250000000注意观察c1和c2的数据类型,c1和c2是否相等。

相关文档
最新文档