好文档 - 专业文书写作范文服务资料分享网站

机械优化设计实验报告 - 图文 

天下 分享 时间: 加入收藏 我要投稿 点赞

}

double gold(double a[],double b[],double eps,int n,double xx[]) {

int i;

double f1,f2,*x[2],ff,q,w; for(i=0;i<2;i++)

x[i]=(double*)malloc (n*sizeof(double));

for(i=0;i

{*(x[0]+i)=a[i]+0.618*(b[i]-a[i]); *(x[1]+i)=a[i]+0.382*(b[i]-a[i]); }

f1=objf(x[0]); f2=objf(x[1]); do {if(f1>f2) {for(i=0;i

*(x[1]+i)=a[i]+0.382*(b[i]-a[i]);

}

f2=objf(x[1]); } else

{for(i=0;i

*(x[0]+i)=a[i]+0.618*(b[i]-a[i]);

f1=objf(x[0]); } q=0;

for(i=0;i

q=q+(b[i]-a[i])*(b[i]-a[i]);

w=sqrt(q); }while(w>eps); for(i=0;i

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

ff=objf(xx); for(i=0;i<2;i++)

free(x[i]); return(ff);

double oneoptim(double x0[],double s[],double h0,double epsg,int n,double x[])

{double *a,*b,ff;

a=(double *)malloc(n*sizeof(double)); b=(double *)malloc(n*sizeof(double)); jtf(x0,h0,s,n,a,b); ff=gold(a,b,epsg,n,x); free(a); free(b); return(ff); }

double powell(double p[],double h0,double eps,double epsg,int n,double x[])

{int i,j,m;

double *xx[4],*ss,*s;

double f,f0,f1,f2,f3,fx,dlt,df,sdx,q,d;

ss=(double *)malloc(n*(n+1)*sizeof(double)); s=(double *)malloc(n*sizeof(double)); for (i=0;i

for (i=0;i<4;i++)

xx[i]=(double *)malloc(n*sizeof(double)); for (i=0;i

*(xx[0]+i)=p[i];

for(;;)

{for (i=0;i

f0=f1=objf(x); dlt=-1;

for (j=0;j

f=oneoptim(xx[0],s,h0,epsg,n,x); df=f0-f;

if(df>dlt) }

sdx=0.; for (i=0;i

sdx=sdx+fabs(x[i]-(*(xx[1]+i))); if(sdx

{ }

free(ss); free(s); for (i=0;i<4;i++) free(xx[i]); return(f);

for (i=0;i

*(xx[2]+i)=x[i]; f2=f;

for (i=0;i

{*(xx[3]+i)=2.*(*(xx[2]+i)-(*(xx[1]+i))); x[i]=*(xx[3]+i); } fx=objf(x); f3=fx;

q=(f1-2*f2+f3)*(f1-f2-dlt)*(f1-f2-dlt); d=0.5*dlt*(f1-f3)*(f1-f3); if((f3

{if(f2<=f3)

for (i=0;i

for (i=0;i

机械优化设计实验报告 - 图文 

}doublegold(doublea[],doubleb[],doubleeps,intn,doublexx[]){inti;doublef1,f2,*x[2],ff,q,w;for(i=0;i<2;i++)x[i]=(double*)malloc
推荐度:
点击下载文档文档为doc格式
2cnrx7or360zdc523xwm17c19373ml00go5
领取福利

微信扫码领取福利

微信扫码分享