CMBBE 2023 Workshops

Hands-on SOFA: an open-source solution for physics simulation


  • Hugo Talbot, Consortium coordinator, Inria

Project link:


SOFA is an open-source framework for interactive physics simulation, with an emphasis on soft body dynamics. Further to 16 years of research and development, the framework is made up of a stable core providing state-of-the-art models and numerical methods. Its LGPL v2.1 open-source license (permissive and non-contaminating) and its plugin architecture foster the development of prototypes and products under any commercial license. Today, SOFA benefits from a large international community made up of research centers and companies.

Engineering simulation software has become invaluable within many industries. The role of simulation in all medical curricula to safely learn and rehearse surgical procedures significantly increased in the last decade. Research centers and companies rely on SOFA to build realistic simulations for surgical training and planning with haptic, VR/AR technologies.

Physics simulation with SOFA has applications beyond healthcare. For device manufacturing, SOFA can be a strategic approach to reduce the duration of the design process and its costs, by predicting the interaction between the product and its physical environment. In robotics, teams within the community aim at revolutionizing how to control and design robots using simulation. 

The SOFA Consortium staff regularly organizes training sessions to provide a wide introduction to SOFA and its community while ensuring the mathematical, physical and computer science backgrounds in order to start in the best conditions with SOFA.

The tutorial day follows a proven program:

  • Overview of SOFA and its community
  • Update about the latest features in SOFA
  • Examples of academic and industrial uses of SOFA are given to illustrate the range of applications
  • User tutorial then allows to understand how to build step-by-step simulation
  • Understand physics into the code

GIBBON Workshop


Get started right now!

Join this workshop to learn about GIBBON: a FREE and open-source MATLAB toolbox for segmentation, image-based modelling, visualization, meshing, and finite element analysis. GIBBON includes an array of image and geometry visualization and processing tools and is interfaced with free open source software such as TetGen, for robust tetrahedral meshing, and FEBio (or Abaqus) for finite element analysis. The combination provides a highly flexible image-based modelling environment and enables advanced inverse finite element analysis.

Learning objectives

Through this workshop you will be introduced to:

  • Finding GIBBON documentation and running demos
  • Obtaining surface geometry from 3D image data
  • Optimizing surface meshes through smoothing and remeshing
  • Performing tetrahedral meshing using GIBBON and TetGen
  • Specifying finite element model boundary conditions in GIBBON
  • Running GIBBON coded FEBio models from MATLAB

What to bring/install:

  • Please bring your own laptop.
  • Have MATLAB installed (the latest preferred or at least R2016)
  • Have FEBio installed
  • Have GIBBON installed
  • Have a text editor installed which is able to view large XML files, e.g. NotePad++ or Atom.

Workshop on optimal control of musculoskeletal systems: an introduction to Bioptim


  • François Bailly, INRIA, Université de Montpellier, France
  • Amedeo Ceglia, Université de Montréal, Faculté de Médecine, Laboratoire de Simulation et de Modélisation du Mouvement, Laval, Canada

Many approaches exist to discretize and solve optimal control problems. However,  biomechanics dedicated tools are rare. Four interrelated components are implemented in Bioptim to make it an efficient optimal control software for biomechanics: 1) several discretization methods (direct multiple shooting and collocation) using explicit and implicit integrators,  2) the biorbd [2] backend, an efficient musculoskeletal modeling software that includes multibody kinematics and dynamics and muscle dynamics, which is fully compatible with, 3) CasADi, an algorithmic differentiation software that allows for an efficient and exact derivative estimation to solve the program in a reasonable time, and 4) the robust (Ipopt) and fast (ACADOS) nonlinear programming solvers.  Bioptim includes more than 40 examples to get started with. They explore a wide variety of features (cost function, bounds, constraints, dynamics, parameters, multiphase optimizations, etc.) as well as options for discretizing and solving the OCP. Written in Python, with dozens of cost and constraint functions (marker-tracking, EMG-tracking, states and controls minimization, etc.) and various dynamics functions (torque-driven to muscle-driven, with or without contact forces), users can easily implement custom functions to cover all their needs.

Content of the workshop:

We will start by briefly introducing the underlying functional bricks of Bioptim (nonlinear optimization, numerical optimal control, multibody dynamics, etc.).  Then we will dive together into practical examples, written in Python, to cover the basics features of Bioptim. The workshop will end with an open discussion on how to use Bioptim to help you solve your research challenges. You will need to bring your personal laptop, no prior installation is required.


 [1] Michaud, B., Bailly, F., Charbonneau, E., Ceglia, A., Sanchez, L., & Begon, M. (2022). Bioptim, a python framework for musculoskeletal optimal control in biomechanics. IEEE Transactions on Systems, Man, and Cybernetics: Systems.

[2] Michaud, B., & Begon, M. (2021). biorbd: A C++, Python and MATLAB library to analyze and simulate the human body biomechanics. Journal of Open Source Software, 6(57), 2562.

Introducing FEBio Studio 2 and FEBio 4


Software link:


In this workshop we will introduce the newest versions of the FEBio solver and FEBio Studio, the integrated graphical user interface (UI) for FEBio ( The FEBio project is an ongoing collaboration between Dr. Jeff Weiss’ laboratory at the University of Utah and Dr. Gerard Ateshian’s laboratory at Columbia University.

FEBio is a finite element solver that was designed specifically for solving problems in computational biomechanics, bioengineering, and biophysics. It accomplishes this goal by providing constitutive models, loading conditions, and modeling scenarios that are relevant for these fields. In addition to the full multiphysics capabilities present in previous versions of FEBio, the latest version of 4.0 includes biphasic-fluid-structure interactions, biphasic frictional contact, new constitutive frameworks for damage mechanics and reactive nonlinear viscoelasticity, the ability to extract orientation distribution functions from image data and use them in anisotropic constitutive models, explicit transient analysis, and robust potential-based contact formulations.

FEBio Studio 2.0 is now fully aware of all features in FEBio so that the UI is updated as new features are developed and implemented.  New capabilities in FEBio Studio include the incorporation of image data throughout the analysis pipeline, including support for 2D, 3D and 4D image file import from DICOM formats supported by clinical scanners and microscopes, image filtering, image based strain measurement based on DIC, DVC and deformable image registration, volume rendering and image slicing, and the ability to extract model parameters form image data and interpolate to FE meshes.  The UI now includes contextual help throughout, user selections of units and propagation to all fields, and options to stay up-to-date with release or development versions.

The workshop will be comprised of two parts. In the first part, an overview will be given of the newest capabilities of FEBio and FEBio Studio. In the second part of the workshop the speakers will present several step-by-step demonstrations that will walk the attendees thru the use of some of FEBio’s new features. The workshop will be appropriate for both new and experienced users.

SimVascular Workshop


Shawn C. Shadden, Professor and Vice Chair of Graduate Studies, Mechanical Engineering, University of California, Berkeley

Alison Marsden, Douglass M. and Nola Leishman Professor of Cardiovascular Disease, Professor of Pediatrics and Bioengineering, and by courtesy of Mechanical Engineering, Stanford University


Project link:

SimVascular is a fully open source software package providing a complete pipeline from medical image data to cardiovascular blood flow simulation results and analysis ( It offers capabilities for image segmentation, unstructured adaptive meshing, physiologic boundary conditions, and two Navier-Stokes finite element solvers with fluid structure interaction (FSI) capabilities. An accompanying vascular model repository (VMR, provides over 150 freely available clinical data sets with image data and simulation results from different parts of the vascular anatomy. Extensive online documentation and tutorials with clinical examples are provided online. In this workshop, we will interactively take users through a step-by-step tutorial, covering basic steps of model construction, meshing, flow simulations, and best practices for high quality results. We will also cover several recent features of SimVascular, including the svFSI finite element solver that incorporates large deformation FSI with an Arbitrary Lagrangian Eulerian (ALE) formulation, as well as cardiac electrophysiology and cardiac tissue mechanics solvers. We will also introduce recent methods for image segmentation using machine learning as well as reduced-order modelling. Current users will have the opportunity to discuss current challenges from their research with the SimVascular developers and thus participants are encouraged to bring their own models and questions to the workshop.