亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種實現(xiàn)gmres算法的方法和系統(tǒng)的制作方法

文檔序號:9326854閱讀:336來源:國知局
一種實現(xiàn)gmres算法的方法和系統(tǒng)的制作方法
【技術領域】
[0001] 本發(fā)明涉及數(shù)據(jù)處理技術,尤指一種實現(xiàn)廣義極小殘量法(GMRES,Generalized Minimal Residual)算法的方法和系統(tǒng)。
【背景技術】
[0002] 眾所周知,數(shù)學物理模型的求解是眾多工程生產(chǎn)與科研領域必不可少的工作之 一。隨著計算機的發(fā)展,有限差分(FD,F(xiàn)inite Difference)、有限元方法(FEM,F(xiàn)inite Element Method)、邊界元法(BEM,Boundary Element Method)、無網(wǎng)格方法(MM,Meshless Method)等一系列的數(shù)值計算方法相繼誕生。特別是FEM,到目前為止理論體系已經(jīng)比較完 善,并已在機械制造、材料加工、科學研究等各個領域中廣泛應用,成為工程設計中的重要 工具。這些數(shù)值計算方法具有一個相同之處:將實際問題導出的數(shù)學物理模型通過特定的 方式離散成一個線性代數(shù)方程組。除此之外,結構分析、網(wǎng)絡分析、天地測量、數(shù)據(jù)及最優(yōu)化 問題等都常遇到線性方程組的求解問題。因此,可以毫不夸張的講大部分科學與工程問題 都要歸結為一個線性方程組的求解問題。然而,隨著問題規(guī)模的增大,線性方程組的求解成 為工程生產(chǎn)和科研中的一大瓶頸。對于大規(guī)模乃至超大規(guī)模的線性方程組,求解變得十分 困難。特別當稀疏矩陣非對稱且無特定結構時,求解幾乎不可能完成。
[0003] GMRES是求解非對稱的稀疏矩陣的常用方法,也是克雷洛夫(Krylov)子空間中 經(jīng)典算法之一,它是通過Krylov子空間矢量的最小殘量來迭代求解,收斂速度快,穩(wěn)定性 好的優(yōu)點。對線性方程組Ax = b ;其中,A為系數(shù)矩陣,b為右端向量,GMRES算法的m階 Krylov 子空間為 Km= span (r。,Ar。,…,Am 1A),其中,r。= b-Ax Q,x。為 X 的初始向量,GMRES 通過求解使殘量Axm-b最小的矢量xme Km來逼近Ax = b的精確解。
[0004] 采用GMRES算法求解大規(guī)模線性方程組的基本過程大致包括:
[0005] 初始化向量X得到X。,設置誤差ε ;
[0006] 按照公式r。= b-Ax。計算r。,按照公式β = I IrtiI |2計算β ;其中,I I I I 2為2范 數(shù)。
[0007] 根據(jù)r。和A采用阿諾爾迪(Arnoldi)正交化過程計算標準正交基和上海森 伯格(Hessenberg)矩陣萬,,,
[0008] 求解yni使得
:達到最小;其中,e1= (1,0,…,0);
[0009] 按照公式Xm= X' 〇+Vmym計算xm;其中,X'。為上一次計算得到的Xm,第一次計算時取 X。,按照公式rm= b-Ax m計算r m,當I I rm I 12< ε時,xm即為Ax = b的解,當I I r m I 12彡ε 時,根據(jù)!^和A采用Arnoldi正交化過程得到新的標準正交基和新的上Hessenberg矩陣, 并繼續(xù)后續(xù)過程。
[0010] 現(xiàn)有的實現(xiàn)GMRES算法的方法大致包括:采用CPU來實現(xiàn)GMRES算法。
[0011] 現(xiàn)有的實現(xiàn)GMRES算法的方法中,由于GMRES算法的運算量比較大,而CPU運算能 力有限,因此,運算速度比較慢。

【發(fā)明內(nèi)容】

[0012] 為了解決上述問題,本發(fā)明提出了一種實現(xiàn)GMRES算法的方法和系統(tǒng),能夠提高 運算速度。
[0013] 為了達到上述目的,本發(fā)明提出了一種實現(xiàn)GMRES算法的方法,包括:
[0014] 主CPU控制主進程將線性方程組的系數(shù)矩陣和右端向量進行劃分得到系數(shù)矩陣 塊和右端向量塊;
[0015] 主CPU控制主進程將劃分得到的系數(shù)矩陣塊和右端向量塊分配給自身的各進程 和其他CPU的各進程;
[0016] 各CPU協(xié)同控制的各進程對應的眾核協(xié)處理器MIC根據(jù)分配的系數(shù)矩陣塊和右端 向量塊,采用GMRES算法進行求解獲得線性方程組的解。
[0017] 優(yōu)選地,所述主CPU控制主進程將線性方程組的系數(shù)矩陣和右端向量進行劃分得 到系數(shù)矩陣塊和右端向量塊包括:
[0018] 所述主CPU控制所述主進程將所述線性方程組的系數(shù)矩陣和所述右端向量進行 按行劃分得到所述系數(shù)矩陣塊和所述右端向量塊。
[0019] 優(yōu)選地,所述各CPU協(xié)同控制的各進程對應的MIC根據(jù)分配的系數(shù)矩陣塊和右端 向量塊,采用GMRES算法進行求解獲得線性方程組的解包括:
[0020] 各所述CPU控制各所述進程初始化所述線性方程的解,并設置誤差;
[0021] 各所述CPU控制各所述進程對應的MIC按照公式P。= b' -A' X。計算^ 。;其 中,b'為所述分配的右端向量塊,A'為所述分配的系數(shù)矩陣塊,X。為所述初始化的線性方 程組的解;
[0022] 各所述CPU協(xié)同控制的各所述進程對應的MIC根據(jù)所述分配的系數(shù)矩陣塊和 r'。,采用阿諾爾迪Arnoldi正交化過程計算標準正交基塊和上海森伯格Hessenberg矩陣 塊;
[0023] 各所述CPU控制各所述進程對應的MIC按照公式β '= I Ir'。| |2計算β ',并 將計算得到的β '發(fā)送給所述主CPU進行整合得到β ;
[0024] 各所述CPU根據(jù)所述標準正交基塊和所述上Hessenberg矩陣塊求解ym使得 I決1 -達到最??;其中,.馬為所述上Hessenberg矩陣塊;
[0025] 各所述CPU控制各所述進程對應的MIC按照公式X' m= X "mym計算X' m,將 計算得到的x'm發(fā)送給所述主CPU進行整合得到Xni;其中,x"。為上一次計算得到的x' ", t "為所述標準正交基塊;
[0026] 所述主CPU將所述Xni發(fā)送給自身的其他進程和其他CPU的各進程;
[0027] 各所述CPU控制各進程按照公式r' m= b' -A' X m計算P m,并計算I I r'm | 12,將計 算得到的I Ir'」I2發(fā)送給所述主(PU進行整合計算得到I IrnJ |2;
[0028] 所述主CPU判斷出I IrnJ |2< ε,確定Xni為所述線性方程組的解;其中,ε為設置 的誤差。
[0029] 優(yōu)選地,當所述主CPU判斷出I IrlJ |2彡ε時,所述各CPU協(xié)同控制的各進程對應 的MIC根據(jù)分配的系數(shù)矩陣塊和右端向量塊,采用GMRES算法進行求解獲得線性方程組的 解還包括:
[0030] 各所述CPU協(xié)同控制的各所述進程對應的MIC根據(jù)所述分配的系數(shù)矩陣塊和 r' m,繼續(xù)執(zhí)行采用Arnoldi正交化過程計算標準正交基和上海森伯格Hessenberg矩陣的 步驟。
[0031 ] 優(yōu)選地,所述各CPU協(xié)同控制的各進程對應的MIC根據(jù)分配的系數(shù)矩陣塊和r'。, 采用Arnoldi正交化過程計算標準正交基塊和上Hessenberg矩陣塊包括:
[0032] 各所述CPU控制各進程對應的MIC計算所述Arnoldi正交化過程中的高階矩陣向 量相乘、高階向量相減、高階向量內(nèi)積和高階向量乘積,并將計算結果返回給所述主CPU進 行整合,或進行低階矩陣向量相乘、低階向量相減、低階向量內(nèi)積和低階向量乘積、或其他 低階運算。
[0033] 本發(fā)明還提出了一種實現(xiàn)GMRES算法的系統(tǒng),至少包括:
[0034] 一個主CPU和一個或一個以上其他CPU,一個或一個以上眾核協(xié)處理器MIC ;
[0035] 其中,主CPU用于:
[0036] 控制主進程將線性方程組的系數(shù)矩陣和右端向量進行劃分得到系數(shù)矩陣塊和右 端向量塊;控制主進程將劃分得到的系數(shù)矩陣塊和右端向量塊分配給自身的各進程和其他 CHJ的各進程;
[0037] 主CPU和其他CPU用于:
[0038] 協(xié)同控制的各進程對應的眾核協(xié)處理器MIC根據(jù)分配的系數(shù)矩陣塊和右端向量 塊,采用GMRES算法進行求解獲得線性方程組的解。
[0039] 優(yōu)選地,所述主CPU和其他CPU具體用于:
[0040] 控制各所述進程初始化所述線性方程的解,并設置誤差;
[0041] 控制各所述進程對應的MIC按照公式r'。= b'-A'x。計算r'。;其中,b'為所述 分配的右端向量塊,A'為所述分配的系數(shù)矩陣塊,X。為所述初始化的線性方程的解;
[0042] 協(xié)同控制的各所述進程對應的MIC根據(jù)所述分配的系數(shù)矩陣塊和r'。,采用阿諾 爾迪Arnoldi正交化過程計算標準正交基塊和上海森伯格Hessenberg矩陣塊;
[0043] 控制各所述進程對應的MIC按照公式β ' = I |r'。| |2計算β ',并將計算得到的 β '發(fā)送給所述主CPU進行整合得到β ;
[0044] 根據(jù)所述標準正交基塊和所述上Hessenberg矩陣塊求解ym使得|私-見,兄" ^達 到最小;其中,?為所述上Hessenberg矩陣塊;
[0045] 控制各所述進程對應的MIC按照公式X'm= X" c+V' mym計算X' m,將計算得到的 X'm發(fā)送給所述主CPU進行整合得到Xni;其中,X"。為上一次計算得到的X' ",V' "為所述 標準正交基塊;
[0046] 控制各進程按照公式r'm= b'-A'X m計算^ m,并計算I I r'm | 12,將計算得到的 Ir'm| |2發(fā)送給所述主CPU進行整合計算得到I |rm| 12;
[0047] 所述主CPU還用于:
[0048] 將所述送給自身
當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1