本書主要介紹了數值分析的基本方法及其在醫藥數據分析中的應用。本書內容主要包括緒論、線性方程組的解法、插值方法和曲線擬合、數值積分方法、常微分方程數值解、非線性方程求解。本書還給出了大部分方法的MATLAB源程序,幫助讀者通過編寫實際程序,提高自己的模型應用能力。
本書可作為高等學校醫藥相關專業數值計算或數據分析相關課程的教材或參考書,也可作為相關專業的研究人員和工程技術人員的參考書。
專門面向醫藥數據分析的數值計算教材,融合眾多經典數學模型和豐富實例,可使讀者迅速掌握醫藥數據分析的方法。希望讀者在閱讀本書的過程中體會到MATLAB作為數據分析工具的實用性和簡便性,從而能在自己的學習工作中充分利用它作為自己研究和學習的強有力的工具。
醫學和藥學都是實踐性和理論性高度結合的學科,除了其本身的科學基礎之外,還涉及生物、化學、物理、制藥等多個門類的理論與實踐。醫藥相關專業的研究人員和工程技術人員在實際的研究和工作中會接觸到大量的臨床、實驗數據和生產數據。這些數據中隱藏的規律經常需要采用數學模型來分析和處理。在這些數據的分析和處理過程中必然要應用到復雜的數據處理、數值計算以及模型分析等知識。但由于種種原因,一方面,一般的醫藥相關工作者很難具備系統的數學知識和計算機應用能力;另一方面,許多數學和計算機專業人士雖然對數據處理和數學模型比較熟悉,但是他們卻缺乏醫藥相關的專業知識。因而,作為醫藥專業研究人員、工程技術人員和相關專業的學生,在具備制藥專業背景知識的基礎上學習和掌握數據處理、數值計算以及模型分析等相關知識,將會對自己的學習和工作帶來很大的幫助。
數值分析是研究采用計算機求解數學計算問題的方法與理論的學科,同時也是一門理論性很強、應用面很廣泛的學科。數值分析有著豐富的內容和嚴謹的體系。但是現有的教材中很少有針對醫藥數據分析編寫的數值分析內容。作者在長三角綠色制藥協同創新中心開設相關課程期間深感需要一本與醫藥數據分析相關的數值計算教材。該教材應既能簡要介紹數值計算的基本理論、基本方法,又能關注數值計算技術在醫藥相關領域的應用,同時重視計算思維和實踐能力的培養,讓學生真正能通過學習相關的理論和方法,通過程序實現理解和掌握這些方法,并直觀地、感性地體會到數學方法的有用性。在參考國內外許多優秀的數值分析和醫藥數據分析教材的基礎上,作者嘗試編寫了這本教材。作者編寫這本教材,希望達到以下幾個目標:
(1)重視基礎,淡化理論證明。考慮到本書的主要應用對象是醫藥相關專業的學生以及相關專業的研究人員和工程技術人員,因此本書在編寫的過程中盡可能略去了復雜的數學證明,側重介紹方法,盡可能講清楚基本概念和基本方法,同時在講解完方法之后給出相應的例題,并將具體的程序實現以實例的形式給出,方便讀者結合實例理解相關內容。
(2)重視應用,突出數學模型。本書是為醫藥相關專業的學生和工程技術人員介紹醫藥數據處理中涉及的相關數值計算方法,因而在編寫的過程中盡可能做到每一章都結合數學方法在醫藥相關領域找到具有代表性的應用點。通過結合醫藥數據分析中的典型問題,讀者能在學習通用數學模型的基礎上理解這些模型在醫藥數據中的廣泛應用前景。
(3)強化實踐,重視能力培養。在介紹數學方法的過程中,也重視提升學生的實踐能力培養,用大量的MATLAB程序演示程序設計的思想和過程,幫助讀者通過編寫實際程序,提高自己的模型應用能力。為了便于讀者理解相關程序,我們還在附錄中對MATLAB相關概念和語法進行了簡要的介紹。作者希望讀者在閱讀本書的過程中體會到MATLAB作為數據分析工具的實用性和簡便性,從而能在自己的學習工作中充分利用它,把它作為自己研究和學習的強有力的工具。
本書是結合作者在長三角綠色制藥協同創新中心開設相關課程的經驗,通過調研醫藥相關領域數據分析的需求,在查閱大量數值分析和醫藥、化學等文獻的基礎上編寫而成的一本面向醫藥數據分析的數值計算教材,可作為高等學校醫藥相關專業數值計算或數據分析相關課程的教材或參考書,也可作為相關專業的研究人員和工程技術人員的參考書。本書內容主要包括緒論、線性方程組的解法、插值方法和曲線擬合、數值積分方法、常微分方程數值解、非線性方程求解。每章配有習題和上機實驗題。
本書受到浙江工業大學重點教材建設項目資助。本書的編寫得到了長三角綠色制藥協同創新中心、浙江工業大學教務處和浙江工業大學計算機學院相關部門和各級領導的大力支持。在本書的編寫過程中,長三角綠色制藥協同創新中心的同學提供了許多醫藥領域的相關素材,在此向他們表示衷心的感謝!
面向數值分析的醫藥數據分析是一門理論與實踐相結合的交叉科學,相關領域的教材和專著并不多見,作者雖經多年積累,相關素材和實例仍十分有限,同時,由于作者水平有限,書中難免有疏漏和不妥之處,懇請讀者批評指正。
第1章緒論1
1.1誤差的概念1
1.2絕對誤差和相對誤差2
1.3遞推式求解法的穩定性3
1.4醫藥數據分析的發展概況6
習題一7
實驗一7
第2章線性方程組的解法8
2.1高斯消元法8
2.2列主元法11
2.3向量和矩陣的范數13
2.4雅可比迭代法14
2.5高斯·賽德爾迭代法17
2.6超松弛迭代法19
2.7線性方程組解法的實驗20
2.8線性方程組在醫藥數據分析中的應用23
習題二25
實驗二26
第3章插值方法和曲線擬合27
3.1線性插值27
3.2拋物插值29
3.3拉格朗日插值30
3.4拉格朗日插值余項33
3.5分段線性插值36
3.6曲線擬合38◆面向醫藥數據分析的數值計算及實驗教程目錄習題三44
實驗三45
第4章數值積分方法46
4.1數值積分的基本概念46
4.2梯形公式47
4.3辛普森公式48
4.4復合求積公式53
4.5代數精度56
4.6高斯積分56
習題四59
實驗四59
第5章常微分方程數值解61
5.1常微分方程理論簡介61
5.2歐拉公式求解62
5.3龍格庫塔法求解65
5.4常微分方程組的求解71
習題五74
實驗五74
第6章非線性方程求解76
6.1二分法76
6.2不動點迭代法79
6.3牛頓迭代法和割線法81
6.4Brent方法84
習題六86
實驗六86
附錄A87
A1MATLAB簡介87
A2MATLAB安裝和幫助87
A3MATLAB的基本運算88
A4數字和格式88
A5變量89
A6內置函數91
A7向量92
A8矩陣95
A9腳本文件96
A10函數文件97
A11繪圖功能98
A12邏輯100
A13循環102
參考文獻104