#import "@local/handout:0.1.0": * #import "@preview/cetz:0.3.1" = Rotational Symmetry #definition() A wallpaper may also have $n$-fold rotational symmetry about a point. #v(2mm) This means there are `n` rotations around that point that map the wallpaper to itself. #v(2mm) As before, two points of rotational symmetry are identical if we can perform a translation and rotation that maps one to the other without changing the wallpaper. #definition() In orbifold notation, rotation is specified similarly to reflection, but uses the prefix #sym.diamond.stroked.small. \ For example: - #sym.diamond.stroked.small`333` denotes a pattern with three distinct centers of rotation of order 3. - #sym.diamond.stroked.small`4`#sym.convolve`2` denotes a pattern with one rotation center of order 4 and one mirror node of order 2. #table( stroke: none, align: center, columns: (1fr, 1fr), rows: 50mm, image("../res/333.png", height: 100%), image("../res/3*3.png", height: 100%), ) #problem() Find the three rotation centers in the left wallpaper. \ What are their orders? #solution([This is #sym.diamond.stroked.small`333`]) #v(1fr) #problem() Find the signature of the pattern on the right. #solution([This is #sym.diamond.stroked.small`3`#sym.convolve`3`]) #v(1fr) #remark() You may have noticed that we could have an ambiguous classification, since two reflections are equivalent to a translation and a rotation. We thus make the following distinction: _rotational symmetry that can be explained by reflection is not rotational symmetry._ #v(2mm) In other words, when classifying a pattern... - we first find all mirror symmetries, - then all rotational symmetries that are not accounted for by reflection. #pagebreak() // MARK: glide = Glide Reflections #definition() Another type of symmetry is the _glide reflection_, denoted #sym.times. A glide reflection is the result of a translation along a line followed by reflection about that line. For example, consider the following pattern: #table( stroke: none, align: center, columns: 1fr, rows: 60mm, image("../res/*x-a.png", height: 100%), ) #problem() Convince yourself that this pattern has only one mirror symmetry. #solution([ There may seem to be two, but they are identical. \ We can translate one onto the other. ]) #v(1fr) #problem() Use the following picture to find the glide reflection in the above pattern. #table( stroke: none, align: center, columns: 1fr, rows: 70mm, image("../res/*x-b.png", height: 100%), ) #v(1fr) #remark() The signature of this wallpaper is #sym.convolve#sym.times. #pagebreak() #problem() Find the signature of the following pattern: #table( stroke: none, align: center, columns: 1fr, rows: 60mm, image("../res/wiki/Wallpaper_group-cm-4.jpg", height: 100%), ) #solution([ This is #sym.convolve#sym.times. ]) #v(1fr) #problem() Find the signature of the following pattern: #table( stroke: none, align: center, columns: 1fr, rows: 60mm, image("../res/wiki/Wallpaper_group-p4g-2.jpg", height: 100%), ) #solution([ This is #sym.diamond.stroked.small`4`#sym.convolve`2` ]) #v(1fr) #pagebreak() #problem() Find two glide reflections in the following pattern.\ #note[(and thus show that its signature is #sym.times#sym.times.)] #table( stroke: none, align: center, columns: 1fr, rows: 70mm, image("../res/xx-b.png", height: 100%), ) #solution([ #table( stroke: none, align: center, columns: 1fr, rows: 40mm, image("../res/xx-a.png", height: 100%), ) ]) #v(1fr) #definition() If none of the above symmetries appear in a pattern, then we only have simple translational symmetry. We denote this with the signature #sym.circle.small. #remark() In summary, to find the signature of a pattern: - find the mirror lines (#sym.convolve) and the distinct intersections; - find the rotation centers (#sym.diamond.stroked.small) not explained by reflection; - then find all glide reflections (#sym.times) that do not cross a mirror line. - If we have none of the above, our pattern must be #sym.circle.small.