【问题标题】:How to use PARI C library如何使用 PARI C 库
【发布时间】:2013-12-19 07:09:34
【问题描述】:

我已经搜索了一些关于如何在 C 程序中使用 PARI 库的教程,但不幸的是,我只找到了在命令行界面中使用 GP 包的通用教程。

有人可以帮忙吗?例如,我想初始化一个 3x3 矩阵并找到它的 1000 次方。在 gp(CLI)中,这可以通过键入以下内容来实现:

? A=[1,2,3;4,5,6;7,8,9]
? A^1000

但我发现在 C 源文件中做这个安静简单的事情没有任何帮助。是否有提供此类示例的综合教程或文档?任何评论将不胜感激!

【问题讨论】:

    标签: pari pari-gp


    【解决方案1】:

    这在手册 libpari(“PARI 库用户指南”)中有介绍。在简单情况下使用它的一种简单方法是保存相关的 GP 脚本并在其上运行gp2c -g,这将生成一个 C 文件,使用 PARI 库进行计算。然后,您可以根据自己的喜好进行编辑。

    对于这种特殊情况:

    #include <pari/pari.h>
    GEN test(void);
    
    GEN
    test(void)
    {
      GEN A = cgetg(4, t_MAT);
      gel(A, 1) = cgetg(4, t_COL);
      gel(A, 2) = cgetg(4, t_COL);
      gel(A, 3) = cgetg(4, t_COL);
      /* Create matrix A */
    
      gcoeff(A, 1, 1) = gen_1;
      gcoeff(A, 1, 2) = gen_2;
      gcoeff(A, 1, 3) = stoi(3);
      gcoeff(A, 2, 1) = stoi(4);
      gcoeff(A, 2, 2) = stoi(5);
      gcoeff(A, 2, 3) = stoi(6);
      gcoeff(A, 3, 1) = stoi(7);
      gcoeff(A, 3, 2) = stoi(8);
      gcoeff(A, 3, 3) = stoi(9);
      /* Fill matrix A with values */
    
      return gpowgs(A, 1000); /* Return A^1000 */
    }
    
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-10-19
    • 1970-01-01
    • 1970-01-01
    • 2020-09-30
    • 1970-01-01
    • 1970-01-01
    • 2014-03-10
    相关资源
    最近更新 更多