ModularGroup.m is a Mathematica package which has been developed in the course of the diploma thesis Computer Algebra and Analysis: Complex Variables Visualized [pdf], carried out at the Research Institute for Symbolic Computation (RISC) of the Johannes Kepler University Linz by Thomas Ponweiser under supervision of Univ.-Prof. Dr. Peter Paule.
The main focus lies on the visualization of basic results in the context of the theory of the modular group and modular functions. Most importantly the package provides
- Basic operations related to Möbius transformations and modular transformations (such as function composition as well as mapping of points and generalized disks),
- Algorithms for finding group word representations of modular transformations in terms of different generators of the modular group,
- Routines for drawing the canonical fundamental region of the modular group and the induced tessellation of the upper half-plane (as well as Möbius-transformed images thereof).
A more detailed description of the package's features as well as several examples, including interactive demonstrations, can be found in the notebook ModularGroupDemo.nb.
Licence
The MIT License (MIT)
Copyright (C) 2014 Thomas Ponweiser
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
to deal in the Software without restriction, including without limitation
the rights to use, copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.
The package
For using the package, download the following file and put it into a directory where Mathematica will find it.
For a description of the usage of the package, see the ModularGroupDemo.nb notebook and the Diploma Thesis of Thomas Ponweiser
Please report any bugs or other suggestions to Thomas Ponweiser.