## libmesh-users

 RE: [Libmesh-users] non-simplex elements From: KIRK, BENJAMIN (JSC-EG) (NASA) - 2005-02-01 14:27:54 ```Sure... Examples 3 and 4 use 9-noded biquadratic quadrilaterals in 2D. Also, the middle node need not lie in the geometric center of the two vertices. By default, the second-order elements in libMesh are treated isoparametrically, which allows them to approximate curved boundaries = with a quadratic line segment. Note that there is a practical limit, however, to how distorted your boundary can be. If you were to move the center node on top of a = vertex node, for example, the map from reference space to physical space = becomes non-invertible. In the code this appears as a negative (or 0) Jacobian values. For such elements you use the get_JxW() and get_xyz() (if you need the physical location of the integration points) to integrate a function. For more details on the smoothness requirements of quadratic elements = see "Computational Grids" by G.F. Carey. To see an interesting (but completely impractical) mesh with curved = boundary faces see http://cfdlab.ae.utexas.edu/~peterson/talks/bezier/ Finally, you probably only want curved sides on the physical domain, to = help approximate a curved boundary. -Ben -----Original Message----- From: libmesh-users-admin@... [mailto:libmesh-users-admin@...] On Behalf Of Michael Schindler Sent: Tuesday, February 01, 2005 6:00 AM To: libmesh-users@... Subject: [Libmesh-users] non-simplex elements Hello, I wonder if I can use non-simplex elements in libmesh: Using a second-order element -- do the second order nodes actually have = to reside in the middle between two vertices? Or can I move them wherever = I want? Then, if I have such an element, is it correct to integrate simply = using a finite element and its get_JxW() method? Thanks, Michael. --=20 Michael Schindler mail: Theoretische Physik I Universit=E4t Augsburg 86135 Augsburg email: michael.schindler@... http: http://www.physik.uni-augsburg.de/~schindmi Tel: +49 (0)821 598-3230 Fax: +49 (0)821 598-3222 "A mathematician is a device for turning coffee into theorems" Paul Erd=F6s. ------------------------------------------------------- This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting = Tool for open source databases. Create drag-&-drop reports. Save time by = over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. Download = a FREE copy at http://www.intelliview.com/go/osdn_nl _______________________________________________ Libmesh-users mailing list Libmesh-users@... https://lists.sourceforge.net/lists/listinfo/libmesh-users ```
 Re: [Libmesh-users] non-simplex elements From: Michael Schindler - 2005-02-01 18:13:56 ```Hello Ben and John, On 01.02.05, KIRK, BENJAMIN (JSC-EG) (NASA) wrote: > Sure... Examples 3 and 4 use 9-noded biquadratic quadrilaterals in 2D. > Also, the middle node need not lie in the geometric center of the two > vertices. By default, the second-order elements in libMesh are treated > isoparametrically, which allows them to approximate curved boundaries with a > quadratic line segment. thanks for the quick answer. I would like to solve a Stokes equation which is a vector equation. With higher-order elements the Christoffel-Symbols in the equation are not zero anymore. Is there an interface to get the Christoffel-Symbols, similar to the integration-weights? Michael. -- "A mathematician is a device for turning coffee into theorems" Paul Erdös. ```
 Re: [Libmesh-users] non-simplex elements From: John Peterson - 2005-02-01 19:13:06 ```Michael Schindler writes: > Hello Ben and John, > > On 01.02.05, KIRK, BENJAMIN (JSC-EG) (NASA) wrote: > > Sure... Examples 3 and 4 use 9-noded biquadratic quadrilaterals in 2D. > > Also, the middle node need not lie in the geometric center of the two > > vertices. By default, the second-order elements in libMesh are treated > > isoparametrically, which allows them to approximate curved boundaries with a > > quadratic line segment. > thanks for the quick answer. > > I would like to solve a Stokes equation which is a vector equation. > With higher-order elements the Christoffel-Symbols in the equation are > not zero anymore. Is there an interface to get the > Christoffel-Symbols, similar to the integration-weights? Hm...it sounds like you are some kind of winky-dink mathematician or something ;-) There's no interface like that in libmesh, in fact I've never heard of Christoffel symbols...are you solving some kind of problem on a non-Euclidean manifold? -John ```
 Re: [Libmesh-users] non-simplex elements From: Michael Schindler - 2005-02-02 08:45:36 ```Hi, On 01.02.05, John Peterson wrote: > > On 01.02.05, KIRK, BENJAMIN (JSC-EG) (NASA) wrote: > > > Sure... Examples 3 and 4 use 9-noded biquadratic quadrilaterals in 2D. > > > Also, the middle node need not lie in the geometric center of the two > > > vertices. By default, the second-order elements in libMesh are treated > > > isoparametrically, which allows them to approximate curved boundaries with a > > > quadratic line segment. > > thanks for the quick answer. > > > > I would like to solve a Stokes equation which is a vector equation. > > With higher-order elements the Christoffel-Symbols in the equation are > > not zero anymore. Is there an interface to get the > > Christoffel-Symbols, similar to the integration-weights? > > Hm...it sounds like you are some kind of winky-dink mathematician > or something ;-) There's no interface like that in libmesh, > in fact I've never heard of Christoffel symbols...are you solving > some kind of problem on a non-Euclidean manifold? No, the space is perfectly Euclidean. But I try to calculate a free surface boundary of a fluid governed by a Stokes equation. For this I need to take the geometry of the elements, i.e. the Euclidean coordinates of the nodes into account. Now, if we use arbitrary curved reference coordinates xi_1 and xi_2 for an element, then we may simply calculate the covariant derivatives of a scalar field phi as phi,i = dphi / dxi_i and we can get back to the Cartesian derivative in, let's say x-direction: dphi / dx = (dphi / dxi_i) g^{ij} (dx / dxi_j) with a sum over i and j. For a vecor field, however, the derivative is somewhat more complicated. We have to take into account that the base vector may change in the direction we want to calculate the derivative. So, if we have a velocity field in 2D (u,v) and want to calculate some derivatives of the first component, then we will get the changes of the coordinate system in that direction -- they head in the direction of the second base vector -- and get terms with v also. To summarize this, in curved coordinates there is a difference between a field that is really a vector (with two coordinates) and two scalar fields. In the derivatives they behave differently. Michael. -- Michael Schindler mail: Theoretische Physik I Universität Augsburg 86135 Augsburg email: michael.schindler@... http: http://www.physik.uni-augsburg.de/~schindmi Tel: +49 (0)821 598-3230 Fax: +49 (0)821 598-3222 "A mathematician is a device for turning coffee into theorems" Paul Erdös. ```