fminsearchを用いて定積分の式に含まれる未知数を最適化する方法はありますか?
1 回表示 (過去 30 日間)
古いコメントを表示
未知数 x を含む y についての定積分(Y1,Y2)を用いた関数 fun が最小となる x の探索を fminsearch により行おうとしています。
しかし、未知数 x をどのように定義すれば上手くいくのかがわかりません。
Fx = @(y) x(1)./y+x(2)./y;
Y1 = integral(Fx,1,2);
Y2 = integral(Fx,3,4);
fun = @(x) (1-Y1)^2+(1-Y2)^2;
format long
x0 = [1,2];
x = fminsearch(fun,x0)
このようなコードを実行しましたが、当然、funx について
関数 'x' (タイプ'double' の入力引数) が未定義です。
というエラーが発生してしまいます。
何卒ご回答の程、よろしくお願いします。
0 件のコメント
採用された回答
Aoi Midori
2018 年 12 月 4 日
無名関数で記述するには内容が長いので、fun.m(添付)のように別ファイルで関数を記述し、以下の要領でサーチしてはいかがでしょうか?
x0 = [1,2];
x = fminsearch(@fun,x0);
0 件のコメント
その他の回答 (0 件)
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!