реализация, если isnan к интервалу выборки - PullRequest
0 голосов
/ 05 мая 2019

Я пытаюсь запустить функцию fseminf

        f = @(x) (x(1)-2).^2 + (x(2)-0.2).^2;
        g = @(x,s) 5*x(1).^2*sin(pi*sqrt(s))/(1+s.^2) - x(2);
        lb = [-1,0];
        ub = [1 ,0.2];
        S = [0,1];

A = [];
b = [];
Aeq = [];
beq = [];


x0 = [0,0]; 
x = fseminf(f,x0,1,@seminfcon1,A,b,Aeq,beq,lb,ub);

Где:

function [c, ceq, K1, s] = seminfcon1(x,s)
global S g

% No finite nonlinear inequality and equality constraints
c = [];
ceq = [];

% Sample set
if isnan(s)
    % Initial sampling interval
    s = [0.0001 0];
end
t = S(1):s(1):S(2);

% Evaluate the semi-infinite constraint
K1 = g(x,t);

Это код, который я использую для создания конечного набора из S, который является интервалом.Я не понимаю, как это работает, почему мы используем функцию isnan вместо простого объявления s = [0,0001] (что, кстати, не работает).Он используется для fseminf alghoritm, я взял код из примера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...