# SageMath code for working with modular form 25230.2.a.o # Compute space of new eigenforms: from sage.modular.dirichlet import DirichletCharacter H = DirichletGroup(25230, base_ring=CyclotomicField(2)) chi = DirichletCharacter(H, H._module([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(25230, base_ring=CyclotomicField(2)) chi = DirichletCharacter(H, H._module([0, 0, 0])) N = Newforms(chi, 2, names="a") # select newform: traces = [1,1,-1,1,-1,-1,-4,1,1,-1,0,-1,2,-4,1,1,-6,1,4,-1,4,0,0,-1,1, 2,-1,-4,0,1,-8,1,0,-6,4,1,-2,4,-2,-1,6,4,4,0,-1,0,0,-1,9,1,6,2,-6,-1,0, -4,-4,0,0,1,10,-8,-4,1,-2,0,-4,-6,0,4,0,1,-2,-2,-1,4,0,-2,-8,-1,1,6,12, 4,6,4,0,0,-18,-1,-8,0,8,0,-4,-1,-2,9,0,1] 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