【发布时间】:2012-08-29 18:29:53
【问题描述】:
对于单元测试,我试图确保 PETSc 向量已被销毁。但是,我似乎找不到合适的命令来优雅地执行此操作。我能做的最好的事情是调用 VecSetType(...) 并查看错误。但是,这个写 PETSC_ERROR 输出,我不想写,特别是因为我期待一个错误。有什么想法或建议吗?
谢谢。
【问题讨论】:
对于单元测试,我试图确保 PETSc 向量已被销毁。但是,我似乎找不到合适的命令来优雅地执行此操作。我能做的最好的事情是调用 VecSetType(...) 并查看错误。但是,这个写 PETSC_ERROR 输出,我不想写,特别是因为我期待一个错误。有什么想法或建议吗?
谢谢。
【问题讨论】:
您可以使用 -log_summary 运行代码。剖析信息构成一个表格,其中包含已创建多少向量以及已销毁多少向量。
【讨论】:
我不是经验丰富的 PetSc 用户,但我知道 XDestroy 函数将 Vec、Mat 等等同于 NULL。我想您可能会将您的 VEC 与 NULL 进行比较。对我来说,我正在使用终结器类来确保正确清理所有内容。希望有效
【讨论】: