# SageMath code for working with modular form 28665.2.a.bv # Compute space of new eigenforms: from sage.modular.dirichlet import DirichletCharacter H = DirichletGroup(28665, base_ring=CyclotomicField(2)) chi = DirichletCharacter(H, H._module([0, 0, 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(28665, base_ring=CyclotomicField(2)) chi = DirichletCharacter(H, H._module([0, 0, 0, 0])) N = Newforms(chi, 2, names="a") # select newform: traces = [1,2,0,2,-1,0,0,0,0,-2,4,0,-1,0,0,-4,7,0,-2,-2,0,8,-3,0,1,-2, 0,0,-8,0,-2,-8,0,14,0,0,-2,-4,0,0,-3,0,2,8,0,-6,0,0,0,2,0,-2,13,0,-4,0, 0,-16,9,0,7,-4,0,-8,1,0,13,14,0,0,-9,0,11,-4,0,-4,0,0,0,4,0,-6,-6,0,-7, 4,0,0,6,0,0,-6,0,0,2,0,-19,0,0,2] 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