{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,8,22]],"date-time":"2026-08-22T07:43:05Z","timestamp":1787384585618,"version":"build-2736575974"},"reference-count":28,"publisher":"Society for Industrial & Applied Mathematics (SIAM)","issue":"3","content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["SIAM J. Sci. Comput."],"published-print":{"date-parts":[[2005,1]]},"abstract":"<jats:p>Assembling stiffness matrices represents a significant cost in many finite element computations. We address the question of optimizing the evaluation of these matrices. By finding redundant computations, we are able to significantly reduce the cost of building local stiffness matrices for the Laplace operator and for the trilinear form for Navier--Stokes operators. For the Laplace operator in two space dimensions, we have developed a heuristic graph algorithm that searches for such redundancies and generates code for computing the local stiffness matrices. Up to cubics, we are able to build the stiffness matrix on any triangle in less than one multiply-add pair per entry. Up to sixth degree, we can do it in less than about two pairs. Preliminary low-degree results for Poisson and Navier-Stokes operators in three dimensions are also promising.<\/jats:p>","DOI":"10.1137\/040607824","type":"journal-article","created":{"date-parts":[[2005,11,21]],"date-time":"2005-11-21T21:00:27Z","timestamp":1132606827000},"page":"741-758","source":"Crossref","is-referenced-by-count":45,"title":["Optimizing the Evaluation of Finite Element Matrices"],"prefix":"10.1137","volume":"27","author":[{"given":"Robert C.","family":"Kirby","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Matthew","family":"Knepley","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Anders","family":"Logg","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"L. Ridgway","family":"Scott","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"351","published-online":{"date-parts":[[2006,7,25]]},"reference":[{"key":"R1","unstructured":"Andreas Albrecht, Peter Gottschling, Uwe Naumann, Markowitz\u2010type heuristics for computing Jacobian matrices efficiently, Lecture Notes in Comput. Sci., Vol. 2658, Springer, Berlin, 2003, 575\u2013584MR2088414"},{"key":"R2","doi-asserted-by":"publisher","DOI":"10.1137\/S0036142903431924"},{"key":"R3","unstructured":"S. Balay, K. Buschelman, V. Eijkhout, W. D. Gropp, D. Kaushik, M. G. Knepley, L. C. McInnes, B. F. Smith, and H. Zhang,\n                      PETSc Users Manual\n                      , Tech. Report ANL\u201095\/11, Revision 2.1.5, Argonne National Laboratory, Argonne, IL, 2004."},{"key":"R4","doi-asserted-by":"publisher","DOI":"10.1007\/978-1-4757-3658-8"},{"key":"R5","unstructured":"K. Cliffe, S. Tavener, Implementation of extended systems using symbolic algebra, Notes Numer. Fluid Mech., Vol. 74, Vieweg, Braunschweig, 2000, 81\u201392MR1770762"},{"key":"R6","first-page":"33","volume":"7","author":"Crouzeix M.","year":"1973","journal-title":"Rev. Fran\u00e7aise Automat. Informat. Recherche Op\u00e9rationnelle S\u00e9r. Rouge"},{"key":"R7","doi-asserted-by":"publisher","DOI":"10.1145\/504210.504213"},{"key":"R8","doi-asserted-by":"publisher","DOI":"10.1016\/0045-7825(90)90116-4"},{"key":"R9","doi-asserted-by":"publisher","DOI":"10.1016\/S0168-9274(01)00115-5"},{"key":"R10","unstructured":"J. Hoffman and U. Yang,\n                      DOLFIN: Dynamic Object Oriented Library for Finite Element Computation\n                      , Tech. Report 2002\u20106, Chalmers Finite Element Preprint Series, Chalmers University, G\u00f6teborg, Sweden, 2002, http:\/\/ www.fenics.org\/ dolfin."},{"key":"R11","doi-asserted-by":"publisher","DOI":"10.1016\/0045-7825(86)90025-3"},{"key":"R12","unstructured":"E.\u2010J. Im and K. A. Yelick,\n                      Optimizing sparse matrix computations for register reuse in SPARSITY\n                      , in Proceedings of the International Conference on Computational Science, (San Francisco, CA), Lecture Notes in Comput. Sci. 2073, Springer, New York, 2001, pp. 127\u2013136."},{"key":"R13","doi-asserted-by":"publisher","DOI":"10.1177\/1094342004041296"},{"key":"R14","doi-asserted-by":"publisher","DOI":"10.1016\/S0045-7930(99)00016-X"},{"key":"R15","doi-asserted-by":"publisher","DOI":"10.1145\/1039813.1039820"},{"key":"R16","unstructured":"R. C. Kirby, M. Knepley, and L. Scott,\n                      Evaluation of the Action of Finite Element Operators\n                      , Tech. report TR\u20102004\u201007, Department of Computer Science, University of Chicago, Chicago, IL, 2004."},{"key":"R17","volume-title":"The art of computer programming. Vol. 2: Seminumerical algorithms","author":"Knuth Donald","year":"1969"},{"key":"R18","unstructured":"Argonne National Laboratory,\n                      PETSc\u2010CS Alphan\n                      , http:\/\/www\u2010unix.mcs.anl.gov\/petsc\/ petsc\u20103\/."},{"key":"R19","unstructured":"A. Logg,\n                      FFC: The FEniCS Form Compiler\n                      , http:\/\/www.fenics.org\/ffc."},{"key":"R20","unstructured":"Kevin Long, Sundance rapid prototyping tool for parallel PDE optimization, Lect. Notes Comput. Sci. Eng., Vol. 30, Springer, Berlin, 2003, 331\u20133412004m:49089"},{"key":"R21","unstructured":"K. Long,\n                      Sundance\n                      , 2003, http:\/\/csmr.ca.sandia.gov\/\u223ckrlong\/sundance.html."},{"key":"R22","doi-asserted-by":"publisher","DOI":"10.1177\/1094342004041293"},{"key":"R23","unstructured":"R. Vuduc, J. W. Demmel, K. A. Yelick, S. Kamil, R. Nishtala, and B. Lee,\n                      Performance optimizations and bounds for sparse matrix\u2010vector multiply\n                      , in Proceedings of Supercomputing, Baltimore, MD, IEEE, Piscataway, NJ, 2002, pp. 1\u201335."},{"key":"R24","unstructured":"R. Vuduc, A. Gyulassy, J. W. Demmel, and K. A. Yelick,\n                      Memory hierarchy optimizations and bounds for sparse ATAx\n                      , in Proceedings of the ICCS Workshop on Parallel Linear Algebra, P. M. A. Sloot, D. Abramson, A. V. Bogdanov, J. J. Dongarra, A. Y. Zomaya, and Y. E. Gorbachev, eds. (Melbourne, Australia), Lecture Notes in Comput. Sci. 2660, Springer, New York, 2003, pp. 705\u2013714."},{"key":"R25","unstructured":"R. Vuduc, S. Kamil, J. Hsu, R. Nishtala, J. W. Demmel, and K. A. Yelick,\n                      Automatic performance tuning and analysis of sparse triangular solve\n                      , presented at the Workshop on Performance Optimization via High\u2010Level Languages and Libraries, in conjunction with the 16th International Conference on Supercomputing (ICS), ACM, New York, 2002."},{"key":"R25","unstructured":"Available online at http:\/\/www.cs.berkeley.edu\/\u223crichie\/research\/pubs.html"},{"key":"R26","doi-asserted-by":"publisher","DOI":"10.1016\/S0167-8191(00)00087-9"},{"key":"R26","unstructured":"Also available online as University of Tennessee LAPACK Working Note 147, UT\u2010CS\u201000\u2010448 at www.netlib.org\/lapack\/lawns\/downloads."}],"container-title":["SIAM Journal on Scientific Computing"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/epubs.siam.org\/doi\/pdf\/10.1137\/040607824","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2026,8,21]],"date-time":"2026-08-21T17:47:27Z","timestamp":1787334447000},"score":1,"resource":{"primary":{"URL":"https:\/\/epubs.siam.org\/doi\/10.1137\/040607824"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2005,1]]},"references-count":28,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2005,1]]}},"alternative-id":["10.1137\/040607824"],"URL":"https:\/\/doi.org\/10.1137\/040607824","relation":{},"ISSN":["1064-8275","1095-7197"],"issn-type":[{"value":"1064-8275","type":"print"},{"value":"1095-7197","type":"electronic"}],"subject":[],"published":{"date-parts":[[2005,1]]}}}