本文整理汇总了C++中Polynomial::func方法的典型用法代码示例。如果您正苦于以下问题:C++ Polynomial::func方法的具体用法?C++ Polynomial::func怎么用?C++ Polynomial::func使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Polynomial
的用法示例。
在下文中一共展示了Polynomial::func方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: newton_root
// given f and its derivative f_, and a init x0, return its newton_iteration result to find a root
static bool newton_root(long double x0, const Polynomial & f, const Polynomial & f_, long double & root)
{
root = x0;
long double nf, nf_;
int iter = 0;
while (fabs(nf = f.func(root)) > smalleps)
{
nf_ = f_.func(root);
if (fabs(nf_) < smalleps) return false;
root = root - nf / nf_;
iter++;
if (iter >= 128) return false;
}
return true;
}
示例2: findRootMultiple
// after we find a root of a polynomial, use this method to determine its multiple
static int findRootMultiple(long double x, const Polynomial & f)
{
int ret = 1;
Polynomial now = f;
double zeroeps = 1e-6;
while (true)
{
now = now.qiudiao();
if (now.coff.size() == 0) break;
long double nowf = now.func(x);
if (fabs(nowf) < zeroeps) ret++;
else break;
zeroeps *= 4;
}
return ret;
}