On Tue, 8 Jul 2014, Sahai, Amal wrote: > Why exactly is "elem->node(c) == pressure_node" condition being > used?
As the "laziest" way of constraining away the kernel of the Incompressible Navier-Stokes problem. In the lid-driven cavity problem there are no boundary conditions for the pressure, and the PDE on the interior only defines *relative* pressure: you could add a constant pressure to any solution of the PDE and get another solution. If you simply discretize an operator like this with a 1-D kernel, you get a matrix with a 1-D kernel. Not all solvers are happy with a singular matrix, so we make the problem well-posed by adding a constraint for the pressure - in this case by pinning the pressure at a single point; in another example by using a Lagrange multiplier to constrain the average pressure in the domain. > In that case why are nodes with the global id number 0 being > considered? Also, since Pressure is a First order approximation, how > does LibMesh decide on which nodes (in a given element) would be > used be for storing Pressure values. libMesh uses vertex nodes to store pressure values, numbers vertex nodes before non-vertex nodes, and numbers Lagrange degrees of freedom in the same order as node numbering. All of those assumptions are necessary to make the code you were looking at correct. For a less "brittle" pressure pinning code you could see fem_system_ex1; the only assumption in that one is that the problem domain includes the origin. The least fragile technique is probably the Lagrange multiplier in systems_of_equations_ex5; the only implicit assumption there is that your domain is connected. --- Roy ------------------------------------------------------------------------------ Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft _______________________________________________ Libmesh-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/libmesh-users
