Classical-mf-structure

From Kiran Kedlaya's Wiki
Revision as of 18:05, 21 October 2015 by ICERM2015 (Talk | contribs)
Jump to: navigation, search

Structure of the modular_forms folder:

  • backend
    • __init__.py: imports the content of this directory.
    • mf_classes.py: defines two classes. ??? The 1st one should contain a (dimension?) table obtained from the DB, the 2nd one should contain a single modular form obtained from the DB. ???
    • mf_utils.py: utility functions. The 1st one returns the list of distinct values of a field with a given key among all documents in the database.
  • elliptic_modular_forms
    • __init__.py: sets some global constants, imports the contents of this directory, initializes the Blueprint and logger.
    • test_emf.py: defines a class implementing tests for the emf pages.
    • backend
      • __init__.py: sets up connection to the database
      • emf_classes.py: Defines two classes: one reads a table of dimensions from the DB; the other displays table of holomorphic modular forms. CV adding detailed comments 10/14.
      • emf_core.py: "core functions" for forms and spaces of forms: get dimensions, sturm bound, decompose into subspaces, get eigenvalues, compute Fourier coefficients, determine CM status, Satake parameters.
      • emf_download_utils.py: user download routines, mostly around Fourier coeffs.
      • emf_utils.py: parsing functions, e.g. for ranges, or from tuple level,weight,char to string "emf.level.weight.char" and vice-versa... , code to fetch a fund domain plot from the database or draw it on the fly, code to fetch dimension of form spaces, interface between Sage and Conrey characters, and conversion from Sage NumberFields to corresponding LMFDB label. Also defines ajax_ functions (???).
      • experimental !!!! (empty)
      • web_newforms.py: imports WebXXX basic types (int, string...) and defines WebXXX classes to display q-exps and Hecke eigenvals, which are themselves used to define a WebNewform class, which includes methods to get complex coefficient embebbings, Atkin-Lehner eigenvals, coefficient field LMFDB label, ... also defines the function 0->'a', 1-> 'b', .., 26->'aa', ... used to label newforms in a given form space.
      • web_object.py
      • plot_dom.py
      • web_character.py
      • web_modform_space.py
    • views
      • __init__.py: imports the content of this directory.
      • emf_render_navigation.py: Defines 2 functions. 1st one is experimental (ranges) and calls 2nd one immediately, its code is never executed. 2nd one reads the database, creates a table (levels x weights) of form spaces, and renders the navigation page. It can also render a fundamental domain plot if given appropriate argument.
      • emf_render_web_modform_space.py
      • experimental !!!! (empty)
      • emf_render_web_newform.py
      • emf_main.py
      • emf_render_web_modform_space_gamma1.py
      • static ???? Probably not used (deleting it does not seem to break anything)
        • elliptic_modular_form_scripts.js ????
        • elliptic_modular_form_util-functions.js ????
      • templates
        • emf_browse_fixed_level.html
        • emf_navigation.html
        • emf_table.html
        • emf_web_newform.html
        • geometric.html
        • select_ranges.html
        • emf_browse_spaces.html
        • emf_render_web_modform_space_gamma1.html
        • emf_web_modform_space.html
        • not_available.html
        • experimental !!!!
          • data_table.html
          • emf2.html
          • emf_browse.html
          • emf_browse_graph.html
          • emf_browse_range.html
          • emf_new.html
          • emf_table2.html
  • maass_forms
    • ...
  • views
    • __init__.py: imports the content of this directory.
    • mf_main.py: defines the body_class to be "mf" and routes "/".
    • templates
      • mf_navigation.html: main navigation page of modular forms. List of links to pages of various types of modular forms.
Personal tools