skip to main content
OSTI.GOV title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: Modular Finite Element Methods Library

Abstract

MFEM is a general, modular library for finite element methods. It provides a variety of finite element spaces and bilinear/linear forms in 2D and 3D. MFEM also includes classes for dealing with various types of meshes and their refinement.

Publication Date:
Research Org.:
Lawrence Livermore National Lab. (LLNL), Livermore, CA (United States)
Sponsoring Org.:
USDOE
OSTI Identifier:
1231360
Report Number(s):
MFEM; 002546MLTPL00
LLNL-CODE-443211
DOE Contract Number:
DE-AC52-07NA27344
Resource Type:
Software
Software Revision:
00
Software Package Number:
002546
Software Package Contents:
Open Source Software to be distributed by the Lawrence Livermore National Laboratory at the following URL: https://github.com/mfem/mfem
Software CPU:
MLTPL
Open Source:
Yes
Source Code Available:
Yes
Country of Publication:
United States

Citation Formats

. Modular Finite Element Methods Library. Computer software. https://www.osti.gov//servlets/purl/1231360. Vers. 00. USDOE. 22 Jun. 2010. Web.
. (2010, June 22). Modular Finite Element Methods Library (Version 00) [Computer software]. https://www.osti.gov//servlets/purl/1231360.
. Modular Finite Element Methods Library. Computer software. Version 00. June 22, 2010. https://www.osti.gov//servlets/purl/1231360.
@misc{osti_1231360,
title = {Modular Finite Element Methods Library, Version 00},
author = {},
abstractNote = {MFEM is a general, modular library for finite element methods. It provides a variety of finite element spaces and bilinear/linear forms in 2D and 3D. MFEM also includes classes for dealing with various types of meshes and their refinement.},
url = {https://www.osti.gov//servlets/purl/1231360},
doi = {},
year = {Tue Jun 22 00:00:00 EDT 2010},
month = {Tue Jun 22 00:00:00 EDT 2010},
note =
}

Software:
To order this software, request consultation services, or receive further information, please fill out the following request.

Save / Share:
  • EXOII is a model developed to store and retrieve data for finite element analyses. It is used for preprocessing (problem definition), postprocessing (results visualization), as well as code to code transfer. An EXOII data file is a random access, machine independent, binary file that is written and read via C, C++, or Fortran library routines which comprise the Application Programming Interface (API).
  • EXOII is a model developed to store and retrieve data for finite element analyses. It is used for preprocessing (problem definition), postprocessing (results visualization), as well as code to code transfer. An EXOII data file is a random access, machine independent, binary file that is written and read via C, C++, or Fortran library routines which comprise the Application Programming Interface (API).
  • Generating finite-element meshes is a serious bottleneck for large parallel simulations. When mesh generation is limited to serial machines and element counts approach a billion, this bottleneck becomes a roadblock. Pamgen is a parallel mesh generation library that allows on-the-fly scalable generation of hexahedral and quadrilateral finite element meshes for several simple geometries. It has been used to generate more that 1.1 billion elements on 17,576 processors. Pamgen generates an unstructured finite element mesh on each processor at the start of a simulation. The mesh is specified by commands passed to the library as a 'C'-programming language string. The resultingmore » mesh geometry, topology, and communication information can then be queried through an API. pamgen allows specification of boundary condition application regions using sidesets (element faces) and nodesets (collections of nodes). It supports several simple geometry types. It has multiple alternatives for mesh grading. It has several alternatives for the initial domain decomposition. Pamgen makes it easy to change details of the finite element mesh and is very useful for performance studies and scoping calculations.« less
  • Performance portability on heterogeneous high-performance computing (HPC) systems is a major challenge faced today by code developers: parallel code needs to be executed correctly as well as with high performance on machines with different architectures, operating systems, and software libraries. The finite element method (FEM) is a popular and flexible method for discretizing partial differential equations arising in a wide variety of scientific, engineering, and industrial applications that require HPC. This paper presents some preliminary results pertaining to our development of a performance portable implementation of the FEM-based Albany code. Performance portability is achieved using the Kokkos library. We presentmore » performance results for the Aeras global atmosphere dynamical core module in Albany. Finally, numerical experiments show that our single code implementation gives reasonable performance across three multicore/many-core architectures: NVIDIA General Processing Units (GPU’s), Intel Xeon Phis, and multicore CPUs.« less

To initiate an order for this software, request consultation services, or receive further information, fill out the request form below. You may also reach us by email at: .

OSTI staff will begin to process an order for scientific and technical software once the payment and signed site license agreement are received. If the forms are not in order, OSTI will contact you. No further action will be taken until all required information and/or payment is received. Orders are usually processed within three to five business days.

Software Request

(required)
(required)
(required)
(required)
(required)
(required)
(required)
(required)