CARAT is a computer package which handles enumeration, construction, recognition,
and comparison problems for crystallographic groups up to dimension 6.
The name CARAT itself is an acronym for Crystallographic AlgoRithms And
Tables.
CARAT is a compilation of various programs written in C developed under
HPUX and Linux, and should be portable to most Unices.
In particular CARAT does not come together with an environment, but
relies on the ordinary unixes shell and files for input and output.
This is one of the points which distiguishes CARAT from most other packages
for computer algebra, like
GAP. If you would like such a user interface, the current version of GAP comes
with an interface to CARAT, which enables one to use the most important
functions of CARAT, but not all.
Some of the features of CARAT

CARAT can construct any space group up to degree 6 from its build in table
of Qclasses,

CARAT can name a space group R given by generators unily, ie. generate
a name which only depends on the isomorphism of R and determines it uniquely.

Decide Q, Z and affine equivalence of finite unimodular groups and space
groups resp.

Calculate the integral normalizer of a finite unimodular group.
CARATintroduction and Page of low dimensional Bieberbach groups
Papers
Here we provide some postscript files of papers which are dealing with
CARAT or have been written with the help of it:

J. Opgenorth, W. Plesken, T. Schulz: Crystallographic
algorithms and tables, Acta. Cryst (1998), 517531.
This paper
deals with the basic algorithms behind CARAT, and can be viewed as an introduction
to the underlying structures to crystallographic groups from an algorithmic
point of view.

W. Plesken, T. Schulz: Counting crystallographic
groups in low dimensions, Experimental Mathematics 9:3 (2000), 407411
The paper describes
the results obtained by CARAT in counting all space groups up to dimension 6.

C. Cid, T. Schulz: Computation of Five and Six Dimensional Bieberbach
Groups, Experimental Mathematics 10:1 (2001), 109115
This paper is concerned with the computation and classification of 5 and 6dimensional torsionfree
crystallographic groups, also known as Bieberbach groups.
As a result, we have the following table for Crystallographic and Bieberbach groups up
to dimension 6:

1 
2 
3 
4 
5 
6 
No of Qclasses 
2 
10 
32 
227 
955 
7103* 
No of Zclasses 
2 
13 
73 
710 
6079 
85308* 
No of affine classes 
2 
17 
219 
4783 
222,018 
28,927,915* 
No of Bieberbach groups 
1 
2 
10 
74 
1060 
38746 
* in the original version of CARAT, the Qclasses for the group group.7477 and max.22 were in fact the same by accident, hence resulting in these corrected figures.
Download
Here you can download
CARAT (version 2.1b1 19.07.2008, including some adaptations of the code to
recent gcc versions by Franz Gähler, Feb. 2007). For
installation, please extract the file downloaded and refer to the file README.install.
You can also download historic versions of CARAT.
Changes of the new version
 The new function Graph calculates the graph of
inclusions of a geometric class of space groups.
 The new function KSubgroups calculates
maximal klassengleich subgroups.
 The new function KSupergroups calculates
minimal klassengleich supergroups
 The new function TSubgroups calculates
maximal translationengleich subgroups.
 The new function TSupergroups calculates
minimal translationengleich supergroupe.
 Bugfixes have been made for Z_equiv, Name and
Presentation.
 Extract r D writes space groups directly into files.
 Conv now also converts groups and converts to TeX.
 Name c gives the name of a (space)group in a short form. The
HermannMauguinSymbols can be calculated in dimension 2 and 3 now
(Name M).
 Extensions/Vectorsystems S writes representatives of
the affine classes in files.
Contact
If you have any question concerning CARAT (e.g. installation etc.),
or find a bug in the package, please do not hesitate to contact us:
Lehrstuhl B für Mathematik
Prof. Dr. W. Plesken
Templergraben 64
52056 Aachen
Germany
Tel: +49 241 80 94535
carat AT momo.math.rwthaachen.de
last change: 07.03.2007