ENigMA je objektno orijentirana knjižnica C ++ predložaka čiji je cilj pružanje simulacije više fizike u okruženju s više domena.Kod implementira nekoliko numeričkih metoda kao što su metode konačnog volumena (FVM), metode konačne razlike (FDM), metode konačnih elemenata (FEM), metode graničnih elemenata (BEM), hidrodinamika glatkih čestica (SPH) itd. Za numeričko približavanje djelomičneDiferencijalne jednadžbe (PDE) u svakoj domeni.Također nudi klase za robusno stvaranje mrežica (trokutasti, blok, ograničeni tetraedar, itd.), Operacije presijecanja i sječenja te primjenjuje metode R-stabla, octree i hashgrid za prostorno pretraživanje.Može se koristiti za trodimenzionalnu analizu protoka, toplinsku i strukturnu analizu ....