Hengguang Li |
LNG_FEM, short for the linear graded finite element method (FEM), is a free software package written in C, for generation of graded meshes in general two-dimensional domains with polygonal structures, and for construction of linear finite element solutions for elliptic boundary value problems (EBVPs). Developed by Hengguang Li (Wayne State) and Victor Nistor (Penn State), LNG_FEM comes from part of our research on regularity of solutions of EBVPs, particularly from our effort on recovering the quasi-optimal rate of convergence of numerical solutions, when the solution possesses corner-like singularities that are caused by non-smoothness of the boundary or changes of boundary conditions. See the paper by Hengguang Li, Anna Mazzucato, and Victor Nistor for a complete mathematical theory behind graded meshes. LNG_FEM is a fast, memory-efficient, user-friendly package that is developed for general domains with straight edges in 2-D, and for different boundary conditions. During the development, information on geometry of the domain, mesh generation, linear finite elements, and solvers for algebraic systems are sealed in appropriate data structures. Therefore, with this flexibility of easy updates and modification, LNG_FEM not only provides academia a powerful tool to demonstrate algorithms, educate students, strengthen research results, but also has great potential to effectively handle practical problems in industry. Some graded meshes with correponding numerical solutions generated by LNG_FEM can be found here. |
With the careful design of algorithms, we managed to optimize the procedure for the mesh generation and matrix assembly, such that the computation cost for them in the final triangulation almost linearly depends on the number of triangles. We timed the program for the refinement of the 10th level on the original domain with 8 initial triangles. The test was in Linux (Redhat 9.0) with two 2.8GHz Intel Xeon processors and 2GB of memory. It takes unmeasurable time for LNG_FEM to generate 13000 triangles, 6 seconds to generate 2.1 million triangles, and 24 seconds to generate 8.4 million triangles. |
LNG_FEM 1.0 (Mac OS X 10.4 [Tiger]) ; LNG_FEM 1.0 (Mac OS X 10.6 [Snow Leopard]) ; LNG_FEM 1.0 (Linux); LNG_FEM 1.0 (Sun Solaris Unix). Source files for popular domains and boundary conditions: LNG_Demo Step-by-step instructions on the use of LNG_FEM: LNG_FEM: graded meshes on domains of polygonal structures We tested LNG_FEM on Darwin 8.10.0 for MacOS, #1 SMP for RedHat Linux, and Generic_118822-25 for Sun Solaris Unix. You can restart the program if you feel it is not working consistently on your system. The code is also available when you want to compile it on your own computer. Please feel free to contact me at li@wayne.edu for questions or requests of the code. We would like very much to hear feedbacks. Suggestions to improve this package in all aspects are highly appreciated. Please include an acknowledgement by citing this paper in case you use LNG_FEM in a publication. |