petsc
lizhengjiang
这个作者很懒,什么都没留下…
展开
-
PETSc 两类(结构化)数据结构
一、向量 1.1 定义 串行向量定义: VecCreateSeq(PETSC_COMM SELF,int m,Vec *x); 分布式向量定义: VecCreateMPI(MPI_Comm comm,int m,int M,Vec *x); /* # of processors = M / m */ 或者原创 2013-12-01 02:09:58 · 1965 阅读 · 0 评论 -
CUDA Fortran 稀疏矩阵 乘法 测试
矩阵数组在MATLAB中生成clear;clc;m=16;n=16;A=rand(n,m);B=repmat(1,1,m); B=diag(B); C=[];for j=1:n D=[]; for i=1:m D=[D B*A(j,i)]; end C=[C;D]; end[p,q]=size(C);fid=fopen(原创 2013-04-02 16:49:45 · 2026 阅读 · 0 评论 -
PETSC TS 测试
PETSC自带算例 ts ex1.c ----------makefile -----------CFLAGS =FFLAGS =CPPFLAGS =FPPFLAGS =LOCDIR = user/PETScTest/tstestinclude ${PETSC_DIR原创 2013-11-30 03:23:16 · 1676 阅读 · 0 评论 -
krylov子空间迭代法
方程形式: Ax = b n次迭代后解的残差 r(n) = b - A * x(n) = ( 1- A) * x(n) + b - x(n) = x(n+1) - x(n) n次迭代后的残差满足 b - A * x(n+1) = b - A * x(n) - A * r(n) =》 r(n+1) = r(n) - A * r(原创 2014-01-27 04:13:12 · 19114 阅读 · 0 评论 -
petsc 结构化数据使用
前文讲到petsc两类基本数据对象(mat, vec)。而petsc的这两类数据对象默认都是按一维存储和创建的。实际pde问题,往往是2维或者3维的。故petsc内建一些映射函数,将默认的一维数据映射成逻辑上的多维数组。本文主要介绍向规则的2D数组映射的函数。 petsc中逻辑上的多维数组称为 "DA" ( distributed array), 创建一个2D DA:原创 2014-02-03 03:24:29 · 3245 阅读 · 0 评论 -
稀疏矩阵相关 1
应用: PDE数值解。 稀疏矩阵与图论: 1 邻接图可用一个稀疏矩阵描述。其中稀疏矩阵的每个非零元素(对应一个未知变量)表示“图”中对应的两个“节点”之间有一条“边”; 对称稀疏矩阵表示一个无向图。高斯消元法所选的pivots,就是“图”中独立的”节点“ ( 该节点与其他节点之间不存在”边“)。 2 PDE离散网格中节点自由度的编号。法一,一个节点的所有自原创 2014-02-25 07:53:10 · 1954 阅读 · 0 评论 -
矩阵迭代
1 基本迭代方法 实际问题PDE矩阵计算 A x = b,一般采用迭代解法。基本迭代方法(Jacobi, G-S SOR)主要分两步:矩阵分裂和残差正交投影。 A = D - E - F, (b - A x_k+1)|_i = 0 -----> Jacobi迭代: x_k+1 = D^-1 ( E + F) x_k + D^-1b G - S原创 2014-02-25 14:22:51 · 9332 阅读 · 0 评论 -
petsc toy
petsc 结构化数据使用转载 2014-10-18 00:16:15 · 1077 阅读 · 1 评论 -
大型稀疏矩阵计算的现代方法介绍
There are already two papers talking原创 2014-11-05 03:02:55 · 11323 阅读 · 0 评论