From c2c48ce70e942aaea78d6a2100411803db7ff8bf Mon Sep 17 00:00:00 2001 From: bryan newbold Date: Sun, 14 Jun 2009 23:28:58 -0400 Subject: more progress on appengine conversion; BROKEN --- equations/models.py | 115 +++++++++++++++++----------------------------------- equations/views.py | 57 +++++++++++++++++++++++++- symbols.json | 1 + urls.py | 4 +- variables.json | 1 + 5 files changed, 98 insertions(+), 80 deletions(-) create mode 100644 symbols.json create mode 100644 variables.json diff --git a/equations/models.py b/equations/models.py index ca68ba7..9b8a38d 100644 --- a/equations/models.py +++ b/equations/models.py @@ -1,111 +1,78 @@ -from django.db import models +#from django.db import models from django.utils.translation import gettext_lazy as _ import django.contrib.auth.models as auth from django.conf import settings from django.dispatch import dispatcher -from django.db.models import signals -from signals import update_render +#from django.db.models import signals +#from signals import update_render +from appengine_django.models import BaseModel +from google.appengine.ext import db -class Symbol(models.Model): - name = models.CharField(_("Name")) - latex = models.TextField(_("Raw LaTeX"), unique=True) - unicode = models.TextField(_("Unicode Representation"), blank=True) - renderdir = "symbolrenders/" - render = models.ImageField(_("Rendered Image"), - upload_to=renderdir, editable=False) + +class Symbol(BaseModel): + name = db.StringProperty(_("Name")) + latex = db.TextProperty(_("Raw LaTeX")) + unicode = db.TextProperty(_("Unicode Representation")) + #renderdir = "symbolrenders/" + #render = models.ImageField(_("Rendered Image"), + #upload_to=renderdir, editable=False) class Meta: get_latest_by = 'name' class Admin: ordering = ['name'] - + + def _get_pk_val(self): + return self.key().id() def __str__(self): return self.name def get_absolute_url(self): return "/symbol/%s/" % self.id def get_admin_url(self): return "/admin/symbols/%s/" % self.id - #def save(self): - # super(Symbol, self) - # self.update_generic_variable() - def save(self): - super(Symbol, self).save() - self.render = self.renderdir + "%s.png" % self.id - super(Symbol, self).save() - -#signals.pre_save.connect(update_render, sender=Symbol) -#dispatcher.connect(update_render, signal=signals.pre_save, sender=Symbol) -def update_generic_variable(sender, instance, signal, *args, **kwargs): - """Checks if there is a generic variable associated with this - symbol; create one if there isn't""" - for v in Variable.objects.filter(isgeneric=True): - if v.latex == instance.latex: - return - genericv = Variable(name="Generic %s" % instance.name, - latex=instance.latex, - unicode=instance.unicode, - symbol=instance, - isgeneric=True) - genericv.save() - -#signals.pre_save.connect(update_render, sender=Symbol) -#signals.post_save.connect(update_generic_variable, sender=Symbol) -#dispatcher.connect(update_render, signal=signals.pre_save, sender=Symbol) -#dispatcher.connect(update_generic_variable, signal=signals.post_save, -# sender=Symbol) - -class Variable(models.Model): - name = models.CharField(_("Name")) - latex = models.TextField(_("Raw LaTeX"), unique=True) - unicode = models.TextField(_("Unicode Representation"), blank=True) - description = models.TextField(_("Description"), blank=True) - renderdir = "variablerenders/" - render = models.ImageField(_("Rendered Image"), - upload_to=renderdir, editable=False) - reference = models.URLField(_("Reference URL"), blank=True) - symbol = models.ForeignKey(Symbol, verbose_name=_("Symbol")) - isgeneric = models.BooleanField(_("Is Generic?"), default=False) +class Variable(BaseModel): + name = db.StringProperty(_("Name")) + latex = db.TextProperty(_("Raw LaTeX")) + unicode = db.TextProperty(_("Unicode Representation")) + description = db.TextProperty(_("Description")) + reference = db.TextProperty(_("Reference URL")) + symbol = db.ReferenceProperty(Symbol) + isgeneric = db.BooleanProperty(_("Is Generic?"), default=False) class Meta: get_latest_by = 'name' class Admin: ordering = ['name'] + def _get_pk_val(self): + return self.key().id() def __str__(self): return self.name def get_absolute_url(self): return "/variable/%s/" % self.id def get_admin_url(self): return "/admin/variables/%s/" % self.id - def save(self): - super(Variable, self).save() - self.render = self.renderdir + "%s.png" % self.id - super(Variable, self).save() -#signals.pre_save.connect(update_render, sender=Variable) -#dispatcher.connect(update_render, signal=signals.pre_save, sender=Variable) +class Equation(BaseModel): + name = db.StringProperty(_("Name")) + latex = db.TextProperty(_("Raw LaTeX")) + unicode = db.TextProperty(_("Unicode Representation")) + description = db.TextProperty(_("Description")) + created = db.DateTimeProperty(_("Created"), auto_now_add=True) + updated = db.DateTimeProperty(_("Last Updated"), auto_now_add=True) + #owner = models.ForeignKey(auth.User, verbose_name=_("Owner")) -class Equation(models.Model): - name = models.CharField(_("Name")) - latex = models.TextField(_("Raw LaTeX"), unique=True) - unicode = models.TextField(_("Unicode Representation"), blank=True) - description = models.TextField(_("Description"), blank=True) - created = models.DateField(_("Created"), auto_now_add=True) - updated = models.DateField(_("Last Updated"), auto_now_add=True) - owner = models.ForeignKey(auth.User, verbose_name=_("Owner")) - variables = models.ManyToManyField(Variable, verbose_name="Variables", - editable=True) - renderdir = "equationrenders/" - render = models.ImageField(_("Rendered Image"), - upload_to=renderdir, editable=False) - reference = models.URLField(_("Reference URL"), blank=True) + variables = db.ListProperty(db.Key, verbose_name="Variables") + reference = db.TextProperty(_("Reference URL")) class Meta: get_latest_by = 'created' class Admin: ordering = ['created'] + def _get_pk_val(self): + return self.key().id() def __str__(self): return self.name def get_absolute_url(self): @@ -116,11 +83,6 @@ class Equation(models.Model): """Updates the variables field with all Variable objects found in the LaTeX representation.""" pass # TODO: write - def save(self): - self.update_variables() - super(Equation, self).save() - self.render = self.renderdir + "%s.png" % self.id - super(Equation, self).save() #signals.post_save.connect(update_render, sender=Equation) #dispatcher.connect(update_render, signal=signals.post_save, sender=Equation) @@ -130,4 +92,3 @@ class Equation(models.Model): #admin.site.register(Symbol) #admin.site.register(Variable) #admin.site.register(Equation) - diff --git a/equations/views.py b/equations/views.py index 41309c1..21c4f3a 100644 --- a/equations/views.py +++ b/equations/views.py @@ -35,7 +35,60 @@ def vars_by_symbs(request, which_symbols): return HttpResponse('[]', mimetype="text/javascript") if vars[-1] == '/' or vars[-1] == '': vars = vars[:-1] - returnables = Variable.objects.filter(symbol=vars[0]) + #vkeys = list() + returnables = list() + for v in vars: + returnables.append([r for r in Symbol.get_by_id(int(v)).variable_set.run()]) + print returnables + #vkeys.append(str(Symbol.get_by_id(int(v)).key())) + #returnables = Variable.objects.all().filter('symbol IN ', vkeys).run() - data = serializers.serialize("json", returnables) + data = [serializers.serialize("json", r) for r in returnables] return HttpResponse(data, mimetype="text/javascript") + #return HttpResponse(returnables, mimetype="text/javascript") + +def import_symbols(filename): + infile = open(filename) + stuff = infile.readlines() + infile.close() + l = eval(stuff[0]) + for symb in l: + vals = symb['fields'] + newsymb = Symbol(latex=vals['latex'], unicode=vals['unicode'], + name=vals['name']) + newsymb.save() + +def import_equations(filename): + infile = open(filename) + stuff = infile.readlines() + infile.close() + l = eval(stuff[0]) + for symb in l: + vals = symb['fields'] + newsymb = Symbol(latex=vals['latex'], unicode=vals['unicode'], + name=vals['name']) + newsymb.save() + +def import_variables(filename): + infile = open(filename) + stuff = infile.readlines() + infile.close() + l = eval(stuff[0], {'true':True, 'false':False}) + for vari in l: + vals = vari['fields'] + newvar = Variable(latex=vals['latex'], unicode=vals['unicode'], + name=vals['name'], description=vals['description'], + reference=vals['reference']) + newvar.save() + +def match_var_symb(): + vs = Variable.objects.all().run() + + for v in vs: + try: + vname = v.name.split("Generic ")[1] + s = Symbol.all().filter('name =', vname).run().next() + v.symbol = s + v.save() + except: + print "Error assigning symbol to value: %s " % v diff --git a/symbols.json b/symbols.json new file mode 100644 index 0000000..ea2f70e --- /dev/null +++ b/symbols.json @@ -0,0 +1 @@ +[{"pk": 2, "model": "equations.symbol", "fields": {"latex": "\\gamma", "render": "symbolrenders/2.png", "name": "Gamma", "unicode": ""}}, {"pk": 3, "model": "equations.symbol", "fields": {"latex": "\\alpha", "render": "symbolrenders/3.png", "name": "Alpha", "unicode": ""}}, {"pk": 4, "model": "equations.symbol", "fields": {"latex": "\\beta", "render": "symbolrenders/4.png", "name": "Beta", "unicode": ""}}, {"pk": 5, "model": "equations.symbol", "fields": {"latex": "A", "render": "symbolrenders/5.png", "name": "Uppercase A", "unicode": ""}}, {"pk": 6, "model": "equations.symbol", "fields": {"latex": "a", "render": "symbolrenders/6.png", "name": "Lowercase a", "unicode": ""}}, {"pk": 7, "model": "equations.symbol", "fields": {"latex": "e", "render": "symbolrenders/7.png", "name": "Lowercase e", "unicode": ""}}, {"pk": 8, "model": "equations.symbol", "fields": {"latex": "\\Sigma", "render": "symbolrenders/8.png", "name": "Uppercase Sigma", "unicode": ""}}, {"pk": 9, "model": "equations.symbol", "fields": {"latex": "\\sigma", "render": "symbolrenders/9.png", "name": "Lowercase Sigma", "unicode": ""}}, {"pk": 10, "model": "equations.symbol", "fields": {"latex": "B", "render": "symbolrenders/10.png", "name": "Uppercase B", "unicode": ""}}, {"pk": 11, "model": "equations.symbol", "fields": {"latex": "t", "render": "symbolrenders/11.png", "name": "Lowercase t", "unicode": ""}}, {"pk": 12, "model": "equations.symbol", "fields": {"latex": "T", "render": "symbolrenders/12.png", "name": "Uppercase T", "unicode": ""}}, {"pk": 13, "model": "equations.symbol", "fields": {"latex": "\\mu", "render": "symbolrenders/13.png", "name": "Lowercase Mu", "unicode": ""}}, {"pk": 14, "model": "equations.symbol", "fields": {"latex": "\\pi", "render": "symbolrenders/14.png", "name": "Pi", "unicode": ""}}, {"pk": 15, "model": "equations.symbol", "fields": {"latex": "P", "render": "symbolrenders/15.png", "name": "Uppercase P", "unicode": ""}}, {"pk": 16, "model": "equations.symbol", "fields": {"latex": "x", "render": "symbolrenders/16.png", "name": "Lowercase x", "unicode": ""}}, {"pk": 17, "model": "equations.symbol", "fields": {"latex": "\\Gamma", "render": "symbolrenders/17.png", "name": "Uppercase Gama", "unicode": ""}}, {"pk": 18, "model": "equations.symbol", "fields": {"latex": "\\Delta", "render": "symbolrenders/18.png", "name": "Uppercase Delta", "unicode": ""}}, {"pk": 19, "model": "equations.symbol", "fields": {"latex": "\\Theta", "render": "symbolrenders/19.png", "name": "Uppercase Theta", "unicode": ""}}, {"pk": 20, "model": "equations.symbol", "fields": {"latex": "\\Lambda", "render": "symbolrenders/20.png", "name": "Uppercase Lambda", "unicode": ""}}, {"pk": 21, "model": "equations.symbol", "fields": {"latex": "\\Xi", "render": "symbolrenders/21.png", "name": "Uppercase Xi", "unicode": ""}}, {"pk": 22, "model": "equations.symbol", "fields": {"latex": "\\Pi", "render": "symbolrenders/22.png", "name": "Uppercase Pi", "unicode": ""}}, {"pk": 23, "model": "equations.symbol", "fields": {"latex": "\\Upsilon", "render": "symbolrenders/23.png", "name": "Uppercase Upsilon", "unicode": ""}}, {"pk": 24, "model": "equations.symbol", "fields": {"latex": "\\Phi", "render": "symbolrenders/24.png", "name": "Uppercase Phi", "unicode": ""}}, {"pk": 25, "model": "equations.symbol", "fields": {"latex": "\\Psi", "render": "symbolrenders/25.png", "name": "Uppercase Psi", "unicode": ""}}, {"pk": 26, "model": "equations.symbol", "fields": {"latex": "\\Omega", "render": "symbolrenders/26.png", "name": "Uppercase Omega", "unicode": ""}}, {"pk": 27, "model": "equations.symbol", "fields": {"latex": "\\delta", "render": "symbolrenders/27.png", "name": "Lowercase Delta", "unicode": ""}}, {"pk": 28, "model": "equations.symbol", "fields": {"latex": "\\zeta", "render": "symbolrenders/28.png", "name": "Zeta", "unicode": ""}}, {"pk": 29, "model": "equations.symbol", "fields": {"latex": "\\eta", "render": "symbolrenders/29.png", "name": "Eta", "unicode": ""}}, {"pk": 30, "model": "equations.symbol", "fields": {"latex": "\\theta", "render": "symbolrenders/30.png", "name": "Lowercase Theta", "unicode": ""}}, {"pk": 31, "model": "equations.symbol", "fields": {"latex": "\\vartheta", "render": "symbolrenders/31.png", "name": "Vartheta", "unicode": ""}}, {"pk": 32, "model": "equations.symbol", "fields": {"latex": "\\kappa", "render": "symbolrenders/32.png", "name": "Kappa", "unicode": ""}}, {"pk": 33, "model": "equations.symbol", "fields": {"latex": "\\nu", "render": "symbolrenders/33.png", "name": "Nu", "unicode": ""}}, {"pk": 34, "model": "equations.symbol", "fields": {"latex": "\\xi", "render": "symbolrenders/34.png", "name": "Lowercase Xi", "unicode": ""}}, {"pk": 35, "model": "equations.symbol", "fields": {"latex": "\\varpi", "render": "symbolrenders/35.png", "name": "Varpi", "unicode": ""}}, {"pk": 36, "model": "equations.symbol", "fields": {"latex": "\\rho", "render": "symbolrenders/36.png", "name": "Rho", "unicode": ""}}, {"pk": 37, "model": "equations.symbol", "fields": {"latex": "\\varrho", "render": "symbolrenders/37.png", "name": "Varrho", "unicode": ""}}, {"pk": 38, "model": "equations.symbol", "fields": {"latex": "\\varsigma", "render": "symbolrenders/38.png", "name": "Varsigma", "unicode": ""}}, {"pk": 39, "model": "equations.symbol", "fields": {"latex": "\\tau", "render": "symbolrenders/39.png", "name": "Tau", "unicode": ""}}, {"pk": 40, "model": "equations.symbol", "fields": {"latex": "\\upsilon", "render": "symbolrenders/40.png", "name": "Lowercase Upsilon", "unicode": ""}}, {"pk": 41, "model": "equations.symbol", "fields": {"latex": "\\phi", "render": "symbolrenders/41.png", "name": "Lowercase Phi", "unicode": ""}}, {"pk": 42, "model": "equations.symbol", "fields": {"latex": "\\varphi", "render": "symbolrenders/42.png", "name": "Varphi", "unicode": ""}}, {"pk": 43, "model": "equations.symbol", "fields": {"latex": "\\chi", "render": "symbolrenders/43.png", "name": "Chi", "unicode": ""}}, {"pk": 44, "model": "equations.symbol", "fields": {"latex": "\\psi", "render": "symbolrenders/44.png", "name": "Lowercase Psi", "unicode": ""}}, {"pk": 45, "model": "equations.symbol", "fields": {"latex": "\\omega", "render": "symbolrenders/45.png", "name": "Lowercase Omega", "unicode": ""}}, {"pk": 46, "model": "equations.symbol", "fields": {"latex": "\\hbar", "render": "symbolrenders/46.png", "name": "h-bar", "unicode": ""}}, {"pk": 47, "model": "equations.symbol", "fields": {"latex": "\\aleph", "render": "symbolrenders/47.png", "name": "Aleph", "unicode": ""}}, {"pk": 48, "model": "equations.symbol", "fields": {"latex": "\\Re", "render": "symbolrenders/48.png", "name": "Reals", "unicode": ""}}, {"pk": 49, "model": "equations.symbol", "fields": {"latex": "\\Im", "render": "symbolrenders/49.png", "name": "Imaginaries", "unicode": ""}}, {"pk": 50, "model": "equations.symbol", "fields": {"latex": "\\infty", "render": "symbolrenders/50.png", "name": "Infinity", "unicode": ""}}, {"pk": 51, "model": "equations.symbol", "fields": {"latex": "\\emptyset", "render": "symbolrenders/51.png", "name": "Empty Set", "unicode": ""}}, {"pk": 52, "model": "equations.symbol", "fields": {"latex": "f", "render": "symbolrenders/52.png", "name": "f", "unicode": ""}}, {"pk": 53, "model": "equations.symbol", "fields": {"latex": "F", "render": "symbolrenders/53.png", "name": "F", "unicode": ""}}, {"pk": 54, "model": "equations.symbol", "fields": {"latex": "m", "render": "symbolrenders/54.png", "name": "m", "unicode": ""}}, {"pk": 55, "model": "equations.symbol", "fields": {"latex": "v", "render": "symbolrenders/55.png", "name": "v", "unicode": ""}}, {"pk": 56, "model": "equations.symbol", "fields": {"latex": "y", "render": "symbolrenders/56.png", "name": "y", "unicode": ""}}, {"pk": 57, "model": "equations.symbol", "fields": {"latex": "z", "render": "symbolrenders/57.png", "name": "z", "unicode": ""}}, {"pk": 58, "model": "equations.symbol", "fields": {"latex": "K", "render": "symbolrenders/58.png", "name": "K", "unicode": ""}}, {"pk": 59, "model": "equations.symbol", "fields": {"latex": "E", "render": "symbolrenders/59.png", "name": "E", "unicode": ""}}, {"pk": 60, "model": "equations.symbol", "fields": {"latex": "h", "render": "symbolrenders/60.png", "name": "h", "unicode": ""}}, {"pk": 61, "model": "equations.symbol", "fields": {"latex": "c", "render": "symbolrenders/61.png", "name": "c", "unicode": ""}}, {"pk": 62, "model": "equations.symbol", "fields": {"latex": "p", "render": "symbolrenders/62.png", "name": "p", "unicode": ""}}, {"pk": 63, "model": "equations.symbol", "fields": {"latex": "q", "render": "symbolrenders/63.png", "name": "q", "unicode": ""}}, {"pk": 64, "model": "equations.symbol", "fields": {"latex": "s", "render": "symbolrenders/64.png", "name": "s", "unicode": ""}}] \ No newline at end of file diff --git a/urls.py b/urls.py index 8cfbc18..3a6829a 100644 --- a/urls.py +++ b/urls.py @@ -6,6 +6,8 @@ from equations.models import Equation, Symbol, Variable #admin.autodiscover() urlpatterns = patterns('', + (r'^$', 'django.views.generic.simple.direct_to_template', + {'template': 'index.html'}), (r'^go/', 'django.views.generic.simple.direct_to_template', {'template': 'go.html'}), (r'^admin/doc/', include('django.contrib.admindocs.urls')), @@ -27,7 +29,7 @@ urlpatterns += patterns('django.views.generic.list_detail', (r'^variable/(?P\d+)/$', 'object_detail', dict(queryset=Variable.objects.all() )), ) -urlpatterns += patterns('equator.equations.views', +urlpatterns += patterns('equations.views', (r'^json/equs_by_vars/(?P[\d\,]*)/?$', 'equs_by_vars'), (r'^json/vars_by_symbs/(?P[\d\,]*)/?$', 'vars_by_symbs'), (r'^json/all_variables/$', 'all_variables'), diff --git a/variables.json b/variables.json new file mode 100644 index 0000000..0c528cf --- /dev/null +++ b/variables.json @@ -0,0 +1 @@ +[{"pk": 1, "model": "equations.variable", "fields": {"latex": "\\gamma", "render": "variablerenders/1.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 2, "name": "Generic Gamma"}}, {"pk": 2, "model": "equations.variable", "fields": {"latex": "\\alpha", "render": "variablerenders/2.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 3, "name": "Generic Alpha"}}, {"pk": 3, "model": "equations.variable", "fields": {"latex": "\\beta", "render": "variablerenders/3.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 4, "name": "Generic Beta"}}, {"pk": 4, "model": "equations.variable", "fields": {"latex": "A", "render": "variablerenders/4.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 5, "name": "Generic Uppercase A"}}, {"pk": 5, "model": "equations.variable", "fields": {"latex": "a", "render": "variablerenders/5.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 6, "name": "Generic Lowercase a"}}, {"pk": 6, "model": "equations.variable", "fields": {"latex": "e", "render": "variablerenders/6.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 7, "name": "Generic Lowercase e"}}, {"pk": 7, "model": "equations.variable", "fields": {"latex": "\\Sigma", "render": "variablerenders/7.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 8, "name": "Generic Uppercase Sigma"}}, {"pk": 8, "model": "equations.variable", "fields": {"latex": "\\sigma", "render": "variablerenders/8.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 9, "name": "Generic Lowercase Sigma"}}, {"pk": 9, "model": "equations.variable", "fields": {"latex": "B", "render": "variablerenders/9.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 10, "name": "Generic Uppercase B"}}, {"pk": 10, "model": "equations.variable", "fields": {"latex": "t", "render": "variablerenders/10.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 11, "name": "Generic Lowercase t"}}, {"pk": 11, "model": "equations.variable", "fields": {"latex": "T", "render": "variablerenders/11.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 12, "name": "Generic Uppercase T"}}, {"pk": 12, "model": "equations.variable", "fields": {"latex": "t_{time}", "render": "variablerenders/12.png", "reference": "", "description": "", "isgeneric": false, "unicode": "", "symbol": 11, "name": "Time"}}, {"pk": 13, "model": "equations.variable", "fields": {"latex": "\\mu", "render": "variablerenders/13.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 13, "name": "Generic Lowercase Mu"}}, {"pk": 14, "model": "equations.variable", "fields": {"latex": "\\pi", "render": "variablerenders/14.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 14, "name": "Generic Pi"}}, {"pk": 15, "model": "equations.variable", "fields": {"latex": "P", "render": "variablerenders/15.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 15, "name": "Generic Uppercase P"}}, {"pk": 16, "model": "equations.variable", "fields": {"latex": "x", "render": "variablerenders/16.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 16, "name": "Generic Lowercase x"}}, {"pk": 17, "model": "equations.variable", "fields": {"latex": "\\Gamma", "render": "variablerenders/17.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 17, "name": "Generic Uppercase Gama"}}, {"pk": 18, "model": "equations.variable", "fields": {"latex": "\\Delta", "render": "variablerenders/18.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 18, "name": "Generic Uppercase Delta"}}, {"pk": 19, "model": "equations.variable", "fields": {"latex": "\\Theta", "render": "variablerenders/19.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 19, "name": "Generic Uppercase Theta"}}, {"pk": 20, "model": "equations.variable", "fields": {"latex": "\\Lambda", "render": "variablerenders/20.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 20, "name": "Generic Uppercase Lambda"}}, {"pk": 21, "model": "equations.variable", "fields": {"latex": "\\Xi", "render": "variablerenders/21.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 21, "name": "Generic Uppercase Xi"}}, {"pk": 22, "model": "equations.variable", "fields": {"latex": "\\Pi", "render": "variablerenders/22.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 22, "name": "Generic Uppercase Pi"}}, {"pk": 23, "model": "equations.variable", "fields": {"latex": "\\Upsilon", "render": "variablerenders/23.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 23, "name": "Generic Uppercase Upsilon"}}, {"pk": 24, "model": "equations.variable", "fields": {"latex": "\\Phi", "render": "variablerenders/24.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 24, "name": "Generic Uppercase Phi"}}, {"pk": 25, "model": "equations.variable", "fields": {"latex": "\\Psi", "render": "variablerenders/25.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 25, "name": "Generic Uppercase Psi"}}, {"pk": 26, "model": "equations.variable", "fields": {"latex": "\\Omega", "render": "variablerenders/26.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 26, "name": "Generic Uppercase Omega"}}, {"pk": 27, "model": "equations.variable", "fields": {"latex": "\\delta", "render": "variablerenders/27.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 27, "name": "Generic Lowercase Delta"}}, {"pk": 28, "model": "equations.variable", "fields": {"latex": "\\zeta", "render": "variablerenders/28.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 28, "name": "Generic Zeta"}}, {"pk": 29, "model": "equations.variable", "fields": {"latex": "\\eta", "render": "variablerenders/29.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 29, "name": "Generic Eta"}}, {"pk": 30, "model": "equations.variable", "fields": {"latex": "\\theta", "render": "variablerenders/30.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 30, "name": "Generic Lowercase Theta"}}, {"pk": 31, "model": "equations.variable", "fields": {"latex": "\\vartheta", "render": "variablerenders/31.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 31, "name": "Generic Vartheta"}}, {"pk": 32, "model": "equations.variable", "fields": {"latex": "\\kappa", "render": "variablerenders/32.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 32, "name": "Generic Kappa"}}, {"pk": 33, "model": "equations.variable", "fields": {"latex": "\\nu", "render": "variablerenders/33.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 33, "name": "Generic Nu"}}, {"pk": 34, "model": "equations.variable", "fields": {"latex": "\\xi", "render": "variablerenders/34.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 34, "name": "Generic Lowercase Xi"}}, {"pk": 35, "model": "equations.variable", "fields": {"latex": "\\varpi", "render": "variablerenders/35.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 35, "name": "Generic Varpi"}}, {"pk": 36, "model": "equations.variable", "fields": {"latex": "\\rho", "render": "variablerenders/36.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 36, "name": "Generic Rho"}}, {"pk": 37, "model": "equations.variable", "fields": {"latex": "\\varrho", "render": "variablerenders/37.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 37, "name": "Generic Varrho"}}, {"pk": 38, "model": "equations.variable", "fields": {"latex": "\\varsigma", "render": "variablerenders/38.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 38, "name": "Generic Varsigma"}}, {"pk": 39, "model": "equations.variable", "fields": {"latex": "\\tau", "render": "variablerenders/39.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 39, "name": "Generic Tau"}}, {"pk": 40, "model": "equations.variable", "fields": {"latex": "\\upsilon", "render": "variablerenders/40.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 40, "name": "Generic Lowercase Upsilon"}}, {"pk": 41, "model": "equations.variable", "fields": {"latex": "\\phi", "render": "variablerenders/41.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 41, "name": "Generic Lowercase Phi"}}, {"pk": 42, "model": "equations.variable", "fields": {"latex": "\\varphi", "render": "variablerenders/42.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 42, "name": "Generic Varphi"}}, {"pk": 43, "model": "equations.variable", "fields": {"latex": "\\chi", "render": "variablerenders/43.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 43, "name": "Generic Chi"}}, {"pk": 44, "model": "equations.variable", "fields": {"latex": "\\psi", "render": "variablerenders/44.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 44, "name": "Generic Lowercase Psi"}}, {"pk": 45, "model": "equations.variable", "fields": {"latex": "\\omega", "render": "variablerenders/45.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 45, "name": "Generic Lowercase Omega"}}, {"pk": 46, "model": "equations.variable", "fields": {"latex": "\\hbar", "render": "variablerenders/46.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 46, "name": "Generic h-bar"}}, {"pk": 47, "model": "equations.variable", "fields": {"latex": "\\aleph", "render": "variablerenders/47.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 47, "name": "Generic Aleph"}}, {"pk": 48, "model": "equations.variable", "fields": {"latex": "\\Re", "render": "variablerenders/48.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 48, "name": "Generic Reals"}}, {"pk": 49, "model": "equations.variable", "fields": {"latex": "\\Im", "render": "variablerenders/49.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 49, "name": "Generic Imaginaries"}}, {"pk": 50, "model": "equations.variable", "fields": {"latex": "\\infty", "render": "variablerenders/50.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 50, "name": "Generic Infinity"}}, {"pk": 51, "model": "equations.variable", "fields": {"latex": "\\emptyset", "render": "variablerenders/51.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 51, "name": "Generic Empty Set"}}, {"pk": 52, "model": "equations.variable", "fields": {"latex": "f", "render": "variablerenders/52.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 52, "name": "Generic f"}}, {"pk": 53, "model": "equations.variable", "fields": {"latex": "F", "render": "variablerenders/53.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 53, "name": "Generic F"}}, {"pk": 54, "model": "equations.variable", "fields": {"latex": "m", "render": "variablerenders/54.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 54, "name": "Generic m"}}, {"pk": 55, "model": "equations.variable", "fields": {"latex": "v", "render": "variablerenders/55.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 55, "name": "Generic v"}}, {"pk": 56, "model": "equations.variable", "fields": {"latex": "y", "render": "variablerenders/56.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 56, "name": "Generic y"}}, {"pk": 57, "model": "equations.variable", "fields": {"latex": "z", "render": "variablerenders/57.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 57, "name": "Generic z"}}, {"pk": 58, "model": "equations.variable", "fields": {"latex": "K", "render": "variablerenders/58.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 58, "name": "Generic K"}}, {"pk": 59, "model": "equations.variable", "fields": {"latex": "KE", "render": "variablerenders/59.png", "reference": "http://hyperphysics.phy-astr.gsu.edu/hbase/mi.html", "description": "", "isgeneric": false, "unicode": "", "symbol": 58, "name": "Kinetic Energy"}}, {"pk": 60, "model": "equations.variable", "fields": {"latex": "E", "render": "variablerenders/60.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 59, "name": "Generic E"}}, {"pk": 61, "model": "equations.variable", "fields": {"latex": "h", "render": "variablerenders/61.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 60, "name": "Generic h"}}, {"pk": 62, "model": "equations.variable", "fields": {"latex": "c", "render": "variablerenders/62.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 61, "name": "Generic c"}}, {"pk": 63, "model": "equations.variable", "fields": {"latex": "p", "render": "variablerenders/63.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 62, "name": "Generic p"}}, {"pk": 64, "model": "equations.variable", "fields": {"latex": "q", "render": "variablerenders/64.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 63, "name": "Generic q"}}, {"pk": 65, "model": "equations.variable", "fields": {"latex": "s", "render": "variablerenders/65.png", "reference": "", "description": "", "isgeneric": true, "unicode": "", "symbol": 64, "name": "Generic s"}}] \ No newline at end of file -- cgit v1.2.3