MoleculeMesh[mol]
returns a BoundaryMeshRegion object representing the Molecule or BioMolecule mol.
MoleculeMesh[mol,type]
returns a mesh of surface type type.
MoleculeMesh[mol,{type,param1val1,…}]
uses the supplied parameters to create the mesh.
MoleculeMesh
MoleculeMesh[mol]
returns a BoundaryMeshRegion object representing the Molecule or BioMolecule mol.
MoleculeMesh[mol,type]
returns a mesh of surface type type.
MoleculeMesh[mol,{type,param1val1,…}]
uses the supplied parameters to create the mesh.
Details and Options
- Supported mesh types include
-
"Gaussian" Gaussian surface "VanDerWaals" Van der Waals surface "SolventAccessible" solvent accessible surface "BallAndStick" spheres for atoms and cylinders for bonds - The "VanDerWaals" surface is a union of spheres for each atom using its van der Waals radius.
- A Gaussian surface is defined as an isosurface of the scalar field defined by

, where xi and ri are the position and radius of the i
atom, respectively, and d is a prefactor. The "Gaussian" surface has the following parameters and default values: -
"GaussianPrefactor" 0.9 the parameter d "Isosurface" 1.1 the value of the isosurface - The "SolventAccessible" surface has the following parameters and default values:
-
"ProbeRadius" 1.4 an atom radius that is added to each atom in the molecule - MoleculeMesh has the following options:
-
MaxCellMeasure Automatic max cell measure IncludeWaters False whether to include waters of hydration IncludeHydrogens Automatic whether to include hydrogen atoms - SurfaceArea and Volume will act on a molecule mesh to return the surface are and volume as real numbers, with units of Angstroms2 and Angstroms3, respectively.
Examples
open all close allBasic Examples (2)
Convert a molecule to a boundary mesh:
MoleculeMesh[Molecule["adenosine triphosphate"]]Create a mesh for the Gaussian surface of this molecule:
MoleculeMesh[Molecule["adenosine triphosphate"], "Gaussian"]Convert a biomolecule to a boundary mesh:
MoleculeMesh[BioMolecule[ExternalIdentifier["PDBStructureID", "1PPT"]], "Gaussian"]Scope (3)
Create a mesh region showing the atoms and bonds as spheres and tubes:
m = Molecule["biotin sulfone"];
MoleculeMesh[m, "BallAndStick"]Show the same molecule with no bonds and atoms represented as spheres with their van der Waals radii:
MoleculeMesh[m, "VanDerWaals"]Use different parameter settings for the "Gaussian" surface:
MoleculeMesh[Molecule["caffeine"], {"Gaussian", "GaussianPrefactor" -> .5, "Isosurface" -> .5}]MoleculeMesh[Molecule["caffeine"], {"Gaussian", "GaussianPrefactor" -> 1.5, "Isosurface" -> 2.5}]Combine a Gaussian mesh with a ribbon diagram from BioMoleculePlot3D to show the ribbons in place:
Show[
MoleculeMesh[bm = BioMolecule[ExternalIdentifier["PDBStructureID", "2H3S"]], "Gaussian", MeshCellStyle -> {2 -> Opacity[0.5]}],
BioMoleculePlot3D[bm]
]Options (3)
IncludeHydrogens (1)
IncludeWaters (1)
Some biomolecules have extra water molecules taken from the crystal structure. These typically have no hydrogens attached. By default, these are not included in a MoleculeMesh output. Use the option IncludeWatersTrue to show the waters:
Show[
MoleculeMesh[BioMolecule[ExternalIdentifier["PDBStructureID", "3NIR"]], BaseStyle -> Red],
MoleculeMesh[BioMolecule[ExternalIdentifier["PDBStructureID", "3NIR"]], IncludeWaters -> True, BaseStyle -> {ColorData[97][2], Opacity[0.5]}]
]MaxCellMeasure (1)
Use the option MaxCellMeasure to control the mesh quality:
Table[MoleculeMesh[Molecule["adenosine triphosphate"], MaxCellMeasure -> mcm], {mcm, {0.1, 0.5, 1.0}}]Neat Examples (2)
Start with two different conformers for a metacyclophane molecule:
{open, closed} = {Molecule[{"C", "C", "C", "C", "C", "C", "C", "C", "C", "C", "C", "C", "C", "C", "C", "C", "C", "C",
"H", "H", "H", "H", "H", "H", "H", "H", "H", "H", "H", "H", "H", "H", "H", "H", "H", "H", "H",
"H"}, {Bond[{1, 2}, "Aromatic"], Bond[{2, 3}, " ... 76},
{0.6831232154052924, -4.0285717933215155, 1.1081934685316917},
{-0.9262392601471943, -2.5175472725588364, 2.4624327671626323},
{-1.4434860342175224, -3.33439958979902, 1.0428035282432913}}, "Angstroms", {{1}, {2}}}]]}], Molecule[{"C", "C", "C", "C", "C", "C", "C", "C", "C", "C", "C", "C", "C", "C", "C", "C", "C", "C",
"H", "H", "H", "H", "H", "H", "H", "H", "H", "H", "H", "H", "H", "H", "H", "H", "H", "H", "H",
"H"}, {Bond[{1, 2}, "Aromatic"], Bond[{2, 3}, " ... 02},
{-0.6217270037327405, 3.9282380552832916, -1.7914369796330016},
{1.6101569706934553, 3.189352838787685, -1.5971355600030785},
{0.8578376108664171, 3.513517457137615, -0.05199782925204585}}, "Angstroms", {{1}, {2}}}]]}]};View the ball-and-stick mesh regions:
MoleculeMesh[#, "BallAndStick"]& /@ {open, closed}Create Gaussian surfaces for these conformers:
MoleculeMesh[#, "Gaussian"]& /@ {open, closed}Find the surface area and volume:
Comap[{SurfaceArea, Volume}] /@ %Find the isomers of decane with the smallest and largest surface areas:
decanes = Molecule /@ IconizedObject[«decane isomer SMILES»];
TakeLargestBy[decanes, SurfaceArea @* MoleculeMesh, 2]A greater degree of branching leads to a decrease in the surface area:
TakeSmallestBy[decanes, SurfaceArea @* MoleculeMesh, 2]Create a scatter plot of the volume versus surface area for these isomers:
ListPlot[Tooltip[{Volume[MoleculeMesh[#]], SurfaceArea[MoleculeMesh[#]]}, MoleculePlot[#]]& /@ decanes]Related Guides
History
Text
Wolfram Research (2025), MoleculeMesh, Wolfram Language function, https://reference.wolfram.com/language/ref/MoleculeMesh.html.
CMS
Wolfram Language. 2025. "MoleculeMesh." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/MoleculeMesh.html.
APA
Wolfram Language. (2025). MoleculeMesh. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/MoleculeMesh.html
BibTeX
@misc{reference.wolfram_2026_moleculemesh, author="Wolfram Research", title="{MoleculeMesh}", year="2025", howpublished="\url{https://reference.wolfram.com/language/ref/MoleculeMesh.html}", note=[Accessed: 12-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_moleculemesh, organization={Wolfram Research}, title={MoleculeMesh}, year={2025}, url={https://reference.wolfram.com/language/ref/MoleculeMesh.html}, note=[Accessed: 12-June-2026]}