# SageMath code for working with modular form 729.2.e.s # Compute space of new eigenforms: from sage.modular.dirichlet import DirichletCharacter H = DirichletGroup(729, base_ring=CyclotomicField(18)) chi = DirichletCharacter(H, H._module([8])) 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(729, base_ring=CyclotomicField(18)) chi = DirichletCharacter(H, H._module([8])) N = Newforms(chi, 2, names="a") # select newform: traces = [12,3,0,-3,-12,0,-3,6,0,-6,3,0,6,6,0,27,-9,0,-12] f = next(g for g in N if [g.coefficient(i+1).trace() for i in range(19)] == traces) # q-expansion: f.q_expansion() # note that sage often uses an isomorphic number field