← Back to team overview

ffc team mailing list archive

ufl

 

hello

following the example in the ufl manual it's possible to do things like
element = VectorElement("CG", cell, 3)
w = Function(element)
f = w**2/2*dx
F = derivative(f, w)
J = derivative(F, w)

but how do i give e.g. F and/or J to the forms a and L to get the code? when i tried just e.g. a = F it get

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
f = [[ v_{-1}[4], v_{-1}[5] ]]
g = 2
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
Expecting scalar expression f in f**g.
*** Expecting scalar expression f in f**g.


thanks for the help,
patrick

Anders Logg wrote:
Yes, the bilinear form should be the linearized nonlinear form (not
minus).

Note that with UFL, it's now possible to just write down the nonlinear
form

  (v, F(u)) = 0 for all v

and then let UFL compute the linearization.





Follow ups