📄 initf.m
字号:
% initf % ----- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% function [n,m,x0]=initf(nprob)% This function sets n,m, and the standard starting % point based on the nprob and returns it to initpt % function. % % Created on 10/30/94 by Madhu Lamba %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%function [n,m,x0] = initf(nprob)global FIRSTIME;% ROSE if nprob==1 n=2; m=2; x0=[-1.2,1]';% FROTHelseif nprob==2 n=2; m=2; x0=[0.5,-2]';% BADSCPelseif nprob==3 n=2; m=2; x0=[0,1]';% BADSCBelseif nprob==4 n=2; m=3; x0=[1,1]';% BEALEelseif nprob==5 n=2; m=3; x0=[1,1]';% JENSAMelseif nprob==6 n=2; m=input('Enter a number for m (>=2) :') x0=[0.3,0.4]'; % HELIXelseif nprob==7 n=3; m=3; x0=[-1,0,0]'; % BARDelseif nprob ==8 n=3; m=15; x0=[1,1,1]'; % GAUSSelseif nprob ==9 n=3; m=15; x0=[0.4,1,0]'; % MEYERelseif nprob == 10 n=3; m=16; x0=[0.02,4000,250]'; % GULFelseif nprob ==11 n=3; m=10; x0=[5,2.5,0.15]'; % BOXelseif nprob ==12 n=3; m=10; x0=[0,10,20]'; % SINGelseif nprob == 13 n=4; m=4; x0=[3,-1,0,1]'; % WOODelseif nprob == 14 n=4; m=6; x0=[-3,-1,-3,-1]'; % KOWOSBelseif nprob == 15 n=4; m=11; x0=[0.25,0.39,0.415,0.39]'; % BD elseif nprob == 16 n=4; m=20; x0=[25,5,-5,-1]'; % OSB1elseif nprob == 17 n=5; m=33; FIRSTIME=1; x0=[0.5,1.5,-1,0.01,0.02]'; % BIGGSelseif nprob == 18 n=6; m=13; x0=[1,2,1,1,1,1]'; % OSB2elseif nprob == 19 n=11; m=65; FIRSTIME=1; x0=[1.3,0.65,0.65,0.7,0.6,3,5,7,2,4.5,5.5]'; % WATSONelseif nprob == 20 n =input('Enter n (>=2 and <=31) :'); m=31; x0=zeros(n,1);% ROSEXelseif nprob==21 n=input('Enter an even number for n ?') m=n; for j=1:n/2 x0(2*j-1)=-1.2; x0(2*j)=1; end; x0=x0';% SINGXelseif nprob==22 n=input('Enter a multiple of 4 for n ?') m=n; for j=1:n/4 x0(4*j-3)=3; x0(4*j-2)=-1; x0(4*j-1)=0; x0(4*j)=1; end; x0=x0';% PEN1elseif nprob==23 n=input('Enter a number for n ?') m=n; for j=1:n x0(j)=j; end; x0=x0';% PEN2elseif nprob==24 n=input('Enter a number for n ?') m=2*n; x0=(1/2)*(ones(n,1));% VARDIMelseif nprob==25 n=input('Enter a number for n ?') m=n+2; for j=1:n x0(j)=1-(j/n); end; x0=x0';% TRIGelseif nprob==26 n=input('Enter a number for n ?') m=n; x0=(1/n)*(ones(n,1));% ALMOSTelseif nprob==27 n=input('Enter a number for n ?') m=n; x0=(1/2)*(ones(n,1));% BVelseif nprob==28 n=input('Enter a number for n ?') m=n; h=1/(n+1); for j=1:n t(j)=j*h; x0(j)=t(j)*(t(j)-1); end; x0=x0'; % IEelseif nprob==29 n=input('Enter a number for n ?') m=n; h=1/(n+1); for j=1:n t(j)=j*h; x0(j)=t(j)*(t(j)-1); end; x0=x0';% TRIDelseif nprob==30 n=input('Enter a number for n ?') m=n; x0=(-1)*(ones(n,1));% BAND elseif nprob ==31 n=input('Enter n :'); m=n; x0=(-1)*(ones(n,1));% LIN elseif nprob == 32 n=input('Enter n: '); m=input('Enter m ( >= n): '); x0=ones(n,1);% LIN1 elseif nprob ==33 n=input('Enter n: '); m=input('Enter m ( >= n): '); x0=ones(n,1);% LIN0 elseif nprob==34 n=input('Enter n: '); m=input('Enter m ( >= n): '); x0=ones(n,1);end%
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -