def __init__(self, wt, prec=5, base_ring=QQ, fc_dct=None): self.__wt = wt if fc_dct is None: fc_dct = {} for (n, r, m) in PrecisionDeg2(prec): fc = self.fourier_coefficient(n, r, m) fc_dct[(n, r, m)] = fc fc_dct[(n, -r, m)] = fc if wt in [4, 6]: base_ring = ZZ ModFormQexpLevel1.__init__(self, wt, fc_dct, prec, base_ring)
def load_basis_from(self, filename): dicts = load(filename) prec = dicts[0]["prec"] if self.prec > PrecisionDeg2._from_dict_to_object(prec): msg = "self.prec must be less than {prec}".format(prec=prec) raise RuntimeError(msg) basis = [ModFormQexpLevel1._from_dict_to_object(dct) for dct in dicts] self.__basis_cached = True self.__cached_basis = basis