freizr.m

来自「交通平衡配流问题中,Freiz提出受限制的网络灵敏度分析方法,这是一个实例的代码」· M 代码 · 共 27 行

M
27
字号
function FreizR 
k=1; 
Q=[2,-1;-1,2]; 
x(k)={[2;2]}; 
%d(k)=-f(x(k));
s=0.01;
while norm(f(x(k)))>=s     
    L=(x(k)'*x(k))/(x(k)'*Q*x(k));     
    x(k+1)=x(k)+L*d(k);     
    x=x(k+1);     
    if norm(f(x(k+1)))>=s         
        LL=norm(f(x(k+1)))^2/norm(f(x(k)))^2;         
        d(k+1)=-f2(x(k+1))+LL*d(k);         
        k=k+1;         
        if k>=3             
            x(1)=x(3);            
            k=1;            
            d(1)=-f(x(1));         
        end     
    else        
        break;     
    end  
end  
function v1=f(z) 
v1=[2 -1]*z+2;  
function v2=f2(z) 
v2=[2*z(1)-z(2)+2;2*z(2)-z(1)-4]; 

⌨️ 快捷键说明

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