好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > Python 如何解決稀疏矩陣運算

Python 如何解決稀疏矩陣運算

熱門標簽:天津電話機器人公司 電銷機器人的風險 手機網頁嵌入地圖標注位置 開封自動外呼系統怎么收費 400電話辦理哪種 地圖標注線上如何操作 應電話機器人打電話違法嗎 開封語音外呼系統代理商 河北防封卡電銷卡

用Python求解微分線性方程

因為之前用matlab也編寫過,所以前不久試著用python寫,感覺之間互通點也蠻多的,易理解。

題目:稀疏線性方程組的求解方法

簡單的方程如: AX=b

其中

python有很多功能庫,這些庫對于編程很有幫助,可以在pycharm的Project Interpreter導入庫,例如numpy、os、scipy等比較基礎的庫,

下面是用來求解的代碼:

import numpy as np
from scipy import linalg
import os
#輸入矩陣維數
print("你好,這里是計算稀疏矩陣線性方程組的地方,非誠勿擾!")
dism_num = input("你的A矩陣維數是:")
dism_num = int(dism_num)
print("接下來請你依次輸入矩陣的行向量(注意只能輸入英文逗號,):")
A =[]
#X =[]
for i in range(1,dism_num+1):
    a=input("第"+str(i)+"行向量是:")
    alist = a.split(",")
    alist = [int(alist[j]) for j in range(len(alist))]
    A.append(alist)
print("你所輸入的矩陣行向量是:")
print(A)
#記錄輸入的X矩陣

#輸入向量b
print("輸入b向量")
b = input("b向量是:")
b_list = b.split(",")
b_list = [int(b_list[j]) for j in range(len(b_list))]
print("你輸入的b向量是:")
print(b_list)
#記錄b向量

#詢問是否計算單個答案(單元素)
ask = input("是否只需求解單個值:(是或否)")
while(True):
    if ask == '是':
        ask_a = 'T'
        ask_num = input("請繼續輸入你所需要的答案序號:")
        ask_num = int(ask_num)
        if ask_num=dism_num and ask_num>0:
            print("OK,馬上幫你計算")
            break
        else:
            print("輸入的值超出矩陣維數,請重新輸入:")
    if ask == '否':
        ask_a = 'F'
        break
#詢問完成,只有當用戶輸入正確的序號才可以進行計算,否則重新詢問

#開始計算x向量了
A = np.array(A)
b = np.array(b_list)
x = linalg.solve(A,b)
print("計算的結果的:")
if ask_a == 'F':
    print(x)
if ask_a =='T':
    print(x[ask_num-1])
#計算完x向量了

os.system("pause")
#用于py文件結束玩暫停顯示結果

其基本流程如圖:

運行結果如下:

補充:python 多線程稀疏矩陣乘法

看代碼吧~

import threading, time
import numpy as np
res = []
class MyThread(threading.Thread):
    def __init__(self,i,j,m1,m2):
        threading.Thread.__init__(self)
        self.x, self.y = i,j
        self.m1, self.m2 = m1, m2
    def run(self):
        global res, lock
        if lock.acquire():
            m1 = self.m1[self.m1[:,0]==self.x]
            m2 = self.m2[self.m2[:,1]==self.y]
            value = 0.
            for item1 in m1:
                for item2 in m2:
                    if item1[1] == item2[0]:
                        value += item1[2]*item2[2]
            res.append([self.x,self.y,value])
            lock.release()
if "__main__" == __name__:
    m1 = [[2,2],[0,0,1],[0,1,2],[1,0,3],[1,1,4]]
    m2 = [[2,3],[0,0,2],[0,2,1],[1,2,3],[1,1,4]]
    s1, s2 = m1[0], m2[0]
    assert s1[1]==s2[0], 'mismatch'
    m1_value = np.array(m1[1:])
    m2_value = np.array(m2[1:])
    rows, cols = s1[0], s2[1]
    res.append([rows, cols])
    ThreadList = []
    lock = threading.Lock()
    for i in range(rows):
        for j in range(cols):
            t = MyThread(i,j,m1_value,m2_value)
            ThreadList.append(t)
    for t in ThreadList:
        t.start()
    for t in ThreadList:
        t.join()
    print (res)

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • Numpy實現矩陣運算及線性代數應用
  • Python numpy大矩陣運算內存不足如何解決
  • Python常用庫Numpy進行矩陣運算詳解
  • unity實現貼圖矩陣運算(旋轉平移縮放)
  • python如何進行矩陣運算
  • python矩陣運算,轉置,逆運算,共軛矩陣實例
  • Tensorflow矩陣運算實例(矩陣相乘,點乘,行/列累加)
  • C語言實現矩陣運算案例詳解

標簽:六盤水 宿遷 常州 成都 山東 駐馬店 江蘇 蘭州

巨人網絡通訊聲明:本文標題《Python 如何解決稀疏矩陣運算》,本文關鍵詞  Python,如何,解決,稀疏,矩陣,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Python 如何解決稀疏矩陣運算》相關的同類信息!
  • 本頁收集關于Python 如何解決稀疏矩陣運算的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 厨房裸体艳妇在线播放| 精美日产MV二线三线| 无码人妻精品一区二区在线看| 爽灬爽灬爽灬高潮无码视频直播| 国产在线高清理伦片a电影| 日本免费高清一区| 婷婷四房综合激情五月性色| 久91人人槡人妻人人玩老熟女| 宅男噜噜噜66一区二区| 曰批视频免费40分钟动| 张柏芝全套94张未删减版| 免费无码婬片A片AAA毛片96| 肥东县| 两性午夜性刺激在线观看免费| 国产黃色A片野外露出| 亚洲处女破处| 日本三级和搜子同居的日子2| 西游淫记| 日本又白又嫩水又多毛片 | 狠狠cao日日穞夜夜穞| 亲密爱人完整在线观看| 免费AV午夜好紧好爽视频| 无人区在线高清免费版| 免费二级毛片免费完整视频| 久久99电影| 麻豆精品国产一二三产区风险| 秋霞午夜视频在线观看| 一边捏奶一边做啪啪| 免费观看欧美成人AA片爱我多深| 全黄h全肉边做边吃奶在线观看| 娇妻h乳尖汁水| 欧美成人免费一级人片| 免费A级毛片黄A片高清在线播放| 青青久久国产成人黑桃a| 言情肉文| 白丝袜美女羞羞漫画| 成人午夜啪免费视频在线观看软件| 91丨九色丨熟女??在线| 美女扒开尿口的动态图表情包| 国产毛片久久国产| 性生交大片免费观看3D|