机械优化设计黄金分割法 外推法(5)

时间:2026-01-17

y1=t; } a=a1; b=a3;

a1=b-l*(b-a); a2=a+l*(b-a);

x[i][1]=fun1(x[i-1][1],d[i][1],a1); x[i][2]=fun1(x[i-1][2],d[i][2],a1); y1=fun2(x[i][1],x[i][2]);

x[i][1]=fun1(x[i-1][1],d[i][1],a2); x[i][2]=fun1(x[i-1][2],d[i][2],a2); y2=fun2(x[i][1],x[i][2]); if(b<1e-3) { for(;fabs(b-a)>e;) { if(y1>=y2) {a=a1; a1=a2; y1=y2;

a2=a+l*(b-a);

x[i][1]=fun1(x[i-1][1],d[i][1],a2); x[i][2]=fun1(x[i-1][2],d[i][2],a2); y2=fun2(x[i][1],x[i][2]); } else {b=a2; a2=a1; y2=y1;

a1=b-l*(b-a);

x[i][1]=fun1(x[i-1][1],d[i][1],a1); x[i][2]=fun1(x[i-1][2],d[i][2],a1); y1=fun2(x[i][1],x[i][2]); } } } else { for(;fabs((b-a)/b)>=e||fabs((y2-y1)/y2)>=e;) { if(y1>=y2) {a=a1; a1=a2; y1=y2;

a2=a+l*(b-a);

x[i][2]=fun1(x[i-1][2],d[i][2],a2);

y2=fun2(x[i][1],x[i][2]); } else {b=a2; a2=a1; y2=y1;

a1=b-l*(b-a);

x[i][1]=fun1(x[i-1][1],d[i][1],a1); x[i][2]=fun1(x[i-1][2],d[i][2],a1); y1=fun2(x[i][1],x[i][2]); } } }

ax[k][i]=0.5*(a+b);

x[i][1]=fun1(x[i-1][1],d[i][1],ax[k][i]); x[i][2]=fun1(x[i-1][2],d[i][2],ax[k][i]); } }

while(sqrt(pow((x[2][1]-x[0][1]),2)+pow((x[2][2]-x[0][2]),2))>=1e-6); xx[1]=x[2][1]; xx[2]=x[2][2];

fi=fun2(xx[1],xx[2]);

printf("最优解为\nx1*=%f\nx2*=%f\n f*=%f\nk=%d\n",xx[1],xx[2],fi,k); }

运行过程及结果: 输入初始点坐标 8 9 最优解为 x1*=5.000000 x2*=6.000000 f*=0.000000 k=2

5.随机方向法

源程序:

机械优化设计黄金分割法 外推法(5).doc 将本文的Word文档下载到电脑

精彩图片

热门精选

大家正在看

× 游客快捷下载通道(下载后可以自由复制和排版)

限时特价:4.9 元/份 原价:20元

支付方式:

开通VIP包月会员 特价:19元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219