快使用Ctrl+D收藏本站!本站早已不再维护,择期将关闭本站!!本站资源已全部失效,请勿打赏!!PLC培训创业官网 苏州实操派科技-点击访问-

MATLAB自学笔记(十九):符号对象和符号表达式

matlab仿真 파충충好气气 12407℃ 0评论

一、MATLAB符号计算概述

MATLAB符号计算是通过集成在MATLAB中的符号数学工具箱(Symbolic Math Toolbox)来实现的

这个工具箱是建立在Maple基础上,当进行MATLAB符号运算时,他就会请求Maple软件去计算并将结果返回给MATLAB

其主要功能包括

  • 符号表达式的计算与复合、化简
  • 符号矩阵的运算
  • 符号微积分
  • 符号函数画图
  • 符号代数方程求解
  • 符号微分方程求解
  • 支持符号运算并返回指定的精度结果

二、符号对象和符号表达式

符号数学工具箱中定义了一个新的数据类型,叫做sym类

sym类的实例就是符号对象,它是一种数据结构,可以用来存储代表符号的字符串的复杂数据结构

符号表达式是符号变量或常量的组合,在某些情况下,符号变量和符号常量也可以被认为是符号表达式,其创建方式仍是使用函数sym

1.符号对象的创建命令

作为符号对象的符号常量、符号变量、符号函数及符号表达式,可以使用函数命令sym()、syms()规定和创建,利用class()函数可以测试建立的操作对象为何种操作对象类型

1.函数命令sym()

  • variable = sym(A, flag)
  • S = sym(‘A’, flag)

命令公式是由A来创建一个符号对象varable,其类型为sym。若A(不带单引号)是一个数字、数值矩阵或数学表达式,则输出结果是将数值结果对象转换成的符号对象。若A(带单引号)是一个字符串,输出结果则是将字符串转换成的符号对象

flag为转换符号对象的格式

A不带引号时

  • d:最接近的十进制浮点精确表示
  • e:带(数值计算时)估计误差的有理表示
  • f:十六进制浮点表示
  • r:为默认值时,最接近有理表示的形式

A带引号时

  • positive:限定A为正的符号变量类型
  • real:限定A为实型符号变量类型

2.函数命令syms()

  • syms a b c flag

该命令可以建立3个或多个符号变量。flag同上

2.符号对象的创建

1.创建符号常量

2.创建符号变量

3.创建符号表达式

符号表示式分为两类:不带等号的称为符号函数,带等号的称为符号方程

警告内容为:在将来的版本中,将删除无效变量名或定义数字的字符串的支持。要创建符号表达式,首先创建符号变量,然后在它们上使用操作。

4.创建符号矩阵

注意,此处MATLAB不会自动补全矩阵,例子中的0元素需要手动输入,不输入则会报错

3.符号计算中的运算符与函数

与数值计算中作用相同

1.算术运算符号

+、 -、 *、 /、 \、 ^

.* 、 ./ 、 .\ 、 .^

‘        .’

2.关系运算符

==

~=

3.指数、对数函数

sqrt、 exp、 expm

log2、 log10

4.三角函数、双曲函数及其反函数

除atan2函数只能用于数值计算之外,其他的三角函数、双曲函数及其反函数都可用,且用法、作用一致

5.复数函数

共轭(conj)、实部(real)、虚部(imag)、模(abs),与数值计算一致

6.矩阵代数函数

符号计算中,常用的矩阵代数函数有:diag、 triu、 tril、 inv、 det、 rank、 rref、 null、 colspace、 poly、 expm、 eig、 svd

除svd函数之外,其余函数与数值计算一致

4.符号表达式的变量确定

findsym函数可以帮助用户查找一个符号表达式中的符号变量

  • findsym(S)
  • findsym(S, N)

 

返回符号表达式中所有符号变量;N为需要返回符号变量的个数,其返回顺序符合定义顺序

警告内容:FIFSEM将在将来的版本中被删除。用SimVar代替。

5.符号精度计算

符号计算的显著特点是:由于计算过程中不会出现舍入误差,因此可以得到任意精度的数值解

若需要得到精确结果,需要牺牲计算时间与储存空间,用符号计算来获得足够高的计算精度

  • digits(d):调用该函数后的近似解的精度变成d位有效数字。d默认值为32位
  • vpa(A,d):求符号解A的近似值,该近似解的有效位数由d决定
  • double(A):把符号矩阵或任意精度表示的矩阵A转换为双精度矩阵

 

 

转载请注明:燕骏博客 » MATLAB自学笔记(十九):符号对象和符号表达式

赞赏作者

微信赞赏支付宝赞赏

喜欢 (1)or分享 (0)

如果您喜欢本站文章,感觉本站的资源对您有帮助,请狠狠点击下面

每累计赞助40元,即可让本站按最低配置运行一个月,感谢您的支持!

发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址