Method
NumCosmoMathLaurentSeriesTPSpow
Declaration [src]
void
ncm_laurent_series_tps_pow (
NcmLaurentSeriesTPS* out,
const NcmLaurentSeriesTPS* a,
gdouble p
)
Description [src]
Raises the truncated power series $a(g)$ to the real power p:
$out(g)=a(g)^p \mod g^{N+1}$. Only a plain gdouble exponent is
supported (not complex double): every current use (e.g.
NcGalaxyShapePopBeta‘s own $\rho^{2(\alpha-1)}$ composition) only ever
needs a real exponent, and restricting to real keeps this fully
introspectable (no native-only guard needed at all).
$a$ must have $a_0\ne0$: factor $a(g)=a_0(1+u(g))$ with $u(0)=0$, then $(1+u)^p=\sum_n c_n g^n$ ($c_0=1$) follows the generalized-binomial recursion $n c_n=\sum_{k=1}^n[kp-(n-k)]u_k c_{n-k}$ (from differentiating $F=(1+u)^p$: $(1+u)F’=p u’F$), and $out=a_0^p\,\sum_n c_n g^n$.
Parameters
a-
Type:
NcmLaurentSeriesTPSA
NcmLaurentSeriesTPSwhose order-0 coefficient $a_0=L_0(w=1)$ (a single harmonic-0 term) is nonzero.The data is owned by the caller of the method. p-
Type:
gdoubleThe (real) exponent.