Matlab, сумма символических функций

Я бы использовал jQuery, потому что тогда все, что вам нужно сделать, это следующее:

$(window).blur(function(){
  //your code here
});
$(window).focus(function(){
  //your code
});

Или, по крайней мере, это сработало для меня.

0
задан Oscar 3 March 2019 в 15:44
поделиться

1 ответ

Вот пример использования двух разных решателей (сначала я не имел доступа к Optimization Toolbox и использовал доступный fminsearch)

function [] = main()

    z = [1 2 3;
         4 5 6;
         7 8 9];

    a = [1;3;5];

    b = [1;7;2];

    opt_fms = optimset('Display','iter');

    x0 = 1;
    %[x, fval] = fminsearch(@myfun,x0, opt_fms, z, a, b)
    [x, fval] = lsqnonlin(@myfun,x0, [], [], opt_fms, z, a, b)
end

function F = myfun(o, z, a, b)
    F = 0;
    n = numel(a);
    for i = 1:n
        for j = 1:n
            F = F + (z(i, j) - (sqrt(a(i, 1)+b(j, 1)) + o)).^2;
        end
    end
end

lsqnonlin результат (функция возвращает значение в Степень 2):

x =
    2.5631
fval =
   2.1663e+03

Результат fminsearch:

x =
    2.5631
fval =
   46.5441

Вот график функции с результатом оптимизации (из fminsearch):

[ 116] enter image description here

0
ответ дан Anton 3 March 2019 в 15:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: