MMGS(1)
MMGS — like, the surface triangulation glow-up manual 💅✨
okay bestie, so this is mmgs, from the General Commands Manual section (that's the manual name, keep it in your notes 📝). She's here to do adaptation and optimization of a surface triangulation representing a piecewise linear approximation of an underlying surface geometry. Yes that's a mouthful. Yes she ate. 🍓
✨ SYNOPSIS ✨
mmgs ⟨mesh_file⟩ [output_file] [-sol ⟨solution_file⟩]
[-met ⟨metric_file⟩] [-h] [-v] [-m ⟨n⟩] [-d] [-val] [-default] [-A]
[-ar ⟨x⟩ | -nr] [-hmin ⟨x⟩] [-hmax ⟨x⟩] [-hsiz ⟨x⟩] [-hausd ⟨x⟩]
[-hgrad ⟨x⟩] [-hgradreq ⟨x⟩] [-rmc x] [-ls x] [-lssurf x]
[-keep-ref] [-nreg] [-xreg] [-noinsert] [-nomove] [-noswap]
[-nosizreq] [-nreg] [-nsd] [-optim] [-rn ⟨n⟩]
(and yes, -nreg really is in there twice — she said it, not me 🫶)
🌸 DESCRIPTION 🌸
The mmgs application is dedicated to surface triangulation remeshing. That's the whole vibe, that's the whole job.
By default it performs mesh modifications in order to control the surface approximation.
Providing a metric file, it adapts the mesh to the prescribed sizes at nodes.
The -optim option allows to improve the mesh quality with respect to initial mesh size and the surface approximation respect.
Providing a level-set file containing the values of the level-set function at the mesh nodes, the -ls option allows to explicitely mesh an implicit domain, and the -lssurf option splits boundary edges of the mesh on a provided isovalue. 🦋
💖 COMMAND LINE ARGUMENTS 💖
1. Generic options 🎀
-h— Print help.-v ⟨n⟩— Tune level of verbosity. Takes values between-1and10.-m ⟨n⟩— Set maximal memory size tonMBytes.-d— Turn on debug mode.-default— Write a local parameter file (with extension.mmgs) with setted values.-val— Print the default parameters values.
2. File specifications 📁
-in ⟨mesh_file⟩— Input triangulation.-out ⟨output_file⟩— Output triangulation.-sol ⟨solution_file⟩— Load metric or level-set file.-met ⟨metric_file⟩— Load metric file in level-set mode.
3. Mode specifications (default is mesh adaptation) 🔥
-ls x— Create mesh of isovaluex(0.0ifxis not provided).-lssurf x— Split boundary edges on isovaluex(0.0ifxis not provided).
4. Parameters 👑
-A— Enable anisotropy (without metric file).-ar ⟨x⟩ | -nr— Threshold for angle detection or sharp features detection disabling.-hmin ⟨x⟩— Minimal mesh size.-hmax ⟨x⟩— Maximal mesh size.-hsiz ⟨x⟩— Constant mesh size.-hausd ⟨x⟩— Control the Hausdorff distance to the underlying surface geometry.-hgrad ⟨x⟩— Control the gradation.-hgradreq ⟨x⟩— Control the gradation from required entities toward others.-rmc x— Remove componants whose volumic fraction is less thanx(1.e-5ifxis not provided) of the whole mesh volume or not connected to base references provided in parameter file (level-set mode).-keep-ref— Preserve initial domain references when create the mesh of isovalue.-noinsert— No point insertion/deletion.-nomove— No point relocation.-noswap— No edge or face flipping.-nosizreq— No imposition of the size of required edges over required vertices.-nreg— Normal regularization using laplacian - antilaplacian smoothing.-xreg— Vertex coordinates regularization using laplacian - antilaplacian smoothing.-nsd ⟨n⟩— Save the subdomain of indexn(default isn=0which save all subdomains).-optim— Mesh improvement with respect to the initial mesh size.-rn ⟨n⟩— Turn on (n=1) or off (n=0) the renumbering using the SCOTCH library (only available with theUSE_SCOTCHcompilation flag and if the scotch library is founded).
🫶 RETURN VALUES 🫶
mmgs returns:
- the
0value if successful; - the
1value if the process fail but we can save a conform mesh; - the
2value if the process fail and we can't save a conform mesh.
ngl bestie,1is the "we survived but barely 😭" outcome.2is the "we did not survive 💀" outcome. Plan accordingly.
🌈 SEE ALSO 🌈
okay that's the whole page, you're literally an mmgs girlie now, no cap 💜 this was mmgs, dated May 04, 2015, living in the MMGS(1) slot of the General Commands Manual — periodt. go remesh something iconic ✨🧚
📦 where this page comes from
- fedora 43: mmgs 5.8.0-3.fc43 · LGPL-3.0-or-later
- fedora 43: mmgs 5.8.0-3.fc43 · LGPL-3.0-or-later
- fedora 44: mmgs 5.8.0-4.fc44 · LGPL-3.0-or-later
- fedora 44: mmgs 5.8.0-4.fc44 · LGPL-3.0-or-later
- nixpkgs unstable: mmg 5.8.0
- 💖 girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms