Eisenstein series, optimized#
- sage.modular.modform.eis_series_cython.Ek_ZZ(k, prec=10)[source]#
Return list of prec integer coefficients of the weight k Eisenstein series of level 1, normalized so the coefficient of q is 1, except that the 0th coefficient is set to 1 instead of its actual value.
INPUT:
\(k\) – int
prec
– int
OUTPUT:
list of Sage Integers.
EXAMPLES:
sage: from sage.modular.modform.eis_series_cython import Ek_ZZ sage: Ek_ZZ(4,10) [1, 1, 9, 28, 73, 126, 252, 344, 585, 757] sage: [sigma(n,3) for n in [1..9]] [1, 9, 28, 73, 126, 252, 344, 585, 757] sage: Ek_ZZ(10,10^3) == [1] + [sigma(n,9) for n in range(1,10^3)] True
>>> from sage.all import * >>> from sage.modular.modform.eis_series_cython import Ek_ZZ >>> Ek_ZZ(Integer(4),Integer(10)) [1, 1, 9, 28, 73, 126, 252, 344, 585, 757] >>> [sigma(n,Integer(3)) for n in (ellipsis_range(Integer(1),Ellipsis,Integer(9)))] [1, 9, 28, 73, 126, 252, 344, 585, 757] >>> Ek_ZZ(Integer(10),Integer(10)**Integer(3)) == [Integer(1)] + [sigma(n,Integer(9)) for n in range(Integer(1),Integer(10)**Integer(3))] True
- sage.modular.modform.eis_series_cython.eisenstein_series_poly(k, prec=10)[source]#
Return the q-expansion up to precision
prec
of the weight \(k\) Eisenstein series, as a FLINTFmpz_poly
object, normalised so the coefficients are integers with no common factor.Used internally by the functions
eisenstein_series_qexp()
andvictor_miller_basis()
; see the docstring of the former for further details.EXAMPLES:
sage: from sage.modular.modform.eis_series_cython import eisenstein_series_poly sage: eisenstein_series_poly(12, prec=5) 5 691 65520 134250480 11606736960 274945048560
>>> from sage.all import * >>> from sage.modular.modform.eis_series_cython import eisenstein_series_poly >>> eisenstein_series_poly(Integer(12), prec=Integer(5)) 5 691 65520 134250480 11606736960 274945048560