本质区别

两者的根本区别是 : 数值计算的表达式、矩阵变量中不允许有未定义的自由变量 , 而符号计算可以含有未定义的符号变量。对于一般的程序设计软件如 C, C + + 等语言实现数值计算还可以 , 但是实现符号计算并不是一件容易的事。而 Matlab 自带有符号工具箱 Symbolic Math Tooibox , 而且可以借助数学软件 Maple, 所以 Matlab 也具有强大的符号运算功能。

一、 字符串的定义

MATLAB 用单引号来定义字符串。例如在指令窗口输入:A= ’hello, this is a string’ ,则会输出 A=hello, this is a string

二、 定义符号变量与符号表达式

在 MATLAB 指令窗口,输入的数值变量必须提前赋值,否则会提示出错。只有符号变量可以在没有提前赋值的情况下合法地出现在表达式中,但是符号变量必须预先定义。

在 Matlab 的数据类型中 , 字符型与符号型是两种重要而又容易混淆的数据类型。

符号变量是利用指令 sym 和 syms 来创建 .

它们的使用格式为 :

S = sym( ′ A ′ ) 定义单个符号变量 S

syms a b c 定义多个符号变量 a, b, c

syms 命令的使用要比 sym 简便 , 它一次可以定义多个符号变量 , 而且格式简练。因此一般用 syms 来创建符号变量。注意各符号变量之间必须是空格隔开。

语句 Syms x y z w

表示将 x,y,z 和 w 定义为符号变量。如果再输入: p=sin(x)+cos+z+2​w, 是执行后 P 就表示表达式 sin(x)+cos(x)+z+2​w

三、 将数值表达式转换为符号表达式

命令 sym 可将数值表达式转成符号表达式,其语法为:

Sym(‘ 数值表达式 ’)


PS:公众号「让我遇见相似的灵魂」,回复关键字获取数十本程序员经典电子书。

左手代码,右手吉他,这就是天下:如果有一天我遇见相似的灵魂 那它肯定是步履艰难 不被理解 喜黑怕光的。如果可以的话 让我触摸一下吧
它也一样孤独得太久。 不一样的文艺青年,不一样的程序猿。
qq群:
白话解说,半分钟就懂 ---建模Matlab中符号运算和数值运算的区别?_赋值白话解说,半分钟就懂 ---建模Matlab中符号运算和数值运算的区别?_符号表_02