1 -------------------------------------
2 Installation instructions for FastJet
3 -------------------------------------
5 These instructions for installation from an untarred FastJet release
6 tarball. For additional steps needed from a git clone, see below.
8 FastJet can be configured, built and installed using the standard
11 % ./configure [options]
13 % make check (optional)
17 The full list of configuration options can be obtained with ./configure --help.
18 Some useful ones include:
20 --prefix=<where-you-wish-to-install> (default=/usr/local)
21 specify location where FastJet will be installed
22 The library and plugins will be installed in
23 ${prefix}/lib while the headers will be placed in
24 ${prefix}/include/fastjet
27 --enable-static disable/enable construction of static libraries
31 --enable-shared disable/enable construction of shared libraries
34 --enable-pyext enable the python interface (default=no)
36 --enable-cgal enable use of CGAL libraries, which are needed
37 for the N ln N version of the k_t algorithm and
38 N^{3/2} version of anti-k_t; relevant mainly if you
39 expect to have N>15000.
41 --with-cgaldir=directory
42 For CGAL >= 3.4 tells it where to look for CGAL, if
43 it's not in a standard place.
45 --with-cgalmakefile=makefile
46 For CGAL <= 3.3.x specify location of CGAL
47 Makefile (which contains info on correct
48 compilation flags when using CGAL). In the
49 absence of this flag, the environment variable
50 $(CGAL_MAKEFILE) will be used to locate the CGAL
51 Makefile. If this is absent too, the default
52 location (/usr/share/cgal/cgal.mk) is used.
54 --with-cgal-boostdir=dir
55 --with-cgal-gmpdir=dir
56 --with-cgal-mpfrdir=dir
57 specifies user-defined locations for CGAL
58 dependencies (Boost, GMP and MPFR)
60 --enable-cgal-header-only
61 specified that one is working with a header-only
62 version of CGAL. Use this (instead of
63 --enable-cgal) if you have CGAL v5.
64 This will hopefully be auto-detected in a future
67 --enable-allcxxplugins (default=no)
68 enable all C++ plugins, but not the Fortran ones
70 --enable-allplugins (default=no)
71 enable all plugins, including the Fortran ones
74 --enable-siscone (default=yes)
75 enables the SISCone plugin
77 --enable-cdfcones (default=yes)
78 enables the CDFJetClu and CDFMidPoint plugins
80 --enable-d0runiicone (default=no)
81 enables the D0RunIICone (also known as
82 ILConeAlgorithm within D0)
84 --enable-pxcone (default=no)
85 enables the PxCone plugin (note this is in f77,
86 and so you may have to deal with C++/f77
89 etc. many more plugins available: --help option lists
93 As well as installing the libraries and headers, "make install" also
94 installs ${prefix}/bin/fastjet-config; assuming this is in your path,
95 then you can compile a program that uses fastjet as follows
97 % g++ myprog.cc `fastjet-config --cxxflags --libs --plugins` -o myprog
99 The --plugins option is only needed if you want access to plugins.
100 If shared libraries are built, they will be used by default. You can
101 still switch to the static libraries by adding the --shared=no option.
102 Other examples of the usage of this are given in the Makefile.alt file
103 in the example directory.
106 Note on the --enable-foo usage
107 ------------------------------
108 Each --enable-foo option can also be specified using --enable-foo=yes.
109 If, instead you want to disable the option, you can use --enable-foo=no
116 If you clone FastJet from the git repository, you first need to set up
117 the SISCone submodule
120 % git submodule update
122 Then you should generate all configuration files. This is done using
124 % ./autogen.sh [configure options]
128 % autoreconf --install
129 % cd plugins/SISCone/siscone; autoreconf --install; cd ../../..
130 % ./configure [configure options]
134 - a version of libtool >= 1.5 is needed. On older version of Mac OSX the
135 GNU libtool should be installed.
136 - adding '--force' to the list of autoreconf arguments will overwrite
137 the INSTALL file with the default version
138 - using the autogen.sh script automatically runs ./configure
139 (with the specified options)
140 - on some systems, config.h from git (and a corresponding file in the SISCone
141 release) may get overwritten. It is usually safe to restore the
142 original git versions with "git checkout config.h".
145 ======================================================================
146 OLD (NON-AUTOTOOLS) BUILD SYSTEM
147 ======================================================================
149 These instructions are obsolete.
155 Run the following to build FastJet and its plugins and to test them.
159 (NB: this no longer works as of FastJet 2.4, but the files have been
160 left in place in case somebody prefers a non-autotools solution and
161 wishes to update it.)
167 To make it possible to have two build systems in parallel, the
168 makefiles for the old system are named makefile.static -- you should
169 tell make to use them explicitly with the "-f makefile.static" option.
171 As a first step the user should decide whether or not they want to
172 have access to the N ln N algorithms for the kt algorithm, based on
173 the Computational Geometry Algorithms Library (CGAL).
175 If the user does not wish to use it, he or she should ensure that the
176 Makefile in the top directory has the line
180 Otherwise it should read
184 In that case the user should first download CGAL from
185 http://www.cgal.org/ and then compile and install it. Under linux, she
186 or he will have to ensure that an environment variable CGAL_MAKEFILE
187 points to the Makefile generated by CGAL at install time, containing
188 various definitions of locations of include files. CGAL will encourage
189 the user to set this variable during the install process.
191 Then in the src/ directory do
193 % make -f makefile.static
194 % make -f makefile.static install
196 which places the fastjet library in lib/.
198 To build the cone jet-finder plugins, you should go to the plugin
201 % make -f makefile.static
202 % make -f makefile.static pxcone
203 // OPTIONAL -- if you want fortran pxcone plugin
204 // to be compiled too -- make sure you also set
205 // G77LIBDIR in the main Makefile
207 To run the example program cd to the example directory and do
209 % make -f makefile.static fastjet_example
210 % ./fastjet_example < data/single-event.dat
212 The output (without CGAL) should be
214 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
215 #--------------------------------------------------------------------------
216 # FastJet release 2.3-beta0
217 # Written by M. Cacciari, G.P. Salam and G. Soyez
218 # http://www.lpthe.jussieu.fr/~salam/fastjet
220 # Longitudinally invariant Kt, anti-Kt, and inclusive Cambridge/Aachen
221 # clustering using fast geometric algorithms, with area measures and optional
222 # external jet-finder plugins.
223 # Please cite Phys. Lett. B641 (2006) [hep-ph/0512210] if you use this code.
225 # This package uses T.Chan's closest pair algorithm, Proc.13th ACM-SIAM
226 # Symp. Discr. Alg, p.472 (2002), S.Fortune's Voronoi algorithm and code .
227 #-------------------------------------------------------------------------
228 Ran Longitudinally invariant kt algorithm with R = 1 and E scheme recombination
229 Strategy adopted by FastJet was N2Tiled
231 Printing inclusive jets with pt > 5 GeV
232 ---------------------------------------
233 jet # rapidity phi pt n constituents
234 0 -0.86730713 2.90511470 983.38727662 35
235 1 0.22380471 6.04226446 910.28808604 52
236 2 -1.16520657 6.04589034 70.78886044 48
237 3 -2.34731970 1.25431317 10.72317440 18
238 4 -1.19479918 0.80734483 8.29342805 15
239 5 -1.71897064 4.01955399 8.16413672 9
240 6 -4.71909257 4.09173629 5.57326514 15
241 7 3.42713139 5.74362063 5.17254118 13
242 8 -4.83615264 2.20502275 5.02711586 12
244 Printing exclusive jets with dcut = 25 GeV^2
245 --------------------------------------------
246 jet # rapidity phi pt n constituents
247 0 -0.86730713 2.90511470 983.38727662 35
248 1 0.22093749 6.02911715 898.62586887 29
249 2 -1.16520657 6.04589034 70.78886044 48
250 3 0.36257181 0.54763129 16.65531147 23
251 4 -2.34731970 1.25431317 10.72317440 18
252 5 -1.19479918 0.80734483 8.29342805 15
253 6 -1.71897064 4.01955399 8.16413672 9
254 7 -4.71909257 4.09173629 5.57326514 15
255 8 3.42713139 5.74362063 5.17254118 13
256 9 -4.83615264 2.20502275 5.02711586 12
257 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
259 Additionally the example/ directory contains the following other
263 same example program, but written with ktjet, to illustrate
264 similarities and differences with fastjet_example. For
265 compilation to work please set the KTJET_INCLUDE and
266 KTJET_LIBRARY variables in the fastjet main Makefile.
269 - fastjet_timing_plugins
270 programs for testing output and timings of the two programs --
271 may be run with a variety of command-line options to control
272 behaviour -- see the beginning of fastjet_timing_plugins.cc for
276 example program for evaluating the areas of the jets in
277 a single event (it reads in the same input file as fastjet_example)
279 - A number of examples named 01-XXX.cc, 02-YYY.cc, etc, where FastJet features
280 are illustrated in increasing order of complexity.