GEANT (program)
Encyclopedia
GEANT is the name of a series of simulation software designed to describe the passage of elementary particles through matter, using Monte Carlo method
s. The name is an acronym formed from "GEometry ANd Tracking". Originally developed at CERN
for high energy physics experiments, today GEANT has uses in many other fields.
and eventually maintained as part of CERNLIB. Since about 2000, the last FORTRAN release has been essentially in stasis and receives only occasional bug fixes. GEANT3 is, however, still in use by some experiments. Most of GEANT3 is available http://cernlib.web.cern.ch/cernlib/conditions.html under the GNU General Public License
, with the exception http://www.fluka.org/Faq.html of some hadronic interaction code contributed by the FLUKA
collaboration.
The latest generation of the software is Geant4
(when referring to this version, the name is typically no longer capitalized). It is a complete rewrite
in C++
with a modern object-oriented
design. Geant4 was developed by the RD44 collaboration in 1994-1998 and is being maintained and improved now by the Geant4 collaboration. For quite some time Geant4 did not have a clearly defined software license. As of version 8.1 (released June 30, 2006) this omission has been remedied. Geant4 is now available under the Geant4 Software License.
Monte Carlo method
Monte Carlo methods are a class of computational algorithms that rely on repeated random sampling to compute their results. Monte Carlo methods are often used in computer simulations of physical and mathematical systems...
s. The name is an acronym formed from "GEometry ANd Tracking". Originally developed at CERN
CERN
The European Organization for Nuclear Research , known as CERN , is an international organization whose purpose is to operate the world's largest particle physics laboratory, which is situated in the northwest suburbs of Geneva on the Franco–Swiss border...
for high energy physics experiments, today GEANT has uses in many other fields.
History
The first version of GEANT dates back to 1974. Versions of GEANT through 3.21 were written in FORTRANFortran
Fortran is a general-purpose, procedural, imperative programming language that is especially suited to numeric computation and scientific computing...
and eventually maintained as part of CERNLIB. Since about 2000, the last FORTRAN release has been essentially in stasis and receives only occasional bug fixes. GEANT3 is, however, still in use by some experiments. Most of GEANT3 is available http://cernlib.web.cern.ch/cernlib/conditions.html under the GNU General Public License
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....
, with the exception http://www.fluka.org/Faq.html of some hadronic interaction code contributed by the FLUKA
FLUKA
FLUKA is a fully integrated Monte Carlo simulation package for the interaction and transport of particles and nuclei in matter....
collaboration.
The latest generation of the software is Geant4
Geant4
Geant4 is a platform for "the simulation of the passage of particles through matter," using Monte Carlo methods. It is the successor of the GEANT series of software toolkits developed by CERN, and the first to use Object oriented programming . Its development, maintenance and user support are...
(when referring to this version, the name is typically no longer capitalized). It is a complete rewrite
Rewrite (programming)
A rewrite in computer programming is the act or result of re-implementing a large portion of existing functionality without re-use of its source code. When the rewrite is not using existing code at all, it is common to speak of a rewrite from scratch...
in C++
C++
C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...
with a modern object-oriented
Object-oriented programming
Object-oriented programming is a programming paradigm using "objects" – data structures consisting of data fields and methods together with their interactions – to design applications and computer programs. Programming techniques may include features such as data abstraction,...
design. Geant4 was developed by the RD44 collaboration in 1994-1998 and is being maintained and improved now by the Geant4 collaboration. For quite some time Geant4 did not have a clearly defined software license. As of version 8.1 (released June 30, 2006) this omission has been remedied. Geant4 is now available under the Geant4 Software License.
See also
- Geant4Geant4Geant4 is a platform for "the simulation of the passage of particles through matter," using Monte Carlo methods. It is the successor of the GEANT series of software toolkits developed by CERN, and the first to use Object oriented programming . Its development, maintenance and user support are...
- EGS (program)EGS (program)The EGS computer code system is a general purpose package for the Monte Carlo simulation of the coupled transport of electrons and photons in an arbitrary geometry for particles with energies from a few keV up to several TeV. It was developed at SLAC.The SLAC version of EGS is no longer actively...
- CLHEPCLHEPCLHEP is a C++ library that provides utility classes for general numerical programming, vector arithmetic, geometry, pseudorandom number generation, and linear algebra, specifically targeted for high energy physics simulation and analysis software...
and FreeHEPFreeHEPFreeHEP is an open source Java library designed to make programming high energy physics applications easier. While the name and main focus of the project is high energy physics, many self-contained APIs in the library are generic and suitable for non-physics applications.FreeHEP is distributed...
, libraries for high energy physics