# SageMath code for working with modular form 960.2.bc.e


# Compute space of new eigenforms: 
from sage.modular.dirichlet import DirichletCharacter
H = DirichletGroup(960, base_ring=CyclotomicField(4))
chi = DirichletCharacter(H, H._module([2, 3, 0, 1]))
N = Newforms(chi, 2, names="a")

# select newform: 
traces = [16,0,0,0,-8,0,4,0,-16,0,0]
f = next(g for g in N if [g.coefficient(i+1).trace() for i in range(11)] == traces)

# q-expansion: 
f.q_expansion() # note that sage often uses an isomorphic number field