×

Camellia: a rapid development framework for finite element solvers. (English) Zbl 1426.65147

Summary: The discontinuous Petrov-Galerkin (DPG) methodology of L. Demkowicz and J. Gopalakrishnan [Numer. Methods Partial Differ. Equations 27, No. 1, 70–105 (2011; Zbl 1208.65164); SIAM J. Numer. Anal. 49, No. 5, 1788–1809 (2011; Zbl 1237.65122)] guarantees the optimality of the finite element solution in a user-controllable energy norm, and provides several features supporting adaptive schemes. The approach provides stability automatically; there is no need for carefully derived numerical fluxes (as in DG schemes) or for mesh-dependent stabilization terms (as in stabilized methods). In this paper, we focus on features of Camellia that facilitate implementation of new DPG formulations; chief among these is a rich set of features in support of symbolic manipulation, which allow, e.g., bilinear formulations in the code to appear much as they would on paper. Many of these features are general in the sense that they can also be used in the implementation of other finite element formulations. In fact, because DPG’s requirements are essentially a superset of those of other finite element methods, Camellia provides built-in support for most common methods. We believe, however, that the combination of an essentially “hands-free” finite element methodology as found in DPG with the rapid development features of Camellia are particularly winsome, so we focus on use cases in this class. In addition to the symbolic manipulation features mentioned above, Camellia offers support for one-irregular adaptive meshes in 1D, 2D, 3D, and space-time. It provides a geometric multigrid preconditioner particularly suited for DPG problems, and supports distributed parallel execution using MPI. For its load balancing and distributed data structures, Camellia relies on packages from the Trilinos project, which simplifies interfacing with other computational science packages. Camellia also allows loading of standard mesh formats through an interface with the MOAB package. Camellia includes support for static condensation to eliminate element-interior degrees of freedom locally, usually resulting in substantial reduction of the cost of the global problem. We include a discussion of the variational formulations built into Camellia, with references to those formulations in the literature, as well as an MPI performance study.

MSC:

65M60 Finite element, Rayleigh-Ritz and Galerkin methods for initial value and initial-boundary value problems involving PDEs
65-04 Software, source code, etc. for problems pertaining to numerical analysis
65Y05 Parallel numerical computation
65M55 Multigrid methods; domain decomposition for initial value and initial-boundary value problems involving PDEs
68W30 Symbolic computation and algebraic computation

References:

[1] J. Ahrens, B. Geveci and C. Law, ParaView: An End-User Tool for Large Data Visualization, Elsevier, Amsterdam, 2005.; Ahrens, J.; Geveci, B.; Law, C., ParaView: An End-User Tool for Large Data Visualization (2005)
[2] W. Bangerth, C. Burstedde, T. Heister and M. Kronbichler, Algorithms and data structures for massively parallel generic adaptive finite element codes, ACM Trans. Math. Software 38 (2011), no. 2, Paper No. 14.; Bangerth, W.; Burstedde, C.; Heister, T.; Kronbichler, M., Algorithms and data structures for massively parallel generic adaptive finite element codes, ACM Trans. Math. Software, 38, 2 (2011) · Zbl 1365.65247
[3] W. Bangerth and G. Kanschat, Concepts for object-oriented finite element software – the deal.II Library, IWR 1999.; Bangerth, W.; Kanschat, G., Miscellaneous · Zbl 1365.65248
[4] P. Bochev, H. C. Edwards, R. C. Kirby, K. Peterson and D. Ridzal, Solving PDEs with Intrepid, Sci. Program. 20 (2012), no. 2, 151-180.; Bochev, P.; Edwards, H. C.; Kirby, R. C.; Peterson, K.; Ridzal, D., Solving PDEs with Intrepid, Sci. Program., 20, 2, 151-180 (2012)
[5] J. Bramwell, L. Demkowicz, J. Gopalakrishnan and W. Qiu, A locking-free hp DPG method for linear elasticity with symmetric stresses, Numer. Math. 122 (2012), no. 4, 671-707.; Bramwell, J.; Demkowicz, L.; Gopalakrishnan, J.; Qiu, W., A locking-free hp DPG method for linear elasticity with symmetric stresses, Numer. Math., 122, 4, 671-707 (2012) · Zbl 1283.74094
[6] D. Broersen and R. P. Stevenson, A Petrov-Galerkin discretization with optimal test space of a mild-weak formulation of convection – diffusion equations in mixed form, IMA J. Numer. Anal. 35 (2015), no. 1, 39-73.; Broersen, D.; Stevenson, R. P., A Petrov-Galerkin discretization with optimal test space of a mild-weak formulation of convection – diffusion equations in mixed form, IMA J. Numer. Anal., 35, 1, 39-73 (2015) · Zbl 1311.65144
[7] C. Carstensen, L. Demkowicz and J. Gopalakrishnan, Breaking spaces and forms for the DPG method and applications including Maxwell equations, Comput. Math. Appl. 72 (2016), no. 3, 494-522.; Carstensen, C.; Demkowicz, L.; Gopalakrishnan, J., Breaking spaces and forms for the DPG method and applications including Maxwell equations, Comput. Math. Appl., 72, 3, 494-522 (2016) · Zbl 1359.65249
[8] J. Chan, A DPG method for convection-diffusion problems, PhD thesis, University of Texas at Austin, 2013.; Chan, J., A DPG method for convection-diffusion problems (2013)
[9] J. Chan, L. Demkowicz and R. Moser, A DPG method for steady viscous compressible flow, Comput. & Fluids 98 (2014), 69-90.; Chan, J.; Demkowicz, L.; Moser, R., A DPG method for steady viscous compressible flow, Comput. & Fluids, 98, 69-90 (2014) · Zbl 1391.76311
[10] J. Chan, N. Heuer, T. Bui-Thanh and L. Demkowicz, A robust DPG method for convection-dominated diffusion problems II: Adjoint boundary conditions and mesh-dependent test norms, Comput. Math. Appl. 67 (2014), no. 4, 771-795.; Chan, J.; Heuer, N.; Bui-Thanh, T.; Demkowicz, L., A robust DPG method for convection-dominated diffusion problems II: Adjoint boundary conditions and mesh-dependent test norms, Comput. Math. Appl., 67, 4, 771-795 (2014) · Zbl 1350.65120
[11] H. Childs, E. Brugger, B. Whitlock, J. Meredith, S. Ahern, D. Pugmire, K. Biagas, M. Miller, C. Harrison, G. H. Weber, H. Krishnan, T. Fogal, A. Sanderson, C. Garth, E. Wes Bethel, D. Camp, O. Rübel, M. Durant, J. M. Favre and P. Navrátil, VisIt: An end-user tool for visualizing and analyzing very large data, High Performance Visualization-Enabling Extreme-Scale Scientific Insight, Chapman & Hall/CRC, New York (2012), 357-372.; Childs, H.; Brugger, E.; Whitlock, B.; Meredith, J.; Ahern, S.; Pugmire, D.; Biagas, K.; Miller, M.; Harrison, C.; Weber, G. H.; Krishnan, H.; Fogal, T.; Sanderson, A.; Garth, C.; Wes Bethel, E.; Camp, D.; Rübel, O.; Durant, M.; Favre, J. M.; Navrátil, P., VisIt: An end-user tool for visualizing and analyzing very large data, High Performance Visualization-Enabling Extreme-Scale Scientific Insight, 357-372 (2012)
[12] W. Dahmen, A. Cohen and G. Welper, Adaptivity and variational stabilization for convection-diffusion equations, ESAIM Math. Model. Numer. Anal. 46 (2012), no. 5, 1247-1273.; Dahmen, W.; Cohen, A.; Welper, G., Adaptivity and variational stabilization for convection-diffusion equations, ESAIM Math. Model. Numer. Anal., 46, 5, 1247-1273 (2012) · Zbl 1270.65065
[13] A. Dedner, R. Klöfkorn, M. Nolte and M. Ohlberger, A generic interface for parallel and adaptive discretization schemes: Abstraction principles and the DUNE-FEM module, Computing 90 (2010), no. 3, 165-196.; Dedner, A.; Klöfkorn, R.; Nolte, M.; Ohlberger, M., A generic interface for parallel and adaptive discretization schemes: Abstraction principles and the DUNE-FEM module, Computing, 90, 3, 165-196 (2010) · Zbl 1201.65178
[14] L. Demkowicz and J. Gopalakrishnan, A class of discontinuous Petrov-Galerkin methods. Part I: The transport equation, Comput. Methods Appl. Mech. Engrg. 199 (2010), 1558-1572.; Demkowicz, L.; Gopalakrishnan, J., A class of discontinuous Petrov-Galerkin methods. Part I: The transport equation, Comput. Methods Appl. Mech. Engrg., 199, 1558-1572 (2010) · Zbl 1231.76142
[15] L. Demkowicz and J. Gopalakrishnan, A class of discontinuous Petrov-Galerkin methods. Part II: Optimal test functions, Numer. Methods Partial Differential Equations 27 (2011), no. 1, 70-105.; Demkowicz, L.; Gopalakrishnan, J., A class of discontinuous Petrov-Galerkin methods. Part II: Optimal test functions, Numer. Methods Partial Differential Equations, 27, 1, 70-105 (2011) · Zbl 1208.65164
[16] L. Demkowicz and J. Gopalakrishnan, Analysis of the DPG method for the Poisson problem, SIAM J. Numer. Anal. 49 (2011), no. 5, 1788-1809.; Demkowicz, L.; Gopalakrishnan, J., Analysis of the DPG method for the Poisson problem, SIAM J. Numer. Anal., 49, 5, 1788-1809 (2011) · Zbl 1237.65122
[17] L. Demkowicz and J. Gopalakrishnan, A primal DPG method without a first-order reformulation, Comput. Math. Appl. 66 (2013), no. 6, 1058-1064.; Demkowicz, L.; Gopalakrishnan, J., A primal DPG method without a first-order reformulation, Comput. Math. Appl., 66, 6, 1058-1064 (2013) · Zbl 07863339
[18] L. Demkowicz, J. Gopalakrishnan and B. Keith, The DPG-star method, preprint (2018), .; Demkowicz, L.; Gopalakrishnan, J.; Keith, B., The DPG-star method, Preprint (2018) · Zbl 1447.65133
[19] L. Demkowicz, J. Gopalakrishnan, I. Muga and J. Zitelli, Wavenumber explicit analysis for a DPG method for the multidimensional Helmholtz equation, Comput. Methods Appl. Mech. Engrg. 213-216 (2012), 126-138.; Demkowicz, L.; Gopalakrishnan, J.; Muga, I.; Zitelli, J., Wavenumber explicit analysis for a DPG method for the multidimensional Helmholtz equation, Comput. Methods Appl. Mech. Engrg., 213-216, 126-138 (2012) · Zbl 1243.76059
[20] L. Demkowicz and N. Heuer, Robust DPG method for convection-dominated diffusion problems, SIAM J. Numer. Anal. 51 (2013), no. 5, 2514-2537.; Demkowicz, L.; Heuer, N., Robust DPG method for convection-dominated diffusion problems, SIAM J. Numer. Anal., 51, 5, 2514-2537 (2013) · Zbl 1290.65088
[21] K. Devine, E. Boman, R. Heaphy, B. Hendrickson and C. Vaughan, Zoltan data management services for parallel dynamic applications, Comput. Sci. Eng. 4 (2002), no. 2, 90-97.; Devine, K.; Boman, E.; Heaphy, R.; Hendrickson, B.; Vaughan, C., Zoltan data management services for parallel dynamic applications, Comput. Sci. Eng., 4, 2, 90-97 (2002)
[22] H. C. Edwards, C. R. Trott and D. Sunderland, Kokkos: Enabling manycore performance portability through polymorphic memory access patterns, J. Parallel Distributed Comput. 74 (2014), no. 12, 3202-3216.; Edwards, H. C.; Trott, C. R.; Sunderland, D., Kokkos: Enabling manycore performance portability through polymorphic memory access patterns, J. Parallel Distributed Comput., 74, 12, 3202-3216 (2014)
[23] T. E. Ellis, Space-time discontinuous Petrov-Galerkin finite elements for transient fluid mechanics, PhD thesis, University of Texas at Austin, 2016.; Ellis, T. E., Space-time discontinuous Petrov-Galerkin finite elements for transient fluid mechanics (2016)
[24] R. D. Falgout and U. Meier Yang, Hypre: A library of high performance preconditioners, Computational Science-ICCS 2002, Berlin, Heidelberg (2002), 632-641.; Falgout, R. D.; Meier Yang, U., Hypre: A library of high performance preconditioners, Computational Science-ICCS 2002, 632-641 (2002) · Zbl 1056.65046
[25] F. Fuentes, B. Keith, L. Demkowicz and P. Le Tallec, Coupled variational formulations of linear elasticity and the DPG methodology, J. Comput. Phys. 348 (2017), 715-731.; Fuentes, F.; Keith, B.; Demkowicz, L.; Le Tallec, P., Coupled variational formulations of linear elasticity and the DPG methodology, J. Comput. Phys., 348, 715-731 (2017) · Zbl 1380.65367
[26] T. Gamblin, M. LeGendre, M. R. Collette, G. L. Lee, A. Moody, B. R. de Supinski and S. Futral, The Spack package manager: Bringing order to HPC software chaos, Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis-SC’15, ACM, New York (2015), Article ID 40.; Gamblin, T.; LeGendre, M.; Collette, M. R.; Lee, G. L.; Moody, A.; de Supinski, B. R.; Futral, S., The Spack package manager: Bringing order to HPC software chaos, Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis-SC’15 (2015)
[27] F. Gruber, A. Klewinghaus and O. Mula, The DUNE-DPG library for solving PDEs with discontinuous Petrov-Galerkin finite elements, Arch. Numer. Softw. 5 (2017), no. 1, 111-127.; Gruber, F.; Klewinghaus, A.; Mula, O., The DUNE-DPG library for solving PDEs with discontinuous Petrov-Galerkin finite elements, Arch. Numer. Softw., 5, 1, 111-127 (2017)
[28] 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. Software 31 (2005), no. 3, 397-423.; Heroux, M. A.; Bartlett, R. A.; Howle, V. E.; Hoekstra, R. J.; Hu, J. J.; Kolda, T. G.; Lehoucq, R. B.; Long, K. R.; Pawlowski, R. P.; Phipps, E. T.; Salinger, A. G.; Thornquist, H. K.; Tuminaro, R. S.; Willenbring, J. M.; Williams, A.; Stanley, K. S., An overview of the Trilinos project, ACM Trans. Math. Software, 31, 3, 397-423 (2005) · Zbl 1136.65354
[29] B. Keith, New ideas in adjoint methods for PDEs: A saddle-point paradigm for finite element analysis and its role in the DPG methodology, PhD thesis, University of Texas at Austin, 2018.; Keith, B., New ideas in adjoint methods for PDEs: A saddle-point paradigm for finite element analysis and its role in the DPG methodology (2018)
[30] B. Keith, F. Fuentes and L. Demkowicz, The DPG methodology applied to different variational formulations of linear elasticity, Comput. Methods Appl. Mech. Engrg. 309 (2016), 579-609.; Keith, B.; Fuentes, F.; Demkowicz, L., The DPG methodology applied to different variational formulations of linear elasticity, Comput. Methods Appl. Mech. Engrg., 309, 579-609 (2016) · Zbl 1439.74431
[31] B. Keith, P. Knechtges, N. V. Roberts, S. Elgeti, M. Behr and L. Demkowicz, An ultraweak DPG method for viscoelastic fluids, J. Non-Newtonian Fluid Mech. 247 (2017), 107-122.; Keith, B.; Knechtges, P.; Roberts, N. V.; Elgeti, S.; Behr, M.; Demkowicz, L., An ultraweak DPG method for viscoelastic fluids, J. Non-Newtonian Fluid Mech., 247, 107-122 (2017)
[32] B. Keith, S. Petrides, F. Fuentes and L. Demkowicz, Discrete least-squares finite element methods, Comput. Methods Appl. Mech. Engrg. 327 (2017), 226-255.; Keith, B.; Petrides, S.; Fuentes, F.; Demkowicz, L., Discrete least-squares finite element methods, Comput. Methods Appl. Mech. Engrg., 327, 226-255 (2017) · Zbl 1439.65179
[33] B. S. 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), no. 3, 237-254.; Kirk, B. S.; Peterson, J. W.; Stogner, R. H.; Carey, G. F., LibMesh: A C++ library for parallel adaptive mesh refinement/coarsening simulations, Eng. Comput., 22, 3, 237-254 (2006)
[34] A. Logg, K.-A. Mardal and G. N. Wells, Automated Solution of Differential Equations by the Finite Element Method, Lecture Notes in Comput. Sci. 84, Springer, Berlin, 2012.; Logg, A.; Mardal, K.-A.; Wells, G. N., Automated Solution of Differential Equations by the Finite Element Method (2012) · Zbl 1247.65105
[35] I. Muga and K. G. van der Zee, Discretization of linear problems in Banach spaces: Residual minimization, nonlinear Petrov-Galerkin, and monotone mixed methods, preprint (2015), .; Muga, I.; van der Zee, K. G., Discretization of linear problems in Banach spaces: Residual minimization, nonlinear Petrov-Galerkin, and monotone mixed methods, Preprint (2015) · Zbl 1457.65024
[36] S. Petrides and L. F. Demkowicz, An adaptive DPG method for high frequency time-harmonic wave propagation problems, Comput. Math. Appl. 74 (2017), no. 8, 1999-2017.; Petrides, S.; Demkowicz, L. F., An adaptive DPG method for high frequency time-harmonic wave propagation problems, Comput. Math. Appl., 74, 8, 1999-2017 (2017) · Zbl 1397.65288
[37] E. T. Phipps and D. M. Gay, Sacado automatic differentiation package, .; Phipps, E. T.; Gay, D. M., Website · Zbl 1157.65333
[38] N. V. Roberts, A discontinuous Petrov-Galerkin methodology for incompressible flow problems, PhD thesis, University of Texas at Austin, 2013.; Roberts, N. V., A discontinuous Petrov-Galerkin methodology for incompressible flow problems (2013)
[39] N. V. Roberts, Camellia: A software framework for discontinuous Petrov-Galerkin methods, Comput. Math. Appl. 68 (2014), no. 11, 1581-1604.; Roberts, N. V., Camellia: A software framework for discontinuous Petrov-Galerkin methods, Comput. Math. Appl., 68, 11, 1581-1604 (2014) · Zbl 1364.65002
[40] N. V. Roberts, Camellia v1.0 manual: Part I, Technical Report ANL/ALCF-16/3, Argonne National Laboratory, 2016.; Roberts, N. V., Camellia v1.0 manual: Part I (2016)
[41] N. V. Roberts, T. Bui-Thanh and L. Demkowicz, The DPG method for the Stokes problem, Comput. Math. Appl. 67 (2014), no. 4, 966-995.; Roberts, N. V.; Bui-Thanh, T.; Demkowicz, L., The DPG method for the Stokes problem, Comput. Math. Appl., 67, 4, 966-995 (2014) · Zbl 1381.76200
[42] N. V. Roberts and J. Chan, A geometric multigrid preconditioning strategy for DPG system matrices, Comput. Math. Appl. 74 (2017), no. 8, 2018-2043.; Roberts, N. V.; Chan, J., A geometric multigrid preconditioning strategy for DPG system matrices, Comput. Math. Appl., 74, 8, 2018-2043 (2017) · Zbl 1397.65293
[43] N. V. Roberts, L. Demkowicz and R. Moser, A discontinuous Petrov-Galerkin methodology for adaptive solutions to the incompressible Navier-Stokes equations, J. Comput. Phys. 301 (2015), 456-483.; Roberts, N. V.; Demkowicz, L.; Moser, R., A discontinuous Petrov-Galerkin methodology for adaptive solutions to the incompressible Navier-Stokes equations, J. Comput. Phys., 301, 456-483 (2015) · Zbl 1349.76259
[44] T. J. Tautges, MOAB-SD: Integrated structured and unstructured mesh representation, Eng. Comput. 20 (2004), 286-293.; Tautges, T. J., MOAB-SD: Integrated structured and unstructured mesh representation, Eng. Comput., 20, 286-293 (2004)
[45] J. Zitelli, I. Muga, L. Demkowicz, J. Gopalakrishnan, D. Pardo and V. Calo, A class of discontinuous Petrov-Galerkin methods. Part IV: Wave propagation problems, J. Comput. Phys. 230 (2011), 2406-2432.; Zitelli, J.; Muga, I.; Demkowicz, L.; Gopalakrishnan, J.; Pardo, D.; Calo, V., A class of discontinuous Petrov-Galerkin methods. Part IV: Wave propagation problems, J. Comput. Phys., 230, 2406-2432 (2011) · Zbl 1316.76054
[46] MFEM: Modular finite element methods library, .; Website · Zbl 1524.65001
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.