conatus.expert.ShiftReflect¶
- class conatus.expert.ShiftReflect(coord, shift)[source]¶
Bases:
_Z2GeneratorShift-and-reflect of a periodic pipe or cylinder: phi -> -phi composed with the half-period shift z -> z + Lz/2 of the axis,
(u_phi, u_r, u_z)(phi, r, z) -> (-u_phi, u_r, u_z)(-phi, r, z + Lz/2)
(the symmetry S of the pipe travelling waves: Wedin & Kerswell 2004, Pringle, Duguet & Kerswell 2009, Willis, Cvitanovic & Avila 2013).
ShiftReflect(phi, z)on CylindricalCoordinates. A reflection (det -1: curls and cross products change sign) that reverses e_phi and d/dphi; the shift commutes with every z operator.On a stored real field (m >= 0) it pairs the coefficients (m, k_z) and (m, -k_z) through a complex conjugation: it is real-linear, not complex-linear, so it does not reduce the complex group systems; IVPs enforce it by a declared projection after every solve of the step (
timestep/symmetry_projection.py: J read off the transforms, leak monitored and refused above its bound), together with the reduced m-fold classes. Cartesian shift-reflect (plane Couette S of Nagata) lives inconatus.ecs.subspace.- Parameters:
coord (Coordinate)
shift (Coordinate)
- det = -1¶
- order = 2¶
- property key: tuple¶
Hashable identity (generator kind and the two coordinates).
- centre(basis)[source]¶
Fixed azimuth of the reflection (phi = 0).
- Parameters:
basis (Basis)
- Return type:
float
- mirror(pos, basis)[source]¶
Image of azimuth pos under phi -> -phi, wrapped onto the basis period.
- Parameters:
pos (float)
basis (Basis)
- Return type:
float