FLINT3.7.0-dev

acb_theta_sum_worker_t

Synopsis#include <flint/acb_theta.h>
acb_theta_sum_worker_t

The type of the function that processes one line (a one-dimensional slice) of an ellipsoid: void worker(acb_ptr th, acb_srcptr v1, acb_srcptr v2, const slong * precs, slong len, const acb_t c, const slong * coords, slong ord, slong g, slong prec, slong fullprec).

For a line with fixed n1,…,ng−1n_1, \ldots, n_{g-1} and nmin⁡≤n0≤nmax⁡n_{\min} \le n_0 \le n_{\max}, the arguments are: the output th to which the terms are added; v1=(eπij2τ0,0)jv_1 = (e^{\pi i j^2 \tau_{0,0}})_j and v2=(xj)jv_2 = (x^j)_j for nmin⁡≤j≤nmax⁡n_{\min} \le j \le n_{\max} with x=e2πiz0∏k≥1e2πinkτ0,kx = e^{2\pi i z_0} \prod_{k \ge 1} e^{2\pi i n_k \tau_{0,k}}; the cofactor c=∏k≥1e2πinkzk∏1≤j≤k<geπi(2−δj,k)njnkτj,kc = \prod_{k \ge 1} e^{2\pi i n_k z_k} \prod_{1\leq j\leq k < g} e^{\pi i (2 - \delta_{j,k}) n_j n_k \tau_{j,k}}; the working precision of each term in precs; the common length len =nmax⁡−nmin⁡+1= n_{\max} - n_{\min} + 1 of v1, v2 and precs; coords =(nmin⁡,n1,…,ng−1)= (n_{\min}, n_1, \ldots, n_{g-1}); the derivation order ord; the precision prec of the line and fullprec for the sum. This lets the worker use acb_dot, with fewer than two complex multiplications per lattice point on average and with lower precision for points far from the center.

Cite this page

The FLINT team, “acb_theta_sum_worker_t (acb_theta.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/acb_theta/acb_theta_sum_worker_t.html (generated 2026-11-02).