sousuo.m

来自「一些优化的源代码」· M 代码 · 共 43 行

M
43
字号
function [a,c,b]=sousuo                  %a:左端点    c:中间点     b:右端点
clc
a0=2;                                    %初始点
h=0.5;                                   %增长步长
gama=2;                                  %给定常数                              
a1=a0+h;
y0=fai(a0);
y1=fai(a1);
if(y0>y1)
    for i=1:inf
        a2=a1+gama^i*h;
        y2=fai(a2);
        if(y2>y1)            
            a=a0;
            b=a2;
            c=a1;
            break;
        end
        a0=a1;
        a1=a2;
    end
else
    aa=a1;
    a1=a0;
    a0=aa;
    yy=y0;        
    y0=y1;
    y1=yy;
    for i=1:inf
        a2=a1-gama^i*h;
        y2=fai(a2);
        if(y2>y1)
            a=a2;
            b=a0;
            c=a1;
            break;
        end
        a0=a1;
        a1=a2;
    end
end

        

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?