跳到内容

R包用于使用(预处理)共轭梯度算法求解线性方程组,使用C++Armadillo线性代数库提高了效率,并具有用户特定预处理方法的灵活性。

许可证

通知 您必须登录才能更改通知设置

斯蒂芬/cPCG

文件夹和文件

姓名姓名
上次提交消息
上次提交日期

最近一次提交

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

存储库文件导航

cPCG:高效定制的预处理共轭梯度法

R包使用(预处理)共轭梯度算法求解线性方程组,使用Armadillo模板化C++线性代数库提高了效率,并具有用户指定预处理方法的灵活性。

安装选项

下载cPCG_1.5.5.目标.gz文件在这里并从命令行生成:

R CMD安装cPCG_1.5.5.tar.gz

从github获取当前开发版本:

开发工具时间:安装github("斯蒂芬/cPCG")

注释:Mac OSX用户需要安装开放式多媒体播放器为了编译包。检查在这里寻求解决方案。

功能

cgsolve(cgsolf)

求解线性方程组Ax=b的共轭梯度法,其中A是对称正定的,b是列向量。

cgsolve(A,b,浮点tol=1e-6,int maxIter=1000)

pcg溶液

当A的条件数较大时,共轭梯度(CG)方法可能无法在合理的迭代次数内收敛。预条件共轭梯度(PCG)方法应用一个预条件矩阵C,通过求解C^{-1}Ax={C}^{-1{b来解决问题,其中对称和正定矩阵C近似于a和C^{-1}甲提高了A的条件数。

pcgsolve(A,b,preconditioner=“Jacobi”,float tol=1e-6,int maxIter=1000)

预处理剂的常见选择包括:雅可比预处理、对称连续过松弛(SSOR)和不完全Cholesky因子分解。

  • 雅各比雅可比预条件是矩阵A的对角线,假设所有对角线元素都不为零。

  • SSOR公司:对称连续超松弛预条件子,实现为M=(D+L)D^{-1}(D+L)^T。

  • 国际协调委员会:不完全Cholesky因子分解预条件。

cgsolve_稀疏OMP v1.5.5中的新增功能

使用OpenMP进行共轭梯度法的并行稀疏矩阵。

#A是稀疏矩阵,可以使用“矩阵”包函数矩阵(…,sparse=TRUE)生成cgsolve_sparseOMP(A,b,tol=1e-6,maxIter=1000,n线程=1)

pcgsolve_sparseOMP文件 v1.5.5中的新增功能

稀疏矩阵并行使用OpenMP进行预处理共轭梯度法,雅可比预处理器目前可用。

#A是稀疏矩阵,可以使用“矩阵”包函数矩阵(…,sparse=TRUE)生成pcgsolve_sparseOMP(A,b,preconditioner=“Jacobi”,tol=1e-6,maxIter=1000,nThreads=1)

资源

关于

R包用于使用(预处理)共轭梯度算法求解线性方程组,使用C++Armadillo线性代数库提高了效率,并具有用户特定预处理方法的灵活性。

话题

资源

许可证

星星

观察者

叉子

发布

未发布版本

包装

未发布包