Python解決線性代數(shù)問題之矩陣的初等變換方法
更新時間:2018年12月12日 09:11:47 作者:body_builder
今天小編就為大家分享一篇Python解決線性代數(shù)問題之矩陣的初等變換方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
定義一個矩陣初等行變換的類
class rowTransformation(): array = ([[],[]]) def __init__(self,array): self.array = array def __mul__(self, other): pass # 交換矩陣的兩行 def exchange_two_lines(self,x,y): a = self.array[x-1:x].copy() self.array[x-1:x] = self.array[y-1:y] self.array[y-1:y] = a return self.array # 以k不等于0乘以矩陣中的某x行 def multiply(k,x,self): self.array[x-1:x] = k*self.array[x-1:x] return self.array # 把x行所有元的k倍加到另y行上去 def k_mul_arr_add_arr(self,k,x,y): self.array[y-1:y] += k*self.array[x-1:x] return self.array
定義一個初等列變換的類
# 封裝一個初等列變換類 class colTransformation(): array = ([[],[]]) def __init__(self, array): self.array = array def __mul__(self, other): pass # 交換矩陣的兩列 def exchange_two_lines(self, x, y): a = self.array[:, x-1:x].copy() self.array[:, x-1:x] = self.array[:, y-1:y] self.array[:, y-1:y] = a return self.array # 以k不等于0乘以矩陣中的某x列 def multiply(self, k, x): self.array[:, x-1:x] = k*self.array[:, x-1:x] return self.array # 把x列所有元的k倍加到另y列上去 def k_mul_arr_add_arr(self, k, x, y): self.array[:, y-1:y] += k*self.array[:, x-1:x] return self.array
求矩陣的秩
b = np.array([[2,-1,-1,1,2],[1,1,-2,1,4],[4,-6,2,-2,4],[3,6,-9,7,9]]) a = np.linalg.matrix_rank(b) print(a) 3
求非齊次線性方程組的解
以上這篇Python解決線性代數(shù)問題之矩陣的初等變換方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
python anaconda 安裝 環(huán)境變量 升級 以及特殊庫安裝的方法
下面小編就為大家?guī)硪黄猵ython anaconda 安裝 環(huán)境變量 升級 以及特殊庫安裝的方法。2017-06-06
python+selenium+Chrome options參數(shù)的使用
這篇文章主要介紹了python+selenium+Chrome options參數(shù)的使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-03-03
解決Jupyter Notebook “signal only works&nb
這篇文章主要介紹了解決Jupyter Notebook “signal only works in main thread“問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-01-01
pytorch中節(jié)約顯卡內(nèi)存的方法和技巧
顯存不足是很多人感到頭疼的問題,畢竟能擁有大量顯存的實驗室還是少數(shù),而現(xiàn)在的模型已經(jīng)越跑越大,模型參數(shù)量和數(shù)據(jù)集也越來越大,所以這篇文章給大家總結(jié)了一些pytorch中節(jié)約顯卡內(nèi)存的方法和技巧,需要的朋友可以參考下2023-11-11

