问题标签 [petsc]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
matlab - Petsc Mex 文件崩溃
我有一个工作代码,可以通过使用 Petsc 的 KSPSolve 解决某个问题(使用 gmres 求解器和 ilu 预处理器)。我想从 MATLAB 调用这段代码,所以我编写了一个 mex 文件。但是,当调用 KSPSolve 时,它会使我的 mex 文件和 MATLAB 崩溃。
我使用了 valgrind,似乎第一个错误出现在某些 sse2 代码中。如果我删除对 KSPSolve 的调用,一切正常。如果我在 MATLAB 之外调用整个代码,它也可以工作。
有人知道 Petsc 和 MATLAB 之间可能存在的兼容性问题吗?这可以解决吗?谢谢,
c - 如何使用 PETSc 可伸缩非线性方程求解器设置 3d FEM 求解器?
在 3.3 中,他们有一个令人振奋的消息- 在 GPU 上仅使用 PETC SNES 进行 FEM 求解的示例。我是 PETSc 的新手并且有一个问题 - 我需要在 3d 空间中创建一个球体并对其施加力......所以我需要一个 3d FEM(如果可能在 GPU 上,我的情况不需要 MPI)。然而,当我看到他们提供的简单示例时,我有点害怕:
它像代码一样干净易读...
然而,阅读它让我头晕目眩,因为来自子弹 phisix\gamedev backgrownd 我没有看到 3 个主要内容:在哪里设置尺寸、创建网格和应用力?
那么任何人都可以解释如何使用 PETSc SNES 设置 3d FEM 求解器(强调如何设置尺寸、馈送网格、施加力和解释结果)?
c - PETSc 未定义参考
我有一个非常初学者的问题,但我现在真的迷路了。我从 PETSc 开始,但我在编译代码时遇到了问题。我正在尝试使用自己的 Makefile,但编译器一直在大喊“未定义的引用”错误。我试图自己弄清楚几个小时,但我根本没有看到错误。因此,如果您能认识到错误,我们将不胜感激您的帮助。
这是整个错误消息:
这是我的 .c 文件 - 它还没有完成,它只是一个测试:
这是我的Makefile:
$PETSC_DIR/include
里面${PETSC_DIR}/${PETSC_ARCH}/include
有petsc头文件(.h)。
我的系统变量的值是:
这是我的 LD_LIBRARY_PATH 文件夹的结构:
c++ - 使用 PETSc 进行域分解
有没有人有使用 PETSc 库进行域分解的经验?我使用 PETSc 在我的 c++ 代码中创建向量和矩阵。我还使用 KSP 来求解线性系统。我使用了以下示例来了解 PETSc 中的 DD,但它们对我没有帮助:
http://www.mcs.anl.gov/petsc/petsc-3.5/src/snes/examples/tutorials/ex10d/ex10.c.html http://www.mcs.anl.gov/petsc/petsc-3.2 /src/snes/examples/tutorials/ex12.c.html http://www.mcs.anl.gov/petsc/petsc-current/src/snes/examples/tutorials/ex62.c.html </p>
如果您能给我一些关于如何使用 PETSc 进行图形分区和域分解的提示,我将不胜感激。
c - PETSc - MatLUFactor - 不支持此对象类型的此操作
我正在尝试在 PETSc 中编写 LU 分解应用程序。我的想法是,程序将打印未分解的矩阵,然后是分解的矩阵并计算分解本身所花费的时间。
我根据我在互联网上找到的少量信息编写了我的代码(我使用这篇文章中的信息来初始化我的矩阵),但不幸的是,这还不够。我的代码可以编译,但是当我尝试运行它时,它只会喊出这个错误:
此错误是由MatLUFactor函数引起的,我想将其用于就地 LU 分解。问题是,我不知道我的代码到底有什么问题。我认为,中心问题可能出在矩阵变量本身,可能是因为分配不当(我想到了 MatMPIAIJSetPreallocation 函数),但我不确定。
我试图用MatLUFactorNumeric和MatLUFactorSymbolic替换 MatLUFactor 函数,但它比 MatLUFactor 更糟糕,它的错误“更大”:-)
最后,我尝试使用以下命令启动我的程序:
因此,如果您知道任何解决方案,我将不胜感激;-) 谢谢!
Ps:我一直在寻找可能的解决方案,到目前为止我找到的最接近的文章是这个 maillist,但是提问者使用 ParMETIS 和 SuperLU 包,据我所知,我不使用。
这是我的源代码:
这是我使用 MatLUFactorNumeric 和 MatLUFactorSymbolic 函数时的错误:
petsc - PETSc - MatMultScale?矩阵 X 向量 X 标量
我正在使用PETSc,我想做一些类似的事情,
我知道我可以做到:
我只是好奇是否有一个功能可以一次性完成所有这些。似乎它会节省一个循环。
有这样的功能吗?
python - 伪弧长延续 petsc4py
多年来,我一直是 Trilinos LOCA (c++) 中伪弧长延续、非线性求解器的用户,但我最近遇到了 python 包 petsc4py。这大大简化了我的编程,速度略有下降。
petsc4py 唯一缺少的类是伪弧长延续求解器。PETSC 有一个伪时间步进求解器,但这并不像转折点分解算法那么有用。
Trilinos LOCA 有一个 PETSC 包装器,但我一直在寻找一个解决方案,其中问题是在 python(来自 petsc4py)而不是 c 或 c++ 中指定的。
因此,我正在寻找一个用 petsc4py 编写的类,或者可以从 petsc4py 调用,实现伪弧长延续。
非常感谢你。
homebrew - 使用自制软件安装 petsc 时出错
我尝试petsc
在 OSX 10.10.1 上使用 homebrew 安装:
安装一个依赖项时出现一个错误:
所以我尝试hypre
用自制软件安装
我没有收到任何错误 ==> 摘要 /usr/local/Cellar/hypre/2.9.0b_1: 48 files, 4.5M
最后,我修改了petsc
公式并注释掉了这一行
现在我可以安装petsc
但它不起作用
petsc - 使用 fp_trap 查找 PETSc 中浮点异常的原因?
我不确定这个问题是否属于这里。但是我的 PETSc 代码有问题,说存在浮点错误。它类似于以下链接中讨论的问题:
http://lists.mcs.anl.gov/pipermail/petsc-users/2012-November/015858.html https://www.mail-archive.com/petsc-users@mcs.anl.gov/msg22930.html
这些线程中的一些人只是对我们说“fp_trap”。但是我应该在哪里输入呢?我试图进入 gdb 和 valgrind,然后输入“fp_trap”,但它不起作用
c++ - 使用 Octave C++ API 从文件加载矩阵
是否可以在运行时使用 Octave C++ API 从外部文件加载 PETSc 二进制格式的矩阵?我找到了Doxygen 文档,但在这么多项目中我找不到任何有用的东西。
通常,当我想将 PETSc 矩阵加载到 Octave 时,我会使用“PetscBinaryRead.m”,但现在在 C++ 中,我真的完全迷失了。