Jump to content

Simulation Open Framework Architecture

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Russell M Taylor (talk | contribs) at 01:02, 12 April 2015 (See also). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

SOFA - Simulation Open Framework Architecture
Developer(s)MGH, INRIA, USTL, UJF, CNRS
Stable release
Version 1.0 Release Candidate 2[1] / September 2013
Written inC++
Operating systemLinux, Mac, Windows
TypeFramework
LicenseGPL/LGPL
Websitewww.sofa-framework.org

Simulation Open Framework Architecture (SOFA) [2] is an Open Source framework primarily targeted at real-time physical simulation, with an emphasis on medical simulation. It is mostly intended for the research community to help develop newer algorithms, but can also be used as an efficient prototyping tool or as a physics engine. Based on an advanced software architecture, it allows one to:

  • Create complex and evolving simulations by combining new algorithms with existing algorithms
  • Modify most parameters of the simulation (deformable behavior, surface representation, solver, constraints, collision algorithm, ...) by simply editing a XML file
  • Build complex models from simpler ones using a scene graph description
  • Efficiently simulate the dynamics of interacting objects using abstract equation solvers
  • Reuse and easily compare a variety of available methods
  • Transparently parallelize complex computations using semantics based on data dependencies
  • Use new generations of GPUs through the CUDA API to greatly improve computation times

Currently, SOFA contains:

  • Deformable models: mass-springs, linear and co-rotational FEM
  • Rigid models: articulated bodies based on penalties or reduced coordinates
  • Fluid models: SPH, Eulerian (preliminary)
  • Collision models: spheres, triangular meshes, distance fields (preliminary); with AABB-tree or octree bounding volume hierarchies
  • Collision detection methods: proximity, continuous (preliminary)
  • Collision response methods: (implicit) penalties, LCP-based constraints
  • Mechanical integration schemes: Euler explicit, RK2, RK4, static, implicit euler using PCG (Projected Conjugate Gradient)

See also

References

  1. ^ http://www.sofa-framework.org/download
  2. ^ Allard, Jérémie; Cotin, Stéphane; Faure, François; Bensoussan, Pierre-Jean; Poyer, François; Duriez, Christian; Delingette, Hervé; Grisoni, Laurent (2007). "SOFA - an Open Source Framework for Medical Simulation" (PDF). Medicine Meets Virtual Reality (MMVR'15). {{cite conference}}: Unknown parameter |booktitle= ignored (|book-title= suggested) (help)