【发布时间】:2015-05-29 16:43:29
【问题描述】:
我刚开始使用 PETSC,我正在尝试使用 matView 绘制矩阵。我的代码是这样的:
MatCreateSeqAIJWithArrays(PETSC_COMM_WORLD, nodes, nodes, rows, cols, values, net); //I want to visualize "net"
//Visualization
if(display >= 1){
PetscPrintf(PETSC_COMM_WORLD, "CSR structure created.\n");
MatView(*net,PETSC_VIEWER_DRAW_WORLD);
}
当我以这种方式使用 MatView 时:
MatView(*net,PETSC_VIEWER_STDOUT_WORLD);
我可以看到一个包含行的列表。但是当我把它改成
MatView(*net,PETSC_VIEWER_DRAW_WORLD);
什么都没有发生。
我看不到任何有关网络结构的信息,甚至连列表也看不到。
我尝试运行这些示例,但它们根本不起作用。此外,PETSC 文档只会让事情变得更糟。有人能帮我吗?我不想看到行列表,而是矩阵(以图形方式)。
来自 cmets 的更多背景信息:
- X windows 运行正常 -- 能够通过
gvim、xlogo、xeyes等进行确认。 - 已使用
configure中的--with-x选项重建库。仍然没有出现。
【问题讨论】:
-
绘图例程是否需要 X 服务器?你能运行其他 X windows 程序吗?
-
我不太清楚什么是 X 服务器...我如何检查它? @chrisaycock
-
我尝试运行“xinit”:“服务器已经处于活动状态以显示 0 如果此服务器不再运行,请删除 /tmp/.X0-lock 并重新启动。”
-
确保你的 shell 中有一个
$DISPLAY环境变量。如果您从桌面 ssh 到服务器,请确保您启用了 X 转发。尝试运行图形程序,例如gvim。如果安装了xlogo或xeyes,您也可以运行它们。我们只是想确保您可以在专注于代码之前运行图形程序。 -
它适用于 gvim、xlogo 和 xeyes。 @chrisaycock