def processDirichletNavigation(args): logger.info(str(args)) try: logger.debug(args['start']) N = int(args['start']) if N < 3: N = 3 elif N > 100: N = 100 except: N = 3 try: length = int(args['length']) if length < 1: length = 1 elif length > 20: length = 20 except: length = 10 try: numcoeff = int(args['numcoeff']) except: numcoeff = 50 chars = LfunctionComp.charactertable(N, N + length, 'primitive') s = '<table>\n' s += '<tr>\n<th scope="col">Conductor</th>\n' s += '<th scope="col">Primitive characters</th>\n</tr>\n' for i in range(N, N + length): s += '<tr>\n<th scope="row">' + str(i) + '</th>\n' s += '<td>\n' j = i - N for k in range(len(chars[j][1])): s += '<a style=\'display:inline\' href="Character/Dirichlet/' s += str(i) s += '/' s += str(chars[j][1][k]) s += '/&numcoeff=' s += str(numcoeff) s += '">' s += '\(\chi_{' + str(chars[j][1][k]) + '}\)</a> ' s += '</td>\n</tr>\n' s += '</table>\n' return s
def processDirichletNavigation(args): logger.info(str(args)) try: logger.debug(args['start']) N = int(args['start']) if N < 3: N=3 elif N > 100: N=100 except: N = 3 try: length = int(args['length']) if length < 1: length = 1 elif length > 20: length = 20 except: length = 10 try: numcoeff = int(args['numcoeff']) except: numcoeff = 50 chars = LfunctionComp.charactertable(N, N+length,'primitive') s = '<table>\n' s += '<tr>\n<th scope="col">Conductor</th>\n' s += '<th scope="col">Primitive characters</th>\n</tr>\n' for i in range(N,N+length): s += '<tr>\n<th scope="row">' + str(i) + '</th>\n' s += '<td>\n' j = i-N for k in range(len(chars[j][1])): s += '<a style=\'display:inline\' href="Character/Dirichlet/' s += str(i) s += '/' s += str(chars[j][1][k]) s += '/&numcoeff=' s += str(numcoeff) s += '">' s += '\(\chi_{' + str(chars[j][1][k]) + '}\)</a> ' s += '</td>\n</tr>\n' s += '</table>\n' return s
def processEllipticCurveNavigation(args): try: logger.info(args['start']) N = int(args['start']) if N < 11: N = 11 elif N > 100: N = 100 except: N = 11 try: length = int(args['length']) if length < 1: length = 1 elif length > 20: length = 20 except: length = 10 try: numcoeff = int(args['numcoeff']) except: numcoeff = 50 iso_dict = LfunctionComp.isogenyclasstable(N, N + length) s = '<table>' s += '<tr><th scope="col">Conductor</th>\n' s += '<th scope="col">Isogeny Classes</th>\n</tr>\n' iso_dict.keys() logger.info(iso_dict) for cond in iso_dict.keys(): s += '<tr>\n<td scope="row">%s</td>' % cond for iso in iso_dict[cond]: logger.info("%s %s" % (cond, iso)) s += '<td><a href="EllipticCurve/Q/%(iso)s">%(iso)s</a></td>' % { 'iso': iso } s += '</tr>\n' s += '</table>\n' return s
def processEllipticCurveNavigation(args): try: logger.info(args['start']) N = int(args['start']) if N < 11: N=11 elif N > 100: N=100 except: N = 11 try: length = int(args['length']) if length < 1: length = 1 elif length > 20: length = 20 except: length = 10 try: numcoeff = int(args['numcoeff']) except: numcoeff = 50 iso_dict = LfunctionComp.isogenyclasstable(N, N+length) s = '<table>' s += '<tr><th scope="col">Conductor</th>\n' s += '<th scope="col">Isogeny Classes</th>\n</tr>\n' iso_dict.keys() logger.info(iso_dict) for cond in iso_dict.keys(): s += '<tr>\n<td scope="row">%s</td>' % cond for iso in iso_dict[cond]: logger.info("%s %s" % (cond, iso)) s += '<td><a href="EllipticCurve/Q/%(iso)s">%(iso)s</a></td>' % { 'iso' : iso } s += '</tr>\n' s += '</table>\n' return s