在Mathematica中,如何查看完整的消息输出?

时间:2011-02-05 17:13:21

标签: wolfram-mathematica options

在使用Mathematica中的Minimize []执行优化时,我得到的似乎是一些NaN:

  

NMinimize :: nnum:函数值   Indeterminate不是{q} =处的数字   {0}。 >> NMinimize :: nnum:函数   value Indeterminate不是一个数字   {q} = {0.}。 >> NMinimize :: nnum:The   函数值Indeterminate不是   {q} = {0.}处的数字。 >>   一般::停止:进一步输出   NMinimize :: nnum将被禁止   在此计算过程中。 >>

NaN可以,因为它们似乎不会影响优化结果。但是因为正在抑制进一步的消息,我不确定我是否收到与超出最大迭代次数相关的消息(例如),但没有达到要求的精度。

那么,有没有办法查看完整的邮件列表?这样的选项(如果存在)是否必须在评估之前激活,或者是否有完整的消息缓冲区,我可以在之后进行咨询?优化需要非常很长时间,因此我希望避免重新计算它。

我只找到了Off和On功能,这似乎没有我想要的功能。

2 个答案:

答案 0 :(得分:3)

试试这个:

Off[General::stop]

- 标记

答案 1 :(得分:3)

两条评论。首先,Off[General::stop]应该完全符合您的要求,即关闭消息抑制。其次,只有特定类型的消息被抑制,例如NMinimize::nnum。其他消息不是,因此,例如,如果超出$IterationLimit,您将收到该消息。

编辑: 例如:

On[General::stop]
Do[
NIntegrate[Sin[a*x], {x, 0, 10}];
If[i == 20, 1/0],
{i, 1, 100}]