Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
Download

Testing latest pari + WASM + node.js... and it works?! Wow.

28494 views
License: GPL3
ubuntu2004
Function: mfeval
Section: modular_forms
C-Name: mfeval
Prototype: GGGb
Help: mfeval(mf,F,vtau): computes the numerical value of the modular form F
 at the point vtau or the vector vtau of points in the completed
 upper-half plane.
Doc: Computes the numerical value of the modular form $F$, belonging
 to \var{mf}, at the complex number \kbd{vtau} or the vector \kbd{vtau}
 of complex numbers in the completed upper-half plane. The result is given
 with absolute error less than $2^{-B}$, where $B = \text{realbitprecision}$.

 If the field of definition $\Q(F)$ is larger than $\Q(\chi)$ then $F$ may be
 embedded into $\C$ in $d=[\Q(F):\Q(\chi)]$ ways, in which case a vector of
 the $d$ results is returned.
 \bprog
 ? mf = mfinit([11,2],0); F = mfbasis(mf)[1]; mfparams(F)
 %1 = [11, 2, 1, y, t-1]  \\ Q(F) = Q(chi) = Q
 ? mfeval(mf,F,I/2)
 %2 = 0.039405471130100890402470386372028382117
 ? mf = mfinit([35,2],0); F = mfeigenbasis(mf)[2]; mfparams(F)
 %3 = [35, 2, 1, y^2 - y - 4, t - 1] \\ [Q(F) : Q(chi)] = 2
 ? mfeval(mf,F,I/2)
 %4 = [0.045..., 0.0385...] \\ sigma_1(F) and sigma_2(F) at I/2
 ? mf = mfinit([12,4],1); F = mfbasis(mf)[1];
 ? mfeval(mf, F, 0.318+10^(-7)*I)
 %6 = 3.379... E-21 + 6.531... E-21*I \\ instantaneous !
 @eprog\noindent In order to maximize the imaginary part of the argument,
 the function computes $(f \mid_k \gamma)(\gamma^{-1}\cdot\tau)$ for a
 suitable $\gamma$ not necessarily in $\Gamma_0(N)$ (in which case $f \mid
 \gamma$ is evaluated using \kbd{mfslashexpansion}).
 \bprog
 ? T = mfTheta(); mf = mfinit(T); mfeval(mf,T,[0,1/2,1,oo])
 %1 = [1/2 - 1/2*I, 0, 1/2 - 1/2*I, 1]
 @eprog