Partial Differential Equations (PDEs) and Finite Element Modeling (FEM)PDE and FEM Web Sites"Mesh Generation and Grid Generation on the Web" Ian MacPhedran and Roger Young's pages on finite element resources: MGNet has codes, preprints, virtual proceedings, a large bibliography, and more dealing with multigrid and/or domain decomposition methods for solving PDE's. There has also been a monthly electronic newsletter for the past 6 years. The CFD (computational fluid dynamics) codes list Robert Schneiders site on mesh generation is a large site with info on people, literature, software, and numerous research efforts worldwide. PDEtools is a Maple package for working with PDEs, solving systems of ODEs and making general changes of variables. OpenFEM is an opensource finite element toolbox for Matlab and Scilab. Newsgroups for PDE and FEMComputational Fluid Dynamics (CFD) newsgroups:There are also 2 mailing lists: FEAL: To get on this list, send email to listserv@sailor.itis.com. The first line of the body of the message should contain the statement SUBSCRIBE FEAL.
feusers: To get on this list, send email to mailbase@mailbase.ac.uk.
The first 2 lines of the body of the message should contain
Books and References for PDE and FEMAxelsson, O.; Barker, V.A. 1984, Finite Element Solution of Boundary Value Problems: Theory and Computation, Academic Press Bornemann, F., An Adaptive Multilevel Approach to Parabolic Equations in Two Space Dimensions, Dissertation, Freie Universitaet Berlin, 1991. Bornemann, F.; Erdmann, B.; Kornhuber, R., Adaptive Multilevel Methods in Three Space Dimensions, Int. J. Numer. Meths. in Eng., 36, 1993. Braess, Dietrich. 1992, Finite Elemente, Springer, (In German) Braess, Dietrich. 1992, Finite Elements: Theory, fast solvers, and applications in solid mechanics translated from the 2nd German Edition by Larry Schumaker. The book is directed to graduate students in mathematics and to young researchers. We take into account that most of the research is now concentrated on finite elements for hard problems and on the fast solution of the resulting equations. Therefore the nonconforming elements and saddle point problems get as much space as the conforming elements. Moreover we treat the method of conjugate gradients and multigrid methods. Finally we present an introduction to the application of finite elements in solid mechanics which up to now does not exist in textbooks in a similar way. Brenner; Scott. 1994, The Mathematical Theory of Finite Elements, SpringerVerlag Celia; Grey., Numerical Methods for Differential Equations, [G. Scott Lett] "very good". Ciarlet, Philippe G. 1978, The finite element method for elliptic problems, Amsterdam: NorthHolland Deuflhard, P.; Leinen, P.; Yserentant, H., Concepts of an Adaptive Hierarchical Finite Element Code., IMPACT, 1, 1989. Grossmann; Roos., Numerik Partieller Differentialgleichungen, Teubner., (In German). Johnson, Claes. Numerical Solution of Partial Differential Equations by the Finite Element Method. [Hans Sandholt] I found great pleasure to read it. Hackbusch, Wolfgang, Elliptic Differential Equations. Theory and Numerical Treatment, Springer Series in Computational Mathematics 18, SpringerVerlag. See Hackbush's page. Hackbusch, Wolfgang, Iterative Solution of Large Sparse Systems of Equations, Applied Mathematical Sciences, Vol. 95., SpringerVerlag. See Hackbush's page. [G. Scott Lett] A good book to start; helping to bridge the gap between recipes and understanding. Hughes, T.J.R. 1987. The Finite Element Method Kornhuber, R. Monotone Multigrid Methods for Nonlinear Variational Problems. Habilitationsschrift, Freie Universitaet Berlin, 1995. Oden, J.T.; Reddy, J. N. 1976. An introduction to the mathematical theory of finite elements. New York: WileyInterscience Schwarz, H.R. 1984. Methode der Finiten Elemente. Teubner. (In German) Strang; Fix. 1973. An Analysis of the Finite Element Method. Prentice Hall Wait, R.; Mitchell, A.R. 1985. Finite Element Analysis and Applications. John Wiley & Sons. Zienkiewicz, O.C.; Morgan, K. 1983. Finite Elements and Approximation. J. Wiley & Sons Sandia's Comparison of Meshing Software PackagesSandia survey of meshing software (1998) Albert Hines' Comparison of Meshing Software Packages
[Albert M. Hines, Feb 1996]: This table reflects the best information that I can gather to date on some of the more popular meshers. Many others exist and may be better or worse than those listed here. This study was conducted by Howmet, a manufacturing corporation with no incentive to support or reject any package over another. Portions of the study were also funded by your generous tax donations through an ICCA program designed to enhance the capability of US investment casting through (among many other things) automeshing software. PDE and FEM Software on the netPDE and FEM Software on the net: (See also Computational Geometry )FEMLABFEMLAB is an interactive environment for modeling and solving scientific and engineering problems based on partial differential equations.FecFec is a collection of finite element libraries in C++FEltFElt is a free system for introductory level finite element analysis. FElt is intended largely as a teaching tool. At this stage it should be able to handle most static and dynamic linear analysis problems (structural and thermal) that you'd find in a one or two term introductory class in finite element analysis; it also has some capabilities for modal and spectral analysis. The FElt element library currently contains fifteen elements ranging from a simple spring to an 8node brick. The main FElt applications are all built around a single intuitive, powerful, and easytouse input syntax.FemlibFemlib is a set of C++ classes for finite element work, garbage collection algorithms, and sparse matrix algorithms. A bit rough; incomplete in some areas.KaskadeKaskade solves linear scalar elliptic and parabolic problems in 1, 2, 3 space dimensions with adaptive finite element methods.Furthermore, the toolbox includes extensions for handling systems of equations and example algorithms for nonlinear methods used in obstacle, porous media or Stefan problems. Core of the program is a variety og multilevel/multigrid preconditioners for the arising linear systems. This objectoriented code is written in C++ and can be compiled with Gnu g++, version 2.7.2, and some other compilers. If you want to compile with Gnu g++, version 2.6.3, you have to change the definition of the complextype in the file general.h. TriTripoint was first developed by David Eppstein to triangulate point set input in two dimensions, following the algorithm in "Provably Good Mesh Generation" by Bern, Eppstein, and Gilbert[1]. During the summer of 1991, Scott Mitchell extended the program to triangulate polygonal regions with holes, again in two dimensions. The algorithm followed borrows ideas both from [1] and "Quality Mesh Generation in Three Dimensions" by Mitchell and Vavasis[2].Tripoint takes input from text files as the polygon to triangulate. Output is also as text files, using the same data format. Points are represented by their coordinates, and edges by the indecies of their endpoints. There is a matlab code front end, called drawmesh.m. This allows the graphical input of the input polygon using the mouse, and the display with zooming of the output triangulation. There is also matlab code called dispmesh.m, which allows the displaying of output only. This allows the user freedom over how to generate the input. The algorithm is similar to one in "Provably Good Mesh Generation"[1]. The main differences include: Tripoint uses connected component information while generating the quadtree, as in [2]. Tripoint does not cut dangling acute triangles from the input as a first step as in [1]. Ideally, as in [2], tripoint would center input verticies in boxes, and use a very general and easy algorithm for triangulating individual boxes. Instead, vertices are not centered, and the ideal algorithm is used with added special case analysis for boxes near an input vertex. QMGQMG is free software available on the Web for fully automatic unstructured finite element mesh generation in two and three dimensions. It can generate meshes for complex domains with curved boundaries and nonmanifold features. QMG 2.0 can be run either from the shell, under Tcl/Tk (a freeware scripting language) or Matlab. The Matlab version includes a simple finite element solver. QMG is written in primarily in C++.The main new feature of QMG2.0 (compared to QMG1.1) is its ability to handle true curved geometry. QMG2.0 permits boundaries defined by Bezier curves, triangular Bezier patches and quadrilateral tensorproduct Bezier patches. Representations of certain simple curved geometries (cylinders, spheres, tori) using Bezier patches are shipped with QMG. Sinda/FluintSinda/Fluint is a comprehensive finitedifference, lumped parameter (circuit or network analogy) tool for analyzing complex thermal/fluid systems. It is used at over 300 sites in the aerospace, electronics, petrochemical, and automotive industries.Madpack5Madpack is part of Craig Douglas' multigrid package. This is an abstract solver. It is PDE, domain, and discretization independent. It only handles linear problems, however. It is an ongoing project with a number of contributors from around the world. Some of these wish to remain anonymous. Serial, parallel, and semichaotic solvers are or will be included during 1994. A paper describing this is in the file mgnet/papers/Douglas/mad5.ps. This is an object oriented code. The user interface is written in C. Most of the solvers are written in Fortran77+m4. The same calling sequence is used independent of the data's type (real and complex, single and double precision are supported). The user interface builds all of the truly nasty data structures needed by the code. The ownership of this code is convoluted.TriangleTriangle is a twodimensional quality mesh generator and delaunay triangulator. Triangle generates exact Delaunay triangulations, constrained Delaunay triangulations, and quality conforming Delaunay triangulations. The latter can be generated with no small angles, and are thus suitable for finite element analysis.FreeFEM++ and FreeFEM3dFreeFEM++ and FreeFEM3D implement a language dedicated to the finite element method, intended to ease the solution of PDEs. They include a fast quadtreebased interpolation algorithm and a language for the manipulation of data on multiple meshesFeatflowFeatflow is software for incompressible NavierStokes equations. It including all sources, manuals and many (!) demos for nonstationary flows (as MPEG movies), is "downloadable" via Internet, seePLTMGPLTMG is a package for solving elliptic partial differential equations in general regions of the plane. It is based on continuous piecewise linear triangular finite elements, and features adaptive local mesh refinement, multigraph iteration, and pseudoarclength continuation options for parameter dependencies. The package includes an initial mesh generator and several graphics packages. Full documentation is provided in PLTMG: A Software Package for Solving Elliptic Partial Differential Equations  Users' Guide 8.0 (ISBN 0898714095), available from SIAM Publications. PLTMG is provided as Fortran (and a little C) source code, in both single and double precision versions. The included XWindows GUI uses the default Athena Widget set, and makes calls to standard library routines of the XWindows system, which must be loaded along with the PLTMG software. PLTMG is available from Netlib (see Netlib ) and Mgnet.MUDPACKMUDPACK includes a suite of portable fortran programs which automatically discretize and use multigrid techniques to generate second and fourthorder approximations to elliptic Partial Differential Equations (PDEs) on rectangular regions. The elliptic PDEs can be real or complex in two and threedimensions with any combination of mixed derivate, specified, or periodic boundary conditions. Multigrid V or W cycles which use point, line(s), or planar relaxation and fully weighted residual restriction are available for algorithm tuning to obtain optimal multigrid performance. MUDPACK was written to avoid repeated "reinvention of the wheel" in human code development time which can be at least as important as saving machine cycles.METISMETIS is a collection of serial and parallel programs & libraries that can be used to partitioning unstructured graphs, finite element meshes, and hypergraphs, both on serial as well as on parallel computers.ParMETISParMETIS is an MPIbased parallel library that implements a variety of algorithms for partitioning unstructured graphs, meshes, and for computing fillreducing orderings of sparse matrices.MODULEFMODULEF is a library containing about 3000 procedures written in Fortran 77. These procedures were designed with the utmost concern for software portability. Capabilities include:PETScPETSc is a set of libraries for the implicit solution of PDEs and related problems. Features include:OFELIOFELI (Object Finite Element LIbrary) is a library (or a toolkit) of C++ classes to build up finite element codes. The package contains numerous simple and less simple examples of finite element codes using OFELI. A significant documentation (html and pdf formats) is provided.deal.IIdeal.II is an objectoriented finite element library. This version features many new components. The most outstanding additions aredeal.II can be downloaded for free and is distributed under an Open Source license. IMTEK Mathematica SupplementIMTEK is an AddOn for mathematica to do finite element analysis, model order reduction etc.
