Web presentation
A single CGI script written in Perl generates this and all associated
pages for the orthogonal designs on the fly - no images or orthogonal
designs are stored.
The main part of the script
generates three framesets, one each for OD 40 triples, OD 56 triples and
OD 56 extra designs. Each frameset queries the user for the
OD they would like to see. For example, in the frameset for OD(40)
a user may select OD(40;10,11,15).
The script runs one of three backend programs with suitable parameters
and formats the result before sending out a web page.
Web backend programs
Three very similar backend programs are used, one each for OD 40, and
the two OD 56's.
These are written in C and compute the orthogonal designs and generate the
images and other information. To compute
OD(40;10,11,15), for example, the backend program
needs just the following line:
101115s aaBBbC0aCcccC0cababBabAbbcC0acbAaB0cCccc
which is one of 1841 lines stored in a data file, and is essentially
the first row of a set of amicable matrices.
Images are generated as xpm image files. These
are easy to generate since a matrix row like aBc... appears in
an xpm file simply as:
"aaaBBBccc.........",
"aaaBBBccc.........",
"aaaBBBccc.........",
System utilities are used to convert
space inefficient and web unfriendly xpm files
into standard web image formats such as png.
The backend program was also used to check each orthogonal
design by multiplying it with its transpose.
The bridge between the search results and the backend
MAPLE programs together with shell scripts
were used to generate the data lines alluded to
above, as well as, the LaTeX source for the published papers.
The programs contain checks to test the sequences (for
commutant, special amicability, etc.).
These program took as input the files of output generated
by the searches.
The searches
A suite of C programs were used to find amicable sequences from
sequences of half the order.
Another set of C programs were used to generate negacyclic sequences.
Most of the effort and computing time was spent on and by these programs.
The environment
Most of the work was done in a UNIX or LINUX environment using
C, MAPLE and bash or sh shell scripts.
The web software is Apache and currently runs on a Solaris system.