我想解决Ax = b+u
类型的线性等式系统,其中A
和b
是已知的。我在MATLAB中使用了这样一个函数:
x = @(u) gmres(A,b+u);
然后我使用了fmincon
,其中u
的值被赋予此表达式,并计算x
。例如
J = @(u) (x(u)' * x(u) - x^*)^2
和
[J^*,u] = fmincon(J,...);
将点作为矩阵和向量的平等和不等式。
我的问题是,MATLAB总是提供一个输出,其中包含有关命令gmres
的信息。但我不知道,我怎么能阻止它(它使程序更慢)。
我希望你知道答案。 Patsch
答案 0 :(得分:0)
它在文档中有点隐藏,但是it does say
如果指定了
flag
输出,则不会显示任何消息。
所以你需要用至少两个输出来调用gmres
。您可以通过创建包装函数
function x = gmresnomsg(varargin)
[x,~] = gmres(varargin{:});
end
并将其用于创建句柄
x = @(u) gmresnomsg(A,b+u);