Simple geometries¶
Eight small meshes, flat and curved, each damaged in its own way and smoothed under the constraints that suit it.
view |
shows |
|---|---|
panels |
left the input, right the stage picked with the slider (or play); quads coloured by worst-corner scaled Jacobian, red at or below zero (inverted) through yellow to green at one |
histogram |
every quad’s scaled Jacobian, input (grey) against the picked stage (blue); quads left of the dashed red zero line are inverted |
history |
minimum and mean scaled Jacobian after each stage; the vertical line marks the picked stage |
Key points¶
Inverted input recovers: a mesh that starts with inverted quads has a negative minimum and ends with none.
Good input mostly moves its mean, not its minimum.
Size does not follow curvature (the ellipsoid): the shape metric knows angles, not curvature, so elements do not get smaller where the surface curves more.
The numbers¶
geometry |
built by |
quads |
inverted |
min scaled J |
mean scaled J |
|---|---|---|---|---|---|
annulus |
|
196 |
0 → 0 |
0.2376 → 0.9399 |
0.8117 → 0.9862 |
disk |
|
132 |
8 → 0 |
-0.6383 → 0.8564 |
0.6423 → 0.9783 |
pipe section |
|
228 |
0 → 0 |
0.4200 → 0.8082 |
0.9416 → 0.9833 |
box |
|
150 |
0 → 0 |
0.2574 → 1.0000 |
0.8835 → 1.0000 |
sphere |
|
150 |
3 → 0 |
-0.3195 → 0.8681 |
0.7873 → 0.9727 |
ellipsoid |
|
150 |
5 → 0 |
-0.5528 → 0.8511 |
0.7966 → 0.9611 |
torus |
|
200 |
3 → 0 |
-0.5154 → 0.9477 |
0.7849 → 0.9807 |
hemisphere |
|
180 |
0 → 0 |
0.6562 → 0.8131 |
0.9219 → 0.9594 |
Run python examples/smoother/quad/<script> for the script named in a row to reproduce; it prints these numbers.
Notes and caveats
The geometries: an annulus, a disk, a pipe section, the surface of a box, a sphere, an ellipsoid, a torus and a hemisphere.
On the 3-D surfaces, drag either panel to orbit both; they need JavaScript and load vtk.js from a CDN.
The 3-D surfaces keep only a few evenly spaced stages in their data, so their history has fewer points.
The table compares the input with the last stage, read from the same data the viewer plays.