Esempio n. 1
0
def Sp4Z_j():
    bread = [("Modular Forms", url_for('mf.modular_form_main_page')),
             ('Siegel modular forms', url_for('.index')),
             ('$M_{k,j}(\mathrm{Sp}(4, \mathbb{Z}))$', '')]
    info = {'args': request.args}
    try:
        dim_args = dimensions.parse_dim_args(request.args, {
            'k': '10-20',
            'j': '0-30'
        })
    except ValueError:
        # error message is flashed in parse_dim_args
        info['error'] = True
    if not info.get('error'):
        info['dim_args'] = dim_args
        try:
            info['table'] = dimensions.dimension_table_Sp4Z_j(
                dim_args['k_range'], dim_args['j_range'])
        except NotImplementedError as err:
            flash(Markup(err), "error")
            info['error'] = True
    return render_template('ModularForm_GSp4_Q_Sp4Zj.html',
                           title='$M_{k,j}(\mathrm{Sp}(4, \mathbb{Z}))$',
                           bread=bread,
                           info=info)
Esempio n. 2
0
def ModularForm_GSp4_Q_Sp4Z_j():
    bread = [('Siegel modular forms', url_for('ModularForm_GSp4_Q_top_level')),
             ('$M_{k,j}(\mathrm{Sp}(4, \mathbb{Z}))$', '/ModularForm/GSp/Q/Sp4Z_j')]
    error = False
    jrange = xrange(0, 21)
    krange = xrange(10, 21)
    if request.args.get('j'):
        jr = parse_range(request.args.get('j'))
        if type(jr) is int:
            jrange = xrange(jr, jr+20+1);
        else:
            jrange = xrange(jr['$gte'], jr['$lte'])
    if request.args.get('k'):
        kr = parse_range(request.args.get('k'))
        if type(kr) is int:
            krange = xrange(kr, kr+10+1);
        else:
            krange = xrange(kr['$gte'], kr['$lte'])
    jrange = [x for x in jrange if x%2==0]
    try:
        dimtable = dimensions.dimension_table_Sp4Z_j(krange, jrange)
    except:
        error='Not all dimensions are implemented at the moment. Try again with a different range'
        dimtable=False
    return render_template('ModularForm_GSp4_Q_Sp4Zj.html',
                           title='$M_{k,j}(\mathrm{Sp}(4, \mathbb{Z}))$',
                           bread = bread,
                           dimtable = dimtable,
                           jrange=jrange,
                           krange=krange,
                           error=error)
Esempio n. 3
0
def ModularForm_GSp4_Q_Sp4Z_j():
    bread = [("Modular Forms", url_for('mf.modular_form_main_page')),
             ('Siegel modular forms', url_for('ModularForm_GSp4_Q_top_level')),
             ('$M_{k,j}(\mathrm{Sp}(4, \mathbb{Z}))$',
              '/ModularForm/GSp/Q/Sp4Z_j')]
    error = False
    jrange = xrange(0, 21)
    krange = xrange(10, 21)
    if request.args.get('j'):
        try:
            jr = parse_range(request.args.get('j'))
            if type(jr) is int:
                jrange = xrange(jr, jr + 20 + 1)
            else:
                jrange = xrange(jr['$gte'], jr['$lte'])
        except:
            error = "Error parsing input for j.  It needs to be an integer (such as 25), a range of integers (such as 2-10 or 2..10), or a comma-separated list of these (such as 4,9,16 or 4-25, 81-121)."
            flash(error, "error")
            return redirect(url_for(".ModularForm_GSp4_Q_Sp4Z_j"))

    if request.args.get('k'):
        try:
            kr = parse_range(request.args.get('k'))
            if type(kr) is int:
                if kr < 4:
                    kr = 4
                krange = xrange(kr, kr + 10 + 1)
            else:
                if kr['$gte'] < 4:
                    kr['$gte'] = 4
                krange = xrange(kr['$gte'], kr['$lte'])
        except:
            error = "Error parsing input for k.  It needs to be an integer (such as 25), a range of integers (such as 2-10 or 2..10), or a comma-separated list of these (such as 4,9,16 or 4-25, 81-121)."
            flash(error, "error")
            return redirect(url_for(".ModularForm_GSp4_Q_Sp4Z_j"))
    jrange = [x for x in jrange if x % 2 == 0]
    try:
        dimtable = dimensions.dimension_table_Sp4Z_j(krange, jrange)
    except:
        error = 'Not all dimensions are implemented at the moment. Try again with a different range'
        dimtable = False
    return render_template('ModularForm_GSp4_Q_Sp4Zj.html',
                           title='$M_{k,j}(\mathrm{Sp}(4, \mathbb{Z}))$',
                           bread=bread,
                           dimtable=dimtable,
                           jrange=jrange,
                           krange=krange,
                           error=error)
def ModularForm_GSp4_Q_Sp4Z_j():
    bread = [("Modular Forms", url_for('mf.modular_form_main_page')),
             ('Siegel modular forms', url_for('ModularForm_GSp4_Q_top_level')),
             ('$M_{k,j}(\mathrm{Sp}(4, \mathbb{Z}))$', '/ModularForm/GSp/Q/Sp4Z_j')]
    error = False
    jrange = xrange(0, 21)
    krange = xrange(10, 21)
    if request.args.get('j'):
        try:
            jr = parse_range(request.args.get('j'))
            if type(jr) is int:
                jrange = xrange(jr, jr+20+1);
            else:
                jrange = xrange(jr['$gte'], jr['$lte'])
        except:
            error="Error parsing input for j.  It needs to be an integer (such as 25), a range of integers (such as 2-10 or 2..10), or a comma-separated list of these (such as 4,9,16 or 4-25, 81-121)." 
            flash(error, "error")
            return redirect(url_for(".ModularForm_GSp4_Q_Sp4Z_j"))

    if request.args.get('k'):
        try:
            kr = parse_range(request.args.get('k'))
            if type(kr) is int:
                if kr<4:
                    kr=4
                krange = xrange(kr, kr+10+1);
            else:
                if kr['$gte']<4:
                    kr['$gte']=4
                krange = xrange(kr['$gte'], kr['$lte'])
        except:
            error="Error parsing input for k.  It needs to be an integer (such as 25), a range of integers (such as 2-10 or 2..10), or a comma-separated list of these (such as 4,9,16 or 4-25, 81-121)." 
            flash(error, "error")
            return redirect(url_for(".ModularForm_GSp4_Q_Sp4Z_j"))
    jrange = [x for x in jrange if x%2==0]
    try:
        dimtable = dimensions.dimension_table_Sp4Z_j(krange, jrange)
    except:
        error='Not all dimensions are implemented at the moment. Try again with a different range'
        dimtable=False
    return render_template('ModularForm_GSp4_Q_Sp4Zj.html',
                           title='$M_{k,j}(\mathrm{Sp}(4, \mathbb{Z}))$',
                           bread = bread,
                           dimtable = dimtable,
                           jrange=jrange,
                           krange=krange,
                           error=error)
Esempio n. 5
0
def Sp4Z_j():
    bread = [("Modular Forms", url_for('mf.modular_form_main_page')),
             ('Siegel modular forms', url_for('.index')),
             ('$M_{k,j}(\mathrm{Sp}(4, \mathbb{Z}))$', '')]
    info={'args':request.args}
    try:
        dim_args = dimensions.parse_dim_args(request.args, {'k':'10-20','j':'0-30'})
    except ValueError:
        # error message is flashed in parse_dim_args
        info['error'] = True
    if not info.get('error'):
        info['dim_args'] = dim_args
        try:
            info['table'] = dimensions.dimension_table_Sp4Z_j(dim_args['k_range'], dim_args['j_range'])
        except NotImplementedError as err:
            flash(Markup(err), "error")
            info['error'] = True
    return render_template('ModularForm_GSp4_Q_Sp4Zj.html',
                           title='$M_{k,j}(\mathrm{Sp}(4, \mathbb{Z}))$',
                           bread = bread,
                           info = info
                           )