2017-05-18 15 views
0

タイプAx = b+uの線形等価系を解く必要があります。Abが知られています。Matlabで "gmres"を使用している間に出力がありません

x = @(u) gmres(A,b+u); 

は、その後、私はuの値がこの式に与えられ、xが計算さfminconを使用した:私はこのようなMATLABの関数を使用します。例えば

J = @(u) (x(u)' * x(u) - x^*)^2 

[J^*,u] = fmincon(J,...); 

小枝等式と不等式のための行列やベクトルなどのドット。 問題は、MATLABは常にコマンドgmresに関する情報を出力することです。しかし、私はどのようにこれを止めることができないのか分かりません(プログラムがはるかに遅くなります)。

私はあなたが答えを知って欲しいです。 Patschの

+0

[MCVE](https://stackoverflow.com/help追加することによって、あなたは質問の改善を検討してください、あなたのハンドルの作成のためにそれを使用することができます/ mcve) – NKN

答えて

0

それは少しドキュメントの中に隠されていますが、it does say

flag出力が指定されている場合は、メッセージは表示されません。

したがって少なくともに電話する必要があります。あなたは、ラッパー関数に

function x = gmresnomsg(varargin) 
    [x,~] = gmres(varargin{:}); 
end 

をすることによって、これを行うと

x = @(u) gmresnomsg(A,b+u); 
+0

あなたの答えをありがとう! – Patsch

関連する問題