header advert
Orthopaedic Proceedings Logo

Receive monthly Table of Contents alerts from Orthopaedic Proceedings

Comprehensive article alerts can be set up and managed through your account settings

View my account settings

Visit Orthopaedic Proceedings at:

Loading...

Loading...

Full Access

Research

A PYTHON PACKAGE TO ASSIGN MATERIAL PROPERTIES OF BONE TO FINITE ELEMENT MODELS FROM WITHIN ABAQUS SOFTWARE

European Orthopaedic Research Society (EORS) 24th Annual Meeting, 14–16 September 2016. Part 2.



Abstract

Using Python scripting it is possible to automate the pre-processing, solving and post-processing stages of finite element analysis using ABAQUS software. This is particularly useful when running multiple models parametrically. When the model involves a bony part, it is necessary to assign material properties based on the CT scan to represent bone heterogeneity, and unfortunately this cannot currently be done from within ABAQUS using software such as Bonemat [1]. To address this issue a Python package was written called ‘py_bonemat_abaqus’ to assign material properties from within ABAQUS. The purpose of this study was to compare the material assignments of py_bonemat_abaqus and Bonemat, to compare the processing speed, and to describe the workflow.

The software packages were compared using a CT scan of a half pelvis downloaded from the VAKHUM database, and the associated hexahedral finite element mesh of the left half pelvis. To examine different element types, the hexahedral mesh was converted to linear and quadratic tetrahedral elements by dividing each hexahedron into 5 tetrahedral elements. The equations used to convert the Hounsfield Unit (HU) values to apparent density (papp), and to convert the apparent density to elastic modulus (E) are shown in Equations 1&2 [2].

Equation 1: papp = −0.021075 + 0.000786 HU

Equation 2 E = 2.0173 papp2.46

The time taken to analyse the models by each software was assessed using a Windows 7 PC with a 64-bit operating system, 4 CPUS, 8 GB of RAM and an Intel Core I5-3470 processor.

The mean difference between the moduulus assignment made by py_bonemat_abaqus and Bonemat was −0.05 kPa (range −10.19 to 4.50 kPa, standard deviation 0.62 kPa). The Python package took a similar time to run for all element types; this was between 109 and 126 s. Bonemat software was significantly faster, and took between 5 and 20 s. Finally, the Python package was successfully used from within a Python script to perform material assignment from within ABAQUS software in a fully automated manner.

Material assignments were almost equivalent between the two software packages, with any differences explainable by rounding effects. To put the differences into context, a difference of −0.05 kPa is 0.00000002% of the typical modulus of cortical bone (20.7 GPa), and 0.00000003% of the modulus of trabecular bone (14.8 GPa) [3]. The Python package was slower to process the models, but was successfully able to assign material properties from within ABAQUS software as part of an automated script.