The default valid form names seem to be a
, L
, M
(and in certain conditions, F
and J
), but you can define more by adding a forms
list to the bottom of your UFL file, for example, to use G
instead of M
:
element = FiniteElement("Lagrange", triangle, 2)
v = Coefficient(element)
G = (v*v + dot(grad(v), grad(v)))*dx
forms = [G]
which will result in Form_G
in the header file.
See this section in the UFL documentation for more information. I believe the relevant section of the UFL source code which defines the default forms to be exported is here.