30 template<
int PolySize>
39 template<
int PolySize>
52 "Polynomial<PolySize>::Polynomial(const word&, Istream&)"
53 ) <<
"Expected polynomial name " << name <<
" but read " << isName
60 if (this->
size() == 0)
64 "Polynomial<PolySize>::Polynomial(const word&, Istream&)"
65 ) <<
"Polynomial coefficients for entry " << isName
71 template<
int PolySize>
78 logActive_(poly.logActive_),
79 logCoeff_(poly.logCoeff_)
85 template<
int PolySize>
92 template<
int PolySize>
99 template<
int PolySize>
102 scalar
y = this->v_[0];
104 for (label i=1; i<PolySize; i++)
106 y += this->v_[i]*
pow(x, i);
111 y += logCoeff_*
log(x);
118 template<
int PolySize>
129 "scalar Polynomial<PolySize>::integrateLimits"
134 ) <<
"Cannot integrate polynomial with logarithmic coefficients"
144 template<
int PolySize>
150 newCoeffs[0] = intConstant;
153 newCoeffs[i + 1] = this->v_[i]/(i + 1);
160 template<
int PolySize>
166 if (this->v_[0] > VSMALL)
172 newCoeffs[0] = intConstant;
176 for (label i=1; i<PolySize; i++)
178 newCoeffs[i] = this->v_[i]/i;