U.S. flag An official website of the United States government

Method of Manufactured Solutions (MMS) Code Verification source term generation tool

Catalog of Regulatory Science Tools to Help Assess New Medical Devices 

 

This regulatory science tool presents a computer model that demonstrates the application of gold-standard method of manufactured solutions (MMS) code verification to verify a commercial finite element code for elastostatic solid mechanics analyses relevant to medical devices.

 

Technical Description

This tool provides a Jupyter/Python notebook template for generating source terms required for rigorous method of manufactured solutions (MMS) code verification. The tool uses Python and the open-source computer algebra library SymPy for symbolic mathematics.

  • User inputs:
    • governing equations in a closed-form representation
    • a prescribed solution for the field variable(s) of interest
  • Tool outputs:
    • analytical source term functions for MMS code verification

The template includes example governing equations and source terms for verifying elastostatic solid mechanics analyses involving linear-elastic, hyperelastic (neo-Hookean), and quasi-hyperelastic (Hencky) constitutive models in a commercial finite element code.

Intended Purpose

This tool is intended to facilitate MMS code verification of physics-based computational models. Code verification is the first step in demonstrating the credibility of computational models and is an important consideration for any model intended to influence decision making during medical device development or regulatory review.

The tool is applicable to any medical device development or performance assessment activities that may benefit from physics-based computational modeling, especially solid mechanics analyses of implantable devices. Intended users include simulation code developers and simulation analysts.

Testing

This tool has been developed following practices for numerical code verification recommended in ASME V&V10-2019 Section 5.1.1.2 and ASME V&V20-2009(R2021) Section 2-3.3.

Use of the tool has been demonstrated for a commercial code in the following peer-reviewed publication:

Limitations

This tool requires user-provided governing equations for a computational model of interest in a closed form representation. In some circumstances, the precise form of the governing equations for a given computational model may be unknown, especially when using a closed-source simulation software that lacks comprehensive documentation. Moreover, some computational models include terms that lack a closed-form representation, for example, use of an empirical submodel, or reliance on a rate-based formulation with history dependence. For such applications, alternative code verification approaches may be necessary.

Supporting Documentation

Documentation is provided as a Jupyter notebook in Supplemental Material to Aycock et al. 2020, Comput Struct.

A static PDF version of the notebook is available in the following link for users unfamiliar with the Jupyter environment.

Tool users are encouraged to download the full package and extract the .ipynb notebook from the zip archive (https://doi.org/10.6084/m9.figshare.7726352.v2).

Use of the tool requires installation of free and open-source software including Python 3, NumPy, pandas, SymPy, Matplotlib, and Jupyter, which are available through installation of the Anaconda Distribution.

FDA guidance documents include:

FDA-recognized standards include:

Additional standards include:

Further recommended reading:

Contact

For more information