Surfaces

Bigger comes with a number of pre-made surfaces. These available within bigger.load

Flute

Flute
bigger.load.flute() → bigger.mappingclassgroup.MappingClassGroup[int][int][source]

The infinitely punctured sphere, with punctures that accumulate in one direction.

With mapping classes:

  • a_n which twists about the curve parallel to edges n and n+1
  • b_n which twists about the curve which separates punctures n and n+1
  • a{expr(n)} which twists about all a_n curves when expr(n) is True
  • b{expr(n)} which twists about all b_n curves when expr(n) is True

Shortcuts:

  • a[start:stop:step] = a{n in range(start, stop, step)}
  • a == a[:]

Biflute

biflute
bigger.load.biflute() → bigger.mappingclassgroup.MappingClassGroup[int][int][source]

The infinitely punctured sphere, with punctures that accumulate in two directions.

With mapping classes:

  • a_n which twists about the curve parallel to edges n and n+1
  • b_n which twists about the curve which separates punctures n and n+1
  • a{expr(n)} which twists about all a_n curves when expr(n) is True
  • b{expr(n)} which twists about all b_n curves when expr(n) is True
  • s which shifts the surface down
  • r which rotates the surface fixing the curve a_0

Shortcuts:

  • a[start:stop:step] = a{n in range(start, stop, step)}
  • a == a[:]

Note: Since b_n and b_{n+1} intersect, any b expression cannot be true for consecutive values.

Cantor

Cantor
bigger.load.cantor() → bigger.mappingclassgroup.MappingClassGroup[typing.Tuple[int, int]][Tuple[int, int]][source]

A sphere minus a cantor set.

With mapping classes:

  • a_n which twists about the curve about the nth hole
  • b_n which twists about the curve about the nth hole
  • r an order two rotation

Spotted Cantor

Spotted Cantor
bigger.load.spotted_cantor() → bigger.mappingclassgroup.MappingClassGroup[typing.Tuple[int, int]][Tuple[int, int]][source]

The uncountably-punctured sphere.

With mapping classes:

  • a_n which twists about the curve across square n
  • a{expr(n)} which twists about all a_n curves when expr(n) is True

Shortcuts:

  • a[start:stop:step] = a{n in range(start, stop, step)}
  • a == a[:]

Loch Ness Monster

Ladder
bigger.load.loch_ness_monster() → bigger.mappingclassgroup.MappingClassGroup[int][int][source]

The infinite-genus, one-ended surface.

With mapping classes:

  • a which twists about the longitudes of the monster
  • b which twists about the meridians of the monster
  • c which twists about the curves linking the nth and n+1st handles
  • s which shifts the surface down

Ladder

Ladder
bigger.load.ladder() → bigger.mappingclassgroup.MappingClassGroup[typing.Tuple[int, int]][Tuple[int, int]][source]

The infinite-genus, two-ended surface.

TODO. :(

Spotted Ladder

Ladder
bigger.load.spotted_ladder() → bigger.mappingclassgroup.MappingClassGroup[typing.Tuple[int, int]][Tuple[int, int]][source]

The infinite-genus, two-ended surface.

With mapping classes:

  • a_n which twists about the curve parallel to edges n and n+1
  • b_n which twists about the curve which separates punctures n and n+1
  • a which twists about all a_n curves simultaneously
  • b which twists about all b_n curves simultaneously
  • s which shifts the surface down