MATLAB|利用符號計算的公式求解函數(shù)值

1. 問題描述

研究工作中,往往需要利用MATLAB的符號計算功能輔助推導(dǎo)公式。完成公式推導(dǎo)之后,往往需要利用推導(dǎo)出的公式做數(shù)值計算。

2. 技術(shù)背景

一個典型的MATLAB符號計算示例如下:

syms x
y = sin(2*x);                             % 原函數(shù)
y1 = diff(y,x,1);                         % 一階導(dǎo)數(shù)
y1

運行結(jié)構(gòu)如下:

y1 =
 
2*cos(2*x)

欲求解導(dǎo)數(shù)y1,在x1 = [1 2 3 4 5]處的數(shù)值。

此處,雖然求出了導(dǎo)數(shù),但無法直接用于數(shù)值計算。因為所有變量均為符號變量,不同于數(shù)值變量。

3. 解決方案

  • 將數(shù)值(向量、矩陣)代入符號函數(shù)
    采用subs變量替換函數(shù):
x1 = [1 2 3 4 5]
temp = subs(y1,x,x1)

得到:

temp =
 
[ 2*cos(2), 2*cos(4), 2*cos(6), 2*cos(8), 2*cos(10)]
  • 將temp的符號變量轉(zhuǎn)換為double數(shù)值
temp2 = double(temp)

得到數(shù)值:

temp2 =

   -0.8323   -1.3073    1.9203   -0.2910   -1.6781

4. 實施示例

5. 常見問題

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容