Skip to main navigation Skip to search Skip to main content

Finite element analysis: opportunity for functional programming and parallelisation

  • Chien Chien
  • , Kenny Lu Zhuo Ming

Research output: Contribution to conferenceAbstractpeer-review

Abstract

In numerical computing, the finite element method (FEM) has been widely developed and applied. From module-based legacy code in Fortran to object-oriented framework in C++, FEM code has been extensively refactored to make use of modern hardware and invite contributions from the scientific community. Furthermore, packages in Matlab and Python have appeared in textbooks and courses for practitioners. Despite these evolutions, less attention has been paid to the functional programming approach, where programs are constructed by “applying and composing functions”. This paradigm has the advantages of code correctness and more straightforward parallelisation.

Functional programming for FEM code had been implemented by research groups in the UK and Ireland, e.g. Swansea University, Imperial College London, and University College Cork. Here, we are using the same mathematical principles to develop code in Haskell with an attempt to assess the correctness of the program. We also implement the code in Scala and explore the advantages in using parallel collection and assess its efficiency for the cases involving a large number of elements.
Original languageEnglish
Publication statusPublished - Sept 2023
EventSeventh Annual Conference for Research Software Engineering - Swansea University, Swansea, United Kingdom
Duration: 5 Sept 20237 Sept 2023
https://rsecon23.society-rse.org/

Conference

ConferenceSeventh Annual Conference for Research Software Engineering
Abbreviated titleRSECon23
Country/TerritoryUnited Kingdom
CitySwansea
Period5/09/237/09/23
Internet address

Fingerprint

Dive into the research topics of 'Finite element analysis: opportunity for functional programming and parallelisation'. Together they form a unique fingerprint.

Cite this