Browse the docs

betti volume poly

Fill a closed surface with polyhedra, for finite volumes, with prism layers on walls.

volume module Granted on request: see access and licensing.

Usage

Shell
betti volume poly [flags] in out

in is a closed surface mesh, or a STEP, IGES, JT or Parasolid part (with the cad module too). The surface must be closed, facing outward, without crossings: run betti fix repair first if not. Each solid it encloses is a region; voids stay empty. A CAD part's surface is meshed at -size first (2% of the part if unset), each CAD face a tag. The boundary faces are pieces of the surface's triangles, merged where flat and of one tag.

With -layers, the cells next to the walls (the boundary faces of the tags -layers-on names, or all) are layers of prisms, the first -first high and each -growth times the one below; where cells would fold, the layers are thinner.

In a script this is volume.poly(…), its flags as keywords; for coding agents, the tool volume_poly.

Examples

Shell
betti volume poly part.obj case/constant/polyMesh
betti volume poly -size 2% -layers 5 -first 0.1 -layers-on wall duct.obj duct.vtu

Formats, by the extension of out

.vtuVTK unstructured grid: cells, regions in the cell data array "region"; no boundary tags (use .msh for those)
polyMeshan OpenFOAM polyMesh folder (a path ending in polyMesh): every cell by its faces, regions as cell zones, boundary tags as patches, walls but those named inlet, outlet or symmetry

Flags

FlagTakesDefaultMeaning
-firstlength or numbernonethe first layer's height, such as 0.1 or 0.05%, with -layers
-growthnumber1.2each layer's height over the one below it, with -layers
-keep-surfaceswitchoffkeep the surface's triangles as the boundary: no points added on it; fails where the tetrahedra need one
-layersintegernonelayers of prisms on the walls, for boundary layers; 0 for none
-layers-ontextnonethe boundary tags the layers grow from, by number or name, separated by commas; unset, all
-min-dihedralnumber10smallest dihedral angle, in degrees, tetrahedra are improved towards
-radius-edgenumber2largest ratio of a tetrahedron's circumradius to its shortest edge (0.61 for a regular one)
-sizelength or numbernonetarget edge length, such as 2 or 1%; unset, cells as large as their shape and the surface allow

Output flags

FlagTakesDefaultMeaning
-jsonswitchoffprint the result as JSON
-qswitchoffprint nothing but errors
-skipnamesnoneswitch off steps of the work by their names, separated by commas, as the built-in help lists them
-vswitchoffalso show the stages of each step, and their times

This page is generated from betti help volume poly. Lengths are absolute, or a percentage of the part's bounding-box diagonal, as in -size 1%.