Upload
cornelia-ellis
View
223
Download
0
Tags:
Embed Size (px)
Citation preview
An Overview of SOFA (Simulation Open
Framework Architecture)
CC
UUII
Shamyl Bin Mansoor and Mohsin Nasir
SMART Lab, SEECS, NUST
Outline• What is SOFA• Modeling in SOFA• Multimodal Representation• Simulation in SOFA• Features of SOFA• Using SOFA
CC
UUII
What is SOFA ?
• An open source framework for surgical simulators• Developed by 3 INRIA (France) Teams helped by
CIMIT Sim Group (US), ETH Zurich and CSIRO (Australia)
• Currently under development with SOFA Version 1 beta 4 released in 2009
• Currently most research in medical simulation is being done using SOFA Framework
CC
UUII
What is SOFA ?
• Simulation Open Framework Architecture (SOFA) is– An open source C++ library for
physical simulation primarily targeted to medical simulation
– It can be used as an external library or in another program or using one of the associated GUI applications
– Highly flexible– Allows the use of multiple
interacting geometrical models of the same object CC
UUII
Features of SOFA
• Force fields• Mappings• Constraints• Articulated Bodies• Fluids• GUI• Haptics
CC
UUII
Modeling in SOFA
• Mechanical Model• Collision Model• Visual Model– Each model can be designed
independently– During run-time, consistency is
maintained using mappings
CC
UUII
Simulation in SOFA• SOFA scenes are modeled using
hierarchical scene graphs• This allows splitting of physical objects
into collections of independent components
• Components can be replaced by other components e.g Spring forces replaced by FEM forces
• Simulation algorithms like time integration or collision detection and modeling are modeled as scene graph components
• Same flexibility for algorithms as for models
CC
UUII
Simulations in SOFA
• Scene graph traversals for calculation of forces at each component
• These forces are accumulated and then solved using Ordinary Differential Equation Solvers (ODEs).
• There are several ODE solvers available in SOFA
CC
UUII
Using SOFA for modeling
• SOFA can be downloaded from – www.sofa-framework.org
• Currently there are 3 ways of modeling simulation scenes– Using SOFA Modeler– Using XML– Using C++
• Simulations can be run using the runSOFA application or using C++ CC
UUII