ENigMA je objektově orientovaná knihovna šablon C ++, jejímž cílem je poskytnout simulaci více fyziky v prostředí s více doménami.Kód implementuje několik numerických metod, jako jsou metody konečných objemů (FVM), metody konečných diferencí (FDM), metody konečných prvků (FEM), metody hraničních prvků (BEM), vyhlazená částicová hydrodynamika (SPH) atd. Pro numerickou aproximaci částečnéDiferenciální rovnice (PDE) v každé doméně.Poskytuje také třídy pro robustní generování sítí (trojúhelníkové, blokové, omezené čtyřstěnné atd.), Průnikové a ořezové operace a implementuje metody R-tree, octree a hashgrid pro prostorové vyhledávání.Může být použit pro trojrozměrné proudění, tepelnou a strukturální analýzu ....