matlab符号解与数值解差别,matlab中数值运算与符号运算有何异同

2021-01-21 20:47:19 字数 3947 阅读 5827

1楼:匿名用户

符号解(准确的叫法是解析解)是准确解,如果方程都能有解析解当然愿意用它。但事实上很多常微分方程是没有解析解的,因此只能能过数值的方法去解决。

matlab的数值解的准确性和你的问题以及所用的方法相关,这涉及些数值解的原理,可以看下《数值分析》方面的书集。

总体来说,如果问题不是很麻烦,算法选用得当,matlab的求解精度是很可靠的。

matlab中数值运算与符号运算有何异同

2楼:泪之梦幻

数学计算有数值计算与符号计算之分。这两者的根本区别是 : 数值计算的表达式、矩阵变量中不允许有未定义的自由变量 , 而符号计算可以含有未定义的符号变量。

对于一般的程序设计软件如 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(‘ 数值表达式 ’)

例如,在指令窗口输入:

p=sym(‘2+sqrt(5)’)

则得到输出:

p=2+sqrt(5) ,此时p是一个符号表达式,而不是一个数值表达式。

四、 计算符号表达式的值

如果要计算前面的符号表达式p的值,则需要用 eval_r(p) 来计算p的近似值。即可输入:

eval_r(p)

得到输出: ans=4.2361

由于 p=sym(‘2+sqrt(5)’) 实际上是一个符号常数,所以也可以用 vpa 命令计算。

五、数值变量、符号变量、字符变量的相互转化

数值变量、符号变量、字符变量的相互转化在 matlab 工作空间中 , 数值、符号和字符是 3 种主要的数据类型。

matlab 可以利用命令来实现不同类型数据间的转换。

3楼:匿名用户

数值运算:求出具体的数值,不含符号。(如解方程,求出未知数=1.565656 ,不是未知数=ab+c)

符号运算:结果用符号表示。

许多问题,只有数值解,没有符号解。

4楼:匿名用户

没觉得有什么值得注意的啊

只不过matlab有计算符号的功能吧,可以自动合并同类项,化简式子什么的。

别的软件没这样的。

大家好matlab中符号运算和数值运算的区别是什么

5楼:shine戚七七

两者的根本区别是 : 数值计算的表达式、矩阵变量中不允许有未定义的自由变量 , 而符号计算可以含有未定义的符号变量。对于一般的程序设计软件如 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(‘ 数值表达式 ’)

例如,在指令窗口输入:

p=sym(‘2+sqrt(5)’)

则得到输出:

p=2+sqrt(5) ,此时p是一个符号表达式,而不是一个数值表达式。

四、 计算符号表达式的值

如果要计算前面的符号表达式p的值,则需要用 eval_r(p) 来计算p的近似值。即可输入:

eval_r(p)

得到输出: ans=4.2361

由于 p=sym(‘2+sqrt(5)’) 实际上是一个符号常数,所以也可以用 vpa 命令计算。

五、数值变量、符号变量、字符变量的相互转化

数值变量、符号变量、字符变量的相互转化在 matlab 工作空间中 , 数值、符号和字符是 3 种主要的数据类型。

matlab 可以利用命令来实现不同类型数据间的转换。

6楼:刺忌辗

符号计算 存放的是精确数据,耗存储空间 ,运行速度慢,但结果精度高; 数值计算则是以一定精度来计算的,计算结果有误差,但是运行速度快。

7楼:匿名用户

概念其实没那么复杂。

一般性讲,数学计算包括数值计算(numerical calculation)和符号计算(symbolic calculation)。数值计算针对的是实际的数字,符号计算中包含数学符号,你也可以把符号计算理解为符号表达式及其推导,例如:

数值计算(numerical calculation):3x7+8x9-9x9 最后结果是12

符号计算(symbolic calculation):8x+3x-7x+666 最后结果是666+4x

matlab中数值计算和符号计算的区别,比如在解线性方程组的时候? 20

8楼:匿名用户

在matlab中,数值计算直接输入你的命令,matlab会给出相应的数值结果。而符号计算需要事先定义符号,用syms命令,计算后结果为符号公式。

9楼:端奕琛斯昭

数值计算时matlab的优势所在,大部分工程问题也只能得到数值解符合运算

即解析运算

得到解析式子

例如:傅里叶变换

fourier

是符号运算

fft是数值运算

大家好!matlab中符号运算和数值运算的区别是什么

1楼 戢安艾融雪 符号计算 存放的是 精确数据 ,耗存储空间 ,运行速度 慢,但结果精度高 数值计算则是以一定精度来计算的,计算结果有误差,但是运行速度快。 大家好matlab中符号运算和数值运算的区别是什么 2楼 shine戚七七 两者的根本区别是 数值计算的表达式 矩阵变量中不允许有未定义的自由...