2012-08-01 503 views
4

当我运行quadprog与给定功能F MATLAB输出:MATLAB:quadprog抱怨功能不是对称的,当它是

Warning: Your Hessian is not symmetric. 
Resetting H=(H+H')/2. 

然而,检查功能之间的差异,这是转:

>> max(max(abs(F-F'))) 

ans = 

    (1,1)  7.1054e-015 

显示它们实际上是相同的。即使功能接近由机器错误对称,quadprog是否会输出此警告?

回答

3

用于在quadprog源反对称的存在测试是

norm(H-H',inf) > eps 

即它检查是否无穷范数大于机器最小更大。由于

7.1054e-15 > eps = 2.22e-16 

您的黑森州显示为非对称。

相关问题