0

なぜエラーが発生するのですか

??? 未定義の関数または変数

次の関数を呼び出そうとすると:

    function Diff= myfun3(wk,omega)
wcalc=inv(lambda* Passetcovar)*inv(inv(tau * Passetcovar)+ PMat(i,:)'*inv(omega)*PMat(i,:))*(inv(tau * Passetcovar)*Pi+ PMat(i,:)'*inv(omega)*Q(i,:));
Diff=sum((wk-wcalc).^2);
end

関数内のすべてのパラメーターが定義され、正しい。

を使用してこの関数を呼び出してmyfun3(wk,omega)いますが、次のようなエラーメッセージが表示されます

??? Undefined function or variable 'lambda'.

ラムダがeslewhereで定義されている場合でも。

4

1 に答える 1

2

lambdaベース ワークスペースで定義されていても、関数ワークスペースで定義されていません。関数への入力として渡すか、グローバル変数として定義します。詳細については、 http://www.mathworks.co.uk/help/matlab/matlab_prog/share-data-between-workspaces.htmlを参照してください。

于 2013-08-28T13:00:38.110 に答える