

feature articles
Busting out of crystallography's Sisyphean prison: from pencil and paper to structure solving at the press of a button: past, present and future of crystallographic software development, maintenance and distribution
aNational Research Council of Canada, Chalk River Laboratories, Chalk River, Ontario,
K0J 1P0, Canada
*Correspondence e-mail: [email protected]
The history of crystallographic computing and use of crystallographic software is one which traces the escape from the drudgery of manual human calculations to a world where the user delegates most of the travail to electronic computers. In practice, this involves practising crystallographers communicating their thoughts to the crystallographic program authors, in the hope that new procedures will be implemented within their software. Against this background, the development of small-molecule single-crystal and powder diffraction software is traced. Starting with the analogue machines and the use of Hollerith tabulators of the late 1930's, it is shown that computing developments have been science led, with new technologies being harnessed to solve pressing crystallographic problems. The development of software is also traced, with a final caution that few of the computations now performed daily are really understood by the program users. Unless a sufficient body of people continues to dismantle and re-build programs, the knowledge encoded in the old programs will become as inaccessible as the knowledge of how to build the Great Pyramid at Giza.
Keywords: Beevers; Comrie; Eckert; history; Hollerith; Pauling; powder diffraction; single crystal; software; teaching.
1. Introduction
The following concentrates on the early history of crystallographic computing as the first attempts in anything, by going from nowhere to somewhere, are the most difficult, most important, and often set precedents and create traditions for future development. Where possible, these pioneers speak their own words, as many of their overall situations and strategies still maintain a modern resonance. However, the crystallographic wisdom behind much software, program philosophies and source code can be obscured to modern view. Significant history can be distributed sparsely in the literature so as to resemble a shattered crystal that can be reconstructed in many and various ways. Thus what follows should be considered as a partial brass rubbing of a much larger richer history where there is still much room for elaboration and exploration.
1.1. Trends in crystallography
In the proceedings of the 1960 Glasgow crystallographic computing conference, a paper
on `Small-Scale Computers in X-ray Crystallography' by Niggli displayed a triangle
diagram detailing Availability versus Convenience versus Reliability, where for crystallographic calculations the `slide rule' was given high
marks for availability, but low marks for reliability and convenience (Niggli, 1961). The technology and emphasis of crystallographic computing has changed greatly,
with an overall trend of the practising crystallographer delegating more and more
to the electronic computer. Before the 1940's, the crystallographer was required to
be both the data-processing drudge and thoughtful scientist to solve a to completion. From the 1940's to the 1980's, the trend was to delegate the crystallographic
drudge work to the electronic computer, but the scientific thought and brainpower
generally remained with the individual crystallographer. From the 1980's to the present,
the trend has been to delegate not only the drudge work but also the scientific thought
to the computer from crystal screening through to structure validation. Delegation
of scientific thought to the computer is in practice the delegation of thought to
the crystallographers who wrote the analysis software and whose expertise is incorporated
within the running programs.
2. Escaping the Sisyphean prison: from the late 1930's to the personal computers of the 1990's
Crystal-structure solving and ), Ray Pepinsky (see Fig. 1
), stated that he was not in the mood for a lifetime of traditional crystallographic
prison cuisine; that after World War II: `There were enough fascinating structural problems, Siren-like, to lure one back to
a life-time of X-ray work; but the vision of life at a hand calculator was like the
wax Ullyses prescribed for the ears of his sailors.' (Pepinsky, 1952e
.) As elaborated below, Pepinsky was predated in these general sentiments by British
crystallographers of the late 1930's (Beevers, 1939
) and Linus Pauling at the California Institute of Technology (Caltech) in the USA
(Hughes, 1952a
). The crystallographers represented within the British paper entitled `A Machine
for the Rapid Summation of Fourier Series' (Beevers, 1939
) were quite articulate that they were not intending to escape the Sisyphean dungeon
only for themselves but were also aiming to spring everyone else out as well.
![]() |
Figure 1 Ray Pepinsky explaining the X-RAC analogue computer system for Fourier syntheses and display of contour maps. Left to right: Fankucken, Robertson, Low, Hughes, Friedman, Wrinch, Pepinsky. Inset left: assembly of S-FAC units at X-RAC oscilloscopes; inset right: X-RAC contour map of phthalocyanine [taken from Fig. 105, Fig. 116 and Fig. 72 of the Pepinsky (1952e ![]() |
2.1. Late 1930's: plans for design and use of custom analogue computers
The intended method by which computational crystallographers of the late 1930's were
planning to escape the drudgery of manual data-analysis methods was via building their own affordable custom crystallographic analogue computing apparatus.
Much effort was based around transferring the manual pencil-and-paper-based methodology
of Beevers–Lipson Strips (Lipson & Beevers, 1936) to analogue computing apparatus. By the technological and financial conditions of
the time, this was a progressive strategy to consider. Analogue computers have a long
history, where clever (and usually mechanical) designs allow tedious calculations
to be performed easily. There are many examples of recent and ancient analogue computers
(see Bromley, 1990
). One is the ingenious ancient Chinese `South-Seeking Chariot', reported as designed
and built in the third century AD by Ma Chun; it being a non-magnetic compass vehicle,
and the oldest known self-regulating mechanism (Santander, 1992
). Another is the shoebox-sized Antikythera mechanism of ancient Greece (Freeth et al., 2006
), ca second century BC, the world's oldest surviving astronomy computer. The designs of
effective analogue computers are generally associated with much elegance, ingenuity and economy on the part of the inventors.
Unlike computer software and algorithms, information for construction of analogue
computers can be more difficult to disseminate. There is much confusion on the history
of working versions of the South-Seeking Chariot and how many times it was reinvented
due to previous descriptions being too vague and subject to interpretation (Santander,
1992). The unique Antikythera mechanism was found in a shipwreck and it is postulated the effects of the Roman
conquest of ancient Greece extinguished this computing technology (Freeth et al., 2006
). The extremely powerful X-RAC analogue crystallographic computer of Ray Pepinsky,
built in the late 1940's, seems to have been similarly affected, `The plans were offered to European crystallographers as early as 1951, in case the
decision was reached to duplicate the machine in some center or centers; and funds
could have been made available from America to support the construction in Europe.
I have always felt that more wisdom should have been exerted, in selecting an experienced
electronics man with crystallographic interests, to advise British crystallographers
of the possibilities inherent in the basic X-RAC design. How many man-years of dull
computations and contour-map delineation would probably have been avoided, if bad
advice had been avoided!' (Pepinsky et al., 1961b
.)
2.2. The influence of Leslie John Comrie (1893–1950) and Wallace J. Eckert (1902–1971)
Although British and American crystallographers of the late 1930's were proposing
their intent for custom crystallographic analogue computing solutions, two of the
main pioneers of scientific computation using general-use electronic computers (Grosch,
2003) had an influential effect on the early direction of crystallographic computing.
These were the UK-based Leslie John Comrie (1893–1950) (da Cruz, 2006a
) and the American, Wallace J. Eckert (1902–1971) of Columbia University, New York
(da Cruz, 2006b
) (see Fig. 2
).
![]() |
Figure 2 The two main pioneers of scientific computation using general-use electronic computers: (a) Leslie John Comrie (1893–1950) (courtesy of The Royal Society and ©The Godfrey Argent Studio); (b) Wallace J. Eckert (courtesy of the Astronomical Applications Department of the United States Naval Observatory); and (c) a photograph containing Wallace J. Eckert (1902–1971) courtesy of Herbert R. J. Grosch: ``It's the dedication of the NORC [IBM Naval Ordnance Research Calculator] (1954, at 612 W. 115 Street [Columbia University, New York City]). Sent me because I was not able to attend. Characters are [left to right] Eckert, Fackenthal, Oppie [J. Robert Oppenheimer], [IBM's Thomas John] Watson, Pegram (signing guest book). Johnnie von [Neumann], [Isidor Isaac] Rabi. The event is the dedication ceremony on 115th, but the signing is somewhere in the Men's Faculty Club a few blocks away.'' |
As a consequence of being seriously wounded and losing his left leg in France during
WWI (Massey, 1953; McLintock, 1966
), the New Zealand born Leslie John Comrie changed his interest from chemistry to
the computational side of astronomy and in the process became a strong proponent for
the use of commercial calculation equipment for scientific computation (Massey, 1953
). He was employed as Deputy Director of the British Association for the Advancement
of Science's Nautical Almanac Office (NAO) in 1925; followed by appointment as its
Superintendent in 1931 (Massey, 1953
; Croarken, 1999
). Comrie was the first person to apply a Hollerith general-use computer for scientific
computation in 1928 (Comrie, 1932
). This was `the summation of harmonic terms, or, in other words, Fourier synthesis. In this way
the principal terms in the motion of the Moon from 1935 to 2000 were computed.' (Comrie, 1946
.) That `good enough' is often the natural enemy of `better' could perhaps describe
the style of resistance Comrie encountered to his introduction of new computing methods
within the NAO. These difficulties `were accentuated by the fact that the absence of rapid change in the work of the [Nautical
Almanac] Office had become almost traditional, the Nautical Almanac having largely
retained the general form introduced in 1834.' (Massey, 1953
.) Scientific Computing Services Ltd was formed by Comrie in 1936 after his dismissal
from the Nautical Almanac Office by the British Admiralty (Croarken, 1999
). The primary documentation of the civil service investigation leading to his dismissal,
`provide both fascinating and melancholy reading. Comrie's often-expressed complaints
that civil service regulations were petty and restrictive are given some justification
by these documents.' (Croarken, 1999
.) `For example, Comrie felt the embargo on the employment of married women was unnecessarily
wasteful in terms of invested training.' (Croarken, 1999
.) However, `it is clear that Comrie was inept at “playing the game”. Unfortunately, Comrie played
his own game, which was why he was sacked.' (Croarken, 1999
.) The commercial computing service that resulted as a consequence of Comrie's dismissal
had significant influence on the development of crystallographic computing.
Comrie's American equivalent, Wallace J. Eckert, was a Professor of Astronomy at New
York's Columbia University from 1926 to 1970 and was influenced by Comrie's successful
use of commercial tabulators for scientific computation (Comrie, 1946). Eckert was closely associated with, and supported by, the IBM Corporation and its
President, Thomas J. Watson (da Cruz, 2006a
). From 1945 to 1966, Eckert was also IBM Director of Pure Science, as well as being
Director of the Watson Scientific Computing Laboratory at Columbia University (da
Cruz, 2006a
). Eckert `was one of the first to apply punched-card machines to the solution of complex scientific
problems. Perhaps more significantly, he was the first to automate the process when,
in 1933–34, he interconnected various IBM calculators and tabulators with control
circuits and devices of his design to solve differential equations.' (da Cruz, 2006a
.) `Eckert – first, foremost, and always an astronomer – claimed little credit for his
innovations in computing which, to him, were only detours required to get his real
work done' (da Cruz, 2004
). `Eckert directed the construction of a number of innovative computers for performing
astronomical calculations, including the [IBM] Selective Sequence Electronic Calculator
[SSEC, 1949] and the [IBM] Naval Ordnance Research Calculator [NORC, 1954],' (see Fig. 2
c) “which for many years was the most powerful computer in the world. The accuracy of
Eckert's calculations of the Moon's orbit was so good that in 1965 he was able to
correctly show that there was a concentration of mass near the lunar surface.” (da Cruz, 2006a
). The influence of Comrie and Eckert was to guide crystallographers away from custom
analogue devices to that of general-use commercial computers in the form of Hollerith
tabulators.
2.2.1. 1939: Arnold Beevers and British crystallographers versus Leslie John Comrie
As stated by Cruickshank (1949), `it was not until about thirteen years after W. H. Bragg, in 1915, had shown that the
electron density in a crystal could be represented by a Fourier series of structure
factors that the experimental technique was sufficiently advanced to permit of the
application of the method, except in simple one-dimensional cases.' With leading crystallographers in the late 1930's eager to break away from human
computing methods, the application of general-use computers to crystallographic computing
could most likely be said to have been initiated in 1939 via the failed attempt of Leslie John Comrie to introduce the potential of Hollerith
tabulators to British crystallographers (Beevers, 1939
). The IBM Hollerith tabulator, originally invented in 1890 by the American born Herman
Hollerith for government census and business applications, had its first above-mentioned
scientific application on Fourier synthesis performed by Comrie in 1928 (Comrie, 1932
). Comrie stated that, due to economic, and other, reasons, there was more of a disposition
to use electronic computation machines in the US than Europe (Comrie, 1946
). Later, as the use of IBM-style Hollerith tabulators were becoming accepted into
mainstream crystallography (see Acta Cryst. Volume 2, Part 6, December 1949), Cox & Jeffrey (1949
) also allude to the requirement of commercial British tabulators to handle the non-metric
local currency of pounds, shillings and pence as affecting their applicability for
advanced scientific computation. Owing to the expense of owning or leasing the Hollerith,
use would require centralized or commercial computing centres of the time; such as
provided by Comrie's London-based Scientific Computing Services Ltd.
The initial response by the leading British crystallographers (see Fig. 3) was to continue advocating the development of affordable specialized home-made laboratory-based
analogue crystallographic computational apparatus (Beevers, 1939
). This is not to suggest the British crystallographers did not understand the computation
implications of the Hollerith. As articulated by Beevers (1939
), it was more their abhorrence of the financial cost and that the calculations would
be taken out of their hands: `Now the selection and addition of strips of numbers is precisely the process which
is accomplished in systems such as the Hollerith series of calculating machines …
The writer had an opportunity (provided by Dr L. J. Comrie, of Scientific Computing
Service Ltd.) of a thorough investigation of the application of the Hollerith system
to Fourier summations. Unfortunately the cost of the adding machine provides a serious
obstacle. A central bureau, to which the data would be sent for computation, would
be required …. The simplest synthesis would require several days for the results to
come to hand, and it is a great disadvantage for the computation to be outside the
direct control of the investigator.' The emphasis of the British crystallographers was to get the job done conveniently
and affordably within their own laboratories by whatever means current, or which they
thought could be developed in-house. This is not an isolated crystallographic attitude
of the time, or of other times. Of the ambitious American X-RAC crystallographic computing
machine of the late 1940's, Pepinsky states that it `was built entirely by students at Auburn [Alabama, USA]. Even the power and output
transformers were wound by these youngsters' (Pepinsky, 1952f
). Back to the 1939 British paper, Beevers states that `It is therefore of importance to develop the fastest possible method of making the
one-dimensional summation, and to render this method available to all crystal-structure
laboratories.' I. Fankuchen expressed a similar comment that it is `desirable that any devices used for the rapid summation of such series should be of
a nature which will make possible their use in individual laboratories.' For example, Cox included that `I have now under construction a machine designed primarily for the calculation of
structure factors.'
![]() |
Figure 3 Photograph from the 1950 conference on computing methods and the phase problem in X-ray analysis at Pennsylvania State College, which includes some of the crystallographers mentioned within the 1939 British paper of Beevers. Left to right: J. M. Bijvoet, J. F. Schouten, H. Lipson, E. G. Cox, C. H. MacGillavry, M. F. Perutz, C. W. Bunn, C. A. Beevers, R. Pepinsky, J. M. Robertson and E. Grison with `Tiddles'. (Plate 13 from the American Crystallographic Association monograph of McLachlan & Glusker, 1983 ![]() |
To this, Comrie replied, “I have always advocated, as a policy, that the capabilities of existing commercial
machines should be fully exploited before the laborious and costly task of designing
and making special apparatus is embarked upon. In this case the nature of the problem
points to the use of punch-card machines, which have been successfully applied to
Fourier synthesis in the summation of the harmonic terms in the moon's motion”. Comrie was “not convinced by the [crystallographers'] curt dismissal of these [Hollerith] machines. First, the cost of using them is not likely to exceed the cost of designing
and constructing the machine described [by Beevers], if due allowance be made for the time of the designer, and all overhead costs. Secondly,
the centralizing of the computations is not necessarily an ultimate disadvantage.
It means that one machine only is required, and that can be maintained and run with
a higher efficiency factor than could be secured with scattered installations working
part time only. The investigator's job is to plan and execute his observations, and
to interpret the results; he should not be called on to do an amount of arithmetic
comparable with his observations, because manipulative skill and numerical skill are
not necessarily associated.” and `In conclusion, I am surprised that crystallographers do not prefer an existing machine
now to waiting several years for a machine that is still in the early stages of design.' (Beevers, 1939.)
While there is a footnote from Beevers (1939) seeing the need for both styles of lab-based and centralized computing machinery,
the first home-built Beevers analogue machine for the `rapid summation of Fourier
series' was described in 1942 (Macewan & Beevers, 1942
), and could be wired up in a few weeks by a worker. Bunn (1946b
) describes that “Evans and Peiser (1942) [at the University of Cambridge, UK] have a machine (made
largely of 'Meccano' parts) which evaluates f cos (or sin) 2π(hx + ky)” for the computation of structure factors. The 1942 paper records time savings of
49 min using the analogue machine compared to 240 min using manual numerical methods.
The Meccano-based structure-factor computer is also described as being less fatiguing
and less error prone to use than manual methods (Evans & Peiser, 1942
). While restricted access to construction materials within wartime Britain was an
incentive to use Meccano, Evans & Peiser (1942
) noted the machine was `robustly constructed, and it has been found possible to realise a surprisingly high
degree of accuracy, adequate for the normal requirements of crystal-structure analysis.' The paper thankfully acknowledges Meccano Ltd, and especially `Mr. F. Riley BSc, who made available to us the parts used in the machine'.
2.2.2. 1941: under the influence of Columbia University's Wallace J. Eckert, the first published use of Hollerith tabulators by American crystallographers at Caltech
The experiences of Comrie are in contrast to that of his American equivalent, Wallace
J. Eckert. Eckert encouraged the use of IBM Hollerith computers for crystallographic
applications via the laboratory of Linus Pauling at the California Institute of Technology (Lu et al., 1941; Shaffer et al., 1946
; Eckert, 1947
; Donohue & Schomaker, 1949
; Hughes, 1952a
). This influence was via Eckert being a reviewer on a funding proposal to build a mechanical computer for
summing Fourier series as submitted by Linus Pauling to a Committee on Scientific
Aids to Learning (Hughes, 1952a
; Shaffer et al., 1946
). Eckert instead recommended that existing IBM Hollerith computers would provide
an effective computing solution (Hughes, 1952a
). The funding body stated they would provide money to use the IBM equipment if Pauling
agreed (Hughes, 1952a
). The acceptance by Pauling resulted in the first crystallographic paper to appear
in print using IBM Hollerith computers, on the structure of melamine as published
in 1941 by Edward W. Hughes (1941
). Where Beevers–Lipson strips required several days of calculation, the early 1940's
Hollerith took 5 to 7 h, and gave higher density of calculated points with assured
accuracy (Shaffer et al., 1946
). In a letter to Roy Stephens of IBM dated 23 January 1940, Linus Pauling thanked
IBM for providing the computers free of rental charge, and concluded that `I wish to extend my sincere thanks to you for assisting our researches in this way,
and to congratulate the International Business Machines Corporation on its interest
in the problems of pure science.' (Pauling, 1940
.)
The delay in detailed publication of the Caltech Hollerith method until the Shaffer
et al. paper of 1946, and presentations by Hughes, which occurred at the 1946 ASXRED X-ray and electron
diffraction conference (Hughes, 1952b
; Armstrong, 1946
), might have been due to wartime work requirements during World War II. Hughes (1952a
) mentions the Caltech-based Hollerith equipment was performing calculations to assist
the aircraft industries of Southern California during the war. A summary of an 8 November
1943 letter received by Pauling at Caltech from William Astbury (1898–1961), based
at the University of Leeds, UK, notes his request to know if the Hollerith method
has been published, and Astbury `states that he would like a copy, and if necessary he can put through an official
request through his government as they are also doing war-related work.' (Pauling, 1943
.) The entry in the Pauling Archive for 12 February 1945 notes: `Letter from William Astbury to LP [Linus Pauling] RE: Once again asks about the use
of Hollerith machines, requesting a sample pack of 11 cards from the Cal Tech machine
to see if they will be compatible with those at his university in England. Also asks
for information on how they deal with the method of least squares as used by Hughes.' (Pauling, 1945
.) After publication of the 1946 Shaffer et al.
paper, reprint request cards extant at Caltech include those from the USA, one from
Canada and one from The Netherlands (Henling, 2007
). A letter requesting updated information on the Hollerith method, written by Martin
Buerger of MIT to Verner Schomaker at Caltech and dated 27 November 1946, also states
`As one who is not familiar with the I B M machines, the complexity of the whole scheme
is appalling.' (Henling, 2007
.) (See Fig. 4
.)
![]() |
Figure 4 A 1947 or prior photograph (cropped) of IBM (Hollerith) operators at the Caltech Computing Center machine room performing crystallographic computation using the IBM card punch systems as described in Shaffer et al. (1946 ![]() ![]() |
The 1941 paper by Hughes had another first for its time: Hughes mentions that the
optimization of crystallographic parameters seemed `to call for the use of the method of least squares' and in consequence the paper included use of a `new method for refining [crystallographic] parameters, based upon least squares' (Hughes, 1941). Hughes (1952b
) states that it was actually a 1940 structure on dicyandiamide (Hughes, 1940
) which first used least squares, but that he was not confident enough in the method
to admit it, and stated in the 1940 paper that parameters were refined by systematized
trial and error. Hollerith-based least-squares calculations took a few hours where
manual methods required one to two days work with an adding machine (Shaffer et al., 1946
). It took time for least squares to become known and appreciated by the crystallographic
community. The 1946 edition of the Chemical Crystallography monograph of Bunn (1946a
) states only as a footnote that a “numerical `least squares' method of adjusting parameters is described by Hughes (1941
)”. Fig. 5
shows photographs of some of the scientists who were at Caltech in the 1940's, and
who either developed or used these Hollerith-based methods.
![]() |
Figure 5 Some of the scientists at Caltech in the early 1940's involved in the development and first applications of IBM Hollerith computers to crystallography: (a) Linus Pauling (1901–1994); (b) Edward Wesley Hughes (1904–1987); (c) Verner Schomaker (1914–1997); (d) Philip Anderson Shaffer Jr (1916–1974); (e) Paul-Antoine Giguère (1910–1987). (f) Henri A. Levy (1913–2003) [Figure (a) courtesy of the Archives, California Institute of Technology, (b) from the American Crystallographic Association monograph of McLachlan & Glusker, 1983 ![]() |
2.2.3. 1945: British use of Hollerith tabulator for the of penicillin
In mid 1940's wartime Britain, and `owing to the extreme importance of penicillin as a military weapon' (Clarke et al., 1949), Dorothy Crowfoot-Hodgkin's crystallographic study of penicillin made use of Hollerith-based
punch-card computing methods for Fourier synthesis (Crowfoot et al., 1949a
). While acknowledging the prior American work with Holleriths, the method is described
as being similar in principle but different in detail from the Caltech group in America.
With funding from the Medical Research Council, this method was developed by Comrie's
Scientific Computing Services Ltd in London and used a Pierce Alpha calculating machine
on loan from H. M. Treasury and Stationery Office (Crowfoot et al., 1949b
). A biography of Dorothy Hodgkin states the computer used was in Cirencester, being
``an American Hollerith machine used principally for tracking ship's cargoes'' (Ferry, 1998b
) and convoy planning (Dodson, 2002
). `The penicillin program was run at night, when the machine would otherwise have been
idle' (Ferry, 1998b
) (see Fig. 6
). Detailed public information on the penicillin results were delayed because `all of the information secured during the period of active collaboration bore a high
security classification. By January 1, 1946, all participants had been released from
their obligations to hold the information in secrecy, but they agreed to refrain from
any independent publication that might, in the opinion of the Editorial Board, interfere
with the plans for the monograph.' (Clarke et al., 1949
.)
![]() |
Figure 6 From the 1949 penicillin monograph: photograph of electron-density contours drawn on sheets of perspex showing the thiazolidine and β-lactam of potassium benzylpenicillin (Crowfoot et al., 1949a ![]() |
Within the Summarized Proceedings of Conference on X-ray Analysis – London, 1945 (Parker
et al., 1945), it states “Mr G. B. Hey presented a paper entitled `The Calculations Involved in the X-ray Analysis
of Crystals', by Dr L. J. Comrie and himself. He said that he approached the problem
as a mathematician, not as a crystallographer, and that he came from an organization
which could deal with calculations when crystallographers found them too tedious.
“ Dr Comrie and he hoped to publish in a few months' time a paper on the best methods
of performing Fourier summations.” `In the discussion Dr Dorothy Crowfoot (Mrs Hodgkin)
said that nowadays the X-ray analysis of a complex crystal structure fell into two
stages: the determination of its essential structure, and the refinement of parameters.
The first was the job of the crystallographer; the second could be left to professional
computers.” (Parker et al., 1945
.) The Summarized Proceedings of Conference on X-ray Analysis – London 1947 (Kellar & Douglas, 1948
) describes talks by Hodgkin and Bunn on their methods for determining the structure
of penicillin, but no mention is made of Hollerith computers or Comrie. Hodgson et al. (1949
) cite the Comrie crystallographic computing method as being unpublished, and Comrie,
impaired by a stroke after 1948, and with deteriorating health, died in 1950 (Massey,
1953
). Acta Cryst. describes further interaction of Comrie with crystallographers such as Abrahams et al. (1949
), and their work on naphthalene (see Fig. 7
).
![]() |
Figure 7 Electron-density contour map through the plane of the naphthalene molecule, as taken from Abrahams et al. (1949 ![]() |
2.3. Late 1940's to early 1960's
The lead developer of Fortran, IBM's John Backus, recollected that programming in
the early 1950's `was really fun. Much of its pleasure resulted from the absurd difficulties that “automatic
calculators” created for their would-be users and the challenge this presented. The
programmer had to be a resourceful inventor to adapt his program to the idiosyncrasies
of the computer.' (Backus, 1980a) and that programming was also `a black art, a private arcane matter involving only a programmer, a problem [and]
a computer.' (Backus, 1980b
). Early generations of general-use computers were also expensive and not readily
accessible, which helps explain why crystallographers were slow to the full use of
them. Rollett, in his article on the DEUCE computer mentions `it was not uncommon to hear of large three-dimensional calculations which had been
waiting for periods of up to two years for lack of suitable computing equipment', and, due to costs of computer usage at that time, only an economically justified
subset of crystallographic software programs was written (Rollett, 1961
). Obtaining access to computers could be a battle, though the following imagery of
the early 1960's is not of the metaphorical wielding of swords: `Crystallographers are not the elect among contemporary scientists. Unless they are
associated with large industrial or federally supported laboratories in America, they
must beg time on large-scale machines where they can find it' (Pepinsky et al., 1961a
). Stanley Nyburg describes the late 1940's where the Cox group in Leeds, UK, used
by night a Hollerith at the West Riding Electricity Board in Yorkshire (Nyburg, 2004
); made feasible by application of the more user friendly Hollerith-based methods
developed within the Leeds crystallography group (Cox et al., 1947a
,b
). Dick van der Helm describes using an IBM 604 computer at night in the mid 1950's,
the IBM was the main computer of an Amsterdam bank (van der Helm, 2004
); ZEBRA computers being installed at some Dutch universities in 1958 (Bijvoet, 1962
). In a 1953 Acta Cryst. paper on the crystallographic computing potential of Manchester University Electronic
Digital Computer (Mark II)/MUEC, Ahmed & Cruickshank (1953
) describe Hollerith punch-card crystallographic calculations taking 63 h, whereas
the equivalent calculations using this latest generation computer and programs of
1953 took 73 min, a 50:1 improvement.
Despite such advances, owing to accessibility and expense of general-use computers,
the period of the late 1940's to the 1960's still saw the side-by-side use of manual
methods (Beevers–Lipson Strips; Robertson strips; Patterson and Tunell strips and
stencils), specialized crystallographic analogue computers (X-RAC, RUFUS, ODFAC, Hagg
and Laurent, Hoppe and Pannke, UTAH), and all-purpose general-use digital computers
(MUEC, Bull Gamma, FERUT, ZEBRA, IBM-407, IBM-650, IBM-704, IBM-709, SEAC, SWAC, PEGASUS,
MUSE/ATLAS, DEUCE, MERCURY, Whirlwind, EDSAC II). The summary of the 1946 Conference
on X-ray Analysis in London (Institute of Physics, 1947) lists a variety of computational techniques, including ideas based on `physical
similitude', and where one described by Harker involved a plan to use a 3 cm radar
transmitter to simulate an X-ray beam. A detailed description of many manual and analogue
computing technologies of the time, with photographs and diagrams, is within chapter
8 of the crystallography monograph of McLachlan (1957
). At the digital computer end of the computing spectrum, a 1955 Acta Cryst. article by Friedlander et al. (1955
) details a least-squares program on an IBM 701 where each took just over 10 min, and quoted the corresponding hourly rental cost for using
this commercial facility as USD 300 per hour, and thus `inexpensive'. Hughes (1952c
) detailed methods at Caltech by which crystallographic computing costs could be kept
at a minimum, while the institute could still cover the rental cost of the IBM equipment;
as well as modifications such that `there would be no hand calculations at all'.
2.4. Early 1960's: smaller, `more affordable', general-use electronic computers
In the 1950 conference proceedings, Fred Ordway of the National Bureau of Standards
in Washington, DC (which at the time had the SEAC computer), stated in his talk on
high-speed digital computers, `Crystallographers are naturally interested in the possibility of delegating their
onerous computations to a Giant Brain' and that digital computers' `widespread use for crystallographic problems should come, therefore, with the passage
of time and the relaxation of military urgencies.' (Ordway, 1952a.) The developing history of smaller-computer hardware for accessible laboratory-based
crystallographic computing is one where `affordable' has been approaching asymptotically
as being a synonym for `cheap'. As of the early 1960's, these more-affordable computers
could be located conveniently near or in crystallography laboratories. Crystallographic
programs required writing in machine language or symbolic language due to small core
memory (Shiono, 1970
; van der Helm, 2004
). `More affordable' being in the eye of the beholder and should not be considered
a synonym of `cheap' at this point: a basic IBM 1620 computer of 1959 vintage would
be the modern equivalent of an over one million US dollar capital purchase – around
USD 1600 a month to rent or about USD 85000 to purchase outright (Spicer, 2005
). What could make do for a single American crystallography laboratory, such as in
A. Lindo Patterson's laboratory (van der Helm, 2004
), might have to make do for an entire country elsewhere. In 1964, an IBM 1620 computer
was the first general-purpose computer for scientific and engineering use in Iceland;
and was only purchased courtesy of a surprise donation from the Icelandic Development
Bank in celebration of the bank's 10th anniversary (Magnússon, 2003
). Of United Kingdom based university and research council scientific computing resources,
the 1965 `Flowers Report' records its concerns about the lack of parity (normalized
to GDP) in computing power compared to the USA (Flowers et al., 1966
).
Much of the state of crystallographic computing history can be gleaned from back issues
of Acta Cryst., and from the monographs produced from the crystallographic computing schools of
the 1950's to 1990's. A short overview of the IUCr computing schools from 1969 to
1996 is provided by Stewart & Bourne (1996). Fig. 8
shows photographs of a very small subset of computational crystallographers. However,
much crystallographic computing information is also in the form of `myth' (personal
experiences; unpublished information; distilled wisdom within the brains of life-long
crystallographers but not in print!). Such information would benefit from being published
via appropriate forums such as the IUCr journals, the IUCr Commission on Crystallographic
Computing Newsletter or other publications. `Records of what has been considered and what has been accomplished are essential to
the proper development of this or any other field.' (Pepinsky, 1952b
.)
![]() |
Figure 8 A small subset of computational crystallographers: (a) John S. Rollett; (b) Farid Ramadan Ahmed; (c) Durward William John Cruickshank; (d) Vladimir Vand; (e) Ryonosuke Shiono; (f) William R. Busing; (g) Howard Flack; (h) Sidney Cyril Abrahams and (i) Walter Clark Hamilton. [(a) courtesy of Michael J. Field, Oxford University Computing Laboratory, UK; (b) Photo Credit: Tom Devecseri, NRC Institute for Biological Sciences; (c) courtesy of the Cruickshank family; (d) courtesy of the Czech Astronomical Society (CAS); (e) courtesy of R. Shiono; (f) courtesy of Oak Ridge National Laboratory; (g) courtesy of H. Flack, (h), (i) courtesy of S. C. Abrahams.] |
2.5. Late 1980's to mid 1990's: small-molecule and powder crystallography using personal computers
At a time where Apple IIe personal computers had 64 kB of memory, and with the 640 kB
conventional memory limit of the Intel 8088 CPU and early Microsoft DOS operating
system, it is unlikely that anyone in the early 1980's would have anticipated just
how powerful single-user personal computers would become. Or that mainstream world-wide
computer use would be driven not by requirements of high-end number crunching, true
multitasking/multi-user capabilities, but by: (i) desires for WYSIWYG (what you see
is what you get) menu-based word-processing packages, spreadsheets programs and drawing
programs, and (ii) the want for the young (and young at heart) to play computer video
games of ever increasing graphical and interactive complexity. While Jones (1977) provided an overview of micro, mini, midi and maxi computers in Acta Cryst., and Stewart & Bourne (1996
) described the first reference to `micro-processors' during a 1978 crystallographic
computing conference in The Netherlands, the routes by which various crystallography
laboratories would proceed to use personal computers for computation could be many
and various. The following is but one.
The history of digital computers is generally that of more power, faster speed, larger
memory and more storage capacity. However, personal convenience can create a strong
incentive to tolerate lesser computing power, where `a small computer in a crystallographic laboratory is a very useful tool and it provides
better over-all efficiency in many calculations, than a big computer elsewhere.' (Shiono, 1970.) Comrie in 1939 articulated the benefits of central computing facilities (Beevers,
1939
), but the theoretical benefits could be in conflict with the reality. Computer centres
could be quirky, with restrictive and varying rules on disk quotas, compute job queuing
and compute job priority. There is generally much love declared by 1970's and 1980's
era crystallographers for the VAX VMS computer systems of the Digital Equipment Corporation
(DEC). Though unfortunately in the late 1980's the yearly service contract of an old
VMS system could be more expensive than the hardware cost for a brand new and more
computationally powerful UNIX-based server. To crystallographers enamoured by VMS,
switching to a UNIX server could in hindsight be found a retrograde step. Compared
to the features of VMS, this was often due to the cryptic and unforgiving UNIX command-line
user interface, lack of a versioning file system, and the disliked `vi' text editor.
With maintenance costs, the UNIX servers might only have a 30 to 90 day equipment
warranty; after which a standard, and often expensive, service contract would then
apply. In contrast, PCs, at the fraction of the cost of a UNIX server, would routinely
have a minimum one year equipment warranty going up to three years; and be upgradeable
by owners using the equivalent of commonly available generic `no-name' parts. This,
on top of usual central computer facility irritations, could create a reservoir of
sentiment receptive to personal computers, even if the PCs had significant limitations.
In practice, crystallographic programs could run faster on a single-user PC than when
run on a popular multi-user server. The common PC operating system, Microsoft DOS,
was simple and did not require systems management training or experience to install
or maintain.
The increasing use of minicomputers and personal computers would have initial consequences
for crystallographic software. Of the programming systems of the early 1950's, Backus
(1980c) alludes to their success (or lack of) which could `depend on the number of machines they would run on'. Huml (1985b
) noted that the popularity of high-efficiency user-oriented minipackages, like SHELX, were `growing with increasing quality of low cost minicomputers' but that other crystallographic systems were restricted to working on mainframe
style systems. As stated from the 1987 crystallographic computing meeting, `since good optimizing FORTRAN-77 compilers are now available for MS-DOS/PCDOS based
personal computers, SHELX can be readily adapted to micro-computers' and also notes that pre-compiled PC versions of SHELX had already been distributed (Robinson & Sheldrick, 1988
). Facility computer servers may still have been required until a suite of either
suitable PC binaries of crystallographic programs could be obtained, or a PC Fortran
compiler matched to the requirements of the crystallographic source code. On average,
and depending on laboratory requirements, by the late 1980's to mid 1990's, it became
possible to acquire enough of a toolkit of freeware and commercial crystallographic
programs for PCs to be a going concern for small-molecule single-crystal or powder
With respect to the strong desires of crystallographers declared in the Beevers paper
of 1939; with personal computers, crystallographers and users of crystallography could
now obtain an affordable, effective, in-lab (and at-home) crystallographic computing
apparatus under their full control.
3. Crystallographic software development
3.1. Crystallography's software gene pool
Crystallography's historical gene pool of software and methods is extremely large,
so attempting a linear world-wide factual history could be tedious, long and potentially
unenlightening. Even by the early 1960's, the number of available crystallographic
software packages numbered in at least the hundreds. Shoemaker mentions a list being
developed by the American Crystallographic Association of software programs, which
already had over 200 programs (Shoemaker, 1961). This developed into the IUCr World List of Crystallographic Computer Programs: the first edition listed 577 programs (described in International Union of Crystallography,
1962b
), the second edition listed 533 programs (described in International Union of Crystallography,
1965
), and the third edition in 1973 (International Union of Crystallography, 1973
). An overview from Huml (1985a
) describes the state of crystallographic software in the mid 1980's.
The following attempts to average a mass of material to some summary observations and history. While the following interpretations could be highly simplified and flawed in various ways (the author was not yet born when many of these events occurred), it can be worthwhile for crystallographers to look into the past for analogous situations, even if the details were different. Similar to examining the
databases, many current and future computing situations may have had similarities to past occurrences. Operating systems, programming languages, programming paradigms have come, gone and evolved. A plethora of crystallographic software has come, gone and evolved. Issues can be very situational: a strategy that was successful for one might have failed for another. Thus generalizations should be viewed with caution.3.2. Recurring themes in crystallographic software development and usage
Irrespective of the era in which crystallographic software was developed and its level of automation, there seem to be recurring themes at the user end of crystallographic computing methods and software. Using the Beevers paper of 1939 as a window into the aims of practising crystallographers, these include: development time for algorithms; implementation in software; its acceptance by other crystallographers; cost; convenience and availability. Seeking a balance of expense, expertise, time and results with respect to established versus new crystallographic computing methods might not be clear-cut, except in hindsight. Much of the development or acceptance of computing methods and software have related to the desire of crystallographers (i) to have control over their analysis and (ii) to have affordable hardware and software tools considered most effective for the desired analysis. Prior to personal computers, both these desires have often been in conflict with the ability and cost of the computing technology to achieve this.
3.3. The crystallographic computing community, the sharing of ideas and development of direct methods
The international spirit of the early crystallographic computing community can be
seen via the conference proceedings of the first conference on crystallographic computing
held at The Pennsylvania State College, USA, in April 1950 (Pepinsky, 1952a); mainly based around Ray Pepinsky's X-RAC analogue crystallographic computing apparatus.
With current and future crystallographic luminaries in attendance, Pepinsky described
that solving the major computing problems would `require many minds. Our aim here is to share what we know – to cross-pollinate our
minds.' (Pepinsky, 1952c
.) The international travel for attending this first conference was apparently: `not easy. I draw to your attention the report, incredible as it may seem as we view
him now, that in braving the rigors of the Atlantic, Henry Lipson lost seven pounds,
hard-won from the Austerity program. Among other matters, we must strive to return
these to him.' Pepinsky (1952c
.) IUCr journals and the crystallographic computing conferences were important in
sharing and discussing crystallographic computing developments, many of which are
still in use today.
If there is a crystallographic problem that most readily reflects a requirement for
many minds, it is the development of direct methods and related algorithms for the
solving of crystal structures. The computing school monographs and IUCr journals display
a massive breadth and depth of participation. The impact of this research was demonstrated
by a 1985 Nobel Prize in Chemistry for Herbert Hauptman and Jerome Karle, due to automated
MULTAN (Main et al., 1980), SIMPEL (Schenk, 1988
), SHELX-76 (Sheldrick, 1976
) and SIR (Cascarano et al., 1982
) (see Fig. 9
). In his Nobel Prize speech, Jerome Karle (1985
) noted that some `names that have been associated with the preparation and dissemination of computer
programs for various aspects of automated, direct structure determination are Ahmed,
Andrianov, Beurskens, Germain, Gilmore, Hall, Main, Schenk, Sheldrick, Stewart, Viterbo
and Woolfson.' Woolfson (1987
) describes the history of up to the late 1980's, and research in is still active, as evidenced by releases of powerful new and updated programs, ShelXD (Schneider & Sheldrick, 2002
), SnB (Rappleye et al., 2002
), SIR/IL MILIONE (Burla et al., 2007
).
![]() |
Figure 9 A small subset of automated direct-methods software developers: (a) Peter Main; (b) Henk Schenk; (c) George Sheldrick and (d) Carmelo Giacovazzo. [Photographs courtesy of the crystallographers in this figure and (b) ©Ronald Sweering, Amsterdam.] |
3.4. Creating software for a tangible scientific purpose
Being on the cutting edge of computing technology as an end in itself can be a highly
expensive, all consuming and a potentially fruitless or underachieving process. In
the late 1940's, this was on the mind of the US Office of Naval Research (ONR). Despite
the ONR believing it obvious that digital computers were the future, this concern
ended up benefiting the funding of Ray Pepinsky's X-RAC analogue crystallographic
computer: `We were particularly interested in the fact that he [Pepinsky] was a man with a problem.
I should interpolate remarks to the effect that the exciting new developments in digital
computing have seized the imagination of a lot of engineers, and we fear that some
development is going off into the direction of gadgeteering, that people are losing
sight of the problems for which the machines are being built and concentrating on
making bigger and better machines.' (Rees, 1952.)
Large and small crystallographic software projects should be careful of not falling
into the type of zero-output trap described by historian Alfred Cobban: `The weakness of much social thought, it seems to me, is that it is so largely concerned
with packing its bag (or even with working out a general theory about the way in which
a bag should be packed) for a journey which is never taken.' (Cobban, 1964.) A crystallographic software project or algorithmic idea, to be scientifically useful,
should have the aim of it being applied to at least one new scientific journey. Where
its intended journey to act upon a current scientific problem is of secondary consideration,
it can potentially become a fruitless development. The history of successful crystallographic
computing has been where the ends (e.g. successfully solving a crystal structure) justified the means.
3.5. Programming languages and crystallographic software
If the aim is to create a software program for the exclusive use of its author, with
modern computing, it is near irrelevant as to what programming language the crystallographer
uses, as long as it can express the underlying science in the way the author wishes
it to be done. With distribution of program binaries, programming language or coding
style is irrelevant to users of most crystallographic software. For many styles of
crystallographic problem, even a slow language written with slow code can still perform
the desired function for the program author. A caveat on this is that program developers
may have to consider, whether desired or not, that their initial versions may end
up being expendable as more experience is gained. A first version of an idea might
be written in a language like Basic to prove the concept, then perhaps a sequel version
written in a faster programming language. Tricks and methods for writing computationally
efficient crystallographic code are still relevant where runtime speed is important.
The crystallographic computing monographs of the 1960's to 1980's elaborate on some
principles found effective in optimal crystallographic coding (e.g. Sheldrick, 1985), including the manual optimization of the assembler within important inner loops
of compiled programs (see Rollett, 1970a
and Shiono, 1970
).
3.5.1. Fortran
The Fortran programming language was developed by IBM in the mid 1950's to support
numerical and scientific computing (Backus et al., 1956, 1957
). A crystallographer on the development team was David Sayre, of fame (Sayre, 1952
) (see Fig. 10
). With machine language of the time, `programming and debugging accounted for as much as three-quarters of the cost of operating
a computer; and obviously as computers got cheaper, this situation would get worse.' (Backus, 1981a
.) Thus the need to create an `automatic programming' system. As also stated by the
main originator of Fortran, John Backus, there was an emphasis on program efficiency:
`To this day I believe that our emphasis on object program efficiency rather than on
language design was basically correct. I believe that had we failed to produce efficient
programs, the widespread use of languages like FORTRAN would have been seriously delayed.' (Backus, 1981b
.) This necessity for compiled program efficiency was also indicated by programmer
attitudes of the 1950's: `just as freewheeling westerners developed a chauvinistic pride in their frontiership
and a corresponding conservatism, so many programmers of the freewheeling 1950's began
to regard themselves as members of a priesthood guarding skills and mysteries far
too complex for ordinary mortals. … The priesthood wanted and got simple mechanical
aids for the clerical drudgery which burdened them, but they regarded with hostility
and derision more ambitious plans to make programming accessible to a larger population.
To them, it was obviously a foolish and arrogant dream to imagine that any mechanical
process could possibly perform the mysterious feats of invention required to write
an efficient program.' (Backus, 1980d
.) The indifference and disdain for the development of automatic programming as implemented
in Fortran only relented after it was shown to work: `with a few other exceptions, our plans and efforts were regarded with a mixture of
indifference and scorn until the final checking out of the compiler, at which time
some other groups became more interested.' (Backus, 1980e
.)
![]() |
Figure 10 David Sayre testing the first X-RAC power regulators in Auburn, Alabama. [Cropped photo taken from Fig. 109 of the 1952 computing monograph. Courtesy of Penn State University.] |
The first reference to Fortran in Acta Cryst. is a 1957 report on a Conference on the Use of the IBM 704 Computer for Crystal-Structure
Analysis. Besides descriptions of several crystallographic programs written in Fortran,
a Fortran seminar was presented by one of the members of the Fortran development team,
David Sayre: `The fourth session was opened with a FORTRAN seminar. D. Sayre (IBM) explained the
principle of FORTRAN (formula translation). It is an artificial language which closely
resembles the mathematician's language, but which can be read by the IBM 704 and translated
first into a symbolic assembly program (SAP) language and then into the binary machine
language. It can be learned in about one or two days, whereas the SAP language requires
several weeks of training. The programming effort is a fraction of that spent in ordinary
programming and the resultant machine operation is about 90% as efficient. In the
discussion novices were sternly warned that the FORTRAN Programmer's Reference Manual
must be read with extreme care.' (Vand, 1958.) Backus (1980f
) notes that, due to the work by the Fortran development team on optimization techniques,
Fortran coded programs could `compete with and often exceed the efficiency of hand-coded ones'.
As stated by Robinson & Sheldrick (1988) of SHELX using Fortran, `good cases could be made for writing in for example C or PASCAL. FORTRAN is didactically
and aesthetically so abysmal that it was by no means an automatic choice', however, `the overriding argument for FORTRAN is that the “FORTRAN-77” standard has now been
very widely implemented, and is the only de facto machine independent language.' Some Fortran programs have had a long productive lifetime. An example still in use
is Allan Zalkin's FORDAP Fourier synthesis program (Zalkin, 1962
). SHELX-76 is over 30 years old [refer to a copy within Armel Le Bail's Crystallography Source
Code Museum (Le Bail, 2002
)], but it compiles seamlessly using a freeware GNU G77 Fortran compiler and happily
runs on the same Windows-XP based laptop used to write this article. Though replaced
by newer SHELX releases, SHELX76 can still be found performing useful crystallographic service in recent literature.
The idea of crystallographic Fortran being a paradise of easily compliable machine-independent
programs should be regarded with caution. Ryonosuke Shiono (1970) mentioned `contrary to popular misconception that a program written in FORTRAN can be universally
used in different installations, more often than not it is compiler-dependent and
considerable effort has to be made before it can be compiled for another computer
of the same type.' Such concerns were an impetus for two very different approaches. The first was where
the XTAL suite moved to the RATMAC pre-processor language. `The importance and the inadequacy of Fortran has given birth to a new breed of languages,
the Fortran preprocessors. Preprocessor languages have structured features similar
to languages such as Pascal, but differ from these in that they are not translated
(i.e. compiled) directly into machine code. Rather, the preprocessor language is “preprocessed”
into another language, such as Fortran, and this in turn is compiled in the normal
way.' (Hall et al., 1980
.) The other is stated by Robinson & Sheldrick (1988
) that `programs which adhere strictly to the FORTRAN-77 standard are so transportable that
there is little advantage in distributing them in preprocessor code such as RATMAC.' For a crystallographically oriented overview of modern (as opposed to archaic) Fortran,
readers are referred to Juan Rodríguez-Carvajal's article, The Once and Everliving FORTRAN: Why Fortran still goes onward and upward while many
of its `replacement' languages have already died (Rodríguez-Carvajal, 2004
).
3.5.2. Longevity and usefulness of programming languages: Fortran versus ALGOL
As a consequence of an international meeting on automatic computing held in Germany
in 1955, ALGOL, the `international algorithmic language', was designed by a committee
of European and American computer scientists in the late 1950's, with an aim of creating
a universal programming language (de Beer, 2006a). Fortran of the time was not well regarded as suitable for building upon. `Looking at the situation today [1981], one may ask why FORTRAN was not chosen since
it has now become more widely accepted than any other language. Today FORTRAN is the
property of the computing world, but in 1957 it was an IBM creation and closely tied
to use of IBM hardware. For these reasons, FORTRAN was unacceptable as a universal
language.' (Perlis, 1981
.) The 1960 release of the ALGOL 60 standard (see Naur et al., 1963
) attracted, then and after, much admiration amongst computer scientists: `The more I ponder the principles of language design, and the techniques which put
them into practice, the more is my amazement and admiration of ALGOL 60. Here is a
language so far ahead of its time, that it was not only an improvement on its predecessors,
but also on nearly all its successors.' (Hoare, 1973
.) ALGOL is first mentioned in Acta Cryst. in 1962, within a Commission on Crystallographic Computing section subtitled Recommendations on the Publication of Computing Methods and Programs in Crystallographic
Journals (International Union of Crystallography, 1962a
). `The use of general reference languages such as ALGOL gives promise of relieving crystallographers
of the recurring need to reprogram computations for new machines. Programmers should,
therefore, be encouraged to make available algorithms of their computing procedures
so that experience can be gained of the effectiveness with which they can be converted
into machine language. In the absence of this experience, no general recommendations
could be made in regard to the publication of such algorithms in crystallographic
journals.'
In contrast with Fortran having defined input–output (I/O), one of the problems of
the ALGOL 60 standard was a `lack of input–output procedures, which were needed in practical situations' and `enforced implementers to add extensions to the language' (de Beer, 2006b). Rollett (1970a
), while lauding ALGOL's design as a programming language, describes practical experiences
of using ALGOL for crystallography. Compiled ALGOL code was slow compared to machine-coded
programs; required inner-loops to be coded in machine language to obtain acceptable
speed; and the `Algol system has rather slow input and output, so that it takes more central processor
time (not elapsed time) to output a Fourier map than it does to compute and machine
scan it for peaks, which is absurd.' Continuing with de Beer's history of ALGOL, `In America, however, the market demanded a working implementation of a good language,
not an academic promise for a better language. During the development of ALGOL 60
IBM became the dominant player in the computer industry. FORTRAN matured into a usable
and efficient language and was ported to many machines. As a result, FORTRAN became
the de facto standard programming language for scientific computing.' (de Beer, 2006a
.) The discussion appended to the Rollett paper (Rollett, 1970b
) indicates that the theory of ALGOL being a universal machine-independent programming
language did not seem to work in practice for the crystallographers who tried it.
Ahmed: One of the ideas for standardizing the data files was to be able to exchange programs among the different centres. How effective has this been?
Rollett: Not very, mainly because the operating systems were different, and this prevented us from using the KDF9 programs that were available in Glasgow when we got our computer.
Bassi: I tried to do the same thing in France 4 or 5 years ago but it did not work either.
In the mid to late 1960's, all was not going well with further development of the
ALGOL language (Hoare, 1981): `At last, in December 1968, in a mood of black depression, I attended the meeting in
Munich at which our long-gestated monster was to come to birth and receive the name
ALGOL 68.' While Stewart (1970
) states that `FORTRAN and ALGOL are the languages most used at this time' in crystallography, the statistics of Tables 1
, 2
and 3
indicate ALGOL's falling out of use in crystallography compared to Fortran. The last
edition of the Association for Computing Machinery's ALGOL Bulletin is listed as being Issue 52, August 1988.
|
|
|
3.6. Open source software
Much early crystallographic software was effectively open source, including a custom
and practice for local modification and redistribution. Indication of the informal
methods of early software distribution and comparison can be gleaned from Acta Cryst. (e.g. Jeffrey & Shiono, 1959). Crystallographic software for early IBMs, such as Busing and Levy's least-squares
program for the IBM 704, could be distributed via SHARE (Boyko et al., 1959
). Formed in 1955, SHARE was, and still is, a volunteer association run by IBM customers
(SHARE, 2007
). Backus (1980c
) describes the general programming ethos of the `freewheeling Fifties': `Ideas flowed freely along with the liquor at innumerable meetings, as well as in sober
private discussions and informally distributed papers. An idea was the property of
anyone who could use it.' As an indication of the custom and practice of building upon other people's coding,
in the Conference on the Use of the IBM 704 Computer for Crystal-Structure Analysis,
“the second session was opened by an introductory paper `The least-squares program
NY XRI', presented by D. Sayre (IBM). This program was one of the first ever written
for the IBM 704.” In the next presentation, “Modifications of Sayre's IBM 704 machine least-squares program NY XR1 for refinement
of crystal structures, V. Vand & R. Pepinsky (Penn State) described modifications
and extensions to D. Sayre's program.” (Vand, 1958
.) Busing & Levy (1961
) clarify that Sayre's NY XR1 was “superseded by Hatch's NY XR2 and by Vand and Pepinsky's extensively modified version,
PS XR3.” In Acta Cryst. articles of the 1960's, it is not uncommon to find text of the ilk: `least-squares refinement using program of crystallographer(s)-X, as modified by crystallographer(s)-Y' (e.g. Johnson et al., 1968
) or of `local variations' (Ibers & Smith, 1964
). Standardization in computers, operating systems and use of Internet for fast download
of updated software reduces much of the practical incentive for creating local modifications.
The immediate advantage of software authorship is the ability to tackle difficult crystallographic problems outside the default range of other software. Details on software should be published in a peer-reviewed journal such as the IUCr's Journal of Applied Crystallography. This is so that key points and ideas implemented in the software are not lost from view over time. Literature citations for software are considered highly valuable in many circumstances and, where software is distributed, publication also allows the software to be cited easily and consistently. Another advantage of software distribution is that the author can by default become the centre of a web of ideas being passed back by users. This can provide a faster mechanism for the author to create extremely robust software, which can then be applied to the author's advanced research.
The modern advantage of open-source software for academics, using a GNU GPL or related
license, is to ensure authors the freedom to continue working on their software, irrespective
of changes in employment. As per the report of Ledford (2007) in the journal Nature, it is currently considered a “buyers' market for academic labour”, spawning a new generation of gypsy scientists leading a peripatetic lifestyle on
temporary contracts. Therefore, computational crystallographers may need a method
to ensure they can build on their software, and not have it orphaned from them if
they move jobs. The most common open-source licence is the GNU GPL (General Public
License). If the software author wishes more flexibility with respect to possible
commercialization or linking with other code, a BSD-style licence or one of a variety
of permissive free software licences can be considered. Building upon existing open-source
software is a method to ensure any consequent work is also open source.
3.6.1. Community-based development and maintenance of software using Internet-based Concurrent Versions System (CVS)
“MY NAME IS OZYMANDIAS, KING OF KINGS:
LOOK ON MY WORKS, YE MIGHTY, AND DESPAIR!”
Nothing beside remains: round the decay
Of that colossal wreck, boundless and bare,
The lone and level sands stretch far away.
So ends Shelley's poem, Ozymandias. The OZY header was added to the Xtal suite by “founding father Jim Stewart. Jim had a realistic view of the longevity of computers
and software, and he thought that Shelley's poem `Ozymandias' reflected the fragility
of massive programming efforts, especially in the 60's and 70's.” (Hall et al., 2000.) However, with Internet-based source-code development methods, the problems associated
with the pre-Internet 60's, 70's and 80's may no longer be relevant in making collaborative
programming efforts so fragile.
The use of an Internet-based Concurrent Versions System (CVS) provides an effective mechanism for collaborative software projects with world-wide participation. The most important requirement of a successful CVS-based project is a maintainer to oversee the system. This role can be distributed or reassigned as required. Decisions on features or changes can be discussed on a restricted or public mailing list. Patches to the code base found to be unsuitable can be backed out of the system. Via an Internet-based CVS system, programs can develop with participation by interested people as interest takes them. Websites like http://www.SourceForge.net offer collaborative web-based facilities including bug tracking, support requests, patches, feature requests, download of binaries, source code and the CVS-based download of the source code. For a modern open software project to have any hope for a continuing non-local developer community, something like a network-accessible CVS system is required. An initial challenge can be to introduce code writers to a CVS type of development system, and encourage participation. Where active development of a CVS-based project is lacking, its presence (such as on http://www.SourceForge.net) keeps it accessible and visible: a project cannot regain the interest of the community if it is hidden from view.
3.7. Invention, rediscovery, repackaging or reinvention of algorithms and methods
`We are like dwarfs on the shoulders of giants, so that we can see more than they, and things at a greater distance, not by virtue of any sharpness of sight on our part, or any physical distinction, but because we are carried high and raised up by their giant size.' (Bernard of Chartres, in John of Salisbury's Metalogicon [1159].)
`A dwarf standing on the shoulders of a giant may see farther than a giant himself.' (Didacus Stella, in Robert Burton's The Anatomy of Melancholy [1621].)
`A dwarf on a giant's shoulders sees farther of the two.' (George Herbert, Jacula Prudentum [1651].)
`If I have seen a little further it is by standing on the shoulders of Giants.' (Sir Isaac Newton, letter to Robert Hooke [5 February 1676].)
A method or algorithm can be invented but once, or rediscovered or reinvented multiple
times before it catches on within the community. Of early crystallography, Pepinsky
(1952d) noted that: `The X-ray analytical methods have not been in the forefront of scientific attention.
For this reason, and perhaps more for the reason that we have not sought assistance
from other sciences as energetically as we might have, we have found ourselves stumbling
upon analytical methods which were well known in other disciplines.' For convenient manual Fourier summation, A. Lindo Patterson & George Tunell (1942
) describe that, in hindsight, they found their strips and stencils method was `essentially due to L. Hermann (1890
) who made use of it in the analysis of voice records.' Of analogue computers for Fourier analysis, Miller (1916
) describes a 32-element harmonic synthesizer (an analogue computer for mechanically
deriving or projecting the Fourier equation of a curve) applicable to a variety of
analyses including acoustics. Miller also includes a historical background (as of
1916) back to the first harmonic synthesizer of Lord Kelvin (Thomson, 1878
), which was used for tide prediction. As previously mentioned, the first application
of general-use computers for Fourier summation was by Comrie in 1928; but it was over
a decade until crystallographers started to make use of this.
There is significant interest in the new structure-solving , 2005
). Palatinus describes the use of for solving incommensurately modulated structures (Palatinus, 2004
) as incorporated in the SuperFlip software (Palatinus & Chapuis, 2007
). Coelho (2007a
) describes the benefits of combining the algorithm with the tangent formula of Karle & Hauptman (1956
) for solving difficult commensurate structures as implemented in the TOPAS software (Coelho, 2007b
). Baerlocher et al. (2007
) describe use of the algorithm, as enhanced for application to powder diffraction data, for solving difficult
zeolite structures. The 1952 computing monograph includes a comment by Fred Ordway
of the US Government's National Bureau of Standards (NBS) that `a procedure involving successive Fourier inversions, with elimination of negative
excursions of the electron density function at each step, has been coded but not yet tried' (Ordway, 1952b
). Limited access to scarce computing resources and the financial computing cost of
trying such an algorithm in the early 1950's could have been a significant disincentive.
Though as commented by David Watkin, `he [Ordway] almost discovered charge flipping!!' (Watkin, 2007
.)
A potentially useful method or algorithm may fail to catch on in crystallography for one or more of the following reasons:
3.8. Crystallographic source code libraries
For accelerated building of new and modified programs, a number of crystallographic
source code libraries are current or in development. The progenitor of these styles
of software library initiatives is the Fortran 77 based Cambridge Crystallography
Subroutine Library (CCSL) of Matthewman et al. (1982). The http://www.SourceForge.net-based Computational Crystallography Toolbox (cctbx) of Grosse-Kunstleve et al. (2002
) is a C++/Python based open-source project aimed at high-throughput macromolecular
The Fortran 95 equivalent to cctbx is the general crystallography, powder diffraction and neutron scattering focused
Crystallographic Fortran Modules Library (CrysFML) of Rodriguez-Carvajal & Gonzalez-Platas
(2005
). DANSE (Distributed Data Analysis for Neutron Scattering Experiments) is a project
aimed at providing a comprehensive range of interlinked neutron scattering analysis
tools via a standard framework. The Crystallography Source Code Museum of Armel Le Bail (2002
) has been found useful by software authors for browsing through old programs and
seeing past implementations. Where software is no longer being maintained, authors
should feel encouraged to deposit their code so that new generations of programmers
can benefit from their ideas. The algorithms, ideas and science within the code are
normally far more important that the style of coding, spaghetti or otherwise, or the
programming language.
3.8.1. Age concern
Much small-molecule crystallographic software is of ageing design where program authors
are either retired or close to retirement. There are concerns within the small-molecule
community of a loss of much expert crystallographic software knowledge when these
codes are no longer maintained. The UK EPSRC funded `Age Concern' project (Howard,
2005; Watkin, 2006
) is aimed at preventing loss of small-molecule single-crystal-based knowledge. An
intent of Age Concern is to develop a knowledge base to rewrite useful ideas within
existing software into a source-code library that is compatible with the cctbx source-code project. Crystallographers at or near retirement should also consider
publishing their distilled wisdom, which is normally of the type that can only be
obtained from a full lifetime of scientific and crystallographic experience.
3.9. Crystallographic software
3.9.1. Features of successful crystallographic software
When creating crystallographic software, it is worth considering what made for prior successful crystallographic software. The following list of features and principles are suggested:
3.9.2. User interfaces for crystallographic software
As stated by Robinson & Sheldrick (1988), `from the crystallographer's point of view, the ease of communicating with a program
is probably the most important factor in determining whether he will use it.' If a program is without rival and has functionality important to its potential user
base, then the program authors are pretty much free to create any style of interface
they believe appropriate. A program can reach a critical mass of users whereby the
interface can become a standard within the field of interest, such as Ton Spek's PLATON with its range of structure validation and analysis features (Spek, 2003
). However, program design running contrary to norms in common computer interface
and operation can have consequences for ease of user acceptance. Traditionally in
crystallography, batch (file-in, file-out) mode programs were custom and practice
for most crystallographic computation. An exemplar example of file-in, file-out operation
is the philosophy behind SHELX: `When SHELX was first written, communication with FORTRAN programs usually took the
form of fixed format input on punched cards, and the idea of free format input with
extensive use of “default values” (for parameters not specified by the user) was fairly
novel' and `A simple criterion is that an experienced user should not normally need to look at
the manual. … It is essential to keep the input SIMPLE, and to reduce the number of
files required or generated by the program to an ABSOLUTE MINIMUM.' (Robinson & Sheldrick, 1988
.) Another style of program control for single-crystal software was based on interactive
interface designs, such as within NRC-VAX (Gabe et al., 1985
), CAOS (Cerrini & Spagna, 1977
; Camalli & Spagna, 1994
) and Crystals (Betteridge et al., 2003
) (see Fig. 11
). Gabe (1988
) noted that batch systems were developed more for the convenience of the machines
than the human operators; and also describes the abilities of interactive software
for crystallographic analysis on complex structures and complex crystallographic problems.
![]() |
Figure 11 A small subset of single-crystal suite developers: (a) Jim Stewart; (b) Eric Gabe; (c) David Watkin; (d) Louis Farrugia; (e) Anthony Spek; (f) Riccardo Spagna; (g) Kenji Okada, (h) Gianluca Cascarano and (i) Kenneth Muir. [Photographs courtesy of the crystallographers in this figure, except (a) courtesy of Marcia Colquhoun, American Crystallographic Association; and (b) courtesy of National Research Council of Canada.] |
For a new generation of computer users raised on Windows-style operating systems (OS),
the expectation is that of exploratory interactive interfaces providing instant graphical
feedback in the form of Graphical User Interfaces (GUI). Until the mid to late 1990's,
it was difficult to near impossible to write a reliable operating-system-independent
graphical program system and such programs tended to only run on a single type of
operating system. Currently, a variety of toolkits exists in a variety of programming
and scripting languages that make practical the writing of OS-independent graphical
programs. Implementing GUIs over established software still allows the design option
of maintaining back-up access to the traditional modes of program operation, thus
not alienating a long-standing user base. User-effective examples of programs that
have done this include Rietica Rietveld software (Hunter & Howard, 2000); EXPGUI (Toby, 2001
) for the GSAS Rietveld suite (Larson & Von Dreele, 2004
) and the exceptional Windows interface of the Crystals software optimized for single-crystal analysis (Betteridge et al., 2003
) (see Fig. 12
).
![]() |
Figure 12 A screen image of Crystals for Windows showing part of its exploratory interactive interface with `organometallic and organic chemist-friendly' real-time graphical feedback of the structure refinement. |
Crystallography suites allow users to avoid the continuous tedium and drudgery of
interconverting data and results in the formats of various individual programs under
use. Comprehensive crystallographic suites of various shapes and sizes have a history
dating back to the early 1960's, where two suites mentioned in the 1965 IUCr World List of Computer Programs are the Atlas–Imperial College Crystallographic System (UK) developed mainly by M.
G. B. Drew and the X-RAY63 system (USA) of J. M. Stewart (Stewart, 1963; NASA, 1964
). The early NRC software of Ahmed et al. (1966
) was also based on the benefits of suite-based crystallographic development. The
WinGX for MS-Windows single-crystal suite by Louis Farrugia (1999
) started as a Windows version of the GX suite of Mallinson & Muir (1985
), which itself was influenced by the Xtal suite paper of Hall et al. (1980
). To the GX authors, the Xtal suite paper provided `an excellent account of the possible strategies for crystallographic program systems.' (Mallinson & Muir, 1985
.) WinGX links to a wide variety of crystallographic programs ranging from absorption correction,
structure solution, structure through to structure validation, thus allowing a wide range of routine and non-routine
exploratory single-crystal analyses via a standard operating system GUI interface.
3.9.3. Marketing and promotion of software
Freeware crystallographic software programs, and the methods within, do not distribute
or market themselves. Why a software program or method catches on relatively slowly
or quickly in the community may involve more than published literature, but also a
number of informal interactions pushing the software into view. Carroll Johnson's
ORTEP structure plotting software, with Mike Burnett now being its developer (Johnson,
1965, 1976
; Burnett & Johnson, 1996
), had such high impact in the crystallographic community that ORTEP became a common synonym for thermal parameters. Carroll Johnson mentions that there
was much interest generated in the software `with ORTEP drawings for the stereo slides I made for papers at the 1965 ACA meeting in Gatlinburg TN. We had stereo projectors and Polaroid
viewing glasses there and with ORNL the host lab for the meeting, I offered to make
one free stereo slide for any participant who would send me coordinate data at least
a month before the meeting and almost everyone there took me up on the offer. That
was a quite successful debugging (and to my surprise also marketing) exercise for
ORTEP.' (Johnson, 2007
.) The same was done for an international biophysics conference held in Vienna in
1966, which included the structures of myoglobin, vitamin B12 coenzyme and poly-L-alanine.
The effective marketing of a new method may end up being done by someone other than
its inventor. In the case of the via Alan Hewat, then at Harwell, UK. The Rietveld `method was first reported at the seventh Congress of the IUCr in Moscow in 1966. The
response was slight, or, rather, non-existent, and it was not until the full implementation
of the method was published (Rietveld, 1969a), that reactions came.' (Rietveld, 1993
.) It was first implemented in 1969 in ALGOL by Hugo Rietveld at the Pettin reactor
in The Netherlands (Rietveld, 1969b
); but the ALGOL implementation had low interest in the crystallographic community.
The method was rewritten in Fortran by Rietveld in 1970. Alan Hewat, visiting Pettin
in 1971, obtained a copy of the Fortran code and modified it when back at his workplace
of the Harwell reactor, including addition of anisotropic temperature factors (Hewat, 1973
). This code was made highly visible via the Harwell neutron facility having a wide neutron user base, and resulted in all
Rietveld code in common use until at least the 1980's being derived from this Rietveld–Hewat
code. The only known exception is a Rietveld program written by John Taylor and G.
W. Cox of the Australian Atomic Energy Commission at Lucas Heights (Taylor & Wilson,
1973
), an adaptation of the ORFLS single-crystal code of Busing et al. (1962
). Some of the Rietveld programs originally derived from the Harwell code are still
in use and under active development.
3.10. Distribution of freeware crystallography software
3.10.1. Pre-Internet software distribution
Pre-Internet software distribution via formal methods could be expensive and time-consuming due to effort in duplication,
media costs and postage. As a possible formal solution to these difficulties, the
SHELX distribution policy strikes what looks a particularly effective balance, based around
a request for a voluntary payment from academics who are in a position to contribute
to support overall distribution costs (Robinson & Sheldrick, 1988).
The benefits of informal user redistribution of freeware crystallographic software,
if program authors wanted it or not, was that users of software did the work in publicizing,
marketing, training and distributing the software. This could be particularly effective
when scientific usage of single-user personal computers was expanding, and crystallographic
software could be easily copied onto floppy disk with little effort. This would not
only save the software author on expensive distribution costs and time, but provide
increasing cascades of new users, with (for academic software) all the practical benefit
still going to the author in the form of resulting literature citations. An example
ranging from the 1960's to the present is that of the FORDAP Fourier synthesis software of Zalkin (1962). As FORDAP is still being used and archived, and with modification summaries often visible in
the Fortran source code header, it is possible to trace some of FORDAP's distribution routes. Of the citation classic ORFLS software of Busing et al. (1962
), which had been cited 3035 times from 1962 to 1982 (Busing, 1982
), Busing noted that while they had distributed 395 copies of the program on request,
`there has been much indirect propagation' (Busing, 1982
). Where software authors did not wish to see local modifications of their programs,
the software could either be distributed as binaries or written in a way that made
local source-code modification unnecessary or difficult.
3.10.2. Internet-based distribution of software
At the 1987 crystallographic computing conference, Philip Bourne described the then
current state of international computer networks for crystallographers (Bourne, 1988). Software distribution via these networks could be problematic due to slow data transfer rates and transfer
time outs. Some academics or researchers might only find out their institute use was
chargeable at high rates after being presented with the bill. The Mosaic web browser
was released in 1993, which popularized the World Wide Web, and the Netscape Navigator
web browser was released in 1994. Unix-based computers were favoured initially for
Internet use, as it took time for usable TCP–IP network drivers to be released for
commercial operating systems running on personal computers. The report of the 7th
IUCr Congress and General Assembly, Seattle, 8–17 August 1996, contains a summary
of the Internet workshop organized by Howard Flack and included the observation that
the Web/W3/Information Superhighway was being increasingly used for crystallographic
software distribution. A resulting Crystallographer's Guide to Internet Tools and Resources was released as a print and web-accessible resource (Flack, 1996
).
When using the modern Internet for software distribution, the level of cost and time associated with pre-Internet manual distribution almost disappears. Announcements to a mailing list or newsgroup can alert users to obtain newer versions; as can update checks written into the software. The time the author saves using Internet distribution compared with manual distribution can be more than given back via e-mail user support. An effective method of handling user queries can be to direct users to an e-mail discussion list, where users can help each other, and any directions the software authors provide are visible to all and archived for future referral. Laboratory-based researchers or home-hobbyists alike can, with similar ease, create and make available their ideas as implemented in software to the world. Freeware or commercial software, as binaries or source code, can be easily downloaded with various levels of control for the software author, either completely open, download via ftp or website password, or methods to ensure the software is registered before it can be run. If desiring maximum levels of program uptake, it is important that ease of download, installation, starting functionality and core functionality are as streamlined as possible.
4. Crystallographic teaching
`On two occasions I have been asked, –“Pray, Mr. Babbage, if you put into the machine
wrong figures, will the right answers come out?” … I am not able rightly to apprehend
the kind of confusion of ideas that could provoke such a question.' (Charles Babbage, 1864.)
Crystallographic algorithms and software development requires an understanding of
the fundamental mathematics and physics of crystallography at a level commensurate
with the difficulty of the problems being studied. Since before Acta Cryst. was published, there is evidence that experienced crystallographers have been concerned
by the effects of lack of available crystallographic teaching. In response to Harry
Carlisle's January 1943 Cambridge presentation on the structure of cholesterol iodide,
W. L. Bragg allegedly reported that he had ``written in a recent review … that the younger generation of crystallographers hadn't
the initiative to tackle really difficult problems and now he would have to write
and withdraw it all.'' (Ferry, 1998a.) The Summarized Proceedings of the Conference on X-ray Analysis – London 1947 (Kellar
& Douglas, 1948
) describes a variety of requirements, methods, ideas and conclusions within a series
of presentations relating to `What Industry requires of its X-ray crystallographers, and some methods adopted for
training them' and `training of X-ray Crystallographers in Polytechnics and Universities'. As to the teaching methods of e.g. Cox at the University of Leeds, UK, the summary describes that `to avoid the danger of narrowmindedness, colloquia, visits to other workers, etc.,
were considered essential, but most important of all was the maintenance of the proper
atmosphere in the laboratory.' Although, in the forward to the 1952 translation of Guinier's book X-ray Crystallographic Technology, Kathleen Lonsdale stated `it is still difficult for a thorough training in the subject to be obtained except
in a few places, either in Great Britain or the U.S.A.' (Guinier, 1952
). In response to a book review comment by Ray Pepinsky (1953
), Lonsdale (1953
) clarified that, without quality professional crystallographic education, `I believe that our work will be pedestrian and our subject regarded simply as a highly
specialized form of technology instead of as an important science with many technological
applications.' Pepinsky's reply (1954
) stated that students should be instilled with the skills for the `development of competence to learn for themselves'. Glusker (1998
) provides a historical overview and advice on the matter of crystallographic teaching
with respect to broad brush versus pinpoint detail technique, and the importance of mentors. Turowska-Tyrk (2004
) describes a Polish crystallographic course lasting the academic year while Blake
et al. (2002
) describe the history of a British biennial intensive course for teaching crystallography.
Using Internet-based technologies, Chapuis & Schoeni (2005
) introduce the development of a web-based interactive environment for crystallographic
teaching and Orlov et al. (2006
) show examples of educational possibilities offered by mobile phones. However, Schenk
(2004
) describes issues that are becoming more common by the downsizing of crystallographic
teaching in universities.
In future, the only practical and effective process of crystallographic self-teaching might be via modifying or writing crystallographic software. Where teaching is lacking, users of crystallographic tools can be limited to performing only routine analysis as defined within existing crystallographic software. But by developing their own programs, software and algorithm developers are under no such limitation.
5. The future
`From a glance at developments since 1955, no one should be eager to predict what a
third Conference on computing methods in crystallography in 1970, will involve – other
than to say that what we report now will in 1970 appear as ancient as Egypt.' (Pepinsky et al., 1961a.)
The primary requirement for the future of crystallographic software development seems clear cut: it will need human crystallographic expertise. The wide applicability of crystallographic methods involves many who would not regard themselves as crystallographers but as users of crystallographic techniques. Most of these researchers are reliant on crystallographic software tools written by people with expert crystallographic knowledge. A healthy future for the users of crystallography is a wide genetic diversity of algorithms and software enabling varieties of methods for tackling current and future problems. For discovering and implementing this computational science, the challenge is to ensure a critical mass of expertise into the future, and ensure it is not drowned out by the routine pressing of buttons.
6. Conclusions
The history of crystallographic computing and software development is that of continual escape from the Sisyphean dungeon: taking the non-routine and making it as routine as possible, which then reveals new scientific challenges and hurdles. The desires of the original computational crystallographers are expected to remain similar for the present and future; that of overcoming crystallographic computational bottlenecks by any method found practical. The act of operating much modern crystallographic software is one where the user has delegated much of the crystallographic scientific thought to the program authors. But the hardware, software and algorithms do not make themselves. Resolution of non-routine and difficult crystallographic problems requires the input of crystallographic expertise commensurate to the problem at hand. The experience gained in solving complex crystallographic problems can then be made more routine by inserting acquired knowledge into software. It is crystallographic software that constitutes one of the main expert knowledge bases within the field of crystallography. The wider and deeper the knowledge base of algorithms and software, the healthier it is for the field of crystallography. The difficult challenge of current and future crystallographic computing is not that of the specific scientific challenges, but maintaining a continuing critical mass of human expertise with which these computational challenges can be tackled.
Acknowledgements
The author thanks the referees of the Nexus article (published within this issue of Acta Cryst.) and editor Henk Schenk for recommending that the topic of this paper should be undertaken, David Watkin for his encouragement to closely examine the early Computing School monographs, Michael Dacombe and Brian McMahon at the IUCr in Chester for supplying the 1962 first and 1965 second editions of the IUCr World List of Crystallographic Computer Programs, and Michael Dacombe for identifying the crystallographers in Fig. 3. The work of the NRC CISTI library service for their ability to obtain articles and books that were way outside the range of standard library and electronic journal download. Alistair McIvor of the NRC at Chalk River for providing a tutorial on the use of oversampling and `Gaussian blurring' for removing Moiré effects in the scanned images from the penicillin and 1952 computing monographs. The people who implemented the digitization of all the IUCr journals back to 1948; it is a wonderful resource. Larry Henling at Caltech for his scanning of some photos, and high-level detective skills and ability to track down and provide leads for the photographs for use in Figs. 3, 4, 5 and 7. Larry Henling again for searching and providing archival information of Caltech and Linus Pauling of the 1940's. Philip Skroska of the Washington University School of Medicine for photographs and biographical information on P. A. Shaffer Jr. Frank da Cruz of Columbia University and computer pioneer Herbert R. J. Grosch for clarifications on the biographies of Comrie and Eckert. Larry McEwan, machinist at NRC, Chalk River, for discussions on the capabilities of using Meccano for scientific instrumentation. The comments and guidance of the three anonymous reviewers were appreciated; including one who stated the original draft synopsis and abstract did not do justice to the full scope of the paper, and so took the liberty of slightly recasting them. This updated synopsis and abstract were used without further modification. Thanks also go to IUCr Senior Technical Editor Sue Barnes, as recommended by two of the referees, for remedial action on some `unusual grammatical constructions' and other miscellaneous improvements.
References
Abrahams, S. C., Robertson, J. M. & White, J. G. (1949). Acta Cryst. 2, 238–244. CrossRef CAS IUCr Journals Web of Science Google Scholar
Ahmed, F. R. & Cruickshank, D. W. J. (1953). Acta Cryst. 6, 765–769. CrossRef CAS IUCr Journals Web of Science Google Scholar
Ahmed, F. R., Hall, S. R., Pippy, M. E. & Huber, C. P. (1966). NRC Crystallographic Programs for the IBM 360 System, World List of Crystallographic
Computer Programs, 2nd ed., Appendix, p. 52. Google Scholar
Armstrong, E. J. (1946). Phys. Rev. 70, 575. Google Scholar
Babbage, C. (1864). Passages from the Life of a Philosopher, p. 67. London: Longman, Green, Longman, Roberts and Green. Google Scholar
Backus, J. (1980a). A History of Computing in the Twentieth Century, edited by N. Metropolis, J. Howlett & G.-C. Rota, p. 125. New York: Academic Press.
Google Scholar
Backus, J. (1980b). A History of Computing in the Twentieth Century, edited by N. Metropolis, J. Howlett & G.-C. Rota, p. 126. New York: Academic Press.
Google Scholar
Backus, J. (1980c). A History of Computing in the Twentieth Century, edited by N. Metropolis, J. Howlett & G.-C. Rota, p. 127. New York: Academic Press.
Google Scholar
Backus, J. (1980d). A History of Computing in the Twentieth Century, edited by N. Metropolis, J. Howlett & G.-C. Rota, pp. 127–128. New York: Academic
Press. Google Scholar
Backus, J. (1980e). A History of Computing in the Twentieth Century, edited by N. Metropolis, J. Howlett & G.-C. Rota, p. 131. New York: Academic Press.
Google Scholar
Backus, J. (1980f). A History of Computing in the Twentieth Century, edited by N. Metropolis, J. Howlett & G.-C. Rota, p. 132. New York: Academic Press.
Google Scholar
Backus, J. (1981a). History of Programming Languages, edited by R. L. Wexelblat, p. 27. New York: Academic Press. Google Scholar
Backus, J. (1981b). History of Programming Languages, edited by R. L. Wexelblat, p. 29. New York: Academic Press. Google Scholar
Backus, J. W., Beeber, R. J., Best, S., Goldberg, R., Haibt, L. M., Herrick, H. L.,
Nelson, R. A., Sayre, D., Sheridan, P. B., Stern, H. J., Ziller, I., Hughes, R. A.
& Nutt, R. (1957). The FORTRAN Automatic Coding System, pp. 187–198. Proceedings Western Joint Computer Conference, Los Angeles, CA, USA.
Google Scholar
Backus, J. W., Beeber, R. J., Best, S., Goldberg, R., Herrick, H. L., Hughes, R. A.,
Mitchell, L. B., Nelson, R. A., Nutt, R., Sayre, D., Sheridan, P. B., Stern, H. &
Ziller, I. (1956). The FORTRAN Automatic Coding System for the IBM 704 EDPM: Programmer's Reference Manual. New York: International Business Machines Corporation. Google Scholar
Baerlocher, Ch., Gramm, F., Massüger, L., McCusker, L. B., He, Z., Hovmöller, S. &
Zou, X. (2007). Science, 315, 1113–1116. Web of Science CrossRef PubMed CAS Google Scholar
Beer, H. T. de (2006a). The History of the ALGOL Effort, p. 11. Masters thesis, Eindhoven University of Technology, The Netherlands. Google Scholar
Beer, H. T. de (2006b). The History of the ALGOL Effort, p. 67. Masters thesis, Eindhoven University of Technology, The Netherlands. Google Scholar
Beevers, C. A. (1939). Proc. Phys. Soc. 51, 660–667. CrossRef Google Scholar
Betteridge, P. W., Carruthers, J. R., Cooper, R. I., Prout, K. & Watkin, D. J. (2003).
J. Appl. Cryst. 36, 1487. Web of Science CrossRef IUCr Journals Google Scholar
Bijvoet, J. M. (1962). Fifty Years of X-ray Diffraction, edited by P. P. Ewald, ch. 21, p. 476. Reprinted in pdf format for the IUCr XVIII
Congress, Glasgow, Scotland, http://www.iucr.org/iucr-top/publ/50YearsOfXrayDiffraction/. Google Scholar
Blake, A. J., Clegg, W., Howard, J. A. K., Main, P., Parsons, S., Watkin, D. J. &
Wilson C. (2002). Z. Kristallogr. 217, 427–428. Web of Science CrossRef CAS Google Scholar
Bourne, P. E. (1988). Crystallographic Computing 4: Techniques and New Technologies, edited by N. W. Isaacs & M. R. Taylor, pp. 426–439. Oxford University Press. Google Scholar
Boyko, E. R., Busing, W. R., Fitzwater, D. R., Van der Helm, D., Jeffrey, G. A., Jensen,
L. H., Merritt, L. L., Shiono, R. & Williams, D. E. (1959). Acta Cryst. 12, 350–351. CrossRef IUCr Journals Google Scholar
Bromley, A. G. (1990). Computing Before Computers, edited by W. Aspray, pp. 156–159. Ames: Iowa State University Press. Google Scholar
Bunn, C. W. (1946a). Chemical Crystallography, p. 268. Oxford University Press. Google Scholar
Bunn, C. W. (1946b). Chemical Crystallographic, p. 270. Oxford University Press. Google Scholar
Burla, M. C., Caliandro, R., Camalli, M., Carrozzini, B., Cascarano, G. L., De Caro,
L., Giacovazzo, C., Polidori, G., Siliqi, D. & Spagna, R. (2007). J. Appl. Cryst. 40, 609–613. Web of Science CrossRef CAS IUCr Journals Google Scholar
Burnett, M. N. & Johnson, C. K. (1996). ORTEP-III: Oak Ridge Thermal Ellipsoid Plot Program for Crystal Structure Illustrations, Oak Ridge National Laboratory Report ORNL-6895. Oak Ridge National Laboratory, Oak
Ridge, TN, USA. Google Scholar
Busing, W. R. (1982). Curr. Contents, 13, 20. Google Scholar
Busing, W. R. & Levy, H. A. (1961). Computer Methods and the Phase Problem in X-ray Crystal Analysis, edited by R. Pepinsky, J. M. Robertson & J. C. Speakman, p. 146. New York: Pergamon
Press. Google Scholar
Busing, W. R., Martin, K. O. & Levy, H. A. (1962). ORFLS, a Fortran Crystallographic Least-Squares Program, Report ORNL-TM-305. Oak Ridge National Laboratory, Oak Ridge, TN, USA. Google Scholar
Camalli, M. & Spagna, R. (1994). J. Appl. Cryst. 27, 861–862. CrossRef CAS IUCr Journals Google Scholar
Cascarano, G., Giacovazzo, C., Polidori, G., Spagna, R. & Viterbo, D. (1982). Acta Cryst. A38, 663–670. CrossRef CAS Web of Science IUCr Journals Google Scholar
Cerrini, S. & Spagna, R. (1977). Crystallographic Software for a Mincomputer, IV, European Crystallography Meeting, Oxford, UK, Abstract A-212. Google Scholar
Chapuis, G. & Schoeni, N. (2005). Acta Cryst. A61, C121–C122. Web of Science CrossRef IUCr Journals Google Scholar
Clarke, H. T., Johnson, J. R. & Robinson, R. (1949). The Chemistry of Penicillin, edited by H. T. Clarke, J. R. Johnson & R. Robinson, p. vii. Princeton University
Press. Google Scholar
Cobban, A. (1964). The Social Interpretation of the French Revolution, p. 23. Cambridge University Press. Google Scholar
Coelho, A. A. (2007a). Acta Cryst. A63, 400–406. Web of Science CrossRef CAS IUCr Journals Google Scholar
Coelho, A. A. (2007b). TOPAS-Academic V4.1-beta, http://members.optusnet.com.au/alancoelho/. Google Scholar
Comrie, L. J. (1932). Mon. Not. R. Astron. Soc. 92, 694–707. CrossRef Google Scholar
Comrie, L. J. (1946). Math. Tables Other Aids Comput. (MTAC), 2, 149–159. Google Scholar
Cox, E. G., Gross, L. & Jeffrey, G. A. (1947a). Nature (London), 156, 433–434. CrossRef Web of Science Google Scholar
Cox, E. G., Gross, L. & Jeffrey, G. A. (1947b). Proc. Leeds Philos. Soc. 5, 1–13. CAS Google Scholar
Cox, E. G. & Jeffrey, G. A. (1949). Acta Cryst. 2, 341–343. CrossRef CAS IUCr Journals Web of Science Google Scholar
Croarken, M. (1999). IEEE Ann. Hist. Comput. 21, 70–71. Web of Science CrossRef Google Scholar
Crowfoot, D., Bunn, C. W., Rogers-Low, B. W. & Turner-Jones, A. (1949a). The Chemistry of Penicillin, edited by H. T. Clarke, J. R. Johnson & R. Robinson, pp. 310–367. Princeton University
Press. Google Scholar
Crowfoot, D., Bunn, C. W., Rogers-Low, B. W. & Turner-Jones, A. (1949b). The Chemistry of Penicillin, edited by H. T. Clarke, J. R. Johnson & R. Robinson, p. 355. Princeton University
Press. Google Scholar
Cruickshank, D. W. J. (1949). Acta Cryst. 2, 65–82. CSD CrossRef CAS IUCr Journals Web of Science Google Scholar
Cruz, F. da (2004). Wallace Eckert, Columbia 250th Anniversary Profile. New York: Columbia University, http://www.columbia.edu/acis/history/eckert.html. Google Scholar
Cruz, F. da (2006a). L. J. Comrie, Columbia University Computing History. New York: Watson Laboratory, Columbia University,
http://www.columbia.edu/acis/history/comrie.html. Google Scholar
Cruz, F. da (2006b). Professor Wallace J. Eckert, Columbia University Computing History. New York: Watson Laboratory, Columbia University,
http://www.columbia.edu/acis/history/comrie.html. Google Scholar
Dodson, G. (2002). Biogr. Mem. Fellows R. Soc. London, 48, 179–219. CrossRef Google Scholar
Donohue, J. & Schomaker, V. (1949). Acta Cryst. 2, 344–347. CrossRef CAS IUCr Journals Web of Science Google Scholar
Eckert, W. J. (1947). J. Chem. Educ. 24, 54–57. CrossRef CAS Google Scholar
Evans, R. C. & Peiser, H. S. (1942). Proc. Phys. Soc. 54, 457–462. CrossRef CAS Google Scholar
Farrugia, L. J. (1999). J. Appl. Cryst. 32, 837–838. CrossRef CAS IUCr Journals Google Scholar
Ferry, G. (1998a). Dorothy Hodgkin: a Life, p. 189. London: Granta Books. Google Scholar
Ferry, G. (1998b). Dorothy Hodgkin: A Life, p. 212. London: Granta Books. Google Scholar
Flack, H. (1996). Editor (IUCr) Crystallographer's Guide to Internet Tools and Resources, http://www.iucr.org/cww-top/int.index.html. Google Scholar
Flowers, B. H., Black, G., Churchouse, R. F., Collinge, B., Roberts, K. V., Seaton,
M. J., Laver, F. J. M., Cohen, A. V. & Tanner, D. W. (1966). A Report of a Joint Working Group on Computers for Research, Council for Scientific Policy and the University Grants Committee, Cmnd 2883. London:
Her Majesty's Stationery Office. Google Scholar
Freeth, T., Bitsakis, Y., Moussas, X., Seiradakis, J. H., Tselikas, A., Mangou, H.,
Zafeiropoulou, M., Hadland, R., Bate, D., Ramsey, A., Allen, M., Crawley, A., Hockley,
P., Malzbender, T., Gelb, D. et al. (2006). Nature (London), 444, 587–591. Web of Science CrossRef PubMed CAS Google Scholar
Friedlander, P. H., Love, W. & Sayre, D. (1955). Acta Cryst. 8, 732. CrossRef IUCr Journals Web of Science Google Scholar
Gabe, E. (1988). Crystallographic Computing 4: Techniques and New Technologies, edited by N. W. Isaacs & M. R. Taylor, pp. 381–392. Oxford University Press. Google Scholar
Gabe, E., Lee, F. L. & Le Page, Y. (1985). Crystallographic Computing 3: Data Collection, Structure Determination, Proteins,
and Databases, edited by G. M. Sheldrick, C. Kruger & R. Goddard, pp. 167–174. Oxford University
Press. Google Scholar
Glusker, J. P. (1998). Acta Cryst. A54, 707–715. Web of Science CrossRef CAS IUCr Journals Google Scholar
Grosch, H. R. J. (2003). COMPUTER: Bit Slices From a Life, ch. 7, Web edition, http://www.columbia.edu/acis/history/computer.html. Google Scholar
Grosse-Kunstleve, R. W., Sauter, N. K., Moriarty, N. W. & Adams, P. D. (2002). J. Appl. Cryst. 35, 126–136. Web of Science CrossRef CAS IUCr Journals Google Scholar
Guinier, A. (1952). X-ray Crystallographic Technology, translated by T. L. Tippell and edited by K. Lonsdale, p. xiii. London: Hilger and
Watts. Google Scholar
Hall, S. R., du Boulay, D. J. & Olthof-Hazekamp, R. (2000). Editors. Xtal3.7 System. University of Western Australia, http://Xtal.SourceForge.net/. Google Scholar
Hall, S. R., Stewart, J. M. & Munn, R. J. (1980). Acta Cryst. A36, 979–989. CrossRef CAS IUCr Journals Web of Science Google Scholar
Helm, D. van der (2004). IUCr Commission on Crystallographic Computing Newsletter, No. 4, pp. 92–99, http://www.iucr.org/iucr-top/comm/ccom/newsletters/. Google Scholar
Henling, L. (2007). Personal communication. Google Scholar
Hermann, L. (1890). Archiv gesammte Physiol. 47, 44–53. CrossRef Google Scholar
Hewat, A. W. (1973). The Rietveld Computer Program for the Profile Analysis of Neutron Diffraction Powder
Patterns, Modified for Anisotropic Thermal Vibration, Atomic Energy Research Establishment, Report No. R7350, Harwell, UK. Google Scholar
Hoare, C. A. R. (1973). Hints of Programming Language Design, Computer Science Department Report No. CS-403, STAN-CS-73-403, p. 27, Stanford University,
CA, USA. Google Scholar
Hoare, C. A. R. (1981). Commun. ACM, 24, 75–83. CrossRef Web of Science Google Scholar
Hodgson, M. L., Clews, C. J. B. & Cochran, W. (1949). Acta Cryst. 2, 113–116. CrossRef CAS IUCr Journals Web of Science Google Scholar
Howard, J. A. K. (2005). Age Concern: Crystallographic Software for the Future, EP/C536274/1, Engineering and Physical Sciences Research Council, UK. Google Scholar
Hughes, E. W. (1940). J. Am. Chem. Soc. 62, 1258–1267. CSD CrossRef CAS Google Scholar
Hughes, E. W. (1941). J. Am. Chem. Soc. 63, 1737–1752. CSD CrossRef CAS Google Scholar
Hughes, E. W. (1952a). Computing Methods and the Phase Problem in X-ray Crystal Analysis, edited by R. Pepinsky, p. 141. Department of Physics, The Pennsylvania State College,
USA. Google Scholar
Hughes, E. W. (1952b). Computing Methods and the Phase Problem in X-ray Crystal Analysis, edited by R. Pepinsky, p. 145. Department of Physics, The Pennsylvania State College,
USA. Google Scholar
Hughes, E. W. (1952c). Computing Methods and the Phase Problem in X-ray Crystal Analysis, edited by R. Pepinsky, pp. 141–147. Department of Physics, The Pennsylvania State
College. Google Scholar
Huml, K. (1985a). Crystallographic Computing 3: Data Collection, Structure Determination, Proteins,
and Databases, edited by G. M. Sheldrick, C. Kruger & R. Goddard, pp. 131–145. Oxford University
Press. Google Scholar
Huml, K. (1985b). Crystallographic Computing 3: Data Collection, Structure Determination, Proteins,
and Databases, edited by G. M. Sheldrick, C. Kruger & R. Goddard, p. 140. Oxford University Press.
Google Scholar
Hunter, B. A. & Howard, C. J. (2000). LHPM: a Computer Program for Rietveld Analysis of X-ray and Neutron Powder Diffraction
Patterns, Australian Nuclear Science and Technology Organization, Lucas Heights, Sydney, Australia.
Google Scholar
Ibers, J. A. & Smith, G. W. (1964). Acta Cryst. 17, 190–197. CrossRef ICSD CAS IUCr Journals Web of Science Google Scholar
Institute of Physics (1947). J. Sci. Instrum. 24, 20. Google Scholar
International Union of Crystallography (1962a). Acta Cryst. 15, 515–516. CrossRef IUCr Journals Google Scholar
International Union of Crystallography (1962b). Acta Cryst. 15, 1190. CrossRef IUCr Journals Google Scholar
International Union of Crystallography (1965). Acta Cryst. 18, 981–982. CrossRef IUCr Journals Google Scholar
International Union of Crystallography (1973). J. Appl. Cryst. 6, 309–346. CrossRef IUCr Journals Google Scholar
Jeffrey, G. A. & Shiono, R. (1959). Acta Cryst. 12, 819. CrossRef IUCr Journals Web of Science Google Scholar
Johnson, C. K. (1965). ORTEP: a Fortran Thermal Ellipsoid Plot Program for Crystal Structure Illustrations, Oak Ridge National Laboratory Report ORNL-3794. Oak Ridge National Laboratory, Oak
Ridge, TN, USA. Google Scholar
Johnson, C. K. (1976). ORTEP-II: a Fortran Thermal-Ellipsoid Plot Program for Crystal Structure Illustrations, Oak Ridge National Laboratory Report ORNL-5138. Oak Ridge National Laboratory, Oak
Ridge, TN, USA. Google Scholar
Johnson, C. K. (2007). Personal communication. Google Scholar
Johnson, Q., Wood, D. H., Smith, G. S. & Ray, A. E. (1968). Acta Cryst. B24, 274–276. CrossRef ICSD CAS IUCr Journals Web of Science Google Scholar
Jones, P. D. (1977). Acta Cryst. A33, 20–24. CrossRef IUCr Journals Web of Science Google Scholar
Karle, J. (1985). In Nobel Lectures, Chemistry 1981–1990, edited by T. Frängsmyr & B. G. Malmström. Singapore: World Scientific. Google Scholar
Karle, J. & Hauptman, H. (1956). Acta Cryst. 9, 635–651. CrossRef CAS IUCr Journals Web of Science Google Scholar
Kellar, J. N. & Douglas, A. M. B. (1948). J. Sci. Instrum. 25, 90–95. CrossRef Web of Science Google Scholar
Larson, A. C. & Von Dreele, R. B. (2004). GSAS. General Structure Analysis System Manual, LAUR, pp. 86–748. Los Alamos National Laboratory, Los Alamos, NM, USA. Google Scholar
Le Bail, A. (2002). Crystallography Source Code Museum, http://www.cristal.org/museum/. Google Scholar
Ledford, H. (2007). Nature (London), 445, 678–679. CrossRef PubMed CAS Google Scholar
Lipson, H. & Beevers, C. A. (1936). Proc. Phys. Soc. London, 48, 772–780. CrossRef Google Scholar
Lonsdale, K. (1953). Acta Cryst. 6, 874–875. CrossRef IUCr Journals Web of Science Google Scholar
Lu, C.-S., Hughes, E. W. & Giguère, P. A. (1941). J. Am. Chem. Soc. 63, 1507–1513. CSD CrossRef CAS Google Scholar
Macewan, D. & Beevers, C. A. (1942). J. Sci. Instrum. 19, 150–156. CrossRef Google Scholar
McLachlan, D. Jr (1957). X-ray Crystal Structure, ch 8. New York: McGraw-Hill. Google Scholar
McLachlan, D. Jr & Glusker, J. P. (1983). Editors. Crystallography in North America, p. 191. New York: American Crystallographic Association. Google Scholar
McLintock, A. H. (1966). Editor. COMRIE, Leslie John, F.R.S., In An Encyclopaedia of New Zealand. New Zealand Ministry for Culture and Heritage. Google Scholar
Magnússon, M. (2003). The Advent of the First General Purpose Computer in Iceland and its Impact on Science
and Engineering. History of Nordic Computing, Trondheim, Norway. Google Scholar
Main, P., Fiske, S. J., Hull, S. E., Lessinger, L., Germain, G., Declercq, J.-P. &
Woolfson, M. M. (1980). MULTAN. A System of Computer Programs for the Automatic Solution of Crystal Structures
from X-ray Diffraction Data. Universities of York, England, and Louvain, Belgium. Google Scholar
Mallinson, P. R. & Muir, K. W. (1985). J. Appl. Cryst. 18, 51–53. CrossRef CAS Web of Science IUCr Journals Google Scholar
Massey, H. S. W. (1953). Obit. Not. Fellows R. Soc. 8, 97–107. Google Scholar
Matthewman, J. C., Thompson, P. & Brown, P. J. (1982). J. Appl. Cryst. 15, 167–173. CrossRef CAS Web of Science IUCr Journals Google Scholar
Miller, D. C. (1916). J. Franklin Inst. 181, 51–81. CrossRef Google Scholar
NASA (1964). X-ray63. Program System for X-ray Crystallography for the IBM 709-7090-7094, National Aeronautics and Space Administration Technical Report, Report No. NASA-CR-56472;
Document ID: 19640012512, http://ntrs.nasa.gov/. Google Scholar
Naur, P., Backus, J. W., Bauer, F. L., Green, J., Katz, C., McCarthy, J., Naur, P.,
Perlis, A. J., Rutishauser, H., Samuelson, K., Vauquois, B., Wegstein, J. H., van
Wijngaarden, A. & Woodger, M. (1963). Num. Math. 4, 420–453. Google Scholar
Niggli, A. (1961). Computer Methods and the Phase Problem in X-ray Crystal Analysis, p. 14, edited by R. Pepinsky, J. M. Robertson & J. C. Speakman. New York: Pergamon
Press. Google Scholar
Nyburg, S. C. (2004). IUCr Commission on Crystallographic Computing Newsletter, No. 3, p. 41, http://www.iucr.org/iucr-top/comm/ccom/newsletters/. Google Scholar
Ordway, F. (1952a). Computing Methods and the Phase Problem in X-ray Crystal Analysis, edited by R. Pepinsky, p. 148. Department of Physics, The Pennsylvania State College,
USA. Google Scholar
Ordway, F. (1952b). Computing Methods and the Phase Problem in X-ray Crystal Analysis, edited by R. Pepinsky, p. 161. Department of Physics, The Pennsylvania State College,
USA. Google Scholar
Orlov, I., Schoeni, N. & Chapuis, G. (2006). J. Appl. Cryst. 39, 595–597. Web of Science CrossRef CAS IUCr Journals Google Scholar
Oszlányi, G. & Sütő, A. (2004). Acta Cryst. A60, 134–141. Web of Science CrossRef IUCr Journals Google Scholar
Oszlányi, G. & Sütő, A. (2005). Acta Cryst. A61, 147–152. Web of Science CrossRef IUCr Journals Google Scholar
Palatinus, L. (2004). Acta Cryst. A60, 604–610. Web of Science CrossRef CAS IUCr Journals Google Scholar
Palatinus, L. & Chapuis, G. (2007). J. Appl. Cryst. 40, 786–790. Web of Science CrossRef CAS IUCr Journals Google Scholar
Parker, A. M. B., Stokes, A. R. & Wilson, A. J. C. (1945). J. Sci. Instrum. 22, 131–138. CrossRef Web of Science Google Scholar
Patterson, A. L. & Tunell, G. (1942). Am. Mineral. 27, 655–678. CAS Google Scholar
Pauling, L. (1940). 26 January 1940, It's in the Blood! A Documentary History of Linus Pauling, Hemoglobin and Sickle Cell
Anemia. Special Collections, The Valley Library, Oregon State University, USA. Google Scholar
Pauling, L. (1943). 8 November 1943, It's in the Blood! A Documentary History of Linus Pauling, Hemoglobin and Sickle Cell
Anemia. Special Collections, The Valley Library, Oregon State University, USA. Google Scholar
Pauling, L. (1945). 12 February 1945, It's in the Blood! A Documentary History of Linus Pauling, Hemoglobin and Sickle Cell
Anemia. Special Collections, The Valley Library, Oregon State University, USA. Google Scholar
Pepinsky, R. (1947). J. Appl. Phys. 18, 601–604. CrossRef CAS Web of Science Google Scholar
Pepinsky, R. (1952a). Editor. Computing Methods and the Phase Problem in X-ray Crystal Analysis. Department of Physics, The Pennsylvania State College, USA. Google Scholar
Pepinsky, R. (1952b). Computing Methods and the Phase Problem in X-ray Crystal Analysis, edited by R. Pepinsky, Foreward. Department of Physics, The Pennsylvania State College,
USA. Google Scholar
Pepinsky, R. (1952c). Computing Methods and the Phase Problem in X-ray Crystal Analysis, edited by R. Pepinsky, p. 2. Department of Physics, The Pennsylvania State College,
USA. Google Scholar
Pepinsky, R. (1952d). Computing Methods and the Phase Problem in X-ray Crystal Analysis, edited by R. Pepinsky, p. 8. Department of Physics, The Pennsylvania State College,
USA. Google Scholar
Pepinsky, R. (1952e). Computing Methods and the Phase Problem in X-ray Crystal Analysis, edited by R. Pepinsky, p. 167. Department of Physics, The Pennsylvania State College,
USA. Google Scholar
Pepinsky, R. (1952f). Computing Methods and the Phase Problem in X-ray Crystal Analysis, edited by R. Pepinsky, p. 276. Department of Physics, The Pennsylvania State College,
USA. Google Scholar
Pepinsky, R. (1953). Acta Cryst. 6, 751–752. CrossRef IUCr Journals Google Scholar
Pepinsky, R. (1954). Acta Cryst. 7, 520–521. CrossRef CAS IUCr Journals Web of Science Google Scholar
Pepinsky, R., Van den Hende, J. & Vand, V. (1961a). Computer Methods and the Phase Problem in X-ray Crystal Analysis, p. 155, edited by R. Pepinsky, J. M. Robertson & J. C. Speakman. New York: Pergamon
Press. Google Scholar
Pepinsky, R., Van den Hende, J. & Vand, V. (1961b). Computer Methods and the Phase Problem in X-ray Crystal Analysis, p. 156, edited by R. Pepinsky, J. M. Robertson & J. C. Speakman. New York: Pergamon
Press. Google Scholar
Perlis, A. J. (1981). History of Programming Languages, edited by R. L. Wexelblat, p. 77. New York: Academic Press. Google Scholar
Rappleye, J., Innus, M., Weeks, C. M. & Miller, R. (2002). J. Appl. Cryst. 35, 374–376. Web of Science CrossRef CAS IUCr Journals Google Scholar
Rees, M. (1952). Computing Methods and the Phase Problem in X-ray Crystal Analysis, edited by R. Pepinsky, p. 1. Department of Physics, The Pennsylvania State College.
Google Scholar
Rietveld, H. M. (1969a). J. Appl. Cryst. 2, 65–71. CrossRef CAS IUCr Journals Web of Science Google Scholar
Rietveld, H. M. (1969b). An ALGOL Program for the Refinement of Nuclear and Magnetic Structures by the Profile
Method, Research Report RCN-104. Reactor Centrum Nederland. Google Scholar
Rietveld, H. M. (1993). The Rietveld Method, edited by R. A. Young, pp. 39–42. Oxford University Press. Google Scholar
Robinson, W. & Sheldrick, G. M. (1988). Crystallographic Computing 4: Techniques and New Technologies, edited by N. W. Isaacs & M. R. Taylor, pp. 366–377. Oxford University Press/IUCr.
Google Scholar
Rodríguez-Carvajal, J. (2004). IUCr Commission on Crystallographic Computing Newsletter, No. 3, pp. 32–40, http://www.iucr.org/iucr-top/comm/ccom/newsletters/. Google Scholar
Rodriguez-Carvajal, J. & Gonzalez-Platas, J. (2005). Acta Cryst. A61, C22. Web of Science CrossRef IUCr Journals Google Scholar
Rollett, J. S. (1961). Computer Methods and the Phase Problem in X-ray Crystal Analysis, edited by R. Pepinsky, J. M. Robertson & J. C. Speakman, p. 88. New York: Pergamon
Press. Google Scholar
Rollett, J. S. (1970a). Crystallographic Computing, edited by F. R. Ahmed, p. 304. Cophenhangen: Munksgaard. Google Scholar
Rollett, J. S. (1970b). Crystallographic Computing, edited by F. R. Ahmed, p. 306. Cophenhangen: Munksgaard. Google Scholar
Santander, M. (1992). Am. J. Phys. 60, 782–787. CrossRef Web of Science Google Scholar
Sayre, D. (1952). Acta Cryst. 5, 60–65. CrossRef CAS IUCr Journals Web of Science Google Scholar
Schenk, H. (1988). Crystallographic Computing 4: Techniques and New Technologies, edited by N. W. Isaacs & M. R. Taylor, pp. 31–43. Oxford University Press/IUCr.
Google Scholar
Schenk, H. (2004). Acta Cryst. A60, s105. Web of Science CrossRef IUCr Journals Google Scholar
Schneider, T. R. & Sheldrick, G. M. (2002). Acta Cryst. D58, 1772–1779. Web of Science CrossRef CAS IUCr Journals Google Scholar
Shaffer, P. A. Jr, Schomaker, P. & Pauling, L. (1946). J. Chem. Phys. 14, 648–658. CrossRef CAS Web of Science Google Scholar
SHARE (2007). http://www.share.org/. Google Scholar
Sheldrick, G. M. (1976). SHELX76. Program for Crystal Structure Determination. University of Cambridge, England. Google Scholar
Sheldrick, G. M. (1985). Crystallographic Computing 3: Data Collection, Structure Determination, Proteins,
and Databases, edited by G. M. Sheldrick, C. Kruger & R. Goddard, pp. 175–183. Oxford University
Press. Google Scholar
Shiono, R. (1970). Crystallographic Computing, edited by F. R. Ahmed, pp. 312–315. Cophenhangen: Munksgaard. Google Scholar
Shoemaker, D. P. (1961). Computer Methods and the Phase Problem in X-ray Crystal Analysis, edited by R. Pepinsky, J. M. Robertson & J. C. Speakman, p. 300. New York: Pergamon
Press. Google Scholar
Spek, A. L. (2003). J. Appl. Cryst. 36, 7–13. Web of Science CrossRef CAS IUCr Journals Google Scholar
Spicer, D. (2005). IEEE Ann. Hist. Comput. 27, 3, 33–43. Google Scholar
Stewart, J. M. (1963). X-RAY63. Program System for X-ray Crystallography. University of Maryland, College Park, Maryland, USA. Google Scholar
Stewart, J. M. (1970). Crystallographic Computing, edited by F. R. Ahmed, p. 298. Cophenhagen: Munksgaard. Google Scholar
Stewart, J. M. & Bourne, P. E. (1996). International Union of Crystallography Computing
Schools, IUCr Commission on Crystallographic Computing, http://www.iucr.org/iucr-top/comm/ccom/School96/jms/jms.html. Google Scholar
Swift, E. H. (1947). J. Chem. Educ. 24, 574–583. CrossRef CAS Google Scholar
Taylor, J. C. & Wilson, P. W. (1973). Acta Cryst. B29, 1073–1076. CrossRef ICSD CAS IUCr Journals Web of Science Google Scholar
Toby, B. H. (2001). J. Appl. Cryst. 34, 210–213. Web of Science CrossRef CAS IUCr Journals Google Scholar
Thomson, W. (1878). Proc. R. Soc. London, 27, 371–373. CrossRef Google Scholar
Turowska-Tyrk, I. (2004). Acta Cryst. A60, s107. Web of Science CrossRef IUCr Journals Google Scholar
Vand, V. (1958). Acta Cryst. 11, 311–314. CrossRef IUCr Journals Google Scholar
Watkin, D. J. (2006). Age Concern: Crystallographic Software for the Future. Report EP/C536282/1, Engineering and Physical Sciences Research Council, UK. Google Scholar
Watkin, D. (2007). Personal communication. Google Scholar
Woolfson, M. M. (1987). Acta Cryst. A43, 593–612. CrossRef CAS Web of Science IUCr Journals Google Scholar
Zalkin, A. (1962). FORDAP. University of California, Berkeley, CA, USA. Google Scholar
This article is published by the International Union of Crystallography. Prior permission is not required to reproduce short quotations, tables and figures from this article, provided the original authors and source are cited. For more information, click here.