# SageMath code for working with modular form 19663.2.a.n # Compute space of new eigenforms: from sage.modular.dirichlet import DirichletCharacter H = DirichletGroup(19663, base_ring=CyclotomicField(2)) chi = DirichletCharacter(H, H._module([0, 0])) B = ModularForms(chi, 1).cuspidal_submodule().basis() N = [B[i] for i in range(len(B))] # Compute space of new eigenforms: from sage.modular.dirichlet import DirichletCharacter H = DirichletGroup(19663, base_ring=CyclotomicField(2)) chi = DirichletCharacter(H, H._module([0, 0])) N = Newforms(chi, 2, names="a") # select newform: traces = [39,-9,-3,39,-12,0,39,-27,42,30,3,-6,0,-9,9,39,3,-60,-21,-72, -3,6,-30,0,39,-48,-72,39,-12,-18,-12,-63,-12,0,-12,105,6,42,-30,75,-42, 0,0,9,-33,36,6,75,39,-39,-15,18,0,42,-60,-27,-66,-30,21,-126,-3,-75,42, 39,-81,45,-36,-15,-78,30,-72,-147,-57,-171,42,-36,3,-45,-45,-144,-45,-9, -30,-6,-6,9,39,3,9,159,0,12,60,60,60,-18,6,-9,51,111] f = next(g for g in N if [g.coefficient(i+1).trace() for i in range(None)] == traces) # q-expansion: f.q_expansion() # note that sage often uses an isomorphic number field