91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 276KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發布日期: 2021-05-09
  • 語言: C/C++
  • 標簽:

資源簡介

近代優化方法,利用C++編寫的PRP共軛梯度法求最優解的程序

資源截圖

代碼片段和文件信息

#include?
#include?
#include?“Matrix.h“

const?double?gama=2;
const?double?lamda=0.618033989;
const?double?h=0.001;
const?double?eps=10e-5;
double?X0[2]={00};

double?f(Matrix?x)
{
double?x1=x.elems[0]?x2=x.elems[1];
return?100*(x2-x1*x1)*(x2-x1*x1)+(1-x1)*(1-x1);
}

double?df1(Matrix?x)
{
????double?x1=x.elems[0]?x2=x.elems[1];
return?-400*x1*(x2-x1*x1)-2*(1-x1);
}

double?df2(Matrix?x)
{
????double?x1=x.elems[0]?x2=x.elems[1];
return?2*100*(x2-x1*x1);
}

Matrix?tiduf(Matrix?x)
{
Matrix?*ans=new?Matrix(21);
double?df[2]={df1(x)df2(x)};
*ans=Matrix(df21);
return?*ans;
}

void?ssqj(double?&a?double?&b?Matrix?x?Matrix?d)????//確定搜索區間的子函數用到引用類型的變量
{
double?a0=0.1?g1=gama?g2=gama?a1=a0+h?t?a2;
if?(?f(x+a0*d)>f(x+a1*d)?)
{
a2=a1+g1*h;
while?(?f(x+a2*d)<=f(x+a1*d)?)
{
g1=g1*gama;
a0=a1;
t=a2;
a2=a1+g1*h;
a1=t;
}
a=a0;
b=a2;
}
else
{
a2=a0-g2*h;
while?(?f(x+a2*d)<=f(x+a0*d)?)
{
g2=g2*gama;
a1=a0;
t=a2;
a2=a0-g2*h;
a0=t;
}
a=a2;
b=a1;
}
}

double?hjfg(double?a?double?b?Matrix?x?Matrix?d)??????//用黃金分割法搜索極值點的子函數
{
double?a1?a2;
a1=b-lamda*(b-a);
a2=a+lamda*(b-a);
while?(?(b-a)>=eps?)
{
if?(?f(x+a1*d)<=f(x+a2*d)?)
{
b=a2;
a2=a1;
a1=b-lamda*(b-a);
}
else
{
a=a1;
a1=a2;
a2=a+lamda*(b-a);
}
}
if?(?f(x+a1*d) return?a1;
else?
return?a2;
}

double?alphak(Matrix?x?Matrix?d)
{
double?a?b;
ssqj(abxd);?
return?hjfg(abxd);
}

int?main()
{
Matrix?x0(X021)?x1(21)?d(21)?y(21);
double?alpha?beta;
cout?< d=(-1)*tiduf(x0);
while?(1)
{
alpha=alphak(x0?d);
x1=x0+alpha*d;
if?(?tiduf(x0).norm() {
cout?< return?0;
}
????????else
{
beta=((tiduf(x1)-tiduf(x0)).trans()*tiduf(x1)).MTod()/(tiduf(x0).trans()*tiduf(x0)).MTod();
d=(-1)*tiduf(x1)+beta*d;
x0=x1;
}
}
return?0;
}

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????4363??2008-05-08?21:47??PRP\FR.dsp

?????文件????????529??2008-05-08?21:14??PRP\PRP.dsw

?????文件??????50176??2009-06-17?12:44??PRP\FR.ncb

?????文件???????1265??2009-06-17?13:59??PRP\FR.plg

?????文件???????2021??2008-05-28?22:22??PRP\Matrix.cpp

?????文件????????397??2008-05-04?20:12??PRP\Matrix.h

?????文件??????53760??2009-06-17?12:44??PRP\FR.opt

?????文件??????50176??2009-06-17?13:59??PRP\Debug\vc60.idb

?????文件??????61440??2009-06-17?13:59??PRP\Debug\vc60.pdb

?????文件??????14112??2009-06-17?13:59??PRP\Debug\Matrix.obj

?????文件?????258748??2009-06-17?13:59??PRP\Debug\FR.ilk

?????文件?????241733??2009-06-17?13:59??PRP\Debug\FR.exe

?????文件?????541696??2009-06-17?13:59??PRP\Debug\FR.pdb

?????文件?????281352??2009-06-17?13:59??PRP\Debug\FR.pch

?????文件??????30775??2009-06-17?13:59??PRP\Debug\FRmin.obj

?????文件??????41984??2009-06-18?08:37??PRP\PRP.ncb

?????文件???????2226??2009-06-17?13:59??PRP\FRmin.cpp

?????文件??????53760??2009-06-18?08:37??PRP\PRP.opt

?????目錄??????????0??2009-06-17?13:56??PRP\Debug

?????目錄??????????0??2009-06-17?13:56??PRP

-----------?---------??----------?-----??----

??????????????1690513????????????????????20


評論

共有 條評論

相關資源