Looks like I’m staying home alone until a vaccine comes; it’s what I mostly do anyway, though I miss the occasional card game. As a libertarian, I do not presume to know what’s best for others. So, lucky me, I need not obsess about policy.

Scribbles: The Ensmoothening, Part III

Many of the curves in this chart have some unsightly wiggles. That’s because, when a function of degree 2 or higher tries to approximate a piecewise constant, it tends to go back and forth across the target. So here instead I fitted each such function not to the piecewise constant directly but to the fit of the next lower degree.

( . . more . . )

On a truncated icosahedron / buckyball / Telstar-style soccer ball, consider two adjacent hexagons and the two pentagons that are adjacent to both. These four faces can be removed, rotated by a right angle, and reattached, causing only a small change to the overall shape. Most fullerenes have at least one such patch.

If I ever get around to making more printable models of fullerenes, I would omit those that can be changed, by the above twist, into one of higher symmetry. I have a pretty good idea of how I’d go about listing the fullerenes and finding their siblings; but I do not have a grip on distinguishing symmetry groups of the same order – e.g., that of the regular tetrahedron versus that of a hexagonal prism – and a subgroup of one may not be a subgroup of the other.

So I got out *An Atlas of Fullerenes* in the hope of understanding how they did it – and happened to open to a chapter I had not looked at before, which covers the Stone-Wales transformation (for so it is named) and lists, up to C_{50} (15 hexagons), which fullerenes change with which.

The 812 smallest fullerenes are thus cut to 72 in 47 families. The biggest of these families has six remaining members, four with C2v symmetry (one axis of twofold rotation, and a reflection plane containing that axis) and two with C3 symmetry (chiral with one threefold axis). Their symmetry numbers are 4 and 3 respectively, but as C3 is not a subgroup of C2v I keep them all.

Surprisingly the ten families of C_{50} include two with no nontrivial symmetry at all.

This morning I saw a series of flashes (both bright and dark) in my left eye, along a peripheral arc. They’ve stopped for now but I also have some new floaters. I have a recurring urge to clean off the spectacles I’m not wearing!

another problem with my clothoids

each curve hits alternate dots: first exactly, then with offsets pushing it toward the other curve.

I don’t think I’ve mentioned here how the offsets work. ( . . more . . )

For context, see past posts in the *curve-fitting* category that I just created. To recap:

The curves I’ve been drawing are the paths made by a point moving at constant speed at an angle which is a piecewise quadratic function of path length. Curvature, the first derivative of angle, is continuous.

Such a path that hits a given sequence of dots is fully determined if it loops, but otherwise it has two degrees of freedom. For any angle and curvature at the starting dot, there is a quadratic coefficient that lets the path reach the next node, and likewise for the next.

My current code starts with an estimate for the length of each segment (between two dots) and the angle at its midpoint, and uses these basis functions to fit those angles: a constant, a linear function, and a family of “solitons”: piecewise quadratics, zero outside a sequence of four dots, discontinuous in the second derivative at each of those dots. For n segments, there are n-2 solitons, so the constant and linear functions are needed to consume the last two degrees of freedom.

Eventually I noticed a flaw in this scheme: the curvature of the resulting path is the same at both ends, namely the slope of the linear component, because the solitons contribute nothing to it. That’s appropriate for āCā, but wrong for plenty of other strokes; in āSā the end curvatures ought to have opposite sign.

The next thing I’ll try is a least-squares quadratic fit to the whole sequence, then fit the residues with solitons as before. That should be an improvement but it’s not ideal; curvature is a local feature. Perhaps I’ll think of something better later.

Here, each curve hits alternate dots: first exactly (above), then with offsets pushing it toward the other curve. Below is the result of eight iterations.

With enough iterations, the top of ‘s’ eventually gets a more symmetrical arch, as the change in curvature is spread more evenly.

But many runs get stuck in the fitting phase, and I don’t yet know why. Attacking one likely flaw didn’t help.