コード例 #1
0
def check_sym8_odd(prec=sym8_odd_prec):
    det_sym8_odd(prec=sym8_odd_prec)
    f187 = Deg2ModularFormQseries.load_from(fname_sym8_odd("f187", prec))
    es4, es6, _, _, x35 = degree2_modular_forms_ring_level1_gens(prec)
    g187 = (es4**3 - es6**2) * x35**5
    g187 = g187.normalize((12, -1, 14))
    f187 = f187.normalize((12, -1, 14))
    assert f187 == g187
コード例 #2
0
ファイル: test_const.py プロジェクト: stakemori/degree2
 def test_scalar_calc_form(self):
     '''Test SMFC.calc_form.
     '''
     prec = 5
     es4, es6, x10, x12, _ = degree2_modular_forms_ring_level1_gens(prec)
     c = SMFC([4, 6])
     self.assertTrue(c.calc_form(prec), es4 * es6)
     c = SMFC({(4, 6): 1})
     self.assertTrue(c.calc_form(prec), es4 * es6)
     c = SMFC([4, 4, 10, 12])
     self.assertTrue(c.calc_form(prec), es4 ** 2 * x10 * x12)
     c = SMFC({(4, 4, 6): 1, (4, 10): -1})
     self.assertTrue(c.calc_form(prec), es4 ** 2 * es6 - es4 * x10)
コード例 #3
0
ファイル: test_const.py プロジェクト: stakemori/degree2
 def test_division_multiplication(self):
     '''Test the method calc_form of ConstDivision and ConstMul.'''
     prec = 5
     es4, es6, _, _, _ = degree2_modular_forms_ring_level1_gens(prec)
     sccs = [SMFC([4, 6]), SMFC([10, 12])]
     cvc = ConstVectValued(2, sccs, 0, None)
     cd = ConstDivision([cvc], [1], SMFC([4, 6]), 0)
     cm = ConstMul(cvc, SMFC([4, 6]))
     F = cvc.calc_form(prec)
     G = cd.calc_form(prec)
     H = cm.calc_form(prec)
     self.assertNotEqual(F, 0)
     self.assertEqual(G.wt, 22)
     self.assertEqual(G * es4 * es6, F)
     self.assertEqual(H.wt, 42)
     self.assertEqual(H, F * es4 * es6)
コード例 #4
0
def save_sym8_odd_form(key, prec=sym8_odd_prec):
    fname = fname_sym8_odd(key, prec)
    if os.path.exists(fname):
        return None
    es4, es6, x10, x12, x35 = degree2_modular_forms_ring_level1_gens(prec)
    if key in sym8_odd_dct:
        wt_dcts = sym8_odd_dct[key]
        gens_dct = {4: es4, 6: es6, 10: x10, 12: x12, 35: x35}
        fs = [mul([gens_dct[k]**i for k, i in d.items()]) for d in wt_dcts]
        f = rankin_cohen_triple_det_sym8(*fs)
    elif key == "h15":
        f10 = rankin_cohen_pair_x5(_rankin_cohen_pair_sym_pol(8, 5, 5), prec)
        f = vector_valued_rankin_cohen(es4, f10)
    elif key == "h17":
        f12 = rankin_cohen_pair_det2_sym(8, es4, es6)
        f = vector_valued_rankin_cohen(es4, f12)
    f.save_as_binary(fname)
コード例 #5
0
ファイル: const.py プロジェクト: stakemori/degree2
 def calc_form(self, prec):
     es4, es6, x10, x12, x35 = degree2_modular_forms_ring_level1_gens(prec)
     x5 = x5__with_prec(prec)
     d = {4: es4, 6: es6, 10: x10, 12: x12, 5: x5, 35: x35}
     return self._calc_from_gens_dict(d)