petsc4py:从csc_Matrix创建AIJ矩阵会导致类型e

2024-09-27 22:33:32 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试从已经存在的csc矩阵中创建一个petsc矩阵。考虑到this,我创建了以下示例代码:

^{1}$

只要矩阵只包含实数,这种方法就可以很好地工作。当矩阵很复杂时,运行这段代码会导致 TypeError: Cannot cast array data from dtype('complex128') to dtype('float64') according to the rule 'safe'。 我试图弄清楚错误发生的确切位置,但无法理解回溯:

^{pr2}$

有没有一种有效的方法可以从复杂的scipy csc矩阵中创建一个petsc矩阵(稍后我想检索一些特征对)?在

如果你们能帮我找出我的错误(希望不要太明显),我会很高兴的。在


Tags: to方法代码示例错误矩阵thisarray
1条回答
网友
1楼 · 发布于 2024-09-27 22:33:32

我在让PETSc工作时遇到了困难,所以我不止一次地配置了它,在最后一次运行中,我显然忘记了 with-scalar-type=complex选项。在

这是我应该做的:

  • 请检查日志文件$PETSC_DIR/arch-linux2-c-opt/conf/configure.log

  • 或者看看reconfigure-arch-linux2-c-opt.py

在那里你可以找到你用来配置PETSc的所有选项。如果您也使用SLEPc,您还需要重新编译它。现在,由于我在重新配置脚本中添加了选项( with-scalar-type=complex)并运行了它,一切都非常顺利。在

相关问题 更多 >

    热门问题