机械优化设计-惩罚函数法(共5页).doc
《机械优化设计-惩罚函数法(共5页).doc》由会员分享,可在线阅读,更多相关《机械优化设计-惩罚函数法(共5页).doc(5页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上#include#include #define m 4float r=0.01;float f(float x);void mjtf(int n,float x0,float h,float s,float a,float b);void mhjfgf(int n,float a,float b,float flag,float x);void mpowell(int n,float x0,float h,float flag1,float flag2,float a,float b,float x);void mndcfhs(int n,float h,float
2、 x0,float flag1,float flag2,float flag3,float a,float b,float x);float f(float x) float result; result=(0.713+0.0085*x2*x2*x2-x2*x2/30000) +1/(x0-19) +1/(23-x0) +1/(x1-9.5) +1/(12.7-x1) +1/(x2-50) +1/(60-x2) +1/(x0*x1-37.1134) +1/(-x0*x1+927.835); return result; /*搜索区间子程序*/void mjtf(int n,float x0,f
3、loat h,float s,float a,float b) a0=9,b0=23; a1=1,b1=50; a2=10,b2=100; a3=1,b3=10; /*多维黄金分割法子程序*/void mhjfgf(int n,float a,float b,float flag,float x) int i; float x1m,x2m,f1,f2,sum; for(i=0;in;i+) /*计算初始两点*/ x1i=bi-(float)0.618*(bi-ai); f1=f(x1); for(i=0;in;i+) x2i=ai+(float)0.618*(bi-ai); f2=f(x2);
4、 do if(f1=f2) /*判断消去区间*/ for(i=0;in;i+) bi=x2i; for(i=0;in;i+) x2i=x1i; f2=f1; for(i=0;in;i+) x1i=bi-(float)0.618*(bi-ai); f1=f(x1); else for(i=0;in;i+) ai=x1i; for(i=0;in;i+) x1i=x2i; f1=f2; for(i=0;in;i+) x2i=ai+(float)0.618*(bi-ai); f2=f(x2); sum=0; for(i=0;iflag); for(i=0;in;i+) xi=(float)0.5*(b
5、i+ai); /*已达到,输出极小点*/ /*鲍威尔法子程序*/void mpowell(int n,float x0,float h,float flag1,float flag2,float a,float b,float x) int i,j,k,r; float x1m,x11m,x2m,f0,f1,f2,fnm,smm,sum; for(i=0;in;i+) /*方向矩阵初始化*/ for(k=0;kn;k+) if(i=k) sik=1; else sik=0; k=0; while(1) for(i=0;in;i+) x1i=x0i; x11i=x1i; for(i=0;in;i
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 机械 优化 设计 惩罚 函数
限制150内