Octave/matlab 中的值 NaN4505e-001 是什么意思?
What does the value NaN4505e-001 mean in Octave/matlab?
值 NaN4505e-001
在 Octave/matlab 中的含义是什么?
完整的输出行是Iteration 250 | Cost: NaN9784e-001
库函数中对应语句为fprintf('%s %4i | Cost: %4.6e\r', S, i, f1);
所以,我的问题是 %4.6e
return 这个值如何 NaN4505e-001
?
很可能是显示一个 NaN
和两个浮点数的三个字符串的串联。例如:
fprintf(1, '%d%d%.0e\n', NaN, 450, 0.5)
稍后编辑:鉴于添加到原始问题的新信息,最可能的原因是f1
变量是双精度的三元素向量,其中值 [NaN, 450, 0.5]
,或 2 元素向量 [NaN, 450.5]
.
要查看具体原因,我建议在条件 i == 250
的 fprintf
调用上添加一个条件断点,然后检查 f1
值。
但是,i
和 j
由 MATLAB 保留用于 -1 的复平方根,因此调试器可能永远不会采用该条件。这就是为什么将这两个标识符用作变量名是个坏主意。
值 NaN4505e-001
在 Octave/matlab 中的含义是什么?
完整的输出行是Iteration 250 | Cost: NaN9784e-001
库函数中对应语句为fprintf('%s %4i | Cost: %4.6e\r', S, i, f1);
所以,我的问题是 %4.6e
return 这个值如何 NaN4505e-001
?
很可能是显示一个 NaN
和两个浮点数的三个字符串的串联。例如:
fprintf(1, '%d%d%.0e\n', NaN, 450, 0.5)
稍后编辑:鉴于添加到原始问题的新信息,最可能的原因是f1
变量是双精度的三元素向量,其中值 [NaN, 450, 0.5]
,或 2 元素向量 [NaN, 450.5]
.
要查看具体原因,我建议在条件 i == 250
的 fprintf
调用上添加一个条件断点,然后检查 f1
值。
但是,i
和 j
由 MATLAB 保留用于 -1 的复平方根,因此调试器可能永远不会采用该条件。这就是为什么将这两个标识符用作变量名是个坏主意。