【概覽】用北太天元實現(xiàn)《數(shù)值分析》的算法
在視頻合集?pku_lyx的個人空間_嗶哩嗶哩_bilibili?中,我用北太天元(一款通用型科學計算軟件)實現(xiàn)了《數(shù)值分析》(張平文 李鐵軍著,北京大學出版社)中一些典型的數(shù)值方法。
通用型科學計算軟件中最常用的是MATLAB,這類軟件在工程中有非常重要的應用。長期以來,這類軟件的市場由國外公司壟斷,如 MATLAB。因此,我國科學家正在研發(fā)一款國產(chǎn)的、具有自主知識產(chǎn)權(quán)的通用型科學計算軟件——北太天元數(shù)值計算通用軟件,其目標是可以完全替代MATLAB的功能。更多的相關(guān)討論可以參考盧朓老師的專欄?科學計算軟件的分類 - 嗶哩嗶哩 (bilibili.com)。
關(guān)于《數(shù)值分析》這本書,我從每章選擇了一個問題進行研究:

其中的每個問題,都有一期視頻演示如何用北太天元求解問題并展示結(jié)果。表格最右一列給出了編程過程利用的北太天元的重要功能。
help(幫助命令):在命令行中輸入"help xx",可以查看xx的使用幫助(xx是內(nèi)置函數(shù))。
向量化:編程過程中一個重要的加速技巧。文末附了一段代碼(可在北太天元或MATLAB運行),展示了向量化的速度優(yōu)勢。
更多功能和使用技巧的介紹可以參見盧朓老師的專欄文章?北太天元數(shù)值計算通用軟件的幾個小知識點和用法小技巧 - 嗶哩嗶哩 (bilibili.com)?。
附:一個.m腳本,計算1,2,......,100000的平方,分別用循環(huán)計算和向量化計算,比較計時結(jié)果。

clear; clc;
%循環(huán)計算
tic;
a=zeros(1,100000);
for i=1:100000
a(i)=i^2;
end
t1=toc;
%向量化計算
tic;
b=(1:100000).^2;
t2=toc;
fprintf("循環(huán)計算耗時%g秒,向量化計算耗時%g秒\n", t1, t2);
