PRIMME公司

PReconditioned迭代多方法特征解


3.2版(2021年1月30日)

GitHub提供:

       https://github.com/primme/primme网站

BSD许可证

以下两个包是Python和R用户的PRIMME接口:
       Python存储库pypi
       R存储库CRAN


分发中提供的文档。也在这里pdf格式HTML格式

A类辅导的 (于2017年SIAM CSE上提交)


3.2版中的更改

  • 修复了英特尔2021编译器错误“不支持的类型组合."
  • 修复了PGI编译器以及tgmath.h的编译问题。
  • 修复了dprimme()和其他变量在某些情况下不返回错误代码PRIMME_MAIN_ITER_FAILURE的问题。
  • 修复了gcc/clang未定义行为消毒剂发出的警告。
  • Matlab:将disp重命名为reportLevel。
  • Matlab:添加标志returnUnconverged以返回未收敛的对。
  • Matlab:返回primme_params/primme_svds_params。

    3.1版中的更改

  • 支持广义厄米特徵值问题。
  • 支持GPU。
  • 支持多精度(包括半精度)。
  • 动态内存分配和修改的接口。
  • 支持块正交化以获得更好的CPU和并行性能。
  • 分块Jacobi-Davidson(同时求解所有分块方程)。
  • 为Fortran 90添加了接口。
  • 将Python接口更新为Python3.8版。
  • 添加了用于(并行)广播的可选回调。
  • 回调的精度与主调用不同(请参见“matrixMatvec_type”和“globalSumReal_type“)。
  • 添加了新计数器:“numGlobalSum”、“volumeGlobalSun”、“numBroadcast”、“VolumeGlobalSam”、“timeOrtho”、”timeGlobalSu姆“、”timeBroadcasting“。
  • 添加了“primme_params_create()”、“primme_params_destroy()”和“primme_svds_params _destroy[)]”。

    2.1版中的更改

  • 通过广播结果来提高线程/并行的健壮性关键LAPACK操作,而不是在每个进程上复制它们。
  • 改进了QMR中针对内部问题的停止标准。
  • 支持奇异值问题的MATLAB接口重新实现,双精度或单精度,并与Octave兼容。
  • 作为CRAN包的完整R接口。
  • 正确报告奇异值解算器的收敛历史。
  • 各种错误修复和改进的健壮性。

    2.0版中的更改

  • 将许可证更改为BSD 3条款。
  • 奇异值问题的新支持。
  • 对浮点运算和复杂浮点运算的新支持。
  • 支持大于2^31的问题维度,无需使用64位整数编译BLAS和LAPACK。
  • 改进了内部问题的鲁棒性和性能;实施了先进的精致和声丽思精选。
  • 与NumPy和SciPy库兼容的Python接口。
  • 可选的用户定义收敛函数convTestFun。
  • 几项性能和稳健性改进

    1.2.2版中的更改

  • 修复了libdprimme.a和libzprimme.a中的错误符号。
  • primme_set_method为预设方法设置JDQMR,而不是JDQMR_ETol查找内部值时使用DEFAULT_MIN_TIME和DYNAMIC。
  • 修复了在没有HYPRE的情况下使用PETSc安装编译驱动程序的问题。
  • 包含用于编译驱动程序的环境变量INCLUDE的内容。

    版本1.2.1中的更改

  • 完整PRIMME功能的MATLAB接口。
  • 支持64位整数的BLAS/LAPACK(-DPRIMME_BLASINT_SIZE=64)。
  • Make_flags和Make_links的简化配置(删除了TOP变量并将NUM_SUM和NUM_IBM的定义替换为F77UNDERSCORE)。
  • 将目录DTEST和ZTEST替换为具有以下内容的TEST:
    (a)driver.c:读取MatrixMarket格式的矩阵和PETSc二进制,并使用文件中指定的参数调用PRIMME;支持复数算法和MPI,可以使用PETSc预处理程序。
    (b)ex*.c和ex*.f:c和Fortran以及并行(与PETSc)中使用的小型教学示例。
  • 修复了一些小错误并改进了文档(尤其是F77界面)。
  • 使用Sphinx管理文档。

    1.2版中的更改

    1.2版实现了性能改进和错误修复多年来由PRIMME的用户报告,作者对这些用户很感激。
  • 构建PRIMME库不再需要Fortran编译器。Fortran程序仍然可以链接到PRIMME的F77接口。
  • 修复了F77界面的一些不常见问题
  • 现在可以从同一程序多次调用PRIMME。
  • QMR内部解算器的性能改进,特别是复数运算
  • 修复了锁定功能的几个错误。在某些极端情况下,需要矩阵的所有特征值。选择内部特征值的顺序。上述修复提高了健壮性和性能。
  • PRIMME现在为每个并行进程分配唯一的随机种子最多4096^3(140万亿个过程)
  • 对于DYNAMIC方法,修复了初始化和跨多个进程的同步决策。
  • 修复了不常见的库接口错误,更好地协调了set_method()和用户参数设置,并进行了改进示例程序和makefiles中的接口
  • 其他性能和文档改进

    旧版本可在github

    2.0版(2016年9月20日)
    1.2.2版(2015年10月13日)
    版本1.2.1(2015年9月7日)
    1.2版(2014年12月24日)
    1.1版(2006年10月)

    除了在GitHub上留下评论外,还可以考虑与开发人员联系,询问问题、错误报告或请求。

    联系人:ANDREAS at CS dot WM dot EDU
    以下文件描述了导致此软件的研究。
    要引用PRIMME,请引用论文[1,2]。单击以获取bibtex条目。

    1.2-2.0版本的开发由国家科学基金会通过CCF 1218349和ACI SI2-SSE 1440700资助。
    目前的开发由NSF根据NSCI 1835821和DOE Exascale计算项目17-SC-20-SC提供支持。
    贡献者:
    James R.McCombs、Eloy Romero、Andreas Stathopoulos、Lingfei Wu

    1. A.Stathopoulos和J.R.McCombs,PRIMME:PReconditioned Iterative MultiMethod特征解算器:方法和软件描述,ACM数学软件汇刊,第37卷,第2期,(2010),21:1--21:30。

    2. L.Wu、E.Romero和A.Stathopoulos,PRIMME_SVDS:高性能用于精确大规模计算的预条件SVD解算器,SIAM J.科学。计算。,第39卷,第5期,(2017),S248--S271。

    3. A.Stathopoulos,厄米特特征问题的近似最优预处理方法内存有限。第一部分:寻找一个特征值”,SIAM J.科学。计算。,第29卷,第2期,(2007),481-514。[pdf格式]

    4. A.Stathopoulos和J.R.McCombs,厄米特特征问题的近似最优预处理方法内存有限。第二部分:寻找多个特征值”,SIAM J.科学。计算。,第29卷,第5期,(2007年),2162-2188。[pdf格式]

    5. L.Wu和A.Stathopoulos,“用于精确计算的预处理混合SVD方法大矩阵的奇异三元组”,SIAM科学计算杂志37-5(2015),第S365-S388页。

    6. J.R.McCombs和A.Stathopoulos,“特征解的迭代验证:改进Hermitian特征值解算器的可靠性”,SIAM J.科学。计算。,第28卷,第6期,(2006),2337-2358。[pdf格式]

    7. A.Stathopoulos,“查找的大量特征向量的锁定问题厄米矩阵”,技术报告:WM-CS-2005-09,2005年7月,提交。[pdf格式]

    8. A.Stathopoulos和K.Wu,“块正交化程序恒定同步要求”, SIAM科学计算杂志,第23卷,第6期,(2002), 2165--2182.[pdf格式]

    9. A.Stathopoulos公司“关于重新启动对称特征值的一些见解使用Ritz和调和Ritz向量的方法”,在科学计算的迭代方法IV中,D.R.Kincaid和Anne C.Elster(编辑),第297--311页,《计算和应用数学系列》,新泽西州国际数学协会(IMACS)(1999年)。[pdf格式]

    10. A.Stathopoulos和Y.Saad,“(Jacobi-)Davidson对称特征值方法的重启技术”,特征值方法专题,《数值分析电子交易》,第7卷,(1998),163-181。

    11. K.Wu、Y.Saad和A.Stathopoulos,“特征值问题的非精确牛顿预处理技术”,特征值方法专题,《数值分析电子交易》,第7卷,(1998),202-214。

    12. A.Stathopoulos、Y.Saad和K.Wu,“戴维森和隐式重启Arnoldi方法”,SIAM J.科学计算,19,1,(1998)227-45。版权所有©1998工业与应用数学学会。[pdf格式]

    13. A.Stathopoulos、Y.Saad和C.F.Fischer,“大型稀疏对称特征值问题的稳健预处理”《计算与应用数学杂志》,64(1995)197-215。[pdf格式]

    14. A.Stathopoulos和C.F.Fischer,“寻找少数人的戴维森计划大型稀疏实对称矩阵的选定极值特征对”计算机物理通信,79(1994)268-290。[pdf格式]




    回到我的主页