Skip to content

nome Convention Consistency for EisensteinE2 and Elliptic Functions? #38

@xiaodong-hu

Description

@xiaodong-hu

I just wonder whether your convention for the "nome" is consistent through the whole package --- "nome" is usually defined as $q=e^{i\pi\tau}$ for elliptic function (like theta function), but in many number theory literature $q=e^{i2\pi\tau}$, as is emphasized on mathworld https://mathworld.wolfram.com/Nome.html

Extreme care is needed when consulting the literature, as it is common in the theory of modular functions (and in particular the Dedekind eta function) to use the symbol q to denote $e^{2\pi i\tau}$, i.e., the square of the usual nome $e^{i\pi i \tau}$

For example, there are two Eisenstein series, $E_2(\tau):=\frac{1}{2}\sum_{(m,n)\in\mathbb Z^2_{\text{prime}}}\frac{1}{(m+n\tau)^2}$, and $G_2(\tau):=\sum_{(m,n)\in\mathbb Z^2}\frac{1}{(m+n\tau)^2}$ in Eisenstein sum sense, which are expected to satisfy

$$ G_2(\tau)=2\zeta(2)E_2(\tau), $$

and

$$ E_2=1-24\sum_{n=1}^\infty\sigma_1(n)q_{\text{number}}^n\quad\text{with}\quad q_{\text{number}}\equiv e^{i2\pi\tau} $$

for sum of divisor powers $\sigma_r(n):=\sum_{d|n}d^r$. This series converge very fast so can be directly evaluated.

Now to examine the convention of nome in this package, I test for the for the lattice $\mathbb L=\{1m+2in\mid (m,n)\in\mathbb Z^2\}$, so $\tau=2i$ and $q_{\text{number}}=e^{-4\pi}$. By truncate the series upto $n=3$ by hand, I get

using Primes

""" Return the factors of n, including 1, n """
function factors(n::T)::Vector{T} where {T<:Integer}
    sort(vec(map(prod, Iterators.product((p .^ (0:m) for (p, m) in Primes.eachfactor(n))...))))
end

N = 3 # truncation for the series of E2
@show E2_tau =  1 - 24 * sum([sum(factors(n)) * exp(-4π*n) for n in 1:N]) # 0.9999163029078149
@show G2_tau = pi^2/3 * E2_tau # 3.2895927812999894

I can double check this result of G2 using another version of "G2", denoted by $G_2(\mathbb L)$ for the lattice, with sum in the principal value sense

$$ G_2(\mathbb L)=\text{P.V.}\sum_{w\in\mathbb L\setminus{0}}\frac{1}{w^2}\equiv\lim_{R\rightarrow\infty}\sum_{w\in\mathbb L\bigcap R\mathcal O\setminus{0}}\frac{1}{w^2} $$

for the neighbor $\mathcal O$ around the origin. The relation of this $G_2(\mathbb L)$ and Eisensteins' $G_2$ is (see Eq.(1.35) in https://mtaylor.web.unc.edu/wp-content/uploads/sites/16915/2018/04/wpfs.pdf)

$$ G_2(\mathbb L)=G_2(\tau) - \frac{\pi}{\text{cell-vol}}\frac{\bar\omega_1}{\omega_1}. $$

Brute-forcely, I can truncate $R=100$ and compute this $G_2(\mathbb L)$:

@show G2_L = begin
            truncation_radius = 100
            n_ω1_truncation = Int(floor(truncation_radius / abs(ω1)))
            n_ω2_truncation = Int(floor(truncation_radius / abs(ω2)))
            site_cart_list = [m * ω1 + n * ω2 for m in -n_ω1_truncation:n_ω1_truncation for n in -n_ω2_truncation:n_ω2_truncation]
            site_cart_list = filter(z -> abs(z) > 1.0E-10, site_cart_list)

            sum([1.0 / site_cart^2 for site_cart in site_cart_list])
        end # 1.7138213711774903 + 4.2934406030425976e-17im

Then with $\text{cell-vol}=2$, we have

@show G2_tau_from_G2_L = G2_L + pi / 2 * imag(1)/1 # 3.284617697972387 + 4.2934406030425976e-17im

which is consistent with the value obtained from $E_2$ above (but with less accuracy due to the slow convergence)


However, with the conventional "nome" $q=e^{i\pi\tau}=e^{-2\pi}$ and the method EisensteinE2, I got

Riemann_zeta_2 = pi^2/3
@show EisensteinE2(exp(-2pi)) * Riemann_zeta_2 # 3.1415926535897936 + 0.0im

which is terribly WRONG!

While with the number-theory convention $q_{\text{number}}=e^{-4\pi}$, I got

Riemann_zeta_2 = pi^2/3
@show EisensteinE2(exp(-4pi)) * Riemann_zeta_2 # 3.2895927812999886 + 0.0im

which is correct!

So my puzzle is on the consistency of the concept of "nome" of this package, I am afraid the two-$q$ get mixed here: the "nome" for Jacobi theta function is $q=e^{i\pi\tau}$ (this is discuss in #13), while the standard "q" for number theory is $q=e^{i2\pi\tau}$. If so, please change the doc for Eisenstein series and related number theory functions

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions