×

Automated FEM discretizations for the Stokes equation. (English) Zbl 1143.76037

Summary: Current FEM software projects have made significant advances in various automated modeling techniques. We present some of the mathematical abstractions employed by these projects that allow a user to switch between finite elements, linear solvers, mesh refinement and geometry, and weak forms with very few modifications to the code. To evaluate the modularity provided by one of these abstractions, namely switching finite elements, we provide a numerical study based upon the many different discretizations of Stokes equations.

MSC:

76M10 Finite element methods applied to problems in fluid mechanics
76D07 Stokes and related (Oseen, etc.) flows
PDFBibTeX XMLCite
Full Text: DOI

References:

[1] D. N. Arnold and J. Qin, Quadratic velocity/linear pressure Stokes elements, in Advances in Computer Methods for Partial Differential Equations-VII, R. Vichnevetsky, D. Knight, and G. Richter, eds., IMACS, New Brunswick, NJ, 1992, pp. 28–34.
[2] A. A. Auer, G. Baumgartner, D. E. Bernholdt, A. Bibireata, V. Choppella, D. Cociorva, X. Gao, R. Harrison, S. Krishnamoorthy, S. Krishnan, C.-C. Lam, Q. Lu, M. Nooijen, R. Pitzer, J. Ramanujam, P. Sadayappan, and A. Sibiryakov, Automatic code generation for many-body electronic structure methods: the tensor contraction engine, Mol. Phys., 104 (2006), pp. 211–228.
[3] S. Balay, K. Buschelman, W. D. Gropp, D. Kaushik, M. G. Knepley, L. C. McInnes, B. F. Smith, and H. Zhang, PETSc Web page, 2001.
[4] W. Bangerth, R. Hartmann, and G. Kanschat, deal.II project webpage, 2007.
[5] W. Bangerth, R. Hartmann, and G. Kanschat, deal.II – a general-purpose object-oriented finite element library, ACM Trans. Math. Softw., 33 (2007), p. 24. · Zbl 1365.65248
[6] G. Baumgartner, A. Auer, D. E. Bernholdt, A. Bibireata, V. Choppella, D. Cociorva, X. Gao, R. J. Harrison, S. Hirata, S. Krishanmoorthy, S. Krishnan, C.-C. Lam, Q. Lu, M. Nooijen, R. M. Pitzer, J. Ramanujam, P. Sadayappan, and A. Sibiryakov, Synthesis of high-performance parallel programs for a class of ab initio quantum chemistry models, Proceedings of the IEEE, 93 (2005), pp. 276–292. (special issue on ”Program Generation, Optimization, and Adaptation”).
[7] G. Berti, Generic Software Components for Scientific Computing, PhD thesis, TU Cottbus, 2000. http://www.math.tu-cottbus.de/erti/diss. · Zbl 0972.68506
[8] P. Bientinesi, J. A. Gunnels, M. E. Myers, E. S. Quintana-Ortí, and R. A. van de Geijn, The science of deriving dense linear algebra algorithms, ACM Trans. Math. Softw., 31 (2005), pp. 1–26. · Zbl 1073.65036
[9] P. Bientinesi, E. S. Quintana-Ortí, and R. A. van de Geijn, Representing linear algebra algorithms in code: the FLAME application program interfaces, ACM Trans. Math. Softw., 31 (2005), pp. 27–59. · Zbl 1073.65037
[10] D. K. Blandford, G. E. Blelloch, D. E. Cardoze, and C. Kadow, Compact representations of simplicial meshes in two and three dimensions, Int. J. Comput. Geom. Appl., 15 (2005), pp. 2–24. · Zbl 1060.65555
[11] D. Boffi, Three-dimensional finite element methods for the Stokes problem, SIAM J. Numer. Anal., 34 (1997), pp. 664–670. · Zbl 0874.76032
[12] S. C. Brenner and L. R. Scott, The Mathematical Theory of Finite Element Methods, 2nd edn., Springer, New York, 2002. · Zbl 1012.65115
[13] F. Brezzi and M. Fortin, Mixed and Hybrid Finite Element Methods, Springer Ser. Comput. Math., vol. 15, Springer, New York, 1991. · Zbl 0788.73002
[14] P. Castillo, R. Rieben, and D. White, FEMSTER: An object-oriented class library of high-order discrete differential forms, ACM Trans. Math. Softw., 31 (2005), pp. 425–457. · Zbl 1136.78330
[15] M. Crouzeix and P.-A. Raviart, Conforming and nonconforming finite element methods for solving the stationary Stokes equations, RAIRO, Modélisation Math. Anal. Numér., 7 (1973), pp. 33–75.
[16] T. A. Davis, Algorithm 832: UMFPACK, an unsymmetric-pattern multifrontal method, ACM Trans. Math. Softw., 30 (2004), pp. 196–199. · Zbl 1072.65037
[17] C. de Boor and K. Höllig, Approximation order from bivariate C 1-cubics: A counterexample, Proc. Am. Math. Soc., 87 (1983), pp. 649–655. · Zbl 0545.41017
[18] M. Demazure and A. Grothendieck, eds., Séminaire de Géométrie Algébrique du Bois Marie – 1962–64 – Schémas en groupes, vol. 1, Springer, 1970. Lect. Notes Math., vol. 151, Springer, Berlin, New York, 1970, in French.
[19] P. Dular and C. Geuzaine, GetDP: A general environment for the treatment of discrete problems, 2005. http://www.geuz.org/getdp/.
[20] T. Dupont, J. Hoffman, C. Johnson, R. C. Kirby, M. G. Larson, A. Logg, and L. R. Scott, The FEniCS project, Tech. Rep. 2003–21, Chalmers Finite Element Center Preprint Series, 2003.
[21] R. D. Falgout and U. Meier Yang, Hypre: A library of high performance preconditioners, in International Conference on Computational Science (3), Lect. Notes Comput. Sci., vol. 2331, Springer, Berlin, Heidelberg, 2002, pp. 632–641. · Zbl 1056.65046
[22] L. Feitag, C. Ollivier-Gooch, M. Jones, and P. Plassman, SUMMA3D, 1997. http://www-unix.mcs.anl.gov/freitag/SC94demo/project/project.html, now defunct.
[23] L. Formaggia, J. Gerbeau, and C. Prud’homme, LifeV developer manual, 2007. http://www.lifev.org/documentation/book/book.pdf.
[24] C. Geuzaine and J.-F. Remacle, Gmsh: a three-dimensional finite element mesh generator with built-in pre- and post-processing facilities, 2007. http://www.geuz.org/gmsh/. · Zbl 1176.74181
[25] A. Griewank, Evaluating derivatives: principles and techniques of algorithmic differentiation, Society for Industrial and Applied Mathematics, Philadelphia, PA, 2000. · Zbl 0958.65028
[26] M. A. Heroux, R. A. Bartlett, V. E. Howle, R. J. Hoekstra, J. J. Hu, T. G. Kolda, R. B. Lehoucq, K. R. Long, R. P. Pawlowski, E. T. Phipps, A. G. Salinger, H. K. Thornquist, R. S. Tuminaro, J. M. Willenbring, A. Williams, and K. S. Stanley, An overview of the Trilinos project, ACM Trans. Math. Softw., 31 (2005), pp. 397–423. · Zbl 1136.65354
[27] K. Kennedy, B. Broom, A. Chauhan, R. Fowler, J. Garvin, C. Koelbel, C. McCosh, and J. Mellor-Crummey, Telescoping languages: A system for automatic generation of domain languages, Proceedings of the IEEE, 93 (2005), pp. 387–408, (special issue on ”Program Generation, Optimization, and Adaptation”).
[28] R. C. Kirby, Algorithm 839: FIAT, a new paradigm for computing finite element basis functions, ACM Trans. Math. Softw., 30 (2004), pp. 502–516. · Zbl 1070.65571
[29] R. C. Kirby, Optimizing FIAT with level 3 BLAS, ACM Trans. Math. Softw., 32 (2006), pp. 223–235. · Zbl 1365.65256
[30] R. C. Kirby and A. Logg, A compiler for variational forms, ACM Trans. Math. Softw., 32 (2006), pp. 417–444. · Zbl 05458453
[31] R. C. Kirby and A. Logg, Efficient compilation of a class of variational forms, ACM Trans. Math. Softw., 33 (2007), p. 17. · Zbl 1365.65257
[32] R. C. Kirby, A. Logg, L. R. Scott, and A. R. Terrel, Topological optimization of the evaluation of finite element matrices, SIAM J. Sci. Comput., 28 (2006), pp. 224–240. · Zbl 1104.65324
[33] B. Kirk, J. W. Peterson, R. H. Stogner, and G. F. Carey, libMesh: A C++ Library for Parallel Adaptive Mesh Refinement/Coarsening Simulations, Eng. Comput., 22 (2006), pp. 237–254. · Zbl 05192775
[34] M. G. Knepley and D. A. Karpeev, Flexible representation of computational meshes, Technical Report ANL/MCS-P1295-1005, Argonne National Laboratory, October 2005.
[35] M. G. Knepley and D. A. Karpeev, Mesh algorithms for PDE with Sieve I: Mesh distribution, 2008, to appear in Scientific Programming.
[36] M. G. Knepley, A. R. Terrel, and L. R. Scott, Finite element assembly on arbitrary meshes, in preparation for publication in 2008. · Zbl 1143.76037
[37] J. Korelc, Multi-language and multi-environment generation of nonlinear finite element codes, Eng. Comput., 18 (2002), pp. 312–327. · Zbl 01993877
[38] A. Logg, J. Hoffman, J. Jansson, R. C. Kirby, and G. N. Wells, The FEniCS project webpage, 2007.
[39] K. R. Long, Sundance: a rapid prototyping toolkit for parallel PDE simulation and optimization, in Large-Scale PDE-Constrained Optimization, L. T. Biegler, O. Ghattas, M. Heinkenschloss, and B. van Bloemen Waanders, eds., Lect. Notes Comput. Sci. Eng., Springer, Berlin, Heidelberg, 2003, pp. 331–342 · Zbl 1063.65125
[40] K. R. Long, Sundance 2.0 tutorial, Technical Report SAND2004-4793, Sandia National Laboratory, 2004.
[41] K. A. Mardal, O. Skavhaug, G. Lines, G. Staff, and A. Odegard, Using Python to solve partial differential equations, Comput. Sci. Eng., 9(3) (2007), pp. 48–51. · Zbl 05333425
[42] G. L. Miller, S. Teng, W. Thurston, and S. A. Vavasis, Automatic mesh partitioning, Tech. Rep., Cornell University, Ithaca, NY, USA, 1992. · Zbl 0803.68083
[43] O. Pironneau, F. Hecht, and A. L. Hyaric, freeFEM++, 2007. http://www.freefem.org/ff++/ftp/freefem++doc.pdf.
[44] M. Püschel, J. M. F. Moura, J. Johnson, D. Padua, M. Veloso, B. W. Singer, J. Xiong, F. Franchetti, A. Gačić, Y. Voronenko, K. Chen, R. W. Johnson, and N. Rizzolo, SPIRAL: Code generation for DSP transforms, Proceedings of the IEEE, 93 (2005), pp. 232–275, (special issue on ”Program Generation, Optimization, and Adaptation”).
[45] Y. Renard and J. Pommier, Getfem++. An open source generic C++ library for finite element methods, 2007. http://home.gna.org/getfem/.
[46] J. Riehl, Mython project, 2007. A new project found at http://code.google.com/p/basil/wiki/Mython.
[47] A. Schmidt and K. G. Siebert, ALBERT – software for scientific computations and applications, Acta Math. Univ. Comen., New Ser., 70 (2001), pp. 105–122. · Zbl 0993.65134
[48] J. Schöberl, NETGEN an advancing front 2d/3d-mesh generator based on abstract rules, Comput. Vis. Sci., 1 (1997), pp. 41–52. · Zbl 0883.68130
[49] L. R. Scott and M. Vogelius, Conforming finite element methods for incompressible and nearly incompressible continua, in Large Scale Computations in Fluid Mechanics, Vol. 22 (Part 2), B. E. Engquist, et al., eds., AMS, Providence, 1985, pp. 221–244. · Zbl 0582.76028
[50] L. R. Scott and M. Vogelius, Norm estimates for a maximal right inverse of the divergence operator in spaces of piecewise polynomials, M2AN (formerly R.A.I.R.O. Analyse Numérique), 19 (1985), pp. 111–143. · Zbl 0608.65013
[51] E. S. Seol and M. S. Shephard, Efficient distributed mesh data structure for parallel automated adaptive analysis, Eng. Comput., 22 (2006), pp. 197–213. · Zbl 05192774
[52] S. Shende and A. D. Malony, TAU: The TAU parallel performance system, Int. J. High Perform. Comput. Appl., 20 (2006), pp. 287–331.
[53] J. R. Shewchuk, Triangle: Engineering a 2D quality mesh generator and delaunay triangulator, in Applied Computational Geometry: Towards Geometric Engineering, M. C. Lin and D. Manocha, eds., Lect. Notes Comput. Sci., vol. 1148, Springer, Berlin, 1996, pp. 203–222, from the First ACM Workshop on Applied Computational Geometry.
[54] H. Si, TetGen, a quality tetrahedral mesh generator and three-dimensional Delaunay triangulator, 2007. http://tetgen.berlios.de/.
[55] C. Taylor and P. Hood, A numerical solution of the Navier–Stokes equations using the finite element technique, Comput. Fluids, 1 (1973), pp. 73–100. · Zbl 0328.76020
[56] A. R. Terrel, FEM optimization with a case study of the Stokes equations, Tech. Rep. TR-2008-02, Department of Computer Science, University of Chicago, 2008.
[57] G. M. Vikstrøm, Parallelization strategies for DOLFIN, Master’s thesis, University of Oslo, Department of Informatics, 2008.
This reference list is based on information provided by the publisher or from digital mathematics libraries. Its items are heuristically matched to zbMATH identifiers and may contain data conversion errors. In some cases that data have been complemented/enhanced by data from zbMATH Open. This attempts to reflect the references listed in the original paper as accurately as possible without claiming completeness or a perfect matching.