MATLAB 的符號計算原理是什麼,為什麼不能編譯為 C?

Matlab的非線性方程組求解很方便,但是想用它的編譯器把程序編譯為C的時候卻提示說不支持符號變數,因為我的方程組比較固定(就是機器人逆運動學那幾個方程組,帶三角函數了所以非線性了,方程太長求導出來5號字能寫好幾頁PPT……),所以想問一下有沒有什麼「曲線救國」的方法能夠換一下matlab的代碼讓編譯通過,省去C語言編程的痛苦

主要就是不知道如何採用C語言方便的對非線性方程組進行求解,感覺每遇到一個非線性方程組就要單獨為它編寫一個C程序,有沒有大神有相關的示例代碼以及相關的求解非線性方程組的演算法書目?


List of numerical analysis software 各種數值計算軟體

List of numerical libraries 各種數值計算庫

List of computer algebra systems 各種代數計算系統


matlab不能編譯成C的主要原因是,matlab提供了很多很牛逼的數學函數,他不想告訴你是怎麼實現的,別人也做不出來……


Matlab的符號計算用的是MuPAD,這個不是matlab自己的東西(不過現在已經被mathworks收購了)。


Numpy :}


Matlab內置了


代碼難找,麻省理工的《數值計算》可以參考部分,演算法書籍有偏微分方程數值解


推薦閱讀:

有關matlab循環怎麼改成矩陣運算?
用matlab求矩陣的最大特徵值怎麼求?AHP分析法中,最大特徵值有虛部嗎?是否可以求出所有特徵值找最大的?
matlab矩陣對角元元素修改問題?
幾億的數據讀取作圖怎樣做到速度快呢?
用matlab實現樂曲演奏的難度?在網上聽到一首用matlab編寫的卡農,求分析一下實現及難度所在?

TAG:MATLAB | C編程語言 |