linmin.h
来自「经典numerical receip 配套代码」· C头文件 代码 · 共 26 行
H
26 行
template <class T>
struct Linmin {
VecDoub &p;
VecDoub ξ
Doub &fret;
F1dim<T> f1dim;
Mnbrak mnbrak;
Brent brent;
Linmin(VecDoub_IO &pp, VecDoub_IO &xii, Doub &frett, T &func) :
p(pp), xi(xii), fret(frett), f1dim(p,xi,func) {}
void min()
{
const Doub TOL=1.0e-8;
Doub xx,xmin,fx,fb,fa,bx,ax;
Int n=p.size();
ax=0.0;
xx=1.0;
mnbrak.bracket(ax,xx,bx,fa,fx,fb,f1dim);
fret=brent.min(ax,xx,bx,f1dim,TOL,xmin);
for (Int j=0;j<n;j++) {
xi[j] *= xmin;
p[j] += xi[j];
}
}
};
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?