distributedblas_poisson.h

来自「Flens库-一个在C++的矩阵运算库」· C头文件 代码 · 共 68 行

H
68
字号
#ifndef POISSON_SOLVER_FLENS_IMPL_DISTRIBUTEDBLAS_POISSON_H#define POISSON_SOLVER_FLENS_IMPL_DISTRIBUTEDBLAS_POISSON_H 1#include <poisson_solver/flens_impl/gauss_seidel.h>#include <poisson_solver/flens_impl/distributedgridvector.h>#include <poisson_solver/flens_impl/poissonmatrix.h>#include <poisson_solver/flens_impl/prolongation.h>#include <poisson_solver/flens_impl/restriction.h>namespace flens {//-- BLAS for DistributedGridVector2D ------------------------------------------voidscal(double alpha, DistributedGridVector2D &x);doubledot(const DistributedGridVector2D &x, const DistributedGridVector2D &y);voidaxpy(double alpha, const DistributedGridVector2D &x,     DistributedGridVector2D &y);voidcopy(const DistributedGridVector2D &x, DistributedGridVector2D &y);doublenormInf(const DistributedGridVector2D &v);doublenormL2(const DistributedGridVector2D &v);voidmv(double alpha, const DirichletPoisson2D &A, const DistributedGridVector2D &x,   double beta, DistributedGridVector2D &y);//-- Residual: r = f - A*u -----------------------------------------------------voidresidual(const DistributedGridVector2D &f,         const DirichletPoisson2D &A, const DistributedGridVector2D &u,         DistributedGridVector2D &r);//-- Gauss-Seidel Red-Black: u = S(A,f)*u_1  -----------------------------------voidmv(Transpose trans, double alpha,   const GaussSeidelRedBlack<DirichletPoisson2D, DistributedGridVector2D> &GS,   const DistributedGridVector2D &u_1, double beta, DistributedGridVector2D &u);//-- Restriction: vc = R*v  ----------------------------------------------------//-- dirichlet poisson 1d ------------------------------------------------------voidmv(Transpose trans, double alpha, const Restriction &R,   const DistributedGridVector2D &v, double beta, DistributedGridVector2D &vc);//-- Prolongation: v += P*v_c  -------------------------------------------------//-- dirichlet poisson 1d ------------------------------------------------------voidmv(Transpose trans, double alpha, const Prolongation &P,   const DistributedGridVector2D &vc, double beta, DistributedGridVector2D &v);} // namespace flens#endif // POISSON_SOLVER_FLENS_IMPL_DISTRIBUTEDBLAS_POISSON_H

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?