{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,1,22]],"date-time":"2026-01-22T14:43:12Z","timestamp":1769092992334,"version":"3.49.0"},"reference-count":58,"publisher":"Association for Computing Machinery (ACM)","issue":"2","license":[{"start":{"date-parts":[[2015,2,4]],"date-time":"2015-02-04T00:00:00Z","timestamp":1423008000000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"DOI":"10.13039\/501100000266","name":"Engineering and Physical Sciences Research Council","doi-asserted-by":"crossref","award":["EP\/I030042\/1 and EP\/H004009\/2"],"award-info":[{"award-number":["EP\/I030042\/1 and EP\/H004009\/2"]}],"id":[{"id":"10.13039\/501100000266","id-type":"DOI","asserted-by":"crossref"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Math. Softw."],"published-print":{"date-parts":[[2015,2,4]]},"abstract":"<jats:p>Many important partial differential equation problems in homogeneous media, such as those of acoustic or electromagnetic wave propagation, can be represented in the form of integral equations on the boundary of the domain of interest. In order to solve such problems, the boundary element method (BEM) can be applied. The advantage compared to domain-discretisation-based methods such as finite element methods is that only a discretisation of the boundary is necessary, which significantly reduces the number of unknowns. Yet, BEM formulations are much more difficult to implement than finite element methods. In this article, we present BEM++, a novel open-source library for the solution of boundary integral equations for Laplace, Helmholtz and Maxwell problems in three space dimensions. BEM++ is a C++ library with Python bindings for all important features, making it possible to integrate the library into other C++ projects or to use it directly via Python scripts. The internal structure and design decisions for BEM++ are discussed. Several examples are presented to demonstrate the performance of the library for larger problems.<\/jats:p>","DOI":"10.1145\/2590830","type":"journal-article","created":{"date-parts":[[2015,2,10]],"date-time":"2015-02-10T13:19:47Z","timestamp":1423574387000},"page":"1-40","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":141,"title":["Solving Boundary Integral Problems with BEM++"],"prefix":"10.1145","volume":"41","author":[{"given":"Wojciech","family":"\u015amigaj","sequence":"first","affiliation":[{"name":"University College London and Adam Mickiewicz University in Pozna\u0144, Poland"}]},{"given":"Timo","family":"Betcke","sequence":"additional","affiliation":[{"name":"University College London, London, UK"}]},{"given":"Simon","family":"Arridge","sequence":"additional","affiliation":[{"name":"University College London, London, UK"}]},{"given":"Joel","family":"Phillips","sequence":"additional","affiliation":[{"name":"University College London, London, UK"}]},{"given":"Martin","family":"Schweiger","sequence":"additional","affiliation":[{"name":"University College London, London, UK"}]}],"member":"320","published-online":{"date-parts":[[2015,2,4]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1109\/TAP.2008.926788"},{"key":"e_1_2_1_2_1","volume-title":"Tech. Rep. SAND2007-5984","author":"Bartlett R. A.","year":"2007"},{"key":"e_1_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1007\/s00607-008-0004-9"},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1007\/s00607-008-0003-x"},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1016\/S0167-739X(02)00171-1"},{"key":"e_1_2_1_6_1","series-title":"Lecture Notes in computational Science and Engineering","volume-title":"Hierarchical Matrices: A Means to Efficiently Solve Elliptic Boundary Value Problems","author":"Bebendorf M.","year":"2008"},{"key":"e_1_2_1_7_1","unstructured":"M. Bebendorf. 2012. Another software library on hierarchical matrices for elliptic differential equations (AHMED). http:\/\/bebendorf.ins.uni-bonn.de\/AHMED.html.  M. Bebendorf. 2012. Another software library on hierarchical matrices for elliptic differential equations (AHMED). http:\/\/bebendorf.ins.uni-bonn.de\/AHMED.html."},{"key":"e_1_2_1_8_1","volume-title":"Oberwolfach Report","volume":"2013","author":"Betcke T.","year":"2013"},{"key":"e_1_2_1_9_1","first-page":"321","article-title":"On Bethe's theory of diffraction by small holes","volume":"5","author":"Bouwkamp C. J.","year":"1950","journal-title":"Philips Res. Rep."},{"key":"e_1_2_1_10_1","doi-asserted-by":"crossref","unstructured":"A. Buffa and R. Hiptmair. 2003. Galerkin boundary element methods for electromagnetic scattering. In Topics in Computational Wave Propagation Springer 83--124.  A. Buffa and R. Hiptmair. 2003. Galerkin boundary element methods for electromagnetic scattering. In Topics in Computational Wave Propagation Springer 83--124.","DOI":"10.1007\/978-3-642-55483-4_3"},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1098\/rspa.1971.0097"},{"key":"e_1_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.jcp.2005.12.001"},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1137\/100812574"},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1051\/m2an\/2010061"},{"key":"e_1_2_1_15_1","doi-asserted-by":"crossref","unstructured":"D. L. Colton and R. Kress. 2013. Inverse Acoustic and Electromagnetic Scattering Theory. Springer.  D. L. Colton and R. Kress. 2013. Inverse Acoustic and Electromagnetic Scattering Theory. Springer.","DOI":"10.1007\/978-1-4614-4942-3"},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1002\/nme.1620210612"},{"key":"e_1_2_1_17_1","unstructured":"DUNE. 2012. Distributed and Unified Numerics Environment (DUNE). http:\/\/www.dune-project.org.  DUNE. 2012. Distributed and Unified Numerics Environment (DUNE). http:\/\/www.dune-project.org."},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1038\/35570"},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1103\/PhysRevLett.101.084302"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1103\/RevModPhys.79.1267"},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1002\/nme.2579"},{"key":"e_1_2_1_22_1","unstructured":"C. Geuzaine and J.-F. Remacle. 2012. GMSH. http:\/\/geuz.org\/gmsh.  C. Geuzaine and J.-F. Remacle. 2012. GMSH. http:\/\/geuz.org\/gmsh."},{"key":"e_1_2_1_23_1","unstructured":"C. Gr\u00e4ser and O. Sander. 2012. Dune-FoamGrid. http:\/\/users.dune-project.org\/projects\/dune-foamgrid.  C. Gr\u00e4ser and O. Sander. 2012. Dune-FoamGrid. http:\/\/users.dune-project.org\/projects\/dune-foamgrid."},{"key":"e_1_2_1_24_1","volume-title":"Introduction to Electrodynamics","author":"Griffiths D. J.","edition":"3"},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1137\/S1064827503429387"},{"key":"e_1_2_1_26_1","unstructured":"R. F. Harrington and J. L. Harrington. 1996. Field Computation by Moment Methods. Oxford University Press.   R. F. Harrington and J. L. Harrington. 1996. Field Computation by Moment Methods. Oxford University Press."},{"key":"e_1_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/1089014.1089021"},{"key":"e_1_2_1_28_1","first-page":"2012","article-title":"BETL \u2014 A generic boundary element template library","author":"Hiptmair R.","year":"2012","journal-title":"Tech. Rep."},{"key":"e_1_2_1_29_1","unstructured":"Intel. 2012. Intel Threading Building Blocks. http:\/\/threadingbuildingblocks.org.  Intel. 2012. Intel Threading Building Blocks. http:\/\/threadingbuildingblocks.org."},{"key":"e_1_2_1_30_1","unstructured":"L. Kielhorn. 2012. Boundary Element Template Library (BETL). http:\/\/www.sam.math.ethz.ch\/betl.  L. Kielhorn. 2012. Boundary Element Template Library (BETL). http:\/\/www.sam.math.ethz.ch\/betl."},{"key":"e_1_2_1_31_1","unstructured":"Kitware. 2012a. Paraview. http:\/\/www.paraview.org.  Kitware. 2012a. Paraview. http:\/\/www.paraview.org."},{"key":"e_1_2_1_32_1","unstructured":"Kitware. 2012b. Visualizaton Toolkit (VTK). http:\/\/www.vtk.org.  Kitware. 2012b. Visualizaton Toolkit (VTK). http:\/\/www.vtk.org."},{"key":"e_1_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1137\/0148016"},{"key":"e_1_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1093\/qjmam\/38.2.323"},{"key":"e_1_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.1137\/120866567"},{"key":"e_1_2_1_36_1","doi-asserted-by":"publisher","DOI":"10.1038\/nature06762"},{"key":"e_1_2_1_37_1","unstructured":"M. Maischak. 2013. MaiProgs. http:\/\/www.ifam.uni-hannover.de\/~maiprogs.  M. Maischak. 2013. MaiProgs. http:\/\/www.ifam.uni-hannover.de\/~maiprogs."},{"key":"e_1_2_1_38_1","unstructured":"M. Messner M. Messner P. Urthaler and F. Rammerstorfer. 2010. Hyperbolic and Elliptic Numerical Analysis (HyENA). http:\/\/portal.tugraz.at\/portal\/page\/portal\/Files\/i2610\/files\/Forschung\/Software\/HyENA\/html\/index.html.  M. Messner M. Messner P. Urthaler and F. Rammerstorfer. 2010. Hyperbolic and Elliptic Numerical Analysis (HyENA). http:\/\/portal.tugraz.at\/portal\/page\/portal\/Files\/i2610\/files\/Forschung\/Software\/HyENA\/html\/index.html."},{"key":"e_1_2_1_39_1","doi-asserted-by":"crossref","volume-title":"Acoustic and Electromagnetic Equations: Integral Representations for Harmonic Problems","author":"N\u00e9d\u00e9lec J.-C.","DOI":"10.1007\/978-1-4757-4393-7"},{"key":"e_1_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.1007\/s00607-008-0002-y"},{"key":"e_1_2_1_41_1","doi-asserted-by":"publisher","DOI":"10.1093\/imanum\/dri033"},{"key":"e_1_2_1_42_1","unstructured":"OpenCASCADE. 2012. OpenCASCADE: Shape gallery. http:\/\/www.opencascade.org\/showroom\/shapegallery.  OpenCASCADE. 2012. OpenCASCADE: Shape gallery. http:\/\/www.opencascade.org\/showroom\/shapegallery."},{"key":"e_1_2_1_43_1","doi-asserted-by":"publisher","DOI":"10.1002\/nme.2877"},{"key":"e_1_2_1_44_1","doi-asserted-by":"publisher","DOI":"10.1109\/TAP.2013.2246854"},{"key":"e_1_2_1_45_1","unstructured":"P. Ramachandran. 2004--2005. An introduction to Traited VTK (TVTK). http:\/\/docs.enthought.com\/mayavi\/tvtk\/README.html.  P. Ramachandran. 2004--2005. An introduction to Traited VTK (TVTK). http:\/\/docs.enthought.com\/mayavi\/tvtk\/README.html."},{"key":"e_1_2_1_46_1","volume-title":"Mathematical Aspects of Finite Element Methods","author":"Raviart P.-A."},{"key":"e_1_2_1_47_1","unstructured":"S. Rjasanow and O. Steinbach. 2007. The Fast Solution of Boundary Integral Equations. Springer Berlin Heidelberg.   S. Rjasanow and O. Steinbach. 2007. The Fast Solution of Boundary Integral Equations. Springer Berlin Heidelberg."},{"key":"e_1_2_1_48_1","unstructured":"C. Sanderson. 2012. Armadillo: C&plus;&plus; linear algebra library. http:\/\/arma.sourceforge.net.  C. Sanderson. 2012. Armadillo: C&plus;&plus; linear algebra library. http:\/\/arma.sourceforge.net."},{"key":"e_1_2_1_49_1","doi-asserted-by":"crossref","unstructured":"S. A. Sauter and C. Schwab. 2011. Boundary Element Methods. Springer Series in Computational Mathematics 39 Springer Berlin Heidelberg.  S. A. Sauter and C. Schwab. 2011. Boundary Element Methods. Springer Series in Computational Mathematics 39 Springer Berlin Heidelberg.","DOI":"10.1007\/978-3-540-68093-2"},{"key":"e_1_2_1_50_1","unstructured":"K. Schmidt. 2013. Concepts -- A numerical C&plus;&plus; library. http:\/\/www.concepts.math.ethz.ch.  K. Schmidt. 2013. Concepts -- A numerical C&plus;&plus; library. http:\/\/www.concepts.math.ethz.ch."},{"key":"e_1_2_1_51_1","doi-asserted-by":"publisher","DOI":"10.1145\/2590830"},{"key":"e_1_2_1_52_1","doi-asserted-by":"crossref","volume-title":"Partial Differential Equations and the Finite Element Method","author":"\u0160ol\u00edn P.","DOI":"10.1002\/0471764108"},{"key":"e_1_2_1_53_1","doi-asserted-by":"crossref","volume-title":"Numerical Approximation Methods for Elliptic Boundary Value Problems","author":"Steinbach O.","DOI":"10.1007\/978-0-387-68805-3"},{"key":"e_1_2_1_54_1","unstructured":"SWIG. 2012. Simplified Wrapper and Interface Generator (SWIG). http:\/\/www.swig.org.  SWIG. 2012. Simplified Wrapper and Interface Generator (SWIG). http:\/\/www.swig.org."},{"key":"e_1_2_1_55_1","unstructured":"B. A. Szabo and I. Babu\u0161ka. 1991. Finite Element Analysis. Wiley.  B. A. Szabo and I. Babu\u0161ka. 1991. Finite Element Analysis. Wiley."},{"key":"e_1_2_1_56_1","unstructured":"Trilinos. 2012. Trilinos. http:\/\/trilinos.sandia.gov.  Trilinos. 2012. Trilinos. http:\/\/trilinos.sandia.gov."},{"key":"e_1_2_1_57_1","unstructured":"I. van den Bosch. 2013. Puma-EM. http:\/\/puma-em.sourceforge.net.  I. van den Bosch. 2013. Puma-EM. http:\/\/puma-em.sourceforge.net."},{"key":"e_1_2_1_58_1","first-page":"173","article-title":"BEMLAB","volume":"35","author":"Wieleba P.","year":"2011","journal-title":"Studies Appl. Electromagn. Mech."}],"container-title":["ACM Transactions on Mathematical Software"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2590830","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2590830","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T20:13:52Z","timestamp":1750277632000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2590830"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2015,2,4]]},"references-count":58,"journal-issue":{"issue":"2","published-print":{"date-parts":[[2015,2,4]]}},"alternative-id":["10.1145\/2590830"],"URL":"https:\/\/doi.org\/10.1145\/2590830","relation":{},"ISSN":["0098-3500","1557-7295"],"issn-type":[{"value":"0098-3500","type":"print"},{"value":"1557-7295","type":"electronic"}],"subject":[],"published":{"date-parts":[[2015,2,4]]},"assertion":[{"value":"2012-12-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2014-01-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2015-02-04","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}