私の目的関数(myfunction
、以下参照)の二重積分を、関数組み込みintegral2
を使って評価したいと思います。目的関数の二重積分
このスクリプトを実行しようとしました。 myfunction
は、次の関数である
f = @(r,theta) myfunction(r,theta);
integral2(f,0,2,0,2*pi);
:
function fkt=myfunction(r,theta)
x=r.*cos(theta);
y=r.*sin(theta);
los(:,1)=x;
los(:,2)=y;
norm = (sum(sqrt(los(:,1).^2 + los(:,2).^2)));
fkt=norm*r;
end
私は極座標で積分を作っています、その理由FKT =規範* R。
>> untitled2
Subscripted assignment dimension mismatch.
Error in myfunction (line 8)
los(:,1)=x;
私が把握することはできません、問題が何であるか:
Matlabのは私に次のエラーメッセージが表示されます。
'los'を定義する必要はありません。 matlabでは暗黙的に定義されています。また、xは行列なので、あなたの例はうまくいきません。 – yar
ありがとうRatbert。私は2番目の解決策を試して、次のようにしました:>> untitled2 {警告:同じ入力値が異なるサイズの入力行列を持つ2つの別々の呼び出しで供給されたとき、Integrand関数の出力が必要な許容値に一致しませんでした。関数が適切にベクトル化されていることを確認してください。 integral2Calcでintegral2Calc> integral2t(ライン55) においてintegral2Calc> integral2t /テンソル(ライン247) において > integral2において(ライン9) untitled2において(ライン106) (ライン5)} –
Iは第一の溶液を試し(losを定義する)、私は次のエラーがあります:添え字付きのディメンションの不一致。 myfunctionのエラー(行5) los(:、1)= x '; –