Which method when

The smoother has three methods, Laplace smoothing, Winslow smoothing and an optimizer, and a schedule that combines Laplace and the optimizer. Each runs here on the same inputs with the same constraints, so the differences are the method’s own.

The four runs

method

call

runs

at most

Laplace only

laplace(passes=100, w=0.95)

one Laplace stage

100 Laplace passes

Winslow only

winslow(sweeps=200)

one Winslow stage at its defaults

200 Winslow sweeps

Optimizer only

optimize(iters=200)

one optimizer stage at the default delta=0.01

200 optimizer iterations

Combined

suggest_schedule(quality)

user_schedule() = 10 × [laplace(passes=3, w=0.97) + optimize(iters=20)] + 2 × laplace_local(passes=5, w=0.97); when a quad starts inverted, optimizer passes with a wide-to-narrow delta come first (untangle_schedule() = optimize(iters=60, delta=v) for v in 1, 0.3, 0.1, 0.03, 0.01)

30 Laplace passes, 200 optimizer iterations, 10 local Laplace passes; plus 300 optimizer iterations when a quad starts inverted

Side by side

One row per input, every panel on the row at one scale. The L-shape is a concave outline meshed as one block; its reflex corner is the point (1, 1).

worst-corner scaled J≤ 01input boundaryouter edge of a designed layer

annulus

input
min J 0.24
Laplace
min J 0.99
Winslow
min J 0.94
Optimizer
min J 0.94
Combined
min J 0.94

free disk

input
min J 0.27 · area +0.0 %
Laplace
min J 0.72 · area +0.0 %
Winslow
min J 0.85 · area +0.0 %
Optimizer
min J 0.86 · area +0.0 %
Combined
min J 0.86 · area +0.0 %

tangled square

input
min J -0.98 · 4 inverted
Laplace
min J 1.00 · 0 inverted
Winslow
min J 1.00 · 0 inverted
Optimizer
min J -0.98 · 4 inverted
Combined
min J 1.00 · 0 inverted

sphere

input
min J -0.32 · 3 inverted
Laplace
min J 0.83 · 0 inverted
Winslow
min J 0.87 · 0 inverted
Optimizer
min J 0.87 · 0 inverted
Combined
min J 0.87 · 0 inverted

graded layer

input
min J 0.46 · layer as meshed
Laplace
min J 0.86 · layer +229 %
Winslow
min J 0.86 · layer +207 %
Optimizer
min J 0.32 · layer +584 %
Combined
min J 0.36 · layer +746 %

L-shape

input
min J -0.32 · 10 inverted (9 off the corner)
Laplace
min J -0.95 · 6 inverted (5 off the corner)
Winslow
min J -0.68 · 1 inverted, at the corner
Optimizer
min J -0.35 · 9 inverted (8 off the corner)
Combined
min J -0.72 · 3 inverted (2 off the corner)

Scoreboard

The shape and size rows count the inputs (of 6) on which each method is best; the others are one input’s reading. Best in bold; readings within 0.1 % of each other tie, and a tie counts for each method.

reading

Laplace only

Winslow only

Optimizer only

Combined schedule

shape

min scaled J

2

2

3

3

shape

mean phi

0

4

3

5

size

size ratio max

1

4

1

2

size

CV of area

3

1

1

3

tangled input

tangled squares repaired (of 8)

8

8

1

8

concave

L-shape, inverted quads left (input 10)

6

1

9

3

free boundary

area change, free disk (%)

+0.0

+0.0

+0.0

+0.0

grading

graded layer, thickness change (%)

+229

+207

+584

+746

cost

seconds per run, mean

0.03

0.15

0.39

0.44

What this shows

  • Shape. On the 4 inputs every method leaves valid, the optimizer (alone or combined) has the lowest mean phi, the quantity it minimises. Winslow comes within 0.001 of it on the annulus and sphere, in 56 % of its time. By min scaled J, Laplace wins on the annulus and graded layer, the optimizer on the free disk and sphere: the scaled J reads angles only.

  • Concave outline. The L-shape’s Coons patch starts with 10 inverted quads. Laplace leaves 6, the optimizer alone 9, the combined schedule 3; Winslow leaves 1, only at the reflex corner, where two quads share a 270-degree turn.

  • Size. No method evens element size everywhere: Laplace has the lowest spread of area (CV) on the annulus, free disk and L-shape, another method on the tangled square, sphere and graded layer.

  • Tangled squares. Of 8 tangled squares, Laplace repaired 8, Winslow 8, the optimizer alone 1 (at the default delta it stops after 1 iteration), the combined schedule 8.

  • Free boundary. The disk has boundary="tangent": a boundary vertex slides along the boundary and never moves inward, so the area is kept (Laplace +0.0 %, Winslow +0.0 %, optimizer +0.0 %). The optimizer works there too: it runs 200 iterations to min scaled J 0.857, against a frozen boundary’s 0.857 and boundary="slide"’s 0.856. With boundary="free" Laplace pulls the boundary onto its chords (-15.7 %) and the optimizer lets the rim cells grow (+61.7 %). Geometry you know goes on the boundary as OnCurve (Constraints and projection).

  • Grading. Every method thickens the graded layer: Laplace +229 %, Winslow +207 % (its guard stopped it after 3 sweeps), the optimizer +584 %; see Boundary layers and grading.

  • Cost. A Laplace pass costs 0.4 ms, a Winslow sweep 0.9 ms, an optimizer iteration 4.3 ms with its line search. Medians over the inputs; single runs on a laptop, running serial.

Every reading, per input

annulus

reading

input

Laplace only

Winslow only

Optimizer only

Combined schedule

min scaled J

0.238

0.986

0.944

0.940

0.940

mean scaled J

0.812

0.996

0.987

0.986

0.986

mean phi

4.915

1.504

1.447

1.446

1.447

size ratio max

1.88

1.11

1.07

1.08

1.08

CV of area

0.350

0.295

0.419

0.424

0.426

area change (%)

+0.0

+0.0

+0.0

+0.0

+0.0

inverted

0

0

0

0

0

seconds

–

0.04

0.13

0.44

0.39

free disk

reading

input

Laplace only

Winslow only

Optimizer only

Combined schedule

min scaled J

0.266

0.725

0.855

0.857

0.857

mean scaled J

0.863

0.970

0.979

0.978

0.978

mean phi

3.522

1.604

1.063

1.060

1.059

size ratio max

1.72

1.31

1.45

1.41

1.41

CV of area

0.477

0.316

0.695

0.643

0.650

area change (%)

+0.0

+0.0

+0.0

+0.0

+0.0

inverted

0

0

0

0

0

seconds

–

0.04

0.19

0.71

0.41

tangled square

reading

input

Laplace only

Winslow only

Optimizer only

Combined schedule

min scaled J

-0.983

0.999

1.000

-0.983

1.000

mean scaled J

0.832

1.000

1.000

0.832

1.000

mean phi

1.1e+04

1.001

1.000

1.2e+11

1.000

size ratio max

4.34

1.02

1.00

4.33

1.00

CV of area

0.283

0.019

0.000

0.283

0.000

area change (%)

+0.0

+0.0

+0.0

+0.0

+0.0

inverted

4

0

0

4

0

seconds

–

0.03

0.04

0.00

0.26

tangled squares repaired (of 8)

0

8

8

1

8

sphere

reading

input

Laplace only

Winslow only

Optimizer only

Combined schedule

min scaled J

-0.319

0.826

0.868

0.868

0.868

mean scaled J

0.787

0.973

0.973

0.973

0.973

mean phi

3.786

1.067

1.059

1.060

1.060

size ratio max

3.56

1.31

1.26

1.24

1.24

CV of area

0.468

0.234

0.204

0.193

0.193

area change (%)

+0.0

+0.7

+0.6

+0.7

+0.7

inverted

3

0

0

0

0

seconds

–

0.04

0.36

0.44

0.70

graded layer

reading

input

Laplace only

Winslow only

Optimizer only

Combined schedule

min scaled J

0.465

0.862

0.858

0.317

0.358

mean scaled J

0.915

0.995

0.994

0.925

0.903

mean phi

18.544

7.490

8.349

4.070

3.997

size ratio max

3.61

1.97

1.92

2.55

2.49

CV of area

0.690

0.547

0.564

0.397

0.368

area change (%)

+0.0

+0.0

+0.0

+0.0

+0.0

inverted

0

0

0

0

0

seconds

–

0.03

0.01

0.74

0.74

layer thickness change, max (%)

0

229

207

584

746

L-shape

reading

input

Laplace only

Winslow only

Optimizer only

Combined schedule

min scaled J

-0.316

-0.948

-0.678

-0.352

-0.722

mean scaled J

0.806

0.832

0.887

0.806

0.818

mean phi

2.0e+12

1.0e+12

2.471

4.5e+11

768.719

size ratio max

8.06

3.12

2.24

9.79

4.29

CV of area

0.530

0.483

0.493

0.538

0.515

area change (%)

+0.0

+0.0

+0.0

+0.0

+0.0

inverted

10

6

1

9

3

seconds

–

0.03

0.17

0.01

0.14

inverted away from the reflex corner

9

5

0

8

2

Trade-offs

method

good at

weak at

cost

use when

Laplace only

cheap; never adds an inverted quad; best min scaled J on simple planar patches; repaired every tangled square here

blind to phi; folds stay on a concave outline (6 left on the L-shape); relaxes grading

0.4 ms a pass

a cheap first pass, or a valid result is enough

Winslow only

a concave outline: only the reflex-corner quad stays folded (1 left on the L-shape); the optimizer’s shape on valid, ungraded input in 56 % of its time; repaired every tangled square

erases grading once its guard lets it run (+778 % with max_sj_drop=1; pair with KeepLayer); can drift on a closed surface over many sweeps

0.9 ms a sweep

Laplace fails: a concave outline, a thin curved block (Winslow smoothing)

Optimizer only

lowest phi; weights and constraints act inside it

stalls on a tangle at the default delta; grows a "free" boundary; undoes grading

4.3 ms an iteration

a valid input whose shape is the goal

Combined

optimizer passes with a wide-to-narrow delta first, then its shape

the optimizer’s cost, grading and boundary behaviour

0.44 s a run (mean)

the default; any damaged or unknown input

In practice

  • Attach geometry first (Constraints and projection), or use boundary="slide" when there is none: "free" shrinks a convex boundary under Laplace and grows it under the optimizer; "tangent" holds it for every method.

  • Start from s.suggest(): when a quad starts inverted it leads with optimizer passes over a wide-to-narrow delta.

  • Add a Winslow stage by hand where Laplace fails: a concave outline, a thin curved block (Winslow smoothing).

  • Protect designed grading with KeepLayer (Boundary layers and grading); Winslow needs it most.

  • Judge by more than one reading: the scaled Jacobian is blind to edge ratio, size and grading.

References

  • K. Mittal, P. Fischer, “Mesh smoothing for the spectral element method”, J. Sci. Comput. 78(2), 1152-1173 (2019), doi:10.1007/s10915-018-0812-9. Used for: The approach this smoother follows for spectral-element meshes. Cited as a record; its method is not summarised here.

  • K. Mittal, “Spectral element mesh generation and improvement methods”, M.S. thesis, University of Illinois at Urbana-Champaign (2016), hdl:2142/95509. Used for: With the paper above, the mesh-improvement approach this smoother follows for spectral-element meshes.

  • S. A. Canann, J. R. Tristano, M. L. Staten, “An approach to combined Laplacian and optimization-based smoothing for triangular, quadrilateral, and quad-dominant meshes”, 7th International Meshing Roundtable, Sandia National Laboratories (1998); no DOI. Used for: A combination of constrained Laplacian smoothing with an optimization-based smoother for triangle, quad and mixed meshes: the idea of the combined schedule.