文档介绍:现代设计方法及其应用matlab程序作业()源程序:%坐标轮换法cleare=input('输入精度要求e:');X=input('输入初始点:');symstsa=10*X(1,1)^2+106*X(2,1)^2+10*X(1,1)*X(2,1)+96*X(1,1)+100*X(2,1);k=1;e1=[1;0];e2=[0;1];A=X;%A矩阵用于存储每一轮变换所得解C=X+t*e1;%沿e1方向搜索x1=C(1,1);x2=C(2,1);df=diff(10*x1^2+106*x2^2+10*x1*x2+96*x1+100*x2);t=solve(df);X=X+t*e1;C=X+s*e2;%沿e2方向搜索x1=C(1,1);x2=C(2,1);df=diff(10*x1^2+106*x2^2+10*x1*x2+96*x1+100*x2);s=solve(df);X=X+s*e2;A=[AX];b=10*X(1,1)^2+106*X(2,1)^2+10*X(1,1)*X(2,1)+96*X(1,1)+100*X(2,1);a=[ab];B=A(:,k+1)-A(:,k);whiledouble(sqrt(B(1,1)^2+B(2,1)^2))>esymstsC=X+t*e1;%沿e1方向搜索x1=C(1,1);x2=C(2,1);df=diff(10*x1^2+106*x2^2+10*x1*x2+96*x1+100*x2);t=solve(df);X=X+t*e1;C=X+s*e2;%沿e2方向搜索x1=C(1,1);x2=C(2,1);df=diff(10*x1^2+106*x2^2+10*x1*x2+96*x1+100*x2);s=solve(df);X=X+s*e2;A=[AX];b=10*X(1,1)^2+106*X(2,1)^2+10*X(1,1)*X(2,1)+96*X(1,1)+100*X(2,1);a=[ab];B=A(:,k+1)-A(:,k);k=k+1;endY=10*X(1,1)^2+106*X(2,1)^2+10*X(1,1)*X(2,1)+96*X(1,1)+100*X(2,1);A%n次迭代得到X值矩阵a%n次迭代得到函数值数组fprintf('轮换次数k=%f\n',k);XY调试结果:>>CoordinateExchange输入精度要求e::[4;3]A=[4,-63/10,-9991/2120,-21