LINUX.ORG.RU

[octave] параметры функции

 


0

1

Надо задачу оптимизации. Использую fminunc. В качестве параметров она принимает ссылку на функцию и данные инициализации.

Как мне передать в функцию, которую надо минимизировать, кроме этих данных еще какие-нибудь параметры (например большой массив констант?)

★★☆☆☆

Проблема решена с помощью анонимных функций.

Write a file containing the following code:

function y = parameterfun(x,a,b,c)
y = (a - b*x(1)^2 + x(1)^4/3)*x(1)^2 + x(1)*x(2) + ...
(-c + c*x(2)^2)*x(2)^2;

Assign values to the parameters and define a function handle f to an anonymous function by entering the following commands at the MATLAB prompt:

a = 4; b = 2.1; c = 4; % Assign parameter values
x0 = [0.5,0.5];
f = @(x)parameterfun(x,a,b,c)

Call the solver fminunc with the anonymous function:

[x,fval] = fminunc(f,x0)

dikiy ★★☆☆☆
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.