Thread Previous • Date Previous • Date Next • Thread Next |
Johan Hake wrote:
Andy Ray Terrel wrote:Hello, I'm still getting a hang of this but I was trying to do some things with mixed elements and derivatives. I'm not sure if I have the bug or if ufl has a bug but the following doesn't pass ufl-analyse. sElem = TensorElement("DG", triangle, 1) vElem = VectorElement("CG", triangle, 2) mElem = sElem + vElem phi, v = TestFunctions(mElem) sigma, u = TrialFunctions(mElem)The above is the problem. You need to use 'split'. Look at the cahn-hilliard demo for an example of how to do it. GarthsF = Function(sElem)I might be totaly of here but does not TestFunctions and TrialFunctions return a properly splitted FooFunction? What I mean is: dk, dc = TestFunctions(ME) should be the same as: du = TestFunction(ME) dk, dc = split(du) Please correct me if I am wrong.
Yes, but former approach doesn't provide access to the 'mother' function du, and it's with respect to du that you want to compute the derivative.
Garth
Isn't the problem the sF Function, which is defined using an element which is not 'properly mixed'?f = inner(sF, dot(u, grad(sF)))*dx F = derivative(f, sF, phi) J = derivative(F, sF, sigma) It seems that the TestFunctions function doesn't return a proper TestFunction but a list of things.I think the list you refere to is the somewhat unreadable representation of the view of the TestFunctions, which should be the correct one. JohanI can do the following but then Iloose the mixed element, which I don't know if ffc could handle. sElem = TensorElement("DG", triangle, 1) vElem = VectorElement("CG", triangle, 2) mElem = sElem + vElem phi = TestFunction(sElem) v = TestFunction(vElem) sigma = TrialFunction(sElem) u = TrialFunction(vElem) sF = Function(sElem) f = inner(sF, dot(u, grad(sF)))*dx F = derivative(f, sF, phi) J = derivative(F, sF, sigma) Any thoughts on either my bug or ufl please let me know. -- Andy _______________________________________________ UFL-dev mailing list UFL-dev@xxxxxxxxxx http://fenics.org/mailman/listinfo/ufl-dev_______________________________________________ UFL-dev mailing list UFL-dev@xxxxxxxxxx http://fenics.org/mailman/listinfo/ufl-dev
Thread Previous • Date Previous • Date Next • Thread Next |