Skip to content

Nobregaigor/febio-python

Repository files navigation

Welcome to FEBio-Python!

Introduction

Welcome to FEBio-Python, an open-source toolkit designed to bridge the gap between the FEBio software suite and Python. This project extends the functionality of FEBio by allowing users to interact with FEBio input and output files through Python scripts. With FEBio-Python, users can create and modify mesh structures, assign loads and boundary conditions, run batch simulations, and much more, all within an intuitive Python environment.

FEBio-Python facilitates the rapid configuration and execution of simulations, making it an essential tool for performing extensive studies involving complex biomechanical models. With features that support the customization of simulation parameters and the extraction of valuable data, this tool helps bridge the gap between complex FEA operations and practical, actionable insights.

FEBio-Python simplifies the manipulation of .feb files, offering capabilities to parse these files into structured Python objects, manipulate the XML tree directly, and write back modifications with ease. Moreover, the toolkit facilitates the reading of FEBio simulation results in .xplt format, enabling the extraction of simulation states and the conversion of data for visualization and further analysis.

Whether you are an academic researcher, a professional in biomechanics, or just someone interested in FEA, FEBio-Python provides the tools to enhance your workflow and achieve more precise results.

Key Features of FEBio-Python

  • Comprehensive API for .feb File Manipulation: Easily read, modify, and write .feb files to customize simulations as per specific requirements.
  • Advanced Results Processing and Analysis: Import FEBio simulation results from .xplt files directly into Python, facilitating comprehensive post-processing. Users can export data to pandas for structured data analysis, apply scipy for scientific computing, and employ other Python libraries to perform detailed evaluations and optimizations of simulation outcomes.
  • Simulation Management: Run simulations directly from scripts, managing single or multiple simulation runs efficiently.
  • Results Analysis and Visualization: Leverage Python's extensive ecosystem to analyze and visualize results; includes integration with pyvista for advanced 3D visualization and vtk for exporting data.
  • Extensible and Customizable: Perfect for developing custom workflows in biomechanics research, including parameter studies and optimization loops.

About FEBio

FEBio (Finite Elements for Biomechanics) is a specialized software for nonlinear finite element analysis in biomechanics and biophysics. It is tailored to manage the unique properties of biological materials and interactions. Learn more about FEBio by visiting their official website or exploring their GitHub repository.

Getting Started

To get started with FEBio-Python, please visit our documentation for detailed instructions:

We have some basic examples to help you get started:

Explore these resources to seamlessly integrate FEBio-Python into your research or development projects.

Contributing

FEBio-Python is a community-driven initiative, and contributions are highly appreciated. If you are interested in improving the library or adding new features.

We look forward to seeing how you utilize this toolkit in your work!