Question #109900 on DOLFIN changed: https://answers.launchpad.net/dolfin/+question/109900
Anders Logg proposed the following answer: On Thu, May 06, 2010 at 08:42:19PM -0000, Marie Rognes wrote: > Question #109900 on DOLFIN changed: > https://answers.launchpad.net/dolfin/+question/109900 > > Marie Rognes proposed the following answer: > Anders Logg wrote: > > Question #109900 on DOLFIN changed: > > https://answers.launchpad.net/dolfin/+question/109900 > > > > Anders Logg proposed the following answer: > > On Thu, May 06, 2010 at 02:52:33PM +0200, Marie Rognes wrote: > > > >> Achim Schroll wrote: > >> > >>> New question #109900 on DOLFIN: > >>> https://answers.launchpad.net/dolfin/+question/109900 > >>> > >>> for a plain Poisson eqn with pure Neumann b.c., how to specify the > >>> scaling condition u*dx = 0 ? > >>> > >> > >> If you have a recent dolfin, you can introduce a constant c acting > >> as a Lagrange multiplier corresponding to the constraint. See > >> example below. > >> > >> from dolfin import * > >> > >> mesh = UnitSquare(32, 32) > >> V = FunctionSpace(mesh, "CG", 1) > >> Q = FunctionSpace(mesh, "R", 0) > >> M = V * Q > >> > >> (u, c) = TrialFunctions(M) > >> (v, d) = TestFunctions(M) > >> > >> f = Expression("x[0]*x[1]*sin(pi*x[0])") > >> > >> a = dot(grad(v), grad(u))*dx + d*u*dx + c*v*dx > >> L = v*f*dx > >> > >> pde = VariationalProblem(a, L) > >> u_h = pde.solve() > >> > >> plot(u_h[0]) > >> interactive() > >> > > > > But make sure to not name that space 'M' if you try this with a UFL > > file or you will get a strange error (since 'M' is reserved in form > > files). > > > > Anyway, I'm wondering about the dofmap for the "R" element. It sets > > _global_dimension to m.num_entities[2] which is the global number of > > cells, but then it maps all dofs to 0. Is that right? Shouldn't the > > global dimension be 1? > > > > > > > Yes, it is a bug for non-mixed elements(!). I noticed but didn't really > want to start fixing before > the weekend. It's on the todo-list though. ok! I thought I might have missed the point but then I think I know what's going on. Very cool feature. Btw, you can add that demo now. ;-) -- Anders -- You received this question notification because you are a member of DOLFIN Team, which is an answer contact for DOLFIN. _______________________________________________ Mailing list: https://launchpad.net/~dolfin Post to : [email protected] Unsubscribe : https://launchpad.net/~dolfin More help : https://help.launchpad.net/ListHelp

