freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

并行軟件庫(kù)介紹ppt課件(參考版)

2025-01-17 16:20本頁(yè)面
  

【正文】 } 。 CHKERRQ(ierr)。 CHKERRQ(ierr)。 CHKERRQ(ierr)。 CHKERRQ(ierr)。 CHKERRQ(ierr)。 CHKERRQ(ierr)。 CHKERRQ(ierr)。 CHKERRQ(ierr)。 ierr = VecNorm(x,NORM_2,amp。neg_one,u,x)。CHKERRQ(ierr)。 /*求解線性方程組 */ ierr = SLESSolve(sles,b,x,amp。 /*設(shè)置運(yùn)行選項(xiàng),例如 ksp_type type pc_type type ksp_monitor ksp_rtol rtol*/ ierr = SLESSetFromOptions(sles)。 ierr=KSPSetTolerances(ksp,((m+1)*(n+1)),PETSC_DEFAULT,PETSC_DEFAULT)。ksp)。 CHKERRQ(ierr)。CHKERRQ(ierr)。} /* 創(chuàng)建線性算子并設(shè)置運(yùn)行選項(xiàng) */ /*創(chuàng)建線性解法器環(huán)境和設(shè)置解算子 */ ierr = SLESCreate(PETSC_COMM_WORLD,amp。 if(flg) {ierr = VecView(u,PETSC_VIEWER_STDOUT_WORLD)。flg)。 CHKERRQ(ierr)。 CHKERRQ(ierr)。 } else{ ierr = VecSet(amp。 ierr = PetscRandomDestroy(rctx)。 ierr = VecSetRandom(rctx,u)。rctx)。 CHKERRQ(ierr)。 66 /*設(shè)置精確解和右端向量 */ ierr = PetscOptionsHasName(PETSC_NULL,random_exact_sol,amp。x)。 CHKERRQ(ierr)。 ierr =VecDuplicate(u,amp。 ierr =VecSetFromOptions(u)。 ierr =VecSetSizes(u,PETSC_DECIDE,m*n)。u)。CHKERRQ(ierr)。CHKERRQ(ierr)。CHKERRQ(ierr)。I,amp。 ierr = MatSetValues(A,1,amp。CHKERRQ(ierr)。J,amp。 ierr = MatSetValues(A,1,amp。CHKERRQ(ierr)。J,amp。 ierr = MatSetValues(A,1,amp。CHKERRQ(ierr)。J,amp。 ierr = MatSetValues(A,1,amp。CHKERRQ(ierr)。J,amp。 ierr = MatSetValues(A,1,amp。 j = I i*n。 I++) { v = 。 /*給矩陣的每個(gè)元素賦值 */ for (I=Istart。Iend)。 /*獲得局部劃分的上下界 */ ierr = MatGetOwnershipRange(A,amp。 ierr=MatSetFromOptions(A)。A)。 CHKERRQ(ierr)。 ierr =PetscOptionsGetInt(PETSC_NULL,n,amp。m,PETSC_NULL)。args, (char *)0, help)。 PetscInitialize(amp。 PetscScalar v, one = , neg_one = 。 /* 解誤差的范數(shù) */ int i, j, I, J, Istart, Iend, ierr, m = 8, n = 7, its。 /* 線性解法器 */ PetscRandom rctx。 /* 近似解,右端向量和分析解 */ Mat A。 64 /*$Id: ,v 2022/08/07 21:30:54 bsmith Exp $*/ /* 運(yùn)行方式 : mpirun np procs ex2 [help] [all PETSc options] */ static char help[] = Solves a linear system in parallel with SLES.\n\ Input parameters include: \n\ random_exact_sol : use a random exact solution vector\n\ view_exact_sol : write exact solution vector to stdout\n\ m mesh_x : number of mesh points in xdirection\n\ n mesh_n : number of mesh points in ydirection\n\n。 下面是一個(gè)典型的 PETSc 程序范例,它使用有限差分來(lái)求解二維 Laplace 問(wèn)題??傊?, PETSc 給用戶提供了豐富的算法資源和可編程環(huán)境。在這個(gè)意義上,用戶可以在 PETSc上開(kāi)發(fā)任何基于消息傳遞的應(yīng)用程序。主要包括以下幾種類型: ? 線性代數(shù)求解器,如 AMG、 BlockSolve9 DSCPACK、hypre、 ILUTP、 LUSOL、 SPAI、 SPOOLES、 SuperLU、SuperLU_Dist; ? 最優(yōu)化軟件,如 TAO、 Veltisto; ? 離散化和網(wǎng)格生成和優(yōu)化工具包,如 Overture、 SAMRAI、SUMAA3d; ? 常微分方程求解器,如 PVODE; ? 其它,如 Matlab、 ParMETIS。 PETSc為 PVODE求解器提供了接口。對(duì)于非時(shí)間演化或穩(wěn)態(tài)方程, PETSc提供了偽時(shí)間步進(jìn)積分器。 ? 基本用法 ? SNESCreate:創(chuàng)建一個(gè)非線性方程求解環(huán)境 ? SNESSetType:設(shè)置非線性求解器的類型 ? SNESSetFromOptions:通過(guò)運(yùn)行參數(shù)設(shè)置 SNES運(yùn)行選項(xiàng) ? SNESSolve:?jiǎn)?dòng)一個(gè)非線性方程求解器 ? SNESDestroy:釋放一個(gè)非線性方程求解器 ? SNESSetFunction:設(shè)置非線性函數(shù) ? SNESSetJacobian:設(shè)置雅可比矩陣 61 ? 時(shí)間步進(jìn)積分 TS 時(shí)間步進(jìn)積分器,用于求解依賴時(shí)間或時(shí)間演化的 ODE 方程,或依賴時(shí)間的離散化后的 PDE方程。雅可比矩陣的求解是 SNES解法器的重要組成部分。 SLES求解包括:線性方程求解環(huán)境的創(chuàng)建、 Krylov子空間方法和預(yù)條件子( PC)的選擇、收斂性判據(jù)、 LU直接求解等。它不僅是幾乎所有 PDE方程求解器的基本內(nèi)核,而且也是實(shí)現(xiàn) PETSc 的其它兩個(gè)核心組件 SNES 和 TS 的必不可少的部分。 59 PETSc的核心組件 PETSc的三個(gè)核心組件包括:線性方程求解器( SLES)、非線性方程求解器( SNES)和時(shí)間步進(jìn)積分器( TS)。 PETSc 的矩陣運(yùn)算和操作主要包括矩陣的創(chuàng)建、插值、聚集、各種算術(shù)運(yùn)算和釋放。 ? 矩陣 矩陣是 PETSc的基本對(duì)象。 PETSc 提供 AO 對(duì)象來(lái)管理向量在全局和局部之間的索引、排序和映射。 PDE解法器 SNES(無(wú)約束優(yōu)化、 非線性解法器 ) SLES(線性方程解法器 ) TS時(shí)間步進(jìn) 矩陣 向量 索引集 KSP(Krylov子空間方法 ) PC(預(yù)條件 ) DRAW BLAS LAPACK MPI 應(yīng)用程序 解法器應(yīng)用程序解法器應(yīng)用程序解法器向量 索引集向量矩陣 索引集向量子空間方法矩陣 索引集向量預(yù)條件子空間方法矩陣 索引集向量預(yù)條件子空間方法矩陣 索引集向量線性方程解法器預(yù)條件子空間方法矩陣 索引集向量無(wú)約束優(yōu)化、 非線性解法器 線性方程解法器預(yù)條件子空間方法矩陣 索引集向量無(wú)約束優(yōu)化、 非線性解法器 線性方程解法器預(yù)條件子空間方法矩陣 索引集向量無(wú)約束優(yōu)化、 非線性解法器 線性方程解法器預(yù)條件子空間方法矩陣 索引集向量時(shí)間步進(jìn)無(wú)約束優(yōu)化、 非線性解法器 線性方程解法器預(yù)條件子空間方法矩陣 索引集向量應(yīng)用程序時(shí)間步進(jìn)無(wú)約束優(yōu)化、 非線性解法器 線性方程解法器預(yù)條件子空間方法矩陣 索引集向量時(shí)間步進(jìn)無(wú)約束優(yōu)化、 非線性解法器 線性方程解法器預(yù)條件子空間方法矩陣 索引集向量PETSc實(shí)現(xiàn)的層次結(jié)構(gòu) 57 PETSc的數(shù)值組件 非線性解法器 牛頓迭代法 其它 線搜索 信賴域 時(shí)間步法 Euler 方法 向后 Euler方法 擬時(shí)間步 其它 Krylov 子空間方法 GMR CG CGS BiCGSta TFQMR Richardson Chebyshev 其它 預(yù)條件子 加法 Schwarz 塊 Jacobi Jacobi ILU ICC LU 其它 向量 壓縮稀疏行 (AIJ) 塊壓縮稀疏 (BAIJ) 塊對(duì)角 (BDiag) 稠密 其它 索引集 索引 塊索引 跨度 其它 向量 58 PETSc的基本對(duì)象 ? 向量 向量是最簡(jiǎn)單的 PETSc對(duì)象。 ? 基于 MPI、 BLAS庫(kù)、 LAPACK庫(kù) ? 使用 Fortran、 C/C++開(kāi)發(fā) 越來(lái)越多的應(yīng)用程序在 PETSc環(huán)境上開(kāi)發(fā),并逐漸顯示出 PETSc在高效求解大規(guī)模數(shù)值模擬問(wèn)題方面的優(yōu)勢(shì)和威力 54 ? PETSc:并行可擴(kuò)展科學(xué)計(jì)算工具箱( Parallel Extensible Toolkits for Scientific Computing) ? 核心人員:美國(guó)數(shù)學(xué)與計(jì)算機(jī)部、 Argonne國(guó)家重點(diǎn)實(shí)驗(yàn)室等等 ? 基于 MPI、 BLAS庫(kù)、 LAPACK庫(kù) ? 使用 Fortran、 C/C++開(kāi)發(fā) ? PETSc軟件包含一個(gè)功能強(qiáng)大的工具集以在高性能計(jì)算機(jī)上數(shù)值求解偏微分方程及其相關(guān)問(wèn)題 ? 可移植性: CRAY T3D, T3E, Origin 2022, IBM SP, HP UX, ASCI Red, Blue Mountain, NOWs, LINUX, ALPHA等 ? 公開(kāi)源代碼,免費(fèi)下載 55 ? PETSc 的一些模塊處理: – 索引集,包括用于向量索引的置換,重新計(jì)數(shù)等 – 向量 – 矩陣(一般是 稀疏 的) – 分布陣列(對(duì)正規(guī)的基于網(wǎng)格問(wèn)題的并行化有用) – Krylov 子空間方法 – 預(yù)條件子,包括多重網(wǎng)格和稀疏直接解法器 – 非線性解法器 – 解時(shí)間相關(guān)(非線性) PDEs 的時(shí)間步進(jìn)解法器 56 體系結(jié)構(gòu) PETSc為用戶提供了一個(gè)通用的層次化應(yīng)用程序開(kāi)發(fā)平臺(tái)。 PETSc所有消息傳遞通信均采用 MPI標(biāo)準(zhǔn)實(shí)現(xiàn)。下面為一個(gè)結(jié)構(gòu)圖的存儲(chǔ)例圖 , 圖 (a)為一個(gè)簡(jiǎn)單的圖,圖 (b)為串行 CSR存儲(chǔ)格式,而圖 (C)是分布式 CSR格式。 50 Parmetis輸入輸出格式 ? 在 Parmetis中,所有與圖有關(guān)的子程序的輸入格式包括:圖的鄰接結(jié)構(gòu)、頂點(diǎn)和邊的權(quán)重、描述圖如何被分布在各處理器上的數(shù)組。當(dāng)圖已經(jīng)被分成 P部分( P是處理器數(shù)),圖被重新分布在各處理器。 ParMETIS_V3_NodeND首先使用 ParMETIS V3 PartKway計(jì)算高質(zhì)量的劃分并相應(yīng)的進(jìn)行圖的重新分布。 ParMETIS_V3_NodeND對(duì)圖初始如何分布在各處理器沒(méi)用要求。 49 填充 約化 (fillreducing)次序 ParMETIS_V3_NodeND是 PARMETIS提供的計(jì)算填充 約化次序的子程序。二是假設(shè)圖已很好地分布,并且初始劃分有好的平衡。這兩個(gè)子程序也使用用樣加密算法。 ? 像 Pa
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1