フィルターのクリア

Problem passing function to lsqnonlin with costant parameters

1 回表示 (過去 30 日間)
Eugenio Grabovic
Eugenio Grabovic 2019 年 1 月 15 日
コメント済み: Eze Far 2023 年 7 月 5 日
Hello, i have this function to pass to lsqnonlin :
[val,Jac] = myfunction(x,par1,par2,par3)
my function computes already the Jacobian that im planning to pass to slqnonlin and is essential.
x is the optimization variable and par1,par2... are constant parameters required to evaluate the function and are computed separately.
The problem then is how i declare x as the only optimization variable?
I can't use function handle otherwise i would lose my multi ouput;
I can't declare par1,par2,... as globals cause myfunction has parallelization in it;
I could pass the code to evaluate pars into myfunction but it would add not necessary heavy computation into each iteration of lsqnonlin which i'd like to avoid;
Any other ideas? Thank you

採用された回答

Matt J
Matt J 2019 年 1 月 15 日
編集済み: Matt J 2019 年 1 月 15 日
par1=______;
par2=______;
par3=______;
lsqnonlin(@(x) myfunction(x,par1,par2,par3), __________);
  6 件のコメント
Matt J
Matt J 2023 年 7 月 4 日
@Eze Far Yes, it will.
Eze Far
Eze Far 2023 年 7 月 5 日
@Matt J thanks!

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeProblem-Based Optimization Setup についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by