matlab中數值運算與符號運算有何異同

2021-03-05 16:46:26 字數 3980 閱讀 3024

1樓:淚之夢幻

數學計算有數值計算與符號計算之分。這兩者的根本區別是 : 數值計算的表示式、矩陣變數中不允許有未定義的自由變數 , 而符號計算可以含有未定義的符號變數。

對於一般的程式設計軟體如 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 可以利用命令來實現不同型別資料間的轉換。

2樓:匿名使用者

數值運算:求出具體的數值,不含符號。(如解方程,求出未知數=1.565656 ,不是未知數=ab+c)

符號運算:結果用符號表示。

許多問題,只有數值解,沒有符號解。

3樓:匿名使用者

沒覺得有什麼值得注意的啊

只不過matlab有計算符號的功能吧,可以自動合併同類項,化簡式子什麼的。

別的軟體沒這樣的。

matlab中符號運算和數值運算的區別是什麼?

4樓: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 可以利用命令來實現不同型別資料間的轉換。

大家好!matlab中符號運算和數值運算的區別是什麼?

5樓:戢安艾融雪

符號計算

存放的是

精確資料

,耗儲存空間

,執行速度

慢,但結果精度高;

數值計算則是以一定精度來計算的,計算結果有誤差,但是執行速度快。

問個小問題,matlab 數值計算和符號計算有什麼根本的區別啊?

6樓:匿名使用者

數值計算時matlab的優勢所在,大部分工程問題也只能得到數值解符合運算 即解析運算 得到解析式子

例如:傅利葉變換

fourier 是符號運算

fft 是數值運算

matlab中數值計算和符號計算的區別,比如在解線性方程組的時候? 20

7樓:匿名使用者

在matlab中,數值計算直接輸入你的命令,matlab會給出相應的數值結果。而符號計算需要事先定義符號,用syms命令,計算後結果為符號公式。

8樓:端奕琛斯昭

數值計算時matlab的優勢所在,大部分工程問題也只能得到數值解符合運算

即解析運算

得到解析式子

例如:傅利葉變換

fourier

是符號運算

fft是數值運算

matlab符號運算的意義何在?在哪些領域有很大的意義?

9樓:匿名使用者

符號運算是與數來值運算源相對於的一種運算bai。符號運算的du

輸入(自變數)和結果(

zhi因變數)都是用無數dao值的符號表示,這樣可以得到精確的符號解,由此特點,它在解決那些你簡單的沒有大量資料的或是無法得到輸入的資料的問題有著數值運算無法完成的作用,意義重大啊。它在解決理論數學領域作用很大,像微積分,方程求解,各種變換,函式繪圖,複數方面都是符號運算的地盤。

matlab中常微分方程符號解和數值解區別

dsolve x 2 d2y 4 x dy 2 y 0 y 1 2 dy 1 3 x ans x 1 x 2 數值的方法 結果是一列向量 令y1 y,y2 y1 y 把原方程轉化成微分方程組 y1 y2 y2 2y 4 y y 1 x1 0 x2 0 0,0 根據上述一階微分方程組編寫m函式檔案my...

小數混合運算的運算順序與整數混合運算的運算順序沒有小括號的,要先算再算有小括號的

小數混合運算的運算順序與整數混合運算的運算順序 相同 沒有小括號的,要先算 乘除 再算 加減 有小括號的要先算 括號 裡的。小括號,乘除,加減,小括號 相同 除數 加減 小括號。整數混合運算法則 整數四則混合運算的運算法則 在沒有括號的算式 裡,如果只有加減法或者只有乘除法,要從左往右依次計算。在沒...

matlab中的相關運算xcorr的用法

lags就是訊號的延時或者 超前啊,兩個訊號的相關 性是相對於一定超前和滯後而言的 內。相關算容法就是用移位相乘來體現訊號之間的相似度,這裡包括幅值和頻率。你看看幫助裡面的例子 x 1,2i,3 y 4,5,6 c1,lags xcorr x,y 很清楚了 lags就是訊號抄的延時或者超前啊 bai...