×

PetIGA: a framework for high-performance isogeometric analysis. (English) Zbl 1439.65003

Summary: We present PetIGA, a code framework to approximate the solution of partial differential equations using isogeometric analysis. PetIGA can be used to assemble matrices and vectors which come from a Galerkin weak form, discretized with Non-Uniform Rational B-spline basis functions. We base our framework on PETSc, a high-performance library for the scalable solution of partial differential equations, which simplifies the development of large-scale scientific codes, provides a rich environment for prototyping, and separates parallelism from algorithm choice. We describe the implementation of PetIGA, and exemplify its use by solving a model nonlinear problem. To illustrate the robustness and flexibility of PetIGA, we solve some challenging nonlinear partial differential equations that include problems in both solid and fluid mechanics. We show strong scaling results on up to 4096 cores, which confirm the suitability of PetIGA for large scale simulations.

MSC:

65-04 Software, source code, etc. for problems pertaining to numerical analysis
65N30 Finite element, Rayleigh-Ritz and Galerkin methods for boundary value problems involving PDEs
65D07 Numerical computation using splines
65D17 Computer-aided design (modeling of curves and surfaces)
PDFBibTeX XMLCite
Full Text: DOI arXiv Link

References:

[1] Hughes, T. J.R.; Cottrell, J. A.; Bazilevs, Y., Isogeometric analysis: CAD, finite elements, NURBS, exact geometry and mesh refinement, Comput. Methods Appl. Mech. Engrg., 194, 39-41, 4135-4195 (2005) · Zbl 1151.74419
[2] Cottrell, J. A.; Hughes, T. J.R.; Bazilevs, Y., Isogeometric Analysis: Toward Integration of CAD and FEA (2009), John Wiley & Sons, Ltd. · Zbl 1378.65009
[3] Bercovier, M.; Berold, G., Solving design problems by integration of CAD and FEM software, (Ford, B.; Chatelin, F., Proceedings of IFIP TC 2/WG 2.5 Working Conference on Problem Solving Environments for Scientific Computing, Sophia Antipolis, France, 17-21 June, 1985 (1987), North Holland), 309
[5] Sheffer, A.; Bercovier, M., CAD model editing and its applications (1999), Hebrew University of Jerusalem, (Ph.D. thesis)
[6] Höllig, K., Finite Element Methods with B-splines, Frontiers in Applied Mathematics, Society for Industrial and Applied Mathematics (2003) · Zbl 1020.65085
[7] Gomez, H.; Calo, V. M.; Bazilevs, Y.; Hughes, T. J.R., Isogeometric analysis of the Cahn-Hilliard phase-field model, Comput. Methods Appl. Mech. Engrg., 197, 49-50, 4333-4352 (2008) · Zbl 1194.74524
[8] Gomez, H.; Hughes, T. J.R.; Nogueira, X.; Calo, V. M., Isogeometric analysis of the isothermal Navier-Stokes-Korteweg equations, Comput. Methods Appl. Mech. Engrg., 199, 25-28, 1828-1840 (2010) · Zbl 1231.76191
[9] Vignal, P.; Dalcin, L.; Brown, D. L.; Collier, N.; Calo, V. M., An energy-stable convex splitting for the phase-field crystal equation, Comput. Struct., 158, 355-368 (2015)
[10] Benson, D. J.; Bazilevs, Y.; Hsu, M.-C.; Hughes, T. J.R., A large deformation, rotation-free, isogeometric shell, Comput. Methods Appl. Mech. Engrg., 200, 13-16, 1367-1378 (2011) · Zbl 1228.74077
[11] Kiendl, J.; Hsu, M.-C.; Wu, M. C.H.; Reali, A., Isogeometric Kirchhoff-Love shell formulations for general hyperelastic materials, Comput. Methods Appl. Mech. Engrg., 291, 280-303 (2015) · Zbl 1423.74177
[12] Bouclier, R.; Elguedj, T.; Combescure, A., An isogeometric locking-free NURBS-based solid-shell element for geometrically nonlinear analysis, Internat. J. Numer. Methods Engrg., 101, 10, 774-808 (2015) · Zbl 1352.74330
[13] Akkerman, I.; Bazilevs, Y.; Calo, V. M.; Hughes, T. J.R.; Hulshoff, S., The role of continuity in residual-based variational multiscale modeling of turbulence, Comput. Mech., 41, 3, 371-378 (2008) · Zbl 1162.76355
[14] Akkerman, I.; Bazilevs, Y.; Kees, C. E.; Farthing, M. W., Isogeometric analysis of free-surface flow, J. Comput. Phys., 230, 11, 4137-4152 (2011), Special issue High Order Methods for CFD Problems · Zbl 1343.76040
[15] Buffa, A.; Rivas, J.; Sangalli, G.; Vázquez, R., Isogeometric discrete differential forms in three dimensions, SIAM J. Numer. Anal., 49, 2, 818-844 (2011) · Zbl 1225.65100
[16] Evans, J. A.; Hughes, T. J.R., Isogeometric divergence-conforming B-splines for the unsteady Navier-Stokes equations, J. Comput. Phys., 241, 141-167 (2013) · Zbl 1349.76054
[17] Beirão da Veiga, L.; Buffa, A.; Rivas, J.; Sangalli, G., Some estimates for h-p-k-refinement in isogeometric analysis, Numer. Math., 118, 271-305 (2011) · Zbl 1222.41010
[18] Evans, J. A.; Bazilevs, Y.; Babuška, I.; Hughes, T. J.R., \(n\)-Widths, sup-infs, and optimality ratios for the \(k\)-version of the isogeometric finite element method, Comput. Methods Appl. Mech. Engrg., 198, 21-26, 1726-1741 (2009), Advances in Simulation-Based Engineering Sciences—Honoring J. Tinsley Oden · Zbl 1227.65093
[19] Collier, N.; Dalcin, L.; Calo, V. M., On the computational efficiency of isogeometric methods for smooth elliptic problems using direct solvers, Internat. J. Numer. Methods Engrg., 100, 8, 620-632 (2014) · Zbl 1352.65486
[20] Collier, N.; Pardo, D.; Dalcin, L.; Paszynski, M.; Calo, V. M., The cost of continuity: A study of the performance of isogeometric finite elements using direct solvers, Comput. Methods Appl. Mech. Engrg., 213-216, 353-361 (2012) · Zbl 1243.65137
[21] Collier, N.; Dalcin, L.; Pardo, D.; Calo, V. M., The cost of continuity: Performance of iterative solvers on isogeometric finite elements, SIAM J. Sci. Comput., 35, 2, A767-A784 (2013) · Zbl 1266.65221
[23] Wilson, G., Those who will not learn from history..., Comput. Sci. Eng., 10, 3, 5-6 (2008)
[25] Balay, S.; Abhyankar, S.; Adams, M. F.; Brown, J.; Brune, P.; Buschelman, K.; Dalcin, L.; Eijkhout, V.; Gropp, W. D.; Karpeyev, D.; Kaushik, D.; Knepley, M. G.; Curfman McInnes, L.; Rupp, K.; Smith, B. F.; Zampini, S.; Zhang, H.; Zhang, H., PETSc Users Manual, Tech. Rep. ANL-95/11 - Revision 3.7 (2016), Argonne National Laboratory, URL http://www.mcs.anl.gov/petsc/petsc-current/docs/manual.pdf
[26] Balay, S.; Gropp, W. D.; Curfman McInnes, L.; Smith, B. F., Efficient management of parallelism in object oriented numerical software libraries, (Arge, E.; Bruaset, A. M.; Langtangen, H. P., Modern Software Tools in Scientific Computing (1997), Birkhäuser Press), 163-202 · Zbl 0882.65154
[28] Zampini, S., PCBDDC: a class of robust dual-primal methods in PETSc, SIAM J. Sci. Comput. (2016), Special Issue on CS&E Software, in press · Zbl 1352.65632
[29] Beirão da Veiga, L.; Pavarino, L. F.; Scacchi, S.; Widlund, O. B.; Zampini, S., Isogeometric BDDC preconditioners with deluxe scaling, SIAM J. Sci. Comput., 36, 3, A1118-A1139 (2014) · Zbl 1320.65047
[30] Falgout, R. D.; Yang, U. M., hypre: A library of high performance preconditioners, (Sloot, P. M.A.; Hoekstra, A. G.; Kenneth Tan, C. J.; Dongarra, J. J., Computational Science—ICCS 2002. Computational Science—ICCS 2002, Lecture Notes in Computer Science, vol. 2331 (2002), Springer: Springer Berlin, Heidelberg), 632-641 · Zbl 1056.65046
[31] 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
[32] Amestoy, P. R.; Guermouche, A.; L’Excellent, J.-Y.; Pralet, S., Hybrid scheduling for the parallel solution of linear systems, Parallel Comput., 32, 2, 136-156 (2006), Parallel Matrix Algorithms and Applications
[33] Bangerth, W.; Hartmann, R.; Kanschat, G., deal.II—a general purpose object oriented finite element library, ACM Trans. Math. Software, 33, 4, 24/1-24/27 (2007) · Zbl 1365.65248
[34] Logg, A.; Mardal, K.-A.; Wells, G., Automated Solution of Differential Equations by the Finite Element Method (2012), Springer: Springer Berlin, Heidelberg · Zbl 1247.65105
[35] Kirk, B. S.; Peterson, J. W.; Stogner, R. H.; Carey, G. F., : A C++ library for parallel adaptive mesh refinement/coarsening simulations, Eng. Comput., 22, 3-4, 237-254 (2006)
[36] Sonzogni, V. E.; Yommi, A. M.; Nigro, N. M.; Storti, M. A., A parallel finite element program on a beowulf cluster, Adv. Eng. Softw., 33, 7-10, 427-443 (2002), Engineering Computational Technology & Computational Structures Technology · Zbl 1225.76205
[38] de Falco, C.; Reali, A.; Vázquez, R., GeoPDEs: A research tool for isogeometric analysis of PDEs, Adv. Eng. Softw., 42, 12, 1020-1034 (2011) · Zbl 1246.35010
[39] Pauletti, M. S.; Martinelli, M.; Cavallini, N.; Antolin, P., Igatools: An isogeometric analysis library, SIAM J. Sci. Comput., 37, 4, C465-C496 (2015) · Zbl 1332.65196
[40] Jüttler, B.; Langer, U.; Mantzaflaris, A.; Moore, S. E.; Zulehner, W., Geometry + simulation modules: Implementing isogeometric analysis, PAMM, 14, 1, 961-962 (2014)
[44] Cox, M. G., The numerical evaluation of B-splines, IMA J. Appl. Math., 10, 2, 134-149 (1972) · Zbl 0252.65007
[45] de Boor, C., On calculation with B-splines, J. Approx. Theory, 6, 1, 50-62 (1972) · Zbl 0239.41006
[46] Piegl, L.; Tiller, W., (The NURBS Book. The NURBS Book, Monographs in Visual Communication (1995), Springer) · Zbl 0828.68118
[47] Liu, J.; Dedè, L.; Evans, J. A.; Borden, M. J.; Hughes, T. J.R., Isogeometric analysis of the advective Cahn-Hilliard equation: Spinodal decomposition under shear flow, J. Comput. Phys., 242, 321-350 (2013) · Zbl 1311.76069
[48] Knoll, D. A.; Keyes, D. E., Jacobian-free Newton-Krylov methods: a survey of approaches and applications, J. Comput. Phys., 193, 2, 357-397 (2004) · Zbl 1036.65045
[49] Gebremedhin, A. H.; Manne, F.; Pothen, A., What color is your Jacobian? Graph coloring for computing derivatives, SIAM Rev., 47, 4, 629-705 (2005) · Zbl 1076.05034
[50] Pernice, M.; Walker, H. F., NITSOL: A Newton iterative solver for nonlinear systems, SIAM J. Sci. Comput., 19, 302-318 (1998) · Zbl 0916.65049
[51] Hughes, T. J.R.; Reali, A.; Sangalli, G., Efficient quadrature for NURBS-based isogeometric analysis, Comput. Methods Appl. Mech. Engrg., 199, 5-8, 301-313 (2010) · Zbl 1227.65029
[55] Karniadakis, G. E.; Sherwin, S. J., Spectral/hp Element Methods for Computational Fluid Dynamics (2013), Oxford University Press · Zbl 1256.76003
[56] Auricchio, F.; Beirão da Veiga, L.; Hughes, T. J.R.; Reali, A.; Sangalli, G., Isogeometric collocation methods, Math. Models Methods Appl. Sci., 20, 11, 2075-2107 (2010) · Zbl 1226.65091
[59] Jacobsen, J.; Schmitt, K., The Liouville-Bratu-Gelfand problem for radial operators, J. Differential Equations, 184, 1, 283-298 (2002) · Zbl 1015.34013
[60] Schroeder, W.; Martin, K.; Lorensen, B., The Visualization Toolkit (2006), Kitware Inc.
[62] Bernal, L. M.; Calo, V. M.; Collier, N.; Espinosa, G. A.; Fuentes, F.; Mahecha, J. C., Isogeometric analysis of hyperelastic materials using PetIGA, Procedia Comput. Sci., 18, 1604-1613 (2013), 2013 International Conference on Computational Science
[63] Simo, J. C.; Hughes, T. J.R., Computational Inelasticity (1998), Springer · Zbl 0934.74003
[64] Gonzalez, O.; Stuart, A. M., A First Course in Continuum Mechanics (2008), Cambridge University Press · Zbl 1143.74001
[65] Jansen, K. E.; Whiting, C. H.; Hulbert, G. M., A generalized-\( \alpha\) method for integrating the filtered Navier-Stokes equations with a stabilized finite element method, Comput. Methods Appl. Mech. Engrg., 190, 3-4, 305-319 (2000) · Zbl 0973.76048
[66] Bazilevs, Y.; Calo, V. M.; Cottrell, J. A.; Hughes, T. J.R.; Reali, A.; Scovazzi, G., Variational multiscale residual-based turbulence modeling for large eddy simulation of incompressible flows, Comput. Methods Appl. Mech. Engrg., 197, 1-4, 173-201 (2007) · Zbl 1169.76352
[67] Motlagh, Y. G.; Ahn, H. T.; Hughes, T. J.R.; Calo, V. M., Simulation of laminar and turbulent concentric pipe flows with the isogeometric variational multiscale method, Comput. & Fluids, 71, 146-155 (2013) · Zbl 1365.76033
[69] Woźniak, M.; Kuźnik, K.; Paszyński, M.; Calo, V. M.; Pardo, D., Computational cost estimates for parallel shared memory isogeometric multi-frontal solvers, Comput. Math. Appl., 67, 10, 1864-1883 (2014) · Zbl 1367.65257
[70] Yokota, R.; Pestana, J.; Ibeid, H.; Keyes, D., Fast multipole preconditioners for sparse matrices arising from elliptic equations, Comput. Res. Repository, 1-32 (2014)
[71] Collier, N.; Haji-Ali, A-. L.; Nobile, F.; von Schwerin, E.; Tempone, R., A continuation multilevel Monte Carlo algorithm, BIT, 55, 2, 399-432 (2015) · Zbl 1317.65030
[72] Casquero, H.; Bona-Casas, C.; Gomez, H., A NURBS-based immersed methodology for fluid-structure interaction, Comput. Methods Appl. Mech. Engrg., 284, 943-970 (2015), Isogeometric Analysis Special Issue · Zbl 1423.74261
[73] Rudraraju, S.; Van der Ven, A.; Garikipati, K., Three-dimensional isogeometric solutions to general boundary value problems of toupin’s gradient elasticity theory at finite strains, Comput. Methods Appl. Mech. Engrg., 278, 705-728 (2014) · Zbl 1423.74105
[74] Vignal, P.; Sarmiento, A.; Côrtes, A. M.A.; Dalcin, L.; Calo, V. M., Coupling Navier-Stokes and Cahn-Hilliard equations in a two-dimensional annular flow configuration, Procedia Comput. Sci., 51, 934-943 (2015), International Conference On Computational Science, {ICCS} 2015 Computational Science at the Gates of Nature
[75] Espath, L. F.R.; Sarmiento, A. F.; Vignal, P.; Varga, B. O.N.; Cortes, A. M.A.; Dalcin, L.; Calo, V. M., Energy exchange analysis in droplet dynamics via the Navier-Stokes-Cahn-Hilliard model, J. Fluid Mech., 797, 389-430 (2016), http://dx.doi.org/10.1017/jfm.2016.277. arXiv:1512.02249 · Zbl 1422.76037
[76] Oliphant, T. E., A Guide to NumPy (2006), Trelgol Publishing
[77] Hunter, J. D., Matplotlib: A 2D graphics environment, Comput. Sci. Eng., 9, 3, 90-95 (2007)
[78] Pérez, F.; Granger, B. E., IPython: a system for interactive scientific computing, Comput. Sci. Eng., 9, 3, 21-29 (2007)
[79] Hughes, T. J.R., The Finite Element Method: Linear Static and Dynamic Finite Element Analysis (2000), Dover Publications · Zbl 1191.74002
[80] Henderson, A., ParaView Guide, A Parallel Visualization Application, Tech. Rep. Revision 4.1 (2014), Kitware Inc.
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.