Thanks to amazing code from "Guess who it is" here: Eisenstein Series in Mathematica? I'm able to make some nice plots using Eisenstein Series. What I'd like is a color plot of the argument of certain combinations of Eisenstein Series. What I have below, using DensityPlot, is nice, but what I was hoping for was something that emphasized more where the lines of constant argument are. Perhaps instead of a continuous variable for the angle, there is some way to partition the angles into 50 or so bins? Maybe that would show a little clearer where the lines of constant argument are.
The code I have so far is:
SetAttributes[EisensteinE, Listable];
EisensteinE[2, t_, s_] :=
With[{q3 = EllipticTheta[3, 0, Exp[I*Pi*(t + I*s)]]^2},
6/Pi EllipticE[InverseEllipticNomeQ[Exp[I*Pi*(t + I*s)]]] q3 -
q3^2 - EllipticTheta[4, 0, Exp[I*Pi*(t + I*s)]]^4]
EisensteinE[4, t_, s_] :=
(EllipticTheta[2, 0, Exp[I*Pi*(t + I*s)]]^8 +
EllipticTheta[3, 0, Exp[I*Pi*(t + I*s)]]^8 +
EllipticTheta[4, 0, Exp[I*Pi*(t + I*s)]]^8)/2
K[i_, j_] = ((EisensteinE[2, i, j])^2) - EisensteinE[4, i, j];
DensityPlot[Arg[K[i, j]/144], {i, -1/2, 1/2}, {j, 0, 3},
ColorFunction -> Hue, PlotLegends -> Automatic, ImageSize -> 300]
If my idea above of discretizing the angles is lousy, is there a more convenient way to achieve this? Also, any thoughts on why portions of the plot are simply white, as opposed to one of the colors labeling an angle?
MeshFunctions -> {#3 &}and an appropriate setting forMesh. Now a little technical note:InverseEllipticNomeQ[Exp[I π τ]] == ModularLambda[τ]. – J. M.'s missing motivation Aug 26 '15 at 07:33