Simulace Open Framework Architecture - Simulation Open Framework Architecture

POHOVKA
SOFA snapshot.png
Vývojáři Inria , CNRS , USTL , UJF , MGH
První vydání Února 2007 ; Před 14 lety  ( 2007-02 )
Stabilní uvolnění
19.06.01 / 26 července 2019 ; Před 18 měsíci  ( 2019-07-26 )
Úložiště github .com / sofa-framework / pohovka
Napsáno C ++ , Python
Operační systém Linux , Microsoft Windows , OS X
Typ Fyzikální engine , Lékařská simulace , Rámec
Licence GPL , LGPL
webová stránka www .sofa-framework .org

Simulation Open Framework Architecture ( SOFA ) je open source framework primárně zaměřený na fyzickou simulaci v reálném čase s důrazem na lékařskou simulaci .
Většinou je určena pro výzkumnou komunitu, aby pomohla vyvinout novější algoritmy, ale lze ji také použít jako účinný nástroj pro vytváření prototypů nebo jako fyzikální engine .

Funkce

Na základě pokročilé softwarové architektury umožňuje SOFA uživatelům:

  • Vytvářejte složité a vyvíjející se simulace kombinací nových algoritmů se stávajícími
  • Upravte většinu parametrů simulace (deformovatelné chování, reprezentace povrchu, řešič, omezení, kolizní algoritmus, ...) jednoduchou úpravou souboru XML
  • Vytvářejte složité modely od jednodušších pomocí popisu grafu scény
  • Efektivně simulujte dynamiku interagujících objektů pomocí abstraktních řešení rovnic
  • Opakované použití a snadné srovnání různých dostupných metod
  • Transparentně paralelizujte složité výpočty pomocí sémantiky založené na datových závislostech
  • Pomocí nových generací GPU prostřednictvím rozhraní CUDA API můžete výrazně zlepšit výpočetní časy

Graf scény

Klíčovým aspektem SOFA je použití grafu scény k organizaci a zpracování prvků simulace při jasném oddělení úkolů výpočtu od jejich případného paralelního plánování. Popis simulace SOFA lze snadno provést v souboru XML . Pro ještě větší flexibilitu umožňuje plugin Python skriptovací simulace pomocí jazyka Python.
V podstatě je graf scény SOFA složen z:

  • Uzly : slouží ke kategorizaci komponent a udržování čistého souboru XML (mechanický uzel, kolizní uzel, vizuální uzel, ...)
  • Komponenty : hlavní prvky použité k vytvoření scény (komponenta řešitele, komponenta silového pole, komponenta pro vykreslení, ...)
  • Datas : vše, s čím se musí komponenty vyrovnat (síly, rychlosti, polohy, poměry, ...)

Pluginy

K rozšíření svých kapacit a poskytnutí dalších funkcí je SOFA dodáván s mnoha doplňky:

  • Ovladače pro VR / haptická / simulační zařízení (Geomagic®, ARTTrack ™, Novint® Falcon ™…)
  • Vizualizace a simulace lékařských obrazů
  • Skriptování v Pythonu
  • Paralelizace:
    • Multithreading
    • Výpočet GPU pomocí CUDA API

Společenství

Den SOFA

Den SOFA, který se koná každý rok, je jednodenní akcí věnovanou SOFA. Tato událost je otevřena všem zájemcům o SOFA, od začátečníků po pokročilé uživatele. Obsahuje úvod do SOFA, několik tutoriálů (přizpůsobených publiku) a velkou dobu prožití SOFA s pomocí instruktorů.

Konsorcium SOFA

Přesně deset let po prvním spáchání na SOFA založila Inria konsorcium SOFA v prosinci 2015.
Mise konsorcia jsou:

  • Představují identitu SOFA
  • Uspořádejte a rozvíjejte komunitu
  • Distribuce a stabilizace SOFA

Viz také

Reference

externí odkazy