12020-05-05  Gregory Soyez  <soyez@fastjet.fr>
2
3	* Release of FastJet fastjet-3.3.4
4
52020-05-05  Gregory Soyez  <soyez@fastjet.fr>
6
7	* configure.ac:
8	* include/fastjet/config_win.h:
9	* Doxyfile:
10	* tex/fastjet-doc.tex:
11	changed version to 3.3.4
12
13	* almost all source files: updated the copyright dates
14
152020-04-28  Gregory Soyez  <soyez@fastjet.fr>
16
17	* NEWS:
18	mentioned the release of SISCone 3.0.5
19
202020-04-23  Gavin Salam  <gavin.salam@cern.ch> + Gregory
21
22	* CHECKLIST:
23	added note in CHECKLIST about verifying automake/conf version
24	and files
25
262020-04-14  Gavin Salam  <gavin.salam@cern.ch>
27
28	* NEWS:
29	preparing NEWS towards release
30
31	* include/fastjet/internal/deprecated.hh:
32	replaced "and" in pre-processor line with "&&", to resolve
33	compilation failure reported by Andrii Verbyitskyi with oracle
34	12.6 c++ compiler.
35
362020-04-07  Gavin Salam  <salam@hydra>
37
38	* src/MinHeap.cc (initialise):
39	rewrote a line of code in calculation of heap updates, replacing
40	&(_heap[2*loc+1]) with &(_heap[0]) + (2*loc+1).  This is intended
41	to resolve an issue reported by Andrii Verbyitskyi with gcc's
42	-D_GLIBCXX_SANITIZE_VECTOR which mistaken thinkgs we're actually
43	trying to access _heap[2*loc+1], when actually we're just getting
44	an address that we will use for comparisons afterwards.
45
462020-02-23  Gavin Salam  <gavin.salam@cern.ch>
47
48	* INSTALL:
49	explicitly mentioned that --enable-cgal-header-only is to be
50	used instead of --enable-cgal when using CGAL v5
51
52	* m4/CGAL.m4 (ACX_CHECK_CGAL):
53	similar clarification
54
552019-11-30  Gavin Salam  <gavin.salam@cern.ch>
56
57	* fortran_wrapper/Makefile.alt:
58	added some notes and commented lines about compilation on MacOS
59
602019-11-29  Gregory Soyez  <soyez@fastjet.fr>
61
62	* configure.ac:
63	* include/fastjet/config_win.h:
64	* Doxyfile:
65	* tex/fastjet-doc.tex:
66	changed version to 3.3.4-devel
67
682019-11-29  Gregory Soyez  <soyez@fastjet.fr>
69
70	* Release of FastJet fastjet-3.3.3
71
722019-11-29  Gregory Soyez  <soyez@fastjet.fr>
73
74	* configure.ac:
75	* include/fastjet/config_win.h:
76	* Doxyfile:
77	* tex/fastjet-doc.tex:
78	changed version to 3.3.3
79
80	* regression-tests/test-contrib.pl:
81	updated svn repository to match new HEPForge setup
82
83	* almost all cc and hh files:
84	updated the header to include the correct years in the copyright
85
86	* doc/fastjet-doc.tex:
87	added a few clarifications suggested by Matteo
88
89	* doc/fastjet-doc.tex:
90	* INSTALL:
91	documented the new configure arguments for CGAL
92
932019-11-27  Gregory Soyez  <soyez@fastjet.fr>
94
95	* m4/CGAL.m4 (ACX_CHECK_CGAL):
96	when adding compiler/linker flags, also use them in checks for
97	headres and libs
98
992019-11-22  Gregory Soyez  <soyez@fastjet.fr>
100
101	* m4/CGAL.m4:
102	removed the test for Boost header (version.hpp) as it soed not
103	seem to be required by all installations of CGAL... we therefore
104	prefer to leave the responsabiility to the end-users who need it
105	and not bother the ones who don't.
106
107	* m4/CGAL.m4:
108	added explicit checks of the headers firectory and files
109	+ done a bit of cleaning
110
111	* m4/CGAL.m4:
112	after further tests, it seems that only GMP is needed for FJ so
113	this is whay we're now asking for (awaiting confirmation from
114	cgal-discuss).
115	If GMP is not found (and CGAL is requested), configure will fail.
116
1172019-11-21  Gregory Soyez  <soyez@fastjet.fr>
118
119	* m4/CGAL.m4:
120	uniformised the CGAL dependency checks: we now check for Boost,
121	GMP and MPFR which are the 3 dependences listed by CGAL (since
122	at least v4.1)
123
1242019-11-15  Gregory Soyez  <soyez@fastjet.fr>
125
126	* configure.ac:
127	* m4/CGAL.m4:
128	adjusted ordering of checks and libs so that gmp is tested before CGAL
129
1302019-11-08  Gregory Soyez  <soyez@fastjet.fr>
131
132	* m4/CGAL.m4:
133	added a --with-cgal-gmpdir=... allowing one to use a non-standard
134	directory for the GMP library (used to build CGAL).
135	Note that this is only relevant when FastJet is built with
136	--enable-cgal
137
138	* fastjet-config.in:
139	reordered link flags to properly satisfy dependencies (put fastjet
140	before CGAL/gmp)
141
1422019-05-10  Gavin Salam  <salam@hydra>
143
144	* autogen.sh (LIBTOOLIZE):
145	replaced libtool existence check with libtoolize existence check
146	(some systems don't have the former, but do have the latter, and
147	the latter seems to be enough).
148
1492019-02-14  Gavin Salam  <gavin.salam@cern.ch>
150
151	* plugins/Jade/JadePlugin.cc (JadeBriefJet):
152	introduced fix proposed by andrii.verbytskyi@mpp.mpg.de to work
153	around overflow error when rt2E < 1.
154
1552018-10-01  Gregory Soyez  <soyez@fastjet.fr>
156
157	* doc/fastjet-doc.tex:
158	updated my affiliation to include CNRS and Univ. Paris-Saclay
159
160	* src/ClusterSequence.cc (print_banner):
161	updated banner so it mentions GPL v2 or higher
162
163	* configure.ac:
164	* include/fastjet/config_win.h:
165	* Doxyfile:
166	* tex/fastjet-doc.tex:
167	  changed version to 3.3.3-devel
168
1692018-10-01  Gregory Soyez  <soyez@fastjet.fr>
170
171	* Release of FastJet fastjet-3.3.2
172
1732018-10-01  Gregory Soyez  <soyez@fastjet.fr>
174
175	* configure.ac:
176	* include/fastjet/config_win.h:
177	* Doxyfile:
178	* tex/fastjet-doc.tex:
179	  changed version to 3.3.2
180
1812018-09-26  Gregory Soyez  <soyez@fastjet.fr>
182
183	* NEWS:
184	drafted NEWS for 3.3.2 release
185
186	* plugins/GridJet/Makefile.am:
187	* plugins/D0RunICone/Makefile.am:
188	* plugins/CMSIterativeCone/Makefile.am:
189	* plugins/Jade/Makefile.am:
190	* plugins/EECambridge/Makefile.am:
191	* plugins/ATLASCone/Makefile.am:
192	* plugins/TrackJet/Makefile.am:
193	* plugins/NestedDefs/Makefile.am:
194	* plugins/D0RunIICone/Makefile.am:
195	* plugins/PxCone/Makefile.am:
196	* plugins/CDFCones/Makefile.am:
197	* plugins/SISCone/Makefile.am:
198	made all the lib<plugin_name>Plugin (non-monolithic build) depend
199	on libfastjet
200
201	* plugins/SISCone/Makefile.am:
202	added a dependence of the produced library (single or monolithic)
203	on libsiscone and libsisconespherical
204
205	* plugins/Makefile.am:
206	made libfastjetplugin (and all the individual plugin libs for
207	non-monolithic biulds) depend on libfastjet
208
2092018-09-19  Gregory Soyez  <soyez@fastjet.fr>
210
211	* tools/Makefile.am (libfastjettools_la_LIBADD):
212	made libfastjettools depend on libfastjet (issue raised by
213	Jan Strube <jstrube@uoregon.edu>)
214
2152018-09-19  Gavin Salam  <gavin.salam@cern.ch>
216
217	* changed external link for SISCone to reflect new hepforge
218	setup.
219
2202018-04-24  Gavin Salam  <gavin.salam@cern.ch>
221
222        * Doxyfile
223        * configure.ac
224        * doc/fastjet-doc.tex
225        * include/fastjet/config_win.h
226	updated version number to 3.3.2-devel
227
2282018-04-24  Gavin Salam  <gavin.salam@cern.ch>
229
230	* Release of FastJet fastjet-3.3.1
231
2322018-04-23  Gavin Salam  <gavin.salam@cern.ch>
233
234	* NEWS
235        * Doxyfile
236        * configure.ac
237        * doc/fastjet-doc.tex
238	* include/fastjet/config_win.h
239	preparing for 3.3.1 release
240
241	* COPYING:
242	changed initial paragraph to indicate that FJ license is GPL v2 or
243	later (rather than just v2), in accord with the headers of the
244	source files.
245
2462018-04-22  Gavin Salam  <gavin.salam@cern.ch>
247
248	* various/(*.hh|cc)
249	* scripts/preamble-fjcore.txt:
250	* scripts/update-headers.pl:
251	better at handling cases where copyright is a single year (though
252	it could end up reading 2018-2018); also now handles the C++ files
253	in the fortran_wrapper directory; and recognises fjcore files,
254	leaving the fjcore indicator in there. It also updates the
255	preamble-fjcore file.
256
257	* **/*.cc **/*.hh:
258	* scripts/preamble-fjcore.txt:
259	updated copyright date on FJ files to 2018
260
2612018-04-21  Gavin Salam  <gavin.salam@cern.ch>
262
263	* fortran_wrapper/fastjetfortran.cc:
264	commented out changes that help with thread safety in
265	fastjetfortran. (Plan for future is to introduce an ifdef)
266
2672017-09-26  Gregory Soyez  <soyez@fastjet.fr>
268
269	* m4/CGAL.m4:
270	removed debugging comment
271
272	* configure.ac:
273	remove unused CGAL variable
274
275	* m4/CGAL.m4:
276	revamped the CGAL detection script to also search for libraries in
277	lib64 and lib32 subdirectories when CGAL (or Boost for CGAL_ paths
278	are supplied by the user
279
280	Cleaned unused bits in the process
281
2822017-09-18  Gregory Soyez  <soyez@fastjet.fr>
283
284	* include/fastjet/PseudoJet.hh:
285	fixed issue + added safegards for the computation of theta and
286	cos_theta
287
2882017-09-08  Gregory Soyez  <soyez@fastjet.fr>
289
290	* NEWS:
291	started drafting a NEWS for 3.4.0(?)
292
293	* PseudoJet.hh:
294	added theta() and cos_theta() PseudoJet member functions as
295	well as theta(pja, pjb) and cos_theta(pja,pjb) functions
296
297	* m4/CGAL.m4 (ACX_CHECK_CGAL):
298	added an option --with-cgal-boostdir to allow specifying a
299	non-standard Boost installation path used to install CGAL
300
3012017-08-31  Gavin Salam  <gavin.salam@cern.ch>
302
303	* plugins/SISCone/SISConeBasePlugin.cc:
304	fixed erroneous UserScaleBase::StructureType -> UserScaleBase as
305	reported by attila.krasznahorkay@cern.ch.
306
3072017-08-02  Gregory Soyez  <soyez@fastjet.fr>
308
309	* include/fastjet/JetDefinition.hh:
310	fixed typo in comment
311
3122017-07-12  Gregory Soyez  <soyez@fastjet.fr>
313
314	* configure.ac:
315	* include/fastjet/config_win.h:
316	* Doxyfile:
317	* tex/fastjet-doc.tex:
318	changed version to 3.3.1-devel
319
3202017-07-12  Gregory Soyez  <soyez@fastjet.fr>
321
322	* Release of FastJet 3.3.0
323
3242017-07-12  Gregory Soyez  <soyez@fastjet.fr>
325
326	* NEWS:
327	minor tweaks to the 3.3.0 release text
328
329	* NEWS:
330	set release date to today (tentative)
331
332	* scripts/preamble-fjcore.txt:
333	updated the copyright dates
334
335	* configure.ac:
336	* include/fastjet/config_win.h:
337	* Doxyfile:
338	* tex/fastjet-doc.tex:
339	changed version to 3.3.0
340
3412017-06-23  Gregory Soyez  <soyez@fastjet.fr>
342
343	* NEWS:
344	inserted the NEWS for the 3.2.2 relaese (from the branch)
345
3462017-06-23  Gavin Salam  <gavin.salam@cern.ch>
347
348	* NEWS
349	extended template for 3.3.0 (including thanks)
350
351        * doc/fastjet-doc.tex
352	added discussion of JetDefinitionXParam
353
354        * example/python/01-basic.py
355        * example/python/02-area.py
356        * example/python/03-tools.py
357        * example/python/04-multi-event.py
358        * example/python/05-user-info.py
359        * example/python/06-selector.py
360        * example/python/07-recombiner.py
361	updated docstring to mention use of fastjet-config --pythonpath
362	(rather than some fixed path) and in some cases added missing
363	brief explanation of what the example does.
364
365        * example/python/08-exception.py:
366	revamped the example to illustrate errors raised with invalid R
367	for a JetDefinition (makes example simple, and arguably more useful?)
368
3692017-06-22  Gregory Soyez  <soyez@fastjet.fr>
370
371	* example/python/08-exception.py:          *** ADDED ***
372	started to work on an example showing how to handle fastjet::Error
373	exceptions in python
374
375	* pyinterface/FastJetPythonExtensions.hh (JetDefinition*Param):
376	added helpers to solve the issue that integer parameters in JD
377	ctors are handled as values for the eRecombinationScheme enum
378	rather ythan float arguments (R or xtra_param). One can now use
379	  JetDefinition0Param(scheme, strategy)
380	  JetDefinition1Param(R, scheme, strategy)
381	  JetDefinition2Param(R, xtra_param, scheme, strategy)
382	where the scheme and strategy are optional.
383
384	* doc/fastjet-doc.tex:
385	fixed a trivial typo + added a sentence to the description of the
386	user-defined recombiners in python.
387
3882017-06-21  Gavin Salam  <gavin.salam@cern.ch>
389
390	* scripts/mksnapshot.sh:
391	this now generates a patch for the snapshots.html file and echoes
392	commands to apply it; mostly tested, but not yet with an actual
393	snapshot. (Implementation not necessarilly optimally efficient?)
394
3952017-06-20  Gavin Salam  <gavin.salam@cern.ch>
396
397	* pyinterface/tests/:                      *** ADDED ***
398	* pyinterface/tests/sel_str_memcheck.py:   *** ADDED ***
399	* pyinterface/tests/fjexception.py:        *** ADDED ***
400	added some of the code used for tests...
401
402	* pyinterface/fastjet.i:
403	added handling of fastjet::Error exceptions.
404
405	* include/fastjet/Error.hh (Error):
406	added description() member function, in line with what's provided
407	by other classes.
408
4092017-06-19  Gregory Soyez  <soyez@fastjet.fr>
410
411	* example/python/Makefile.am:
412	added examples 06 (selector) and 07 (recombiner) to the
413	distributed tarball
414
4152017-06-19  Gavin Salam  <gavin.salam@cern.ch>
416
417	* example/python/01-basic.py:
418	* example/python/02-area.py:
419	* example/python/04-multi-event.py:
420	* example/python/05-user-info.py:
421	* example/python/06-selector.py:
422	* example/python/07-recombiner.py:
423
424	removed use of builtins (still seems to work Python 2.7 and 3.6).
425
4262017-06-19  Gregory Soyez  <soyez@fastjet.fr>
427
428	* pyinterface/FastJetPythonExtensions.hh:
429	tried to use the __name__ attribute to disentangle python objects
430	from functions and return the proper description for selectors
431	accordingly
432
4332017-06-18  Gavin Salam  <gavin.salam@cern.ch>
434
435	* example/python/07-recombiner.py (main):
436	also prints out jet definition with a user-defined recombiner.
437
438	* pyinterface/FastJetPythonExtensions.hh:
439	added cpp_string_from_py_str(...) and
440	pp_string_from_str_py_obj(...) helper functions to get the
441	str output of a python object and convert into a C++ string.
442
443	This uses PyUnicode_AsUTF8 calls for Py3 and normal
444	PyString_AsString calls for Py2. To be seen how robust this is,
445	but seems to solve the issue found below with segfaults.
446
447	The implementation also solves a memory leak issue (failure to
448	XDECREF result of PyObject_Str).
449
4502017-06-16  Gavin Salam  <gavin.salam@cern.ch>
451
452	* pyinterface/FastJetPythonExtensions.hh (SelectorWorker):
453
454	The issue with 06-selector.py seems to be in processing the string
455	from the python selector, and in particular the worker calls
456	PyString_AsString -- see line 90 for details. No solution found as
457	yet...
458
459	* example/python/01-basic.py:
460	* example/python/02-area.py:
461	* example/python/03-tools.py: *** FIX (UGLY OUTPUT) ***
462	* example/python/04-multi-event.py:
463	* example/python/05-user-info.py:
464	* example/python/06-selector.py: *** FIX (SEGFAULT PY3) ***
465	* example/python/07-recombiner.py:
466
467	modified them to be compatible simultaneously with python 2.7 and
468	python 3.x
469
4702017-06-16  Gregory Soyez  <soyez@fastjet.fr>
471
472	* pyinterface/README-for-devel:
473	added a few replies/thoughts to open questions
474
475	* pyinterface/FastJetPythonExtensions.hh:
476	removed (seemingly) unnecessary local copies of PseudoJet
477
478	* pyinterface/fastjet.i:
479	corrected a misleading comment
480
4812017-06-15  Gavin Salam  <gavin.salam@cern.ch> + Matteo
482
483	* pyinterface/fastjet.i:
484	* pyinterface/FastJetPythonExtensions.hh:
485	* pyinterface/README-for-devel:
486
487	added some notes / queries (see GPS tags in code)
488
489	* example/python/06-selector.py (HasPID):
490	made this a new-style class (i.e. added (object) at the end).
491
4922017-05-23  Gregory Soyez  <soyez@fastjet.fr>
493
494	*** BROUGHT FROM THE 3.2.X-devel BRANCH ON 2017-07-12 ***
495
496	Note: issues found when compiling fjcore with [[deprecated]]. This
497	is related to the fact that fjcore is built w -ansi which
498	conflicts w the normal build with gcc6 (with support for
499	[[deprecated]]). Compiling w --enable-extra-warnings instead shows
500	some issues with SISCone replacement of auto_ptr by unique_ptr
501	(SISCone sees it as supported but then it conflicts with the -ansi
502	in FJ). The two fixes below go around those issues.
503
504	* configure.ac:
505	removed the -ansi flag from the "--enable-extra-warnings" option
506	since this is asking for trouble with default c++11 support (like
507	gcc6)
508
509	* include/fastjet/internal/deprecated.hh:
510	explicitly excluded the [[deprecated]] variant from fjcore.
511
5122017-05-22  Gregory Soyez  <soyez@fastjet.fr>
513
514	* example/python/07-recombiner.py:
515	* example/python/06-selector.py:
516	* pyinterface/FastJetPythonExtensions.hh:
517	cleaned and added comments + fixed a few typos
518
5192017-05-19  Gavin Salam  <gavin.salam@cern.ch>
520
521	* tools/fastjet/tools/MassDropTagger.hh:
522	* tools/MassDropTagger.cc:
523	Following report of issue 2017-05-FPE-in-MDT associated with
524	negative (squared) masses in MassDropTagger, changed behaviour of
525	pathological cases:
526
527	- if the parent has zero or negative mass, an empty jet is
528	returned (and a warning is printed) [before the program just
529	carried on running using the negative mass^2]
530
531	- if the heavier child subjet has negative (squared) mass, then mu
532	is set to subjet.m()/parent.m(), which is also negative [before
533	you could get NaN, zero or a postive ratio of two negative things]
534
535
5362017-04-24  Gregory Soyez  <soyez@fastjet.fr>
537
538	* example/python/07-recombiner.py:             *** ADDED ***
539
540	added an eample of a user-defined recombiner
541
542	* pyinterface/fastjet.i:
543	* pyinterface/FastJetPythonExtensions.hh:
544
545	added functionalities to specify a user-defined recombiner in
546	Python. The user should implement a class that provides
547	    def __init__(self):
548	    def __str__(self):
549            def preprocess(self, pa):
550	    def recombine(self, pa, pb): # returns the recombined PseudoJet
551	and then call
552	    jet_def.set_python_recombiner(...)
553	with an instance of that class as an argument.
554
5552017-02-28  Gregory Soyez  <soyez@fastjet.fr>
556
557	* example/python/06-selector.py:
558	used a class-based selector and wrote is_photon as HasPID(22)
559
560	* pyinterface/FastJetPythonExtensions.hh:
561	descrpition now uses the "class_or_function" __str__ if available
562
563	Note that for functions this currently produces a message of the
564	form "function at address ..." which is not 100% elegant (but
565	we'll live with it for the time being)
566
5672017-02-24  Gavin Salam  <gavin.salam@cern.ch>
568
569	* fastjet-config.in (usage):
570	edited the --pythonpath help text (+ one typo)
571
5722017-02-23  Gregory Soyez  <soyez@fastjet.fr>
573
574	* fastjet-config.in:
575	added a --pythonpath option
576
5772017-02-15  Gavin Salam  <gavin.salam@cern.ch>
578
579	* scripts/mksnapshot.sh:
580	another fix for remote snapshots...
581
5822017-02-12  Gavin Salam  <gavin.salam@cern.ch>
583
584	* example/python/06-selector.py:
585	moved the example over to selectors also for pileup selection.
586
587	* scripts/mksnapshot.sh:
588	tried to update this so that links for tagging and copying are
589	correct even remotely from Jussieu.
590
5912017-02-11  Gavin Salam  <gavin.salam@cern.ch>
592
593	* example/python/06-selector.py (print_jets):
594	* pyinterface/FastJetPythonExtensions.hh:
595	small tweaks to comments, details of how example is written, etc.
596
5972017-02-10  Gregory Soyez  <soyez@fastjet.fr>
598
599	* example/python/06-selector.py:      *** ADDED ***
600	* pyinterface/FastJetPythonExtensions.hh:
601	added a SelectorPython that currently takes a function (jet->Bool)
602	controlling what passes the selector. See 06-selector.py for a
603	simple usage.
604
605	At this stage, more testing (incl memory management) is needed
606
607	* pyinterface/Makefile.am:
608	fixed fate of swig_wrp.cpp and fastjet.i during make dist
609
6102017-02-10  Gavin Salam  <gavin.salam@cern.ch>
611
612	* src/genconfig.sh:
613	fixed issue with sed on some platforms that cannot handle "+" in
614	the regexp.
615
616	* example/python/05-user-info.py:  *** ADDED ***
617	* example/python/Makefile.am (EXTRA_DIST):
618	added an example that show how one can use Python user information
619
620	* pyinterface/FastJetPythonExtensions.hh: *** ADDED ***
621	* pyinterface/makefile.internal:
622	* pyinterface/Makefile.am:
623	started adding tools to allow extensions of FastJet functionality
624	through python, in particular PseudoJet user-info support.
625
6262017-02-10  Gregory Soyez  <soyez@fastjet.fr>
627
628	* pyinterface/Makefile.am:
629	added some workarounds to avoid libtool install showing a
630	potentially misleading message about where python modules have
631	been instsalled (this can differ between the fastjet.py and
632	_fastjet.so files on some installations)
633	Instead print a message of our own.
634
6352017-02-09  Gregory Soyez  <soyez@fastjet.fr>
636
637	* regression-tests/nightly-check.pl:
638	added minimal checks that the python interface compiles smoothly
639
6402017-02-09  Gavin Salam  <gavin.salam@cern.ch>
641
642	* configure.ac:
643	* include/fastjet/config_win.h:
644	* Doxyfile:
645	* tex/fastjet-doc.tex:
646	changed version to 3.3.0-devel
647
648	* example/python/README: *** ADDED ***
649	with info on path settings, etc.
650
651	* NEWS:
652	started to prepare release info
653
654	* pyinterface/fastjet-doc.i: ** ADDED **
655	automatically generated as follows (but do this manually)
656
657	   doxygen
658	   cd pyinterface
659	   make -f makefile.internal fastjet-doc.i
660
661	Currently using doxygen v. 1.8.x
662
663	* m4/ax_swig_python.m4 (AX_SWIG_PYTHON):
664	fixed issue with AX_PYTHON_DEVEL
665
6662017-02-09  Gregory Soyez  <soyez@fastjet.fr>
667
668	* configure.ac:
669	generated the makefile in the example/python directory
670
671	* pyinterface/Makefile.am:
672	removed unnecessary _ that generated (harmless) warnings with
673	automake
674
675	* m4/ax_swig_python.m4:              *** ADDED ***
676	* m4/ax_swig_enable_cxx.m4:          *** ADDED ***
677	added missing m4 macros (on some systems)
678
679	* CHECKLIST:
680	added a note about running doxy2swig.py and swig
681
682	* example/python/Makefile.am:        *** ADDED ***
683	* example/Makefile.am:
684	shipped the python examples with the distribution
685
686	* configure.ac:
687	* pyinterface/Makefile.am:
688	* m4/ax_pkg_swig.m4:                 *** ADDED ***
689	added support, via --enable-swig, to run swi instead of using the
690	swig_wrap.cpp provided in the distriution..
691
6922017-02-09  Gavin Salam  <gavin.salam@cern.ch>
693
694	* pyinterface/fastjet.i:
695	added more __str__ implementations.
696
697	* example/python/01-basic.py: (moved from pyinterface/)
698	simplified it, made output more similar to ../01-basic.cc
699
700	* example/python/02-areas.py:
701	small changes to output
702
703	* example/python/04-multi-event.py
704	this now contains the more advanced multi-event reading framework
705
7062017-02-09  Gregory Soyez  <soyez@fastjet.fr>
707
708	* pyinterface/makefile.internal:
709	pointed to the correct doxy2swig.py sccript (was missing the .py
710	extension) + removed fastjet-doc.i during make clean.
711
712	* Doxyfile:
713	updated to doxygen-1.8.12
714
715	explicitly excluded ILConeAlgorithm.hpp in the D0RunIICone
716	(causing trouble w swig xml doc and not being used anyway in the
717	html)
718
7192017-02-09  Gavin Salam  <gavin.salam@cern.ch>
720
721	* pyinterface/fastjet.i:
722	work in progress on docstring
723
724	* pyinterface/...:
725	work in progress on the examples, etc.
726
727	* Doxyfile:
728	enabled generator of XML documentation, for use by doxy2swig
729
730	* include/fastjet/PseudoJet.hh:
731	removed "[NOT FULLY TESTED]" from the boost and unboost function
732	documentation.
733
734	* scripts/doxy2swig *** ADDED ***
735	to aid generation of documentation for the python interface
736
737
7382017-02-09  Gregory Soyez  <soyez@fastjet.fr>
739
740	* pyinterface/Makefile.am:
741	installed the python module in the site-packages directly (without
742	a fastjet subdirectory)
743
744	* pyinterface/__init__.py:
745	added (and installed) this so that python automatically finds the
746	fsatjet module from te parent directory
747
748	* include/fastjet/ClusterSequence.hh:
749	explicitly excluded the (deprecated) auto_ptr version of
750	ClusterSequence::plugin_associate_extras from the swig interface
751	(it seems like the auto_ptr was causing troubles with swig)
752
753	* pyinterface/Makefile.am (_fastjet_la_LIBADD):
754	added missing CGAL libs (when configured w CGAL enabled)
755
7562017-02-08  Gregory Soyez  <soyez@fastjet.fr>
757
758	* pyinterface/test.py       -> pyinterface/01-basic.py:
759	* pyinterface/test-area.py  -> pyinterface/02-area.py:
760	* pyinterface/test-tools.py -> pyinterface/03-tools.py:
761	renamed the files
762
763	* configure.ac:
764	* Makefile.am:
765	* pyinterface/Makefile.am:             *** ADDED ***
766	configure now acquired a --enable-pyext flag which builds
767	thepython interface.
768	Note: swig has to be run first to generate swig_wrap.cpp amf
769	fastjet.py. These files are included in the tarball (as well as
770	fastjet.i for completeness)
771
772	* pyinterface/test-area.py:            *** ADDED ***
773	added an example with areas and subtraction
774
775	* pyinterface/test-tools.py:           *** ADDED ***
776	added an example showing usage of tools
777
778	* pyinterface/fastjet.i:
779	added area support and tool (still in progress)
780
781	* pyinterface/Makefile:
782	also include tools
783
7842017-02-07  Gregory Soyez  <soyez@fastjet.fr>
785
786	* include/fastjet/PseudoJet.hh:
787	excluded the templated PseudoJet constructor from the python
788	interface (creates nasty issues w swig (e.g. vector allocators
789	with fastjet::PseudoJet::PseudoJet>)
790
7912017-02-07  Gavin Salam  <gavin.salam@cern.ch>
792
793	* testsuite/TestPseudoJet.hh (TestBase):
794	fixed issue in testing boosts
795
7962017-02-07  Gregory Soyez  <soyez@fastjet.fr> + Gavin
797
798	* include/fastjet/PseudoJet.hh:
799	disabled the templated reset<T> with swig
800
801	* include/fastjet/internal/deprecated.hh:
802	playing with swig: some advanced deprecated features do not behave
803	properly do disable them in swig
804
8052017-02-06  Gavin Salam  <gavin.salam@cern.ch>
806
807	* testsuite/TestSpecialEvents.hh:
808	modified constructors of JetDefs to eliminate a large number of
809	compilation warnings.
810
811	* testsuite/run_tests.cc (main):
812	* testsuite/TestPseudoJet.hh:
813	Added TestPJOperations to test various binary operations
814
815	* include/fastjet/PseudoJet.hh|cc:
816	operator+=, -=, *=, /= all had "void" as their return type;
817	now fixed this bug so that they return PseudoJet &
818	(observed to be an issue with Swig)
819
8202017-02-06  Gregory Soyez  <soyez@fastjet.fr> + Gavin
821
822	* pyinterface:
823	started to work on a swig-based pythin interface
824
8252016-10-25  Gregory Soyez  <soyez@fastjet.fr> + Gavin
826
827	* include/fastjet/NNFJN2Tiled.hh:
828	fixed type mismatched for diJ_plus_link (was pre-declared as a
829	class then declared as a struct)
830
8312016-08-05  Gregory Soyez  <soyez@fastjet.fr>
832
833	* configure.ac:
834	* include/fastjet/config_win.h:
835	* Doxyfile:
836	* tex/fastjet-doc.tex:
837	changed version to 3.2.2-devel
838	+ reset the SISCone link to the trunk
839
8402016-08-04  Gregory Soyez  <soyez@fastjet.fr>
841
842	* Release of FastJet 3.2.1
843
8442016-08-03  Gregory Soyez  <soyez@fastjet.fr>
845
846	* NEWS:
847	added a mention of the SISCone update in the NEWS file
848
8492016-07-22  Gregory Soyez  <soyez@fastjet.fr> + Gavin
850
851	* configure.ac:
852	* include/fastjet/config_win.h:
853	* Doxyfile:
854	* tex/fastjet-doc.tex:
855	  changed version to 3.2.1
856
857	* NEWS:
858	prepared release notes for 3.2.1
859
8602016-07-21  Gregory Soyez  <soyez@fastjet.fr>
861
862	* CHECKLIST:
863	updated the part related to the distribution of the doxygen doc to
864	avoid including spurious files
865
8662016-07-20  Gregory Soyez  <soyez@fastjet.fr>
867
868	* src/ClusterSequence.cc:
869	. made sure the compiler does not complain about unused variables
870	  if assert is disabled (e.g. if NDEBUG is defined)
871	. removed the "step_number" argument in _add_step_to_history() [it
872	  is only used in an assertion that we are confident would not fail]
873	This fixed an issue reported by Andy Buckley.
874
8752016-05-23  Gregory Soyez  <soyez@fastjet.fr>
876
877	* plugins/SISCone/Makefile.am:
878	included the ./siscone in the list of include path (equivalement
879	to $builddir)/siscone so that config.h is found
880
8812016-05-19  Gavin Salam  <gavin.salam@cern.ch>
882
883	* regression-tests/nightly-check.pl:
884	added gcc-6.1 to the nightly check
885
8862016-05-18  Gavin Salam  <gavin.salam@cern.ch>
887
888	* src/ClusterSequence.cc (operator=):
889	* include/fastjet/ClusterSequence.hh:
890	added an explicit assignment operator, to solve an issue reported
891	by Roberto Franceschini (where structure wasn't being properly
892	transferred with assignment, though it was fine on construction).
893	[issue 2016-05-CS-assignment-issue]
894
8952016-03-18  Gregory Soyez  <soyez@fastjet.fr>
896
897	* configure.ac:
898	* include/fastjet/config_win.h:
899	* Doxyfile:
900	* tex/fastjet-doc.tex:
901	changed version to 3.2.1-devel
902
9032016-03-17  Gregory Soyez  <soyez@fastjet.fr>
904
905	* Release of FastJet 3.2.0
906
9072016-03-17  Gregory Soyez  <soyez@fastjet.fr>
908
909	* NEWS:
910	set the correct release date
911	(starting the release process again)
912
913	* scripts/mkfjcore.sh:
914	explicitly removed the FASTJET_ENABLE_AUTO_PTR_INTERFACE (and
915	FASTJET_HAVE_DEMANGLING_SUPPORT) from fjcore
916
917	fixed a few issues of replacements FASTJET -> FJCORE that had to
918	be done.
919
920	* NEWS:
921	updated to mention the --disable-auto-ptr configure option
922
923	* include/fastjet/ClusterSequence.hh:
924	disabled CS::plugin_associate_extras(std::auto_ptr<Extras>
925	extras_in) when auto_ptr are disabled at configure time
926
927	* configure.ac:
928	added a --disable-auto-ptr configure option that removes the part
929	of the interface that uses std::auto_ptr (by default, auto_ptr
930	will be enabled)
931
9322016-03-16  Gregory Soyez  <soyez@fastjet.fr>
933
934	* scripts/preamble-fjcore.txt:
935	updated copyright dates
936
937	* NEWS:
938	set the correct release date (and included SISCone version)
939
940	* configure.ac:
941	* include/fastjet/config_win.h:
942	* Doxyfile:
943	* tex/fastjet-doc.tex:
944	changed version to 3.2.0
945
946	* doc/fastjet-doc.tex:
947	added a brief mention of the examples and fortran interface
948	shipped w fjcore
949
9502016-03-15  Gavin Salam  <gavin.salam@cern.ch>
951
952	* NEWS:
953	added fjcore fortran wrapper mention
954
955	* src/PseudoJet.cc (has_structure):
956	minor change to return bool(_structure) instead of
957	(bool)_structure (should be functionally identical) + fixed a
958	typo.
959
960	* include/fastjet/internal/deprecated.hh:
961	* include/fastjet/ClusterSequenceAreaBase.hh:
962	* include/fastjet/ClusterSequenceArea.hh:
963	fixed typos in comments and clarified a comment
964
9652016-03-14  Gregory Soyez  <soyez@fastjet.fr>
966
967	* doc/fastjet-doc.tex:
968	worked on the list of deprecated features.
969
970	* include/fastjet/ClusterSequenceArea.hh:
971	* include/fastjet/ClusterSequenceAreaBase.hh:
972	removed the FASTJET_DEPRECATED_MSG tag from virtual members
973	because of the following bug in gcc 5.1 and 5.2 (leading to bogus
974	deprecation warnings)
975	   https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65974
976
977	* configure.ac:
978	* include/fastjet/internal/deprecated.hh:
979	((deprecated)) -> ((__deprecated__)) to avoid potential
980	replacements by the precompiler
981
9822016-03-10  Matteo Cacciari <cacciari@lpthe.jussieu.fr>
983
984	* fortran_wrapper/fastjet_fortran_example.f:
985	it now runs antikt by default (it was kt)
986
987        * fortran_wrapper/fjcore_fortran_interface.f:
988	renamed to fjcore_fortran_example.f
989
990	* scripts/Makefile-fjcore.txt:
991	* scripts/mkfjcore.sh:
992	changes for inclusion of fortran example
993
994        *scripts/preamble-fjcore.txt:
995	added mention of fortran interface
996
9972016-03-10  Gregory Soyez  <soyez@fastjet.fr>
998
999	* configure.ac:
1000	included AM_CXXFLAGS in our compiler tests (+ tidied up the
1001	-Werror options) to stay as close as possible to the actual
1002	behaviour during compilation
1003
10042016-03-09  Gregory Soyez  <soyez@fastjet.fr>
1005
1006	* tools/Filter.cc:
1007	no longer rely on the deprecated CSAB interface to subtract jets
1008	when Filter is constructed using a "rho" number (use
1009	Subtractor(rho) instead)
1010
1011	* include/fastjet/ClusterSequenceArea.hh:
1012	* include/fastjet/ClusterSequenceAreaBase.hh:
1013	* src/ClusterSequenceArea.cc:
1014	* src/ClusterSequenceAreaBase.cc:
1015	marked as deprecated the background estimation and subtraction
1016	methods. One should use the BackgroundEstimator series of tools
1017	and the Subtractor tool instead.
1018
1019	Internal note: since some of these methods were called internally
1020	by other deprecated methods, we have moved the implementation to
1021	private (or protected when needed) methods to avoid deprecation
1022	warnings when compiling FastJet itself. As mentioned in the
1023	comments, these methods are also deprecated (although they are not
1024	explicitly marked with FASTJET_DEPRECATED)
1025
1026	List of concerned methods:
1027	. CSAB::median_rho_per_unit_area()
1028            Used by CSAB::subtracted_jets()
1029            Used by CSAB::subtracted_jet()
1030            Used by CSAB::subtracted_pt()
1031            Added   CSAB::_median_rho_per_unit_area() [private]
1032	. CSAB::median_rho_per_unit_area_4vector()
1033            Added   CSAB::_median_rho_per_unit_area_4vector() [private]
1034	. CSAB::median_rho_per_unit_something()
1035	    Used by CSAB::_median_rho_per_unit_area_4vector()
1036	    Used by CSAB::_median_rho_per_unit_area()
1037	    Added   CSAB::_median_rho_per_unit_something() [private]
1038	. CSAB::get_median_rho_and_sigma(...) (3 variants)
1039	    Used by CSA::get_median_rho_and_sigma()
1040	    Used by CSA::median_pt_per_unit_something()
1041	    Added   CSAB::_get_median_rho_and_sigma() (3 variants) [protected]
1042	. CSAB::subtracted_jets(...) (2 variants)
1043	    One variant calls the other so, added the "other" with an _
1044	. CSAB::subtracted_jet(...) (2 variants)
1045	    Used by CSAB::subtracted_jets()
1046	    Used by CSAB::subtracted_pt()
1047	    Added   CSAB::_subtracted_jet()
1048	    STILL USED BY Filter
1049	. CSAB::subtracted_pt(...) (2 variants)
1050	    One variant calls the other so, added the "other" with an _
1051	. CSAB::parabolic_pt_per_unit_area()
1052	    Used by CSA::parabolic_pt_per_unit_area()
1053	    Added   CSAB::_parabolic_pt_per_unit_area() [protected]
1054	. CSA::parabolic_pt_per_unit_area()
1055	    Added   CSA::_parabolic_pt_per_unit_area() [private]
1056	. CSA::get_median_rho_and_sigma() (3 variants)
1057
1058	One occurence still left to fix: Filter uses
1059	CSAB::subtracted_jet(...) with a fixed rho.
1060
10612016-03-08  Gavin Salam  <gavin.salam@cern.ch>
1062
1063	* NEWS:
1064	small tweaks
1065
10662016-03-08  Gregory Soyez  <soyez@fastjet.fr>
1067
1068	* example/fastjet_areas.cc:
1069	* example/fastjet_timing_plugins.cc:
1070	fixed a use of a deprecated JetDefinition ctor
1071
1072	* NEWS:
1073	drafted for the 3.2.0 release
1074
1075	* src/PseudoJet.cc (has_structure):
1076	explicit conversion of _structure to bool
1077
10782016-03-04  Gregory Soyez  <soyez@fastjet.fr>
1079
1080	* doc/fastjet-doc.tex:
1081	added SharedPtr<T>::operator() to the deprecation list
1082
1083	* include/fastjet/CircularRange.hh:
1084	* include/fastjet/RangeDefinition.hh:
1085	marked deprecated features with FASTJET_DEPRECATED_MSG
1086
1087	* include/fastjet/JetDefinition.hh:
1088	added a (moslty internal) ctor
1089	  JetDefinition(jet_alg, R, recomb_scheme, strategy, nparameters);
1090	and added a FASTJET_DEPRECATED for the
1091	  JetDefinition(jet_alg, R, strategy, recomb_scheme, nparameters);
1092	which was already deprecated since FastJet 2.1
1093
1094	* fortran_wrapper/fjcore_fortran_interface.f:
1095	added an example of the fjcore fortran interface (still to be
1096	polished!)
1097
1098	* scripts/mkfjcore.sh:
1099	included fjcorefortran.cc
1100
1101	* fortran_wrapper/fjcorefortran.cc:
1102	removed a leftover trace of (unsupported) areas
1103
11042016-03-04  Gavin Salam  <gavin.salam@cern.ch>
1105
1106	* scripts/cppcheck-run.sh: *** ADDED ***
1107	added script to run cppcheck and put results into a reports/
1108	directory.
1109
11102016-03-04  Gavin SALAM  <gavin.salam@cern.ch> + Gregory & Matteo
1111
1112	* fortran_wrapper/fjcorefortran.cc: *** ADDED ***
1113	Added an fjcore fortran wrapper. This will not get distributed
1114	with the fastjet tarball, but is intended for distribution as part
1115	of fjcore.
1116
11172016-03-03  Gavin Salam  <gavin.salam@cern.ch>
1118
1119	* include/fastjet/NNBase.hh:
1120	added a missing virtual destructor.
1121
1122	* example/fastjet_timing_plugins.cc:
1123	added -jade-strategy flag (by default 1=NNFJN2Plain, but can also
1124	be 0=NNH).
1125
1126	* plugins/Jade/fastjet/JadePlugin.hh:
1127	* plugins/Jade/JadePlugin.cc:
1128	Extended JadePlugin to have a strategy subclass
1129	(JadePlugin::Strategy) and optional strategy argument to the
1130	constructor. By default it now uses the new NNFJN2Plain
1131	clustering, instead of the old NNH, but by changing the strategy
1132	that can be changed.
1133
1134	Timings show that for higher multiplicities, NNFJN2Plain is about
1135	a factor of two faster:
1136
1137        |                               | NNFJN2Plain | NNH   |
1138        |-------------------------------+-------------+-------|
1139        | all 70 particles, 10^5 events | 3.65s       | 6.94s |
1140        | 20 hardest part,  10^6 events | 5.12s       | 4.74s |
1141
1142        Commands were:
1143        ./fastjet_timing_plugins -jade -excly 0.001 -repeat 100000   < data/single-ee-event.dat
1144        ./fastjet_timing_plugins -jade -excly 0.001 -repeat 1000000 -nhardest 20  < data/single-ee-event.dat
1145
1146	with -jade-strategy 1 or 0
1147
1148	Both strategies give identical clustering sequences and dij values
1149	on 10^4 events.
1150
1151	Note: there are two implementations of the strategy selection, one
1152	using a virtual base class to choose between the two strategies,
1153	the other using a template. The template was selected in the end,
1154	with the other code just commented out for now.
1155
11562016-03-03  Gregory Soyez  <soyez@fastjet.fr>
1157
1158	* example/fastjet_timing_plugins.cc:
1159	* fortran_wrapper/fastjetfortran.cc:
1160	* plugins/SISCone/fastjet/SISConePlugin.hh:
1161	* plugins/SISCone/fastjet/SISConeSphericalPlugin.hh:
1162	* plugins/SISCone/SISConePlugin.cc:
1163	* plugins/SISCone/SISConeSphericalPlugin.cc:
1164	* src/ClosestPair2D.cc:
1165	* src/ClusterSequence_Delaunay.cc:
1166	* include/fastjet/internal/ClosestPair2D.hh:
1167	* include/fastjet/ClusterSequenceArea.hh:
1168	replaced auto_ptr with SharedPtr (following auto_ptr deprecation
1169	in C++11)
1170
1171	Note that we could have used std::unique_ptr but SharedPtr has the
1172	advantage of being available independently of the C++ standard.
1173
1174	* include/fastjet/Makefile.am:
1175	* include/fastjet/NNPlainN2.hh --> include/fastjet/NNFJN2Plain.hh:
1176	* include/fastjet/NNTiledN2.hh --> include/fastjet/NNFJN2Tiled.hh:
1177	renamed the file to follow the class names
1178
1179	* include/fastjet/NNBase.hh:
1180	* include/fastjet/NNPlainN2.hh:
1181	* include/fastjet/NNTiledN2.hh:
1182	renamed the classes:
1183	  NNPlainN2  --> NNFJN2Plain
1184	  NNTiledN2  --> NNFJN2Tiled
1185
1186	* scripts/mkfjcore.sh:
1187	handled the pre-compiler macros defined by configure (for
1188	supported compiler features), as well as the DEPRECATED and
1189	OVERRIDE ones.
1190
1191	By default, they are not available but one can define
1192
1193	  FJCORE_HAVE_OVERRIDE
1194	  FJCORE_HAVE_GNUCXX_DEPRECATED
1195	  FJCORE_HAVE_CXX14_DEPRECATED
1196	  FJCORE_HAVE_EXPLICIT_FOR_OPERATORS
1197
1198	before including fjcore.hh to switch on the appropriate support.
1199
1200	* include/fastjet/internal/deprecated.hh:
1201	fixed typo
1202
1203	* include/fastjet/SharedPtr.hh:
1204	if supported, declared the conversion to bool as explicit
1205
1206	* configure.ac:
1207	added a check for the "explicit" keyword for (conversion)
1208	operators in a class (typically requires C++11)
1209
1210	* include/fastjet/SharedPtr.hh:
1211	* include/fastjet/ClusterSequence.hh:
1212	used the new FASTJET_DEPRECATED syntax
1213
1214	* configure.ac:
1215	* include/fastjet/internal/deprecated.hh:
1216	__attribute__((deprecated)) can be placed before the function
1217	declaration. This means that we cam simply have a simple define
1218	FASTJET_DEPRECATED or a macro FASTJET_DEPRECATED_MSG("...")
1219
1220	These are to be placed bofore the function declaration
1221
1222	* scripts/mkfjcore.sh:
1223	fasjet_internal_headers incorporated into fasjet_headers
1224
1225	* include/fastjet/WrappedStructure.hh:
1226	* include/fastjet/CompositeJetStructure.hh:
1227	* include/fastjet/ClusterSequenceStructure.hh:
1228	* include/fastjet/ClusterSequenceVoronoiArea.hh:
1229	* include/fastjet/ClusterSequencePassiveArea.hh:
1230	* include/fastjet/ClusterSequenceArea.hh:
1231	* include/fastjet/ClusterSequenceActiveArea.hh:
1232	* include/fastjet/ClusterSequenceActiveAreaExplicitGhosts.hh:
1233	* include/fastjet/ClusterSequence1GhostPassiveArea.hh:
1234	* include/fastjet/RectangularGrid.hh:
1235	* include/fastjet/JetDefinition.hh:
1236	* include/fastjet/CircularRange.hh:
1237	used the FASTJET_OVERRIDE macro whenever appropriate
1238
1239	* config.h.in:
1240	* include/fastjet/internal/base.hh:
1241	defined a FASTJET_OVERRIDE macro that translates into the
1242	"override" keyword if supported.
1243
1244	Reminder: adding the the override keyword to a class member means
1245	that it should verload an equivalent member function in a base
1246	class. If it does not, the compiler will issue an error. This is
1247	therefore mostly meant as a safeguard (avoiding typos in
1248	overloaded function names)
1249
1250	* tools/JetMedianBackgroundEstimator.cc:
1251	* src/PseudoJet.cc:
1252	* src/JetDefinition.cc:
1253	* src/ClusterSequence.cc:
1254	* include/fastjet/WrappedStructure.hh:
1255	* include/fastjet/PseudoJet.hh:
1256	* include/fastjet/JetDefinition.hh:
1257
1258	replaced
1259	  if (shared_ptr())
1260	by
1261	  if (shared_ptr)
1262	which correctly uses the casting to bool
1263
1264	also used SharedPtr::get() instead of SharedPtr::operator ().
1265
1266	* include/fastjet/SharedPtr.hh:
1267	deprecated T* operator() [one should use get() instead]
1268
1269	* config.h.in:
1270	* include/fastjet/internal/deprecated.hh:   *** ADDED ***
1271	* include/fastjet/internal/Makefile.am:
1272	* scripts/mkfjcore.sh:
1273	added FASTJET_DEPRECATED(func) and
1274	FASTJET_DEPRECATED_MSG(func,message) macros that use compile-time
1275	deprecation when available
1276
1277	* configure.ac:
1278	added tests for modern compiler options
1279          [[deprecated]]             --> FASTJET_HAVE_CXX14_DEPRECATED
1280	  _attribute__((deprecated)) --> FASTJET_HAVE_GNUCXX_DEPRECATED
1281	  override                   --> FASTJET_HAVE_OVERRIDE
1282
12832016-03-03  Gavin Salam  <gavin.salam@cern.ch>
1284
1285	* include/fastjet/internal/ClosestPair2DBase.hh (Coord2D):
1286	initialised members in default constructor to keep static code
1287	checkers happy.
1288
1289	* src/ClusterSequence_Delaunay.cc (_delaunay_cluster):
1290	made verbose const to keep static code checkers happy
1291
1292	* src/ClusterSequence_CP2DChan.cc:
1293	in default constructor for Mirror, set dummy values for members
1294
1295	* include/fastjet/JetDefinition.hh:
1296	set _extra_param also in the plugin-based constructor
1297
12982016-03-03  FastJet service account  <fastjet@buildcoverity.cern.ch> [Gavin]
1299
1300	* scripts/coverity-run.sh:     *** ADDED ***
1301	* scripts/coverity-commit.sh:  *** ADDED ***
1302
1303	added these scripts to run coverity and commit the results to the
1304	server.
1305
13062016-03-02  Gregory Soyez  <soyez@fastjet.fr>
1307
1308	* scripts/mkfjcore.sh:
1309	added NNBase.hh to fjcore (needed by NNH.hh)
1310
1311	tried several options for the inclusion of the NN interface (NNH
1312	alone does not work since it requires at lease NNHBase).
1313
1314	nothing: 1619  64470 fjcore.hh
1315                 6095 230792 fjcore.cc
1316                 7714 295262 total
1317
1318	NNH:     1808  70250 fjcore.hh
1319                 6095 230792 fjcore.cc
1320                 7903 301042 total
1321
1322	all:     2348  89874 fjcore.hh
1323                 6079 230145 fjcore.cc
1324                 8427 320019 total
1325
1326	for the moment, picked up the intermediate option since it's
1327	what we've had so far
1328
13292016-03-02  Gavin Salam  <gavin.salam@cern.ch>
1330
1331
1332	* include/fastjet/NNBase.hh:
1333	* include/fastjet/NNPlainN2.hh:
1334	* include/fastjet/NNTiledN2.hh:
1335
1336	* include/fastjet/PseudoJet.hh:
1337	added doxygen comment for dot_product
1338
13392016-03-02  Gregory Soyez  <soyez@fastjet.fr>
1340
1341	* include/fastjet/NNBase.hh:         *** ADDED ***
1342	* include/fastjet/NNH.hh:
1343	* include/fastjet/NNPlainN2.hh:      *** ADDED ***
1344	* include/fastjet/NNTiledN2.hh:      *** ADDED ***
1345	* include/fastjet/Makefile.am:
1346	this provides a structure which exposes the N2Plain and N2Tiled
1347	strategies along the lines of the existing NNH class. They now all
1348	derive from a common abstract NNBase base class.
1349
1350	Note that different classes have different requirements on the
1351	underlying BJ (brief jet) class, both in terms of the methods that
1352	have to be implemented and in terms of the supported physical
1353	distances. See the documentation for details.
1354
1355	* src/TilingExtent.cc:
1356	* include/fastjet/internal/TilingExtent.hh:
1357	allowed the construction of TilingExtent from a list of PseudoJet
1358
13592016-03-01  Gavin Salam  <gavin.salam@cern.ch>
1360
1361	* include/fastjet/NNH.hh:
1362	added comment about need for distance part of the class to be symmetric.
1363
13642016-02-29  Gregory Soyez  <soyez@fastjet.fr>
1365
1366	* fastjet-config.in:
1367	restored lines mistakenly commented out
1368
1369	* include/fastjet/PseudoJet.hh:
1370	* src/PseudoJet.cc:
1371	moved the (templated) implementation of "objects_sorted_by_values"
1372	to the header so as to make it public (requested by S. Alioli)
1373
1374	In the test for a size mismatch, replaced the assertion by a
1375	fastjet::Error
1376
1377	* regression-tests/regression-test.pl:
1378	added test results for spherical SISCone
1379
1380	* fastjet-config.in:
1381	added a "--guess-prefix" option that tries deducing the prefix
1382	from the location of the fastjet-config script (it follows
1383	symlinks if needed)
1384	Q: do we want to add a "--enable-guess-prefix" option to configure
1385	   to have this the default behaviour?
1386
13872016-02-17  Gregory Soyez  <soyez@fastjet.fr>
1388
1389	* NEWS:
1390	brought in changes between releases 3.1.1 and 3.1.3
1391
1392	Note: to-date, all modifications implemented in the 3.1.X-devel
1393	branch have been backported to the trunk
1394
13952015-10-05  Matteo Cacciari  <cacciari@lpthe.jussieu.fr>
1396
1397        * fortran_wrapper/fastjet_fortran_example.f
1398	name of program inside file renamed from siscone_example
1399	to fastjet_fortran_example
1400
14012015-10-04  Gavin Salam  <gavin.salam@cern.ch>
1402
1403	* example/fastjet_timing.cc:
1404	fixed bug in placement of abs (revealed by cppcheck)
1405
14062015-09-21  Gavin Salam  <gavin.salam@cern.ch>
1407
1408	* tools/Subtractor.cc:
1409	* tools/fastjet/tools/Subtractor.hh:
1410	fixed bug where Subtractor::_unused_rho_m_warning was a
1411	mutable. It is now a static, as it should be.
1412
1413	* tools/fastjet/tools/GridMedianBackgroundEstimator.hh (RectangularGrid):
1414	fixed typo in comment
1415
14162015-07-08  Gregory Soyez  <soyez@fastjet.fr>
1417
1418	* m4/CGAL.m4 (ACX_CHECK_CGAL):
1419	Now check for -frounding-math (gcc) and -fp=-model strict (intel)
1420
1421	Note that when using the intel compiler, chances are you'll get
1422	both but -frounding-math will just be ignored [issuing a #10006
1423	command-line warning]
1424
14252015-07-03  Gavin Salam  <gavin.salam@cern.ch>
1426
1427	* src/ClusterSequence_Delaunay.cc:
1428	* src/DnnPlane.cc:
1429	added various extra output for when verbose is true, which was
1430	used to help debug the issue that was eventually traced to
1431	DnnPlane.h
1432
1433	* include/fastjet/internal/DnnPlane.hh:
1434	added DnnPlane::_is_not_null(vertex_handle) to centralize checks
1435	of whether a vertex_handle is null. This provides a workaround for
1436	the issue that (vertex_handle != NULL) seems not to work with
1437	clang-3.6.1 and CGAL-4.6.1.
1438
14392015-06-30  Gavin Salam  <gavin.salam@cern.ch> + Matteo
1440
1441	* include/fastjet/ClusterSequence.hh:
1442
1443	added #ifndef __CINT__ around the (templated)
1444	JetDefinition::operator() to solve issues with root5 reported by
1445	Adrian Sevcenco.
1446
14472015-04-22  Gregory Soyez  <soyez@fastjet.fr>
1448
1449	* configure.ac:
1450	added a --enable-cxx11-features argument to configure which in
1451	turn defines a FASTJET_HAVE_CXX11_FEATURES pre-processor symbol in
1452	fastjet/config.h
1453
14542015-03-08  Gregory Soyez  <soyez@fastjet.fr>
1455
1456	* tools/fastjet/tools/Filter.hh:
1457	removed a harmless "shadow" warning in set_subtractor()
1458
14592015-02-27  Gavin Salam  <gavin.salam@cern.ch> + Matteo
1460
1461	* scripts/mkfjcore.sh:
1462	directory used to create fjcore now gets removed
1463
1464	* regression-tests/nightly-check.pl:
1465	- exchanged order of make dist and mkfjcore
1466	- fjcore tarball now left in the main directory and extracted each
1467	  time to $tmpDir
1468	- make check test adapted to also handle newer autotools output
1469
14702015-02-27  Matteo Cacciari <cacciari@lpthe.jussieu.fr>
1471
1472        * scripts/mkfjcore.sh
1473	added the option to extract fjcore into any given directory rather
1474	that only as a subdirectory of scripts. Useful when running mkfjcore.sh
1475	in the nightly checks script.
1476
1477	* regression-tests/nightly-check.pl
1478	added the extraction (and test) of fjcore, and the running of a
1479	version of fastjet_timing_plugins compiled with fjcore. Also added
1480	a couple of basic fjcore tests to setups list.
1481
14822015-02-25  Gavin Salam  <gavin.salam@cern.ch>
1483
1484	* testsuite/TestSpecialEvents.hh:
1485	* testsuite/special-events/2015-02-out-of-bounds-reduced.txt: *** ADDED ***
1486	added a test to check the 2015-02-out-of-bounds issue
1487
14882015-02-23  Gavin Salam  <gavin.salam@cern.ch> + Matteo
1489
1490	* include/fastjet/ClusterSequence.hh (_bj_dist):
1491	added (possibly temporary) code for testing 2015-02-faster-deltaR2
1492	issue, with a define FASTJET_NEW_DELTA_PHI, which determines
1493	whether to use a new delta phi calculation suggested by Keith
1494	Pedersen. We are trying to establish if it brings significant
1495	improvements.
1496
14972015-02-21  Gavin Salam  <gavin.salam@cern.ch>
1498
1499	* testsuite/run_tests.cc:
1500	* testsuite/TestSpecialEvents.hh: *** ADDED ***
1501	* testsuite/special-events/2015-02-infinite-loop-simplified.txt: *** ADDED ***
1502	added class for testing special events (e.g. events known to have
1503	caused problems in older FJ versions, so that we don't run the
1504	risk of the same identical issue reappearing).
1505
1506	Also added the event from the 2015-02-infinite-loop issue and
1507	checked that the test "fails" if we remove the fix for the issue.
1508
1509	And added check in run_tests.cc that all command-line options have
1510	been used.
1511
1512	* testsuite/TestBase.hh:
1513	added VERIFY_RUNS as a check (with graceful catch) that something
1514	runs rather than throws.
1515
1516	* testsuite/mkmk: *** ADDED ***
1517	to generate Makefile automatically (requires Gavin's mkcxx.pl)
1518
15192015-02-20  Matteo Cacciari <cacciari@lpthe.jussieu.fr
1520
1521        example/fastjet_timing_plugins.cc
1522	regression-tests/test-all-algs.pl
1523
1524	Modified fastjet_timing_plugins.cc so that it can be compiled with
1525	fjcore using something like
1526
1527        g++ -D__FJCORE__ fastjet_timing_plugins_fjcore.cc \
1528	../scripts/fjcore-3.2.0-devel/fjcore.cc CmdLine.cc \
1529	-I ../scripts/fjcore-3.2.0-devel/ -o fastjet_timing_plugins_fjcore
1530
1531        Modified test-all-algs.pl so that it now takes a command line
1532	option "-fjcore" that runs the version of fastjet_timing_plugins
1533	compiled with fjcore instead of the one compiled with the
1534	full fastjet
1535
1536	Not fully robust yet, e.g. running test-all-algs.pl using -areas
1537	or -bkgds options together with -fjcore will break, because
1538	the reading of some command-line options in fastjet_timing_plugins.cc
1539	is so nested that excluding each and every one of them using __FJCORE__
1540	guards would be a significant amount of work, and make the code
1541	perhaps uselessly unreadable
1542
15432015-02-20  Gregory Soyez  <soyez@fastjet.fr>
1544
1545	* include/fastjet/Error.hh:
1546	fixed a harmless gcc -Wshadow warning in TnternalError
1547
1548	* include/fastjet/internal/LazyTiling9Alt.hh:
1549	* src/LazyTiling9SeparateGhosts.cc:
1550	* src/LazyTiling9Alt.cc:
1551	* src/LazyTiling25.cc:
1552	* src/LazyTiling9.cc:
1553	replaced the C preprocessor symbol by a C++ const (cleaner and
1554	inside the fastjet namespace)
1555
15562015-02-19  Gregory Soyez  <soyez@fastjet.fr>
1557
1558	* src/ClusterSequence.cc (_add_step_to_history):
1559	thrown an InternalError if we're trying to cluster a particle that
1560	has previsouly been clustered
1561
1562	* include/fastjet/Error.hh (InternalError):
1563	Added an InternalError class that will be thrown in critical
1564	internal errors that we still want to be catchable by end-users
1565
1566	* include/fastjet/internal/LazyTiling9Alt.hh:
1567	* src/LazyTiling9SeparateGhosts.cc:
1568	* src/LazyTiling9Alt.cc:
1569	* src/LazyTiling25.cc:
1570	* src/LazyTiling9.cc:
1571	(_add_untagged_neighbours_to_tile_union_using_max_info): added a
1572	margin of security in the comparison of "distance_to_tile" with
1573	"max_NN_dist" when listing tiles need to be browsed for points to
1574	update (because their current NN is one of the particle(s) that
1575	just clustered). This prevents missed updates due to rounding
1576	errors. [Fixing the cause of the bug reported by Jochen Olt on
1577	February 12]
1578
15792015-02-18  Matteo Cacciari <cacciari@lpthe.jussieu.fr>
1580
1581        * src/ClusterSequence.cc
1582        moved an FJCORE guard, previously in the wrong place
1583        and causing an erroneous throw in fjcore about the
1584        N2MHTLazy9AntiKtSeparateGhosts strategy (bug reported by Sergei
1585        Chekanov)
1586
15872015-01-06  Gregory Soyez  <soyez@fastjet.fr> + Matteo
1588
1589	* CHECKLIST:
1590	small improvements (notes added)
1591
1592	* NEWS:
1593	added the release notes from FastJet 3.1.1.
1594
15952014-12-24  Gavin Salam  <gavin.salam@cern.ch>
1596
1597	* tools/fastjet/tools/GridMedianBackgroundEstimator.hh:
1598	added constructor that takes the explicit parameters for the
1599	rectangular grid without the need for an intermediate Rectangular
1600	Grid. (Request from Pavel Demin).
1601
1602	* testsuite/TestGrids.hh:
1603	added tests of new GMBGE constructor with explicit RG arguments.
1604
1605	[merged from rev 3778 of 3.1.X-devel]
1606
16072014-12-24  Gavin Salam  <gavin.salam@cern.ch>
1608
1609	* gtags.sh -> scripts/gtags.sh:
1610	and added testsuite to the list of directories
1611
16122014-12-23  Gregory Soyez  <soyez@fastjet.fr>
1613
1614	* include/fastjet/RectangularGrid.hh:
1615	fixed typo in previous commit
1616
16172014-12-22  Gavin Salam  <gavin.salam@cern.ch>
1618	* src/RectangularGrid.cc:
1619	* include/fastjet/RectangularGrid.hh:
1620	fixed comment about _is_good and set the Id keyword (this was
1621	missing before).
1622
16232014-12-22  Gavin Salam  <gavin.salam@cern.ch>
1624
1625	* tools/fastjet/tools/GridMedianBackgroundEstimator.hh:
1626	made this derive publicly from RectangularGrid.
1627
1628	* include/fastjet/RectangularGrid.hh (TilingBase):
1629	added a virtual destructor.
1630
1631	(both requests/observations from Pavel Demin)
1632
16332014-12-19  Gregory Soyez  <soyez@fastjet.fr>
1634
1635	* regression-tests/test-contrib.pl:
1636	run ./configure explicitly (instead of configure) in case . is not
1637	in the PATH
1638
16392014-12-19  Gavin Salam  <gavin.salam@cern.ch>
1640
1641	* gtags.sh: *** ADDED ***
1642	script to generate gtags files for easier navigation around the
1643	project within emacs (use ggtags-mode)
1644
16452014-12-19  Gregory Soyez  <soyez@fastjet.fr>
1646
1647	* CHECKLIST:
1648	adedd a note to make sure that one rebuilds testsuite/run_tests before running it!
1649
1650	* tools/Filter.cc (_finalise):
1651	fixed wrong test for non-explicit-ghosts when trying to filter C/A
1652	jets with the C/A algorithm.
1653	Reported by David Adams.
1654
16552014-12-17  Gavin Salam  <gavin.salam@cern.ch>
1656
1657	* tools/fastjet/tools/Recluster.hh:
1658	fixed typos in comments
1659
16602014-12-09  Gregory Soyez  <soyez@fastjet.fr>
1661
1662	* tools/fastjet/tools/Filter.hh:
1663	added subtractor() to retreive (a pointer to) the subtractor used
1664	internally
1665
16662014-11-04  Gregory Soyez  <soyez@fastjet.fr>
1667
1668	* Doxyfile-devel:
1669	set version number to 3.2.0-devel, added missing file (as already
1670	done in the main Doxyfile)
1671
16722014-09-30  Gregory Soyez  <soyez@fastjet.fr> + Gavin
1673
1674	* configure.ac:
1675	* include/fastjet/config_win.h:
1676	* Doxyfile:
1677	* tex/fastjet-doc.tex:
1678	  changed version to 3.2.0-devel
1679
16802014-09-30  Gavin SALAM  <gavin.salam@cern.ch> + Gregory
1681
1682	* Release of FastJet 3.1.0
1683
16842014-09-30  Gregory Soyez  <soyez@fastjet.fr>
1685
1686	* tools/fastjet/tools/Recluster.hh:
1687	put the Recluster tool in the "generic tools" doxygen module
1688
16892014-09-29  Gavin SALAM  <gavin.salam@cern.ch> + Gregory
1690
1691        * Doxyfile
1692        * configure.ac
1693        * doc/fastjet-doc.tex
1694        * CHECKLIST
1695        * include/fastjet/config_win.h
1696	updated version number to 3.1.0 in preparation for release
1697	siscone now points to 3.0.0
1698
1699	* include/fastjet/Selector.hh:
1700	fixed comment for InvalidArea (+minor typo fix)
1701
1702	* Doxyfile:
1703	made sure certain files like README etc are linked to from the
1704	file list.
1705
1706	* AUTHORS:
1707	updated list of people who have helped out
1708
17092014-09-29  Gregory Soyez  <soyez@fastjet.fr>
1710
1711	* include/fastjet/ClusterSequence.hh:
1712	placed _Line and _Parabola in the "internal" doxygen doc
1713
17142014-09-25  Gregory Soyez  <soyez@fastjet.fr> + Matteo
1715
1716	* NEWS:
1717	further work on the 3.1.0 release notes
1718
17192014-09-24  Gregory Soyez  <soyez@fastjet.fr>
1720
1721	* NEWS:
1722	preliminary version of the 3.1.0 release notes
1723
17242014-09-18  Gavin Salam  <gavin.salam@cern.ch>
1725
1726	* configure.ac:
1727	fixed typo in --enable-demangling help message
1728
1729	* regression-tests/nightly-check.pl:
1730	added minimal check that --enable-demangling doesn't break anything
1731	(commit done only 2014-09-29)
1732
17332014-09-18  Matteo Cacciari  <cacciari@lpthe.jussieu.fr>
1734
1735        * regression-tests/nightly-check.pl
1736          Added a test with gcc 4.9
1737
17382014-09-18  Gregory Soyez  <soyez@fastjet.fr>
1739
1740	* doc/fastjet-doc.tex:
1741	  . in the WTA section, added a footnote saying that WTA_E_scheme
1742	    is sick and therefore not implemented
1743	  . added a few words here and there to highlight the fact that
1744	    "SISCone" means SISCone with SM (better avoid any confusion)
1745
1746	* plugins/SISCone/fastjet/SISConeBasePlugin.hh:
1747	added a note that we recommend to implement
1748	UserScaleBase::is_larger() whenev possible.
1749
17502014-09-18  Matteo Cacciari  <cacciari@lpthe.jussieu.fr>
1751
1752        * src/Error.cc
1753	modified the guard to LimitedWarning Error::_execinfo_undefined;
1754	so that it's the same that is now used elsewhere and in Error,hh,
1755	i.e. #if (!defined(FASTJET_HAVE_EXECINFO_H)) || defined(__FJCORE__)
1756	Note that #ifndef FASTJET_HAVE_EXECINFO_H would actually be sufficient.
1757
17582014-09-18  Gregory Soyez  <soyez@fastjet.fr>
1759
1760	* include/fastjet/Error.hh
1761	* src/Error.cc:
1762	restored some FJCORE guards to keep it more lightweight
1763
1764	* include/fastjet/Error.hh
1765	* src/Error.cc:
1766	fixed a few details:
1767	  . included the config.h header in Error.hh
1768	  . defined _demangle in the header
1769	  . removed unnecessary __FJCORE__ guards (since
1770	    FASTJET_HAVE_EXECINFO_H) is not defined in FJCORE
1771	    This allows to used -DFASTJET_HAVE_EXECINFO_H on
1772	    the command line.
1773
1774	* include/fastjet/RectangularGrid.hh:
1775	added '_in' suffix to a few ctor arguments to prevent a series of
1776	Wshadow warnings
1777
17782014-09-18  Matteo Cacciari  <cacciari@lpthe.jussieu.fr>
1779
1780	* include/fastjet/Error.hh
1781        * src/Error.cc
1782	* scripts/mkfjcore.sh
1783
1784	- demangle() included in the Error class
1785	- Added a warning to Error:set_print_backtrace in case
1786	  backtrace is asked for by the user but EXECINFO is not
1787	  available
1788	- tweaked mkfjcore.sh to make the backtrace warning work
1789	  properly in fjcore
1790
17912014-09-11  Gavin Salam  <gavin.salam@cern.ch>
1792
1793	* src/ClusterSequence.cc:
1794	now throws Error in case of use of N2MHTLazy9AntiKtSeparateGhosts
1795	from fjcore (since it's no longer supported)
1796
17972014-09-11  Gregory Soyez  <soyez@fastjet.fr>
1798
1799	* src/Error.cc:
1800	added a missing FJCORE guard
1801
1802	* src/Error.cc:
1803	* configure.ac:
1804	* config.h.in:
1805	* m4/demangle.m4:              *** ADDED ***
1806	added demangling of the backtrace symbols to the backtrace. This
1807	is only activated if (in order of the tests)
1808	  . execinfo.h          is found
1809	  . --enable-demangling is specified at configure time
1810	  . the GNU C++ ABI     is supported
1811
18122014-09-10  Gregory Soyez  <soyez@fastjet.fr>
1813
1814	* include/fastjet/JetDefinition.hh:
1815	* src/JetDefinition.cc:
1816	commented out the WTA_E_scheme
1817
1818	Energy-ordering can lead to dangerous situations with particles at
1819	rest. We instead implement the WTA_modp_scheme
1820
18212014-09-08  Matteo Cacciari <cacciari@lpthe.jussieu.fr>
1822
1823        * src/Error.cc
1824	* scripts/mkfjcore.sh
1825
1826	Added FJCORE guards around the backtrace block and the corresponding
1827	include in Error.cc, so that they are never included in fjcore
1828	(issues under Windows with MSVC, as reported by
1829	Chaowaroj Wanotayaroj <ma.x@cern.ch>). Also fully cleaned away
1830	the EXECINFO guards from config_auto.h (not really necessary though)
1831
1832        * src/ClusterSequence.cc
1833	Added FJCORE guards around Lazy9AntiKtSeparateGhosts strategy so
1834	that it's never included in fjcore. Eliminated the files accordingly
1835	from mkfjcore.sh
1836
18372014-09-08  Gregory Soyez  <soyez@fastjet.fr> + Matteo + Gavin
1838
1839	* tools/fastjet/tools/Subtractor.hh:
1840	* tools/Subtractor.cc:
1841	added a Subtractor(rho, rho_m) constructor + worked on some error messages
1842
1843	* example/07-subtraction.cc:
1844	added the mass to the printed output
1845
1846	* plugins/D0RunICone/fastjet/D0RunIConePlugin.hh:
1847	* plugins/D0RunICone/fastjet/D0RunIpre96ConePlugin.hh:
1848	* tools/fastjet/tools/Subtractor.hh:
1849	explicitly included base.hh to help Doxygen [likely a bug in Doxygen!]
1850
1851	* src/JetDefinition.cc:
1852
1853	For WTA_modp scheme, added a safeguard that prevents divisions by
1854	zero if both objects are at rest (the energy of the sum will
1855	therefore be the mass of pa)
1856
1857	For WTA_E scheme, if the hardest object is at rest, keep the sum
1858	at rest and set the energy to the sum of energies: this implies
1859	that we break the rule of the mass being that of the higher-energy
1860	particle.
1861
18622014-09-05  Gavin Salam  <gavin.salam@cern.ch>
1863
1864	* include/fastjet/JetDefinition.hh:
1865	amplified doxygen documentation on WTA schemes. Also mentioned
1866	that all pt^2, WTA, etc. schemes are collinear safe only for
1867	algorithms with an appropriate recombination order.
1868
1869	* plugins/SISCone/SISConeSphericalPlugin.cc (description):
1870	* plugins/SISCone/SISConePlugin.cc (description):
1871
1872	small tweak so that if there is a user scale for progressive
1873	removal and it has a description, that description gets printed
1874	out as part of the SISCone description
1875
18762014-09-05  Gregory Soyez  <soyez@fastjet.fr>
1877
1878	* example/02-jetdef.cc:
1879	mentioned the WTA schemes in the example
1880
18812014-09-04  Gregory Soyez  <soyez@fastjet.fr>
1882
1883	* src/JetDefinition.cc:
1884	implemented the recombination for WTA_{E,modp}_scheme
1885
1886	* includec/fastjet/JetDefinition.hh:
1887	* src/JetDefinition.cc:
1888	started the addition of WTA recombination schemes
1889	 . WTA_pt_scheme fully done
1890	 . WTA_{E,modp}_scheme have a description and a (inexistant)
1891	   preprocess step but still lack the actual recombination
1892
1893
18942014-09-04  Gregory Soyez  <soyez@fastjet.fr> + Gavin
1895
1896	* plugins/SISCone/SISConeBasePlugin.cc:     *** ADDED ***
1897	* plugins/SISCone/Makefile.am:
1898	* plugins/SISCone/makefile.static:
1899	SISConeBasePlugin::UserScaleBase::is_larger now uses the cached
1900	value and has been moved in a proper .cc file (allows to declare
1901	StructureType at the end of the class)
1902
1903	* plugins/SISCone/fastjet/SISConeSphericalPlugin.hh:
1904	* plugins/SISCone/SISConeSphericalPlugin.cc:
1905	implemented the user-defined scale support in the spherical
1906	version too
1907
1908	* plugins/SISCone/SISConePlugin.cc:
1909	* plugins/SISCone/fastjet/SISConePlugin.hh:
1910	* plugins/SISCone/fastjet/SISConeBasePlugin.hh:
1911	   . worked on the description of the plugin
1912	   . moved the UserScaleBase class to SISConeBasePlugin
1913	     derived plugins now use a template specialisation
1914	       SISConePlugin::UserScaleBaseStructureType<type_of_siscone_jet>
1915
1916	* plugins/SISCone/SISConePlugin.cc:
1917	* plugins/SISCone/fastjet/SISConePlugin.hh:
1918	* plugins/SISCone/fastjet/SISConeBasePlugin.hh:
1919	carried on with the support of user-defined scales
1920	[current version under testing].
1921
19222014-09-04  Gregory Soyez  <soyez@fastjet.fr>
1923
1924	* plugins/SISCone/SISConePlugin.cc:
1925	* plugins/SISCone/SISConeSphericalPlugin.cc:
1926	* plugins/SISCone/fastjet/SISConePlugin.hh:
1927	* plugins/SISCone/fastjet/SISConeSphericalPlugin.h:
1928	added support for SISCone with progressive removal (use
1929	plugin.set_progressive_removal() to activate)
1930
1931	started the work towards support for user-defined scale to decide
1932	which is the hardest stable cone in progressive-removal
1933	mode. [breaks compilation for now... committed to carry on
1934	development with Gavin]
1935
19362014-09-03  Gavin Salam  <gavin.salam@cern.ch> + Gregory
1937
1938	* plugins/SISCone/SISConePlugin.cc (run_clustering):
1939	* plugins/SISCone/SISConeSphericalPlugin.cc (run_clustering):
1940	added comment to explain that jets are transferred such that
1941	CS::inclusive_jets() returns them in the order they were created
1942	by SISCone.
1943
19442014-09-03  Gavin Salam  <gavin.salam@cern.ch>
1945
1946	* src/PseudoJet.cc (join):
1947	* include/fastjet/CompositeJetStructure.hh (join):
1948	in join with a fixed number of input PseudoJets, reserved space
1949	ahead of time in the temporary pieces vector.
1950
19512014-08-15  Gavin SALAM  <gavin.salam@cern.ch> + Matteo
1952
1953        * Doxyfile
1954        * configure.ac
1955        * doc/fastjet-doc.tex
1956        * CHECKLIST
1957        * NEWS
1958	switched version number back to 3.1.0-devel
1959
19602014-08-15  Gavin SALAM  <gavin.salam@cern.ch> + Matteo
1961
1962        * Doxyfile
1963        * configure.ac
1964        * doc/fastjet-doc.tex
1965        * CHECKLIST
1966        * NEWS
1967	update of version number for
1968	Release of FastJet fastjet-3.1.0-beta.1
1969
1970
19712014-08-15  Gregory Soyez  <soyez@fastjet.fr>
1972
1973	* tools/Filter.cc:
1974	added a few safeguards for situations where there is no subjets
1975
19762014-08-15  Gavin Salam  <gavin.salam@cern.ch> + Matteo
1977
1978	* tools/fastjet/tools/Recluster.hh:
1979	switched default for acquire_reombiner_in in constructor with
1980	new_jet_def so that it is now false (i.e. the jet_def is used
1981	exactly as it is supplied).
1982
19832014-08-15  Gavin Salam  <gavin.salam@cern.ch>
1984
1985	* regression-tests/test-contrib.pl:  *** ADDED ***
1986	added script to facilitate testing of fjcontrib
1987
19882014-08-14  Gavin Salam  <gavin.salam@cern.ch>
1989
1990	* tools/Recluster.cc:
1991	* tools/fastjet/tools/Recluster.hh:
1992	added functions set_acquire_recombiner(...) and set_keep(...) to
1993	control behaviour after construction.
1994
1995	Fixed issue in case where there are no subjets and keep() is false
1996	(now returns empty jet).
1997
1998	In comments and variable nameing replaced subjet_def ->
1999	new_jet_def and subjets with inclusive jets.
2000
2001	Various other small changes to comments.
2002
20032014-08-13  Gavin Salam  <gavin.salam@cern.ch> + Matteo
2004
2005	* plugins/CDFCones/CDFcode/JetCluAlgorithm.cc:
2006	* plugins/CDFCones/CDFcode/MidPointAlgorithm.cc:
2007	small changes, labelled in code, to avoid compiler warnings about
2008	unused variables and comparisons between unsigned int and int
2009
2010	* src/AreaDefinition.cc:
2011	replaced cerr + exit with a throw.
2012
2013	* src/LimitedWarning.cc:
2014	introduced max_warn() and n_warn_so_far() functions and changed
2015	warning text so that it says "WARNING from FastJet" rather than
2016	just "WARNING".
2017
2018	* include/fastjet/ClusterSequence.hh:
2019	* src/ClusterSequence.cc (exclusive_jets_up_to):
2020	rephrased warning for exclusive jets to reflect the fact that it
2021	may be used with C/A and genkt. Also switched it over to the
2022	LimitedWarning system.
2023
2024	* include/fastjet/internal/DynamicNearestNeighbours.hh:
2025	DnnError now derives from fastjet::Error
2026
20272014-08-13  Gavin Salam  <gavin.salam@cern.ch>
2028
2029	* include/fastjet/RectangularGrid.hh:
2030	* src/RectangularGrid.cc:
2031	made sure that all member variables are set even for the default
2032	constructor (issue revealed by Coverity when testing SoftKiller).
2033	Added is_initialised() member to base class and RectangularGrid,
2034	to allow classes using the grid to check the grid is sensible.
2035
2036	* tools/fastjet/tools/GridMedianBackgroundEstimator.hh:
2037	throws exception if contructed with an uninitialised grid.
2038
2039	* plugins/GridJet/GridJetPlugin.cc:
2040	throws on uninitialised grid.
2041
2042	* testsuite/run_tests.cc:
2043	* testsuite/TestGrids.hh: *** ADDED ***
2044	added a few basic tests of the grid initialisation, GridJetPlugin,
2045	etc.
2046
20472014-08-13 Matteo Cacciari <cacciari@lpthe.jussieu.fr>
2048
2049        Files manually merged from the 3.0.X branch:
2050
2051        * scripts/mkfjcore.sh
2052	* scripts/Makefile-fjcore.txt               *** ADDED ***
2053	* scripts/preamble-fjcore.txt
2054
2055	switched mkfjcore to -O2 (flag also added in Makefile-fjcore.txt)
2056	Added new Lazy* TilingExtent and files to mkfjcore.sh
2057
20582014-08-13  Gavin SALAM  <gavin.salam@cern.ch> + Matteo & Gregory
2059
2060	* NEWS:
2061	reshuffled entries to try to get an order reflecting importance of
2062	different changes.
2063
20642014-08-12  Gregory Soyez  <soyez@fastjet.fr> + Gavin
2065
2066	* example/07-subtraction.cc:
2067	switched on use_rho_m and _safe_mass
2068
2069	* NEWS:
2070	worked on the list of changes since FastJet-3.0.6
2071
2072	* include/fastjet/internal/LazyTiling9SeparateGhosts.hh:
2073	* src/LazyTiling9SeparateGhosts.cc:
2074	declared ghost_pt2_threshold as a static (public) member of the
2075	class. [with a note that this is use-ar-your-own-risk material]
2076
2077	* tools/Subtractor.cc (_amount_to_subtract):
2078	small change to warning message about non-zero rho_m.
2079
20802014-08-12  Gavin SALAM  <gavin.salam@cern.ch> + Gregory
2081
2082	* plugins/GridJet/GridJetPlugin.cc:
2083	* plugins/GridJet/fastjet/GridJetPlugin.hh:
2084	switched this over to the use of RectangularGrid internally, plus
2085	a new constructor that takes a RectangularGrid. Added code to
2086	handle cases where some grid tiles are deselected. Also removed an
2087	apparently redundant copy constructor.
2088
2089	Passes the test-all-algs tests, and also examined behaviour
2090	with deselected tiles in
2091	issue-tracker/2014-08-08-testing-rect-grid/test-gridjet.cc
2092
2093	* include/fastjet/RectangularGrid.hh:
2094	added rapmin(), rapmax(), drap() and dphi() enquiry functions.
2095
20962014-08-12  Gregory Soyez  <soyez@fastjet.fr>
2097
2098	* tools/Subtractor.cc:
2099	* tools/fastjet/tools/Subtractor.hh:
2100	* doc/fastjet-doc.tex:
2101	used safe_mass instead of safe (or be_safe)
2102
21032014-08-12  Gavin Salam  <gavin.salam@cern.ch>
2104
2105	* src/LimitedWarning.cc:
2106	* include/fastjet/LimitedWarning.hh:
2107	introduced versions of warn that take a const char *, in addition
2108	to the existing ones with a const string &, so that calls of the
2109	form warn("some message") don't need to create an intermediate
2110	string (which could be slow). The master code is now the char *
2111	version, and the string version just pass the resulting c_str().
2112
2113	* tools/fastjet/tools/Subtractor.hh:
2114	* tools/Subtractor.cc (_amount_to_subtract):
2115	added a warning for cases where rho_m is available and
2116	substantially non-zero, but not used.
2117
21182014-08-12  Gregory Soyez  <soyez@fastjet.fr>
2119
2120	* tools/Subtractor.cc:
2121	fixed typo in the treatment of CHS events
2122
2123	* configure.ac:
2124	used -O2 rather than -O3 as a default (more stable timings. O3 was
2125	only giving a small gain, sometimes being worse than -O2 and being
2126	much more compiler-version-dependent than O2)
2127
2128	* tools/Filter.cc:
2129	reinserted the missing bit of code needed to include internal
2130	subtraction!
2131
21322014-08-11  Gavin Salam  <gavin.salam@cern.ch> + Gregory & Matteo
2133
2134	* include/fastjet/PseudoJet.hh:
2135	* src/PseudoJet.cc:
2136	operator* and operator*= now premptively call
2137	_ensure_valid_rap_phi() so that we can always ensure that rap()
2138	and phi() will be conserved after a *= operation (previously, if
2139	they hadn't yet been cached, and you multiplied by 0, you would
2140	get a non-sensical rap() and phi()).
2141
21422014-08-11  Gavin Salam  <gavin.salam@cern.ch>
2143
2144	* scripts/preamble-fjcore.txt:
2145	small tweaks to fjcore preamble
2146
21472014-08-11  Gregory Soyez  <soyez@fastjet.fr>
2148
2149	* tools/Subtractor.cc:
2150	* tools/fastjet/tools/Subtractor.hh:
2151	worked on the description; tidied a few loose ends.
2152
2153	* tools/Subtractor.cc:
2154	* tools/fastjet/tools/Subtractor.hh:
2155	added several options to the original Subtractor:
2156	  . support for rho_m (set_use_rho_m(bool)) [off by default]
2157	  . support for mass-safety tests (set_safe(bool)) [off by default]
2158	  . support for CHS events using
2159	    set_known_selectors(const Selector &sel_known_vertex,
2160			        const Selector &sel_leading_vertex)
2161
21622014-08-11  Gavin SALAM  <gavin.salam@cern.ch> + Gregory
2163
2164	* src/RectangularGrid.cc:
2165	* include/fastjet/RectangularGrid.hh:
2166	index() -> tile_index()
2167	is_good() -> tile_is_good()
2168
2169	* tools/GridMedianBackgroundEstimator.cc:
2170	* tools/fastjet/tools/GridMedianBackgroundEstimator.hh:
2171	took into account above name changes
2172
21732014-08-08  Gavin Salam  <gavin.salam@cern.ch> (later)
2174
2175	* include/fastjet/RectangularGrid.hh:
2176	* src/RectangularGrid.cc:
2177	constructor can now take a Selector that causes only certain tiles
2178	to be considered "good"
2179
2180	* tools/fastjet/tools/GridMedianBackgroundEstimator.hh
2181	* tools/GridMedianBackgroundEstimator.cc:
2182	Added constructor that just takes a RectangularGrid.
2183
2184	Implemented support for cases where some tiles are discarded
2185	through the mechanism of Selectors for good tiles.
2186
2187	Tests in issue-tracker/2014-08-08-testing-rect-grid
2188
21892014-08-08  Gavin Salam  <gavin.salam@cern.ch>
2190
2191	* include/fastjet/RectangularGrid.hh:
2192	added mean_tile_area() and in the base class, by default
2193	tile_area(itile) returns mean_tile_area() (since
2194	all_tiles_equal_area() also returns true).
2195
2196	* tools/GridMedianBackgroundEstimator.cc:
2197	* tools/fastjet/tools/GridMedianBackgroundEstimator.hh:
2198	switched GMBGE over to the RectangularGrid class (enabled with
2199	the FASTJET_GMBGE_USEFJGRID symbol). See
2200	2013-particle-level-sub/fj31-devel-timing-tests for timing
2201	tests, which suggest a slight advantage for the new setup.
2202	For SoftKiller there appears to be little difference.
2203
22042014-08-04  Gavin Salam  <gavin.salam@cern.ch>
2205
2206	* include/fastjet/RectangularGrid.hh:
2207	* src/RectangularGrid.cc:
2208	* & corresponding Makefile.am files
2209	added a new RectangularGrid class, intended to provide a common
2210	core for at least some of the uses we have of rectangular grids.
2211
22122014-08-02  Gavin Salam  <gavin.salam@cern.ch>
2213
2214	* regression-tests/test-all-algs.pl (setRefResults):
2215	for areas checksums, added a comment about results coming out
2216	differently on Gavin's laptop, and in one case checked that this
2217	is due to a single last digit change.
2218
2219	* src/ClusterSequence.cc (_best_strategy):
2220	added handling of cambridge_for_passive_algorithm (treat it like
2221	kt). This resolves today's nightly-check failure on cambridge
2222	passive areas.
2223
2224	* include/fastjet/JetDefinition.hh:
2225	noted in comments that cambridge_for_passive_algorithm is not
2226	intended for the end-user, but rather for internal games.
2227	Also added a comment that genkt_for_passive_algorithm is not
2228	currently implemented.
2229
2230	* regression-tests/test-all-algs.pl:
2231	now handles comma-separated strategy lists (not just colon-separated).
2232
22332014-08-01  Gavin SALAM  <gavin.salam@cern.ch>
2234
2235	* testsuite/TestRecombiners.hh:
2236	added some very basic tests of recombiners, that setting to a
2237	default recombination scheme works sensibly and that copying a
2238	pointer to a recombination scheme also works. OK also with
2239	valgrind.
2240
22412014-08-01  Gregory Soyez  <soyez@fastjet.fr>
2242
2243	* tools/GridMedianBackgroundEstimator.cc:
2244	* tools/fastjet/tools/GridMedianBackgroundEstimator.hh:
2245	replaced _disable_rho_m with _enable_rho_m internally
2246
2247	* tools/JetMedianBackgroundEstimator.cc:
2248	* tools/fastjet/tools/JetMedianBackgroundEstimator.hh:
2249	replaced _disable_rho_m with _enable_rho_m internally
2250	+ has_rho_m now also returns false if there is a density class
2251
22522014-08-01  Gavin SALAM  <gavin.salam@cern.ch> & Gregory
2253
2254	* tools/fastjet/tools/JetMedianBackgroundEstimator.hh:
2255	* tools/fastjet/tools/GridMedianBackgroundEstimator.hh:
2256        disable_rho_m() replaced with set_compute_rho_m()
2257
2258	* tools/fastjet/tools/BackgroundEstimatorBase.hh:
2259	changes to comments
2260
2261	* tools/fastjet/tools/Recluster.hh:
2262	* tools/Recluster.cc:
2263	work on comments and also slight change to interface relating to
2264	C/A optimisation.
2265
2266	* src/ClusterSequence.cc:
2267	_best_strategy will now assert(false) if the jet alg is not one of
2268	kt, antikt, cam or genkt, and drops back to kt or antikt choices
2269	depending on genkt's p value.
2270
2271	The routine that calls it now replaces the NlnN strategy with
2272	N2MHTLazy25 if NlnN isn't available.
2273
22742014-08-01  Gregory Soyez  <soyez@fastjet.fr>
2275
2276	* src/ClusterSequence.cc:
2277	best_strategy() now follows the transitions sugegsted by the
2278	latest timing run
2279
2280	* include/fastjet/Selector.hh:
2281	* src/Selector.cc:
2282	added Selector::scalar_pt sum that sums the pt of the objecs
2283	passing the Selector.
2284
22852014-07-31  Gregory Soyez  <soyez@fastjet.fr>
2286
2287	* tools/JetMedianBackgroundEstimator.cc:
2288	fix: enabled rho_m in reset()
2289	do not compute rho_m if a jet density class is provided.
2290	fix: critical "pt" v. "dt" typo in _compute()
2291
2292	* tools/JetMedianBackgroundEstimator.cc:
2293	* tools/fastjet/tools/JetMedianBackgroundEstimator.hh:
2294	added support for rho_m, sigma_m (on by default but can be turned
2295	off using disable_rho_m())
2296	TODO: disable rho_m automatically when a density class is provided
2297	[do not forget to set it back if an empty density class is passed]
2298
2299	* tools/fastjet/tools/BackgroundEstimatorBase.hh:
2300	fixed doxygen comment
2301
2302	* tools/GridMedianBackgroundEstimator.cc:
2303	* tools/fastjet/tools/GridMedianBackgroundEstimator.hh:
2304	  . no longer cache the scalar pt in each grid cell (<~5% effect on
2305	    timing, omitting the call to _percentile in the version with
2306	    caching)
2307	  . added support for rho_m, sigma_m (on by default but can be
2308	    turned off using disable_rho_m())
2309
2310	* tools/fastjet/tools/BackgroundEstimatorBase.hh:
2311	added rho_m(), sigma_m(), rho_m(jet), sigma_m(jet) [throw by
2312	default] and has_rho_m() [false by default].
2313
23142014-07-30  Gregory Soyez  <soyez@fastjet.fr>
2315
2316	* tools/fastjet/tools/Recluster.hh:
2317	worked on the description of the class
2318
2319	* tools/fastjet/tools/Filter.hh:
2320	properly handled the case where C/A optimisation has been used and
2321	the jet has a non-explicit-ghost jet area
2322
2323	* tools/Recluster.cc:
2324	no longer keep track of the jet definition used to obtain the
2325	subjets. It can be accessed through the subjets themselves.
2326
2327	* src/JetDefinition.cc:
2328	reinserted the missing genkt_algorithm in n_parameters_for_algorithm
2329
2330	* tools/Filter.cc :
2331	adapted to use the Keep enum in Recluster.
2332	TODO: fix the "discard_area" part for non-explicit-ghost areas
2333	with C/A reclustering
2334
2335	Note: we could get rid of the sub jet def returned by
2336	Recluster::get_new_jets_and_def since it can be obtained from the
2337	subjets.
2338
2339	* tools/fastjet/tools/Recluster.hh:
2340	* tools/Recluster.cc:
2341	  . added an enum (Keep) that takes values keep_only_hardest or
2342	    keep_all, replacing the 'single' member
2343	  . moved the ctor structure to
2344	      Recluster(JetDef, acquire_recombiner = true,
2345	                Keep keep_in = Recluster::keep_only_hardest)
2346              Recluster(JetAlg, R, keep_in = Recluster::keep_only_hardest)
2347              Recluster(JetAlg, keep_in = Recluster::keep_only_hardest)
2348	    simplified quite a bit the structure accordingly
2349	  . used the new description functionalities in JetDefinition
2350	  . added Recluster::disable_cambridge_optimisation to disable the
2351	    attempt to optimise for C/A
2352	  . introduced get_new_jets_and_def(...) and generate_output_jet().
2353	    These are the two steps of result() and this should ease the
2354	    Filter.
2355
2356	* include/fastjet/JetDefinition.hh:
2357	* src/JetDefinition.cc:
2358	added JetDefinition::n_parameters_for_algorithm (static),
2359	JetDefinition::algorithm_description (static) and
2360	description_no_recombiner().
2361	Slightly simplified other bits of the code accordingly.
2362
23632014-07-29  Gregory Soyez  <soyez@fastjet.fr>
2364
2365	* include/fastjet/ClusterSequenceArea.hh:
2366	replaced an error message printed to stdout (followed by exit(-1))
2367	by an error thrown when the area type is unknown.
2368	Note that this uses ostringstream, so we could try to move that to
2369	the cc (or introduce AreaDefinition::area_type_str())
2370
23712014-07-29  Gavin Salam  <gavin.salam@cern.ch>
2372
2373        * include/fastjet/JetDefinition.hh:
2374        * src/JetDefinition.cc:
2375	moved new set_recombiner code into the .cc file, included a test
2376	of the JetDef invariants and ensured that recombination_scheme()
2377	returns correct result in case of external recombiners
2378
2379        * testsuite/TestRecombiners.hh:
2380        * testsuite/run_tests.cc:
2381	added first elements of testing for Recombiners.
2382
23832014-07-29  Gregory Soyez  <soyez@fastjet.fr>
2384
2385	* tools/Recluster.cc:
2386	* tools/Pruner.cc:
2387	* tools/fastjet/tools/Recluster.hh:
2388	* tools/fastjet/tools/Pruner.hh:
2389	arranged the code to use JD::set_recombiner(const JetDefinition&)
2390	instead of JD::set_recombiner(Recombiner*)
2391
2392	* include/fastjet/JetDefinition.hh:
2393	introduced set_recombiner(const JetDefinition&) that correctly
2394	copies the recombiner from another jet definition. When
2395	applicable, this version is strongly recommended as the
2396	alternative (set_recombiner(Recombiner*)) can lead to memory
2397	corruption if the recombiner is owned by the jet definition.
2398
2399	removed set_shared_recombiner and shared_recombiner (superseded
2400	by the above option)
2401
24022014-07-29  Gavin SALAM  <salam@lpthe.jussieu.fr> + Gregory
2403
2404        * src/LazyTiling25.cc
2405        * src/LazyTiling9.cc
2406        * src/LazyTiling9Alt.cc
2407        * include/fastjet/internal/LazyTiling25.hh
2408        * include/fastjet/internal/LazyTiling9.hh
2409        * include/fastjet/internal/LazyTiling9Alt.hh
2410	replace is_near_zero_phi() test, based on double-precision
2411	arithmetic for each tiles with a use_periodic_delta_phi bool for
2412	each tile. This appears to solve the
2413	2014-07-26-Lazy9-largeR-clustering issue. (Tests ongoing with 10^7
2414	events).
2415
2416	* src/ClusterSequence_Delaunay.cc (_delaunay_cluster):
2417	reworked comments around the assert for cases where the clustering
2418	strategy has not been recognized (all cases for which this would
2419	be called should be recognized).
2420
24212014-07-29  Gregory Soyez  <soyez@fastjet.fr>
2422
2423	* plugins/SISCone/SISConePlugin.cc:
2424	* plugins/SISCone/SISConeSphericalPlugin.cc:
2425	* plugins/SISCone/fastjet/SISConeBasePlugin.hh:
2426	* plugins/SISCone/fastjet/SISConePlugin.hh:
2427	* plugins/SISCone/fastjet/SISConeSphericalPlugin.hh:
2428	* include/fastjet/ClusterSequenceArea.hh:
2429	* src/ClusterSequence_Delaunay.cc:
2430	* example/fastjet_timing_plugins.cc:
2431	* fortran_wrapper/fastjetfortran.cc:
2432	rolled back to the auto_ptr (The idea would be to switch to a
2433	unique_ptr when we include c++11 support). For now, we just
2434	deprecate its use in the interface
2435
2436	* example/fastjet_timing_plugins.cc:
2437	replaced rapmax->grid_rapmax in a local declaration to eliminate a warning.
2438
24392014-07-28  Gregory Soyez  <soyez@fastjet.fr>
2440
2441	* example/fastjet_timing_plugins.cc:
2442	declared SubType globally to prevent a icpc (v10.1) error.
2443
24442014-07-28  Gregory Soyez  <soyez@fastjet.fr>
2445
2446	* example/fastjet_timing_plugins.cc:
2447	* fortran_wrapper/fastjetfortran.cc:
2448	auto_ptr -> SharedPtr as below
2449
2450	* include/fastjet/ClusterSequenceArea.hh:
2451	use a standard pointer to hold the specific underlying CSAB rather
2452	than an auto_ptr
2453
24542014-07-27  Gregory Soyez  <soyez@fastjet.fr>
2455
2456	* src/ClusterSequence_Delaunay.cc:
2457	replaced the auto_ptr to the DNN object by a standard C pointer
2458	(deleted at the end of ClusterSequence::_delaunay_cluster())
2459
2460	* plugins/SISCone/SISConePlugin.cc:
2461	* plugins/SISCone/SISConeSphericalPlugin.cc:
2462	* plugins/SISCone/fastjet/SISConePlugin.hh:
2463	* plugins/SISCone/fastjet/SISConeSphericalPlugin.hh:
2464	replaced the use of auto_ptr by SharedPtr (auto_ptr has been
2465	deprecated by C++11. Ideally a unique_ptr should be used but
2466	SharedPtr will do the job)
2467
24682014-07-26  Gavin Salam  <gavin.salam@cern.ch>
2469
2470	* example/fastjet_timing_plugins.cc:
2471	Switched from fj:: to using namespace fastjet.
2472
2473	Added -compare-strategy for comparing two different strategies and
2474	printing out events where they disagree. Currently does full
2475	clustering history comparison (not suitable for C/A alg.)
2476
24772014-07-25  Gavin Salam  <gavin.salam@cern.ch>
2478
2479	* src/LazyTiling9.cc:
2480
2481	added FASTJET_LAZY9_MIN2TILESY option, which forces at least two
2482	tiles in rapidity. Ran usual tests of 10k events on each of antikt,
2483	cam & kt with R=1000. Found one event for kt in which the answers
2484	do not agree with N2MinHeapTiled. This appears to be independent
2485	of whether FASTJET_LAZY9_MIN2TILESY is set. Commands to see the
2486	problem are
2487
2488	gunzip -c ../data/Pythia-PtMin50-LHC-10kev.dat.gz| time ./example/fastjet_timing_plugins -kt -R 1000 -strategy -7 -write -nev 7492 -skip 7491
2489	gunzip -c ../data/Pythia-PtMin50-LHC-10kev.dat.gz| time ./example/fastjet_timing_plugins -kt -R 1000 -strategy -4 -write -nev 7492 -skip 7491
2490
2491	Detailed investigation still to be carried out.
2492	Issue filed as 2014-07-26-Lazy9-largeR-clustering
2493
24942014-07-25  Gregory Soyez  <soyez@fastjet.fr>
2495
2496	* tools/fastjet/tools/Recluster.hh:
2497	* tools/Recluster.cc:
2498	back to the case with C/A reclustering and non-ghosted areas:
2499	instead of issuing a warning, discard the area info in the
2500	composite jet.
2501
2502	* include/fastjet/CompositeJetStructure.hh:
2503	commented out set_area_information: the comment said this was used
2504	by "join" and cannot be used by an end-user while in practice,
2505	join no longer uses this (has it at any time?)
2506
2507	instead, added a discard_area() method that allows to disable the
2508	area information for composite jets made of pieces with area.
2509
2510	* tools/Pruner.cc:
2511	* tools/fastjet/tools/Pruner.hh:
2512	when creating the pruning jet definition, set the shared
2513	recombiner in case it it owned by the parent jet definition.
2514
2515	* include/fastjet/JetDefinition.hh:
2516	in set_shared_Recombiner, only copy the recombiner if we have
2517	ownership of it [this allows us to copy the shared pointer even if we
2518	have no ownership of the recombiner]
2519
2520	* tools/fastjet/tools/Filter.hh:
2521	* tools/Filter.cc:
2522	simplified things considerably to use Recluster... still work in
2523	progress and checks to be made
2524
2525	* tools/fastjet/tools/Recluster.hh:
2526	* tools/Recluster.cc:
2527	issue a warning when we're using the simplified C/A reclustering
2528	and that there is non-explicit-ghost area support. Areas can be
2529	erroneous in this case.
2530
25312014-07-24  Gregory Soyez  <soyez@fastjet.fr>
2532
2533	* tools/fastjet/tools/Recluster.hh              *** ADDED ***
2534	* tools/Recluster.cc:                           *** ADDED ***
2535	added a "Recluster" tool [it is essentially the reclustering part
2536	of Filter although this code has transited through the
2537	RecursiveTools contrib]
2538
25392014-07-24  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo
2540
2541	* include/fastjet/ClusterSequence.hh:
2542	removed an old commented-out constructor
2543
25442014-07-24  Gavin Salam  <gavin.salam@cern.ch>
2545
2546        * include/fastjet/Selector.hh
2547        * include/fastjet/internal/Dnn2piCylinder.hh
2548        * include/fastjet/internal/Dnn3piCylinder.hh
2549        * include/fastjet/internal/Dnn4piCylinder.hh
2550        * include/fastjet/internal/DnnPlane.hh
2551        * include/fastjet/internal/DynamicNearestNeighbours.hh
2552        * src/DnnPlane.cc
2553        * src/Selector.cc
2554	further replacements of const double & and const int & with plain
2555	const double and const int.
2556
25572014-07-23  Gavin Salam  <gavin.salam@cern.ch>
2558
2559	* src/LazyTiling25.cc:
2560
2561	fixed bug in positioning of tile centers that emerged when
2562	_tiles_ieta_min*_tile_size and _tiles_eta_min were different
2563	(which was previously never the case); having fixed this, the
2564	scheme for always having at least 3 tiles in Y now works. Ran a
2565	test on 10k events that anti-kt results are identical to other
2566	schemes.
2567
2568	* src/LazyTiling9.cc:
2569	fixed the same bug in positioning of tile centers; this should
2570	have no effect here since, for now, _tiles_ieta_min*_tile_size and
2571	_tiles_eta_min are always the same.
2572
2573	* scripts/update-headers.pl:  *** ADDED ***
2574	new script to update headers (including copyright date) of all .hh,
2575	.cc, .icc and .f files.
2576
2577	The master copyright text is now stored here. It has been adapted
2578	to mention the manual as well as the original fastjet paper, and
2579	also to request that the FastJet version number be quoted in
2580	scientific publications.
2581
2582	The header start/end strings are now FJSTARTHEADER and FJENDHEADER
2583	(i.e. added "FJ") in order to limit chances of collisions with
2584	other code.
2585
2586	* **/*.(cc|icc|hh|f):
2587	updated headers
2588
25892014-07-22  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo + Gregory
2590
2591	* RoadMap: updated (plans for 3.1)
2592
2593	* include/fastjet/PseudoJetStructureBase.hh:
2594	deprecated the use of "const double& dcut" in exclusive_subjets(...)
2595	and exclusive_subjets_up_to(...) for future major releases. (to be
2596	replaced by "const double dcut".
2597
2598	* include/fastjet/GhostedAreaSpec.hh:
2599	added both (set)_ghost_maxeta and (set)_ghost_rapmax to ensure
2600	symmetry
2601
2602	* BUGS:
2603	removed the bug due to coincident points in strategies using CGAL
2604
2605	* include/fastjet/JetDefinition.hh:
2606	* src/JetDefinition.cc:
2607	  . addded shared_recombiner() and set_shared_recombiner() methods.
2608	  . replaced _recombiner_shared with _shared_recombiner
2609	  . tidied up comments
2610
2611	* include/fastjet/ClusterSequence.hh:
2612	fixed comment about delete_self_when_unused() (one should not be
2613	in a context where the CS may just go out of scope).
2614	+ deprecated the use of auto_ptr for plugin extras.
2615
2616	* include/fastjet/internal/LazyTiling9Alt.hh:
2617	* src/LazyTiling9Alt.cc:
2618	commented out unused variant of _distance_to_tile
2619
2620	* src/ClusterSequence.cc:
2621	* include/fastjet/JetDefinition.hh:
2622	renamed FJ30Best -> BestFJ30
2623
26242014-07-22  Gavin Salam  <gavin.salam@cern.ch>
2625
2626        * include/fastjet/ClusterSequence.hh
2627        * include/fastjet/PseudoJet.hh
2628        * include/fastjet/internal/LazyTiling25.hh
2629        * include/fastjet/internal/LazyTiling9.hh
2630        * include/fastjet/internal/LazyTiling9Alt.hh
2631        * include/fastjet/internal/LazyTiling9SeparateGhosts.hh
2632        * src/ClusterSequence.cc
2633        * src/ClusterSequence_Delaunay.cc
2634        * src/ClusterSequence_TiledN2.cc
2635        * src/LazyTiling25.cc
2636        * src/LazyTiling9.cc
2637        * src/LazyTiling9Alt.cc
2638        * src/LazyTiling9SeparateGhosts.cc
2639        * src/PseudoJet.cc
2640	replaced a number of "const double &" and "const int &" with
2641	"const double" and "const int". There are still a number of others
2642	to handle.
2643
26442014-07-22  Gavin Salam  <gavin.salam@cern.ch>
2645
2646	* testsuite/TestPseudoJet.hh:
2647	added a set of tests of the ==0 and != 0 operators
2648
2649	* testsuite/cs_delete_self.cc:
2650	now gives errors when things that should (not) throw do not (or
2651	do).
2652
2653	* testsuite/PJtiming.cc:
2654	replaced dynamic-sized C-array (which gave compilation errors)
2655	with a dynamically allocated array.
2656
2657	* testsuite/run-all.sh: *** ADDED ***
2658	this script runs everything in the directory and makes sure it all
2659	exits OK.
2660
2661	* testsuite/README: *** ADDED ***
2662	added a README to help us recall how to use what's in here
2663
2664	* include/fastjet/PseudoJet.hh:
2665	added val==PseudoJet and val!=PseudoJet bool functions so that we
2666	have the complete set.
2667
2668	* include/fastjet/internal/SearchTree.hh (circulator):
2669	the following line
2670	"template<class U> friend class SearchTree<U>::const_circulator;"
2671	gave a warning, so made it template wrt class T
2672	Things still work with Apple LLVM version 5.1 (clang-503.0.40) (based on LLVM 3.4svn)
2673
2674	* src/ClosestPair2D.cc:
2675	removed unused
2676	const unsigned int huge_unsigned = 4294967295U;
2677	which was giving unused-variable warnings
2678
2679	Both warnings reported by Torbjorn Sjostrand.
2680
26812014-07-19  Gavin Salam  <gavin.salam@cern.ch>
2682
2683	* test-compare.sh (extra_args):
2684	eliminated lines with "Strategy" as well as "strategy" in order
2685	for make check not to give error if all that has changed is the
2686	strategy choice (previously just eliminated strategy, and was
2687	failing because in one place the output said "Strategy")
2688
26892014-07-18  Gavin Salam  <gavin.salam@cern.ch> [on train]
2690
2691	* regression-tests/test-all-algs.pl (setDefaults):
2692	default strategy set for tests now includes -7 (N2MHTLazy9) and -6
2693	(N2MHTLazy25) for kt, cam and anti-kt.
2694
2695	* include/fastjet/JetDefinition.hh:
2696	* include/fastjet/ClusterSequence.hh:
2697	* src/ClusterSequence.cc:
2698	added Strategy = FJ30Best (21), which reproduces the strategy
2699	selection of FJ 3.0.
2700
2701	Best now instead calls the new ClusterSequence::_best_strategy()
2702	routine to select the best strategy. Also added helper classes
2703	ClusterSequence::_Parabola and ClusterSequence::_Line. Structure
2704	and parameters are based on Gregory's preliminary results in
2705	issue-tracker/2014-07-auto-strategy-selection/transition_fit.gp.
2706	Ran some basic tests to make sure that transitions look sensible
2707	(compared to the plot transition_fit.eps).
2708
2709	*** It's still missing the transitions to NlnN routines. ***
2710
2711	* src/ClusterSequence.cc:
2712	strategy_string() now correctly outputs a name for the new
2713	LazyTiled strategies.
2714
2715	* include/fastjet/JetDefinition.hh:
2716	filled out the comments to describe the new strategies.
2717
2718	* src/LazyTiling25.cc (_initialise_tiles):
2719	added some commented code to adapt tile rapidity-size choice in
2720	cases where _tiles_eta_max - _tiles_eta_min < 3/2R, so as to
2721	ensure exactly 3 spanning tiles; for large R, in cases where it
2722	works, it appears to give a (sometimes substantial) speed
2723	improvement, but it also hangs. Reason still needs identifying
2724	(hence it's commented).
2725
27262014-07-18  Gregory Soyez  <soyez@fastjet.fr>
2727
2728	* example/fastjet_timing_plugins.cc:
2729	reinstated the -etamax option which actually sets maximal rapidity
2730	(and prints a warning) --- backported from the 3.0.X branch
2731
2732	* NEWS:
2733	backported news for v3.0.5 and 3.0.6 from the 3.0.X branch
2734
2735	* example/ktjet_timing.cc:
2736	included cstdio required by recent compilers
2737
2738	* tools/fastjet/tools/Filter.hh:
2739	- added an _initialised flag allowing to check whether the Filter
2740	  has been initialised properly or not
2741	- made the subtractor a (pointer to a)
2742	  FunctionOfPseudoJet<PseudoJet> instead of a Transformer
2743
27442014-07-18  Gavin Salam  <gavin.salam@cern.ch> + Matteo
2745
2746	* include/fastjet/internal/Makefile.am
2747	(fastjetincludeinternal_HEADERS):
2748	added TilingExtent to fastjetincludeinternal_HEADERS
2749
2750	* src/TilingExtent.cc (_determine_rapidity_extent):
2751	switched all ints for bin counts -> doubles
2752
27532014-07-18  Gregory Soyez  <soyez@fastjet.fr>
2754
2755	* src/TilingExtent.cc (_determine_rapidity_extent):
2756	_cumul2 was declared locally and hence shadowing the _cumul2
2757	declared as a class member. Fixed.
2758
2759	* include/fastjet/internal/Makefile.am (fastjetincludeinternal_HEADERS):
2760	LazyTiling25.hh was listed twice. Removed one. [was giving install
2761	errors]
2762
27632014-07-18  Gavin Salam  <gavin.salam@cern.ch> (later)
2764
2765	Carried out substantial renaming of the new Tiling files, classes,
2766	strategy enum names, etc., basically according to the following
2767	pattern
2768
2769                                                Strategy        Class
2770    N2MinHeapTiled_experimental1 (Tiling)   ->  N2MHTLazy9Alt  (LazyTiling9Alt)
2771    N2MinHeapTiled_experimental3 (Tiling2)  ->  N2MHTLazy9     (LazyTiling9)
2772    N2MinHeapTiled_experimental2 (Tiling25) ->  N2MHTLazy25    (LazyTiling25)
2773
2774
2775    N2MinHeapTiled_separate_ghosts_antikt (Tiling3)
2776                                            ->  N2MHTLazy9AntiKtSeparateGhosts (LazyTiling9SeparateGhosts)
2777
2778    TilingAnalysis -> TilingExtent (separated out into a separate file)
2779
2780
2781	Overall that gives following renamed files
2782
2783        * include/fastjet/internal/LazyTiling25.hh:
2784        * include/fastjet/internal/LazyTiling9.hh:
2785        * include/fastjet/internal/LazyTiling9Alt.hh:
2786        * include/fastjet/internal/LazyTiling9SeparateGhosts.hh:
2787        * src/LazyTiling25.cc:
2788        * src/LazyTiling9.cc:
2789        * src/LazyTiling9Alt.cc:
2790        * src/LazyTiling9SeparateGhosts.cc:
2791
2792	moved from old names
2793
2794        * include/fastjet/internal/TilingExtent.hh: *** ADDED ***
2795	* src/TilingExtent.cc                       *** ADDED ***
2796
2797	TilingExtent (was TilingAnalysis) moved out of old files.
2798
2799        * include/fastjet/JetDefinition.hh:
2800        * src/ClusterSequence.cc:
2801        * src/ClusterSequence_TiledN2.cc:
2802	adaptations to take into account the new naming
2803
2804        * include/fastjet/Makefile.am:
2805	* include/fastjet/internal/Makefile.am
2806        * src/Makefile.am
2807	updated these to reflect new file naming scheme
2808
2809
28102014-07-18  Gavin Salam  <gavin.salam@cern.ch>
2811
2812	* src/Tiling2.cc:
2813	changed name of the _TILING2_USE_TILING_ANALYSIS_
2814	preprocessor variable to include FASTJET in its name (as per our
2815	convention).
2816
2817	* src/Tiling25.cc:
2818	switched over to use of TilingAnalysis, again using a preprocessor
2819	variable to control whether it is on or off.
2820
28212014-07-17  Gavin Salam  <gavin.salam@cern.ch> + Matteo
2822
2823	* src/Tiling2.cc:
2824	turned TilingAnalysis back on in Tiling2 and in TilingAnalysis,
2825	changed allowed_max_fraction from 0.5 to 0.25.
2826
28272014-07-17  Gregory Soyez  <soyez@fastjet.fr>
2828
2829	* src/Tiling2.cc:
2830	added a pre-processor define to allow to switch on/off the use of
2831	TilingAnalysis in Tiling2 (currently disabled)
2832
28332014-07-17  Gavin Salam  <gavin.salam@cern.ch> + Matteo & Gregory
2834
2835	* src/Tiling2.cc|hh:
2836	should have fixed issue where TilingAnalysis can crash in certain classes of
2837	low multiplicity events (basically allowed_max_cumul should not be
2838	larger than largest single bin), added
2839	sum_of_binned_squared_multiplicity() member and fixed some
2840	double-counting issues in its calculation. Also tried to improve
2841	code readability and comments
2842
28432014-06-14  Gavin Salam  <gavin.salam@cern.ch>
2844
2845	* include/fastjet/JetDefinition.hh:
2846	fixed issue reported by TJ Wilkason when constructing a 2-parameter
2847	jet definition with a pointer to a recombiner
2848
28492014-05-25  Gavin Salam  <gavin.salam@cern.ch>
2850
2851	* include/fastjet/PseudoJet.hh:
2852	fixed minor typo in comment
2853
2854	* src/ClusterSequenceVoronoiArea.cc:
2855	removed erroneous sentence in license comments about this file
2856	being part of a command-line handling environment
2857
28582014-02-18  Gavin SALAM  <salam@lpthe.jussieu.fr>
2859
2860	* scripts/mksnapshot.sh:
2861	updated location of snapshots.html file
2862
28632014-01-16  Gregory Soyez  <soyez@fastjet.fr> and Gavin (committed by Gavin)
2864
2865	* include/fastjet/FunctionOfPseudoJet.hh:
2866	a FunctionOfPseudoJet(const TOut & constant_value) member
2867	declaration was left over from some testing, but had never been
2868	implemented. Since we don't intend to have it, it has been
2869	commented out. Done in the trunk, and intended for FJ 3.0.7 upwards.
2870
28712014-01-07  Gavin Salam  <gavin.salam@cern.ch>
2872
2873	* src/PseudoJet.cc:
2874	comments for boost/unboost were exchanged in the .cc file
2875
28762013-12-28  Gavin Salam  <gavin.salam@cern.ch>
2877
2878	* tools/Pruner.cc:
2879	* tools/fastjet/tools/Pruner.hh:
2880
2881	pruned_jet.structure_of<Pruner>() now has Rcut() and zcut() member
2882	functions, which return the actual value of Rcut and zcut used for
2883	that jet.
2884
2885	A preprocessor symbol is defined,
2886	FASTJET_PRUNER_STRUCTURE_STORES_RCUT,
2887	to indicate the availability of this information.
2888
2889	Also made the dynamic Rcut and zcut pointers "const", which they
2890	should have been all along.
2891
2892	* doc/fastjet-doc.tex:
2893	corresponding update to the documentation
2894
2895	* example/14-groomers.cc:
2896	in the case of pruning, Rcut is now explicitly written out.
2897
28982013-12-19  Gregory Soyez  <soyez@fastjet.fr>
2899
2900	* configure.ac:
2901	fixed an issue in the test for the presence of a C++ compiler.
2902
29032013-12-17  Gavin SALAM  <salam@lpthe.jussieu.fr>
2904
2905	* regression-tests/nightly-check.pl:
2906	replaced ramses -> karnak
2907
29082013-12-10  Gavin SALAM  <salam@lpthe.jussieu.fr>
2909
2910	* regression-tests/nightly-check.pl:
2911	ensured that tar's STDERR is also redirected to the $untar
2912	variable. This (together with my locale variables change) should
2913	help get the nightly check back on track with the new ramses (OS X
2914	10.8).
2915
2916	Also made sure that if the ssh output is not empty, the error
2917	message is now explicit about the fact that this is the reason for
2918	a failure. This should make future diagnostics easier.
2919
2920	replaced karnak -> ramses (temporarily)
2921
29222013-12-09  Gavin Salam  <gavin.salam@cern.ch>
2923
2924	* include/fastjet/CompositeJetStructure.hh:
2925	extended comment for set_area_information(...)
2926
29272013-12-08  Gavin Salam  <gavin.salam@cern.ch>
2928
2929	* src/CompositeJetStructure.cc (area_error):
2930	this was erroneously returning the sum of areas of the individual
2931	pieces rather than the sum of their area_errors() as stated in the
2932	comments. Now fixed.
2933
29342013-12-04  Gavin Salam  <gavin.salam@cern.ch>
2935
2936	* fortran_wrapper/Makefile.alt:
2937	added explicit default -O compiler flags in Makefile.alt, which
2938	can have a big effect on the speed of the wrapper for low
2939	multiplicities.
2940
29412013-11-13  Gavin SALAM  <salam@lpthe.jussieu.fr> + Gregory & Matteo
2942
2943	* tools/GridMedianBackgroundEstimator.cc (description):
2944	description now prints information on the actual grid-cell size
2945
29462013-11-04  Gavin Salam  <gavin.salam@cern.ch>
2947
2948	* src/ClusterSequenceVoronoiArea.cc (_initializeVA):
2949	explicitly reserved array size for vector 4-areas, intended to
2950	bring small efficiency gain. (That this was missing was pointed
2951	out by Vincenzo Innocente)
2952
29532013-10-28  Gavin Salam  <gavin.salam@cern.ch>
2954
2955	[merges from fastjet-3.0.x branch]
2956
2957	* plugins/D0RunIICone/ConeSplitMerge.hpp:
2958	made ProtoJet_ET_seedET_order::operator() const, to fix compilation
2959	issue under OS X 10.9 (Mavericks).
2960
2961	* plugins/CDFCones/CDFcode/JetCluAlgorithm.cc:
2962	included <cstdlib> and switched abs -> std::abs to fix compilation
2963	issue under OS X 10.9 (Mavericks). This and the above one reported
2964	by David Grellscheid and Pere Mato Vila.
2965
2966	* example/11-filter.cc:
2967	* tools/MassDropTagger.cc:
2968	* tools/JHTopTagger.cc:
2969	fixed bugs where (! a==b) was being used instead of
2970	(a!=b) in certain consistency checks. In the two taggers, this
2971	should only affect whether a warning is produced when called with
2972	algorithms other than Cambridge/Aachen. Reported by David
2973	Grellscheid. (The MDT case had already been fixed below; now the
2974	fix is consistent across the board)
2975
29762013-10-25  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo
2977
2978	* plugins/GridJet/fastjet/GridJetPlugin.hh:
2979	added drap(), dphi(), rapmin() and rapmax() query functions to get
2980	actual grid spacings.
2981
29822013-09-15  Gavin Salam  <gavin.salam@cern.ch>
2983
2984	* include/fastjet/Selector.hh:
2985	* include/fastjet/NNH.hh:
2986	* include/fastjet/internal/ClusterSequence_N2.icc:
2987	these files had guards without FASTJET_ in their name, as a result
2988	of which the fjcore files had identical guards, causing a
2989	conflict. the FASTJET_ tag has now been added.
2990
29912013-09-13  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo
2992
2993	* src/Tiling3.cc:
2994	eliminated the uninitialised compilation warning (as done in the
2995	other strategies).
2996
2997	* regression-tests/test-all-algs.pl:
2998	updated checksums for background estimations with -rapmax option,
2999	in light of yesterday's bugfix in
3000	fastjet_timing_plugins. Internal program consistency should be OK
3001	given that the nightly check from the night before last came out
3002	OK (and we haven't touched core code since then).
3003
3004	Also added some extra checksums for quick tests with 10 events.
3005
30062013-09-13  Gavin Salam  <gavin.salam@cern.ch> + Matteo
3007
3008	* regression-tests/test-all-algs.pl:
3009	replaced -etamax -> -rapmax (following yesterday's change);
3010	fixed an issue where bkgds & areas were giving problems when
3011	running more than one strategy (to do with copies v. aliases in
3012	foreach loops).
3013
30142013-09-12  Gavin Salam  <gavin.salam@cern.ch> + Matteo
3015
3016	* example/fastjet_timing_plugins.cc:
3017	replaced -etamax option with -rapmax and fixed bug that it was
3018	acting only as an upper limit of rapidity. (Not a lower limit)
3019
30202013-08-17  Gavin Salam  <gavin.salam@cern.ch>
3021
3022	* include/fastjet/ClusterSequence.hh (C):
3023	* include/fastjet/PseudoJet.hh:
3024	  small changes to comments for subdmerge.
3025
30262013-07-31  Gregory Soyez  <soyez@fastjet.fr>
3027
3028	* example/data/Makefile.am (EXTRA_DIST):
3029	  added the missing boosted top event to the distribution
3030
30312013-07-12  Gregory Soyez  <soyez@fastjet.fr>
3032
3033	* regression-tests/nightly-check.pl:
3034	  added tests with gcc-4.6 and gcc-4.7
3035
30362013-07-11  Gregory Soyez  <soyez@fastjet.fr>
3037
3038	* NEWS:
3039	  backported release notes for FastJet-3.0.4 from the 3.0.X branch
3040
30412013-06-30  Gavin Salam  <gavin.salam@cern.ch> + Matteo (later):
3042
3043	* Tiling2.cc|hh
3044	* Tiling25.cc|hh
3045	* src/ClusterSequence.cc
3046	  removed old Tiling2::run() and renamed Tiling2::run_alt() -> Tiling2::run()
3047	  removed old Tiling25::run() and renamed Tiling25::run_alt() -> Tiling25::run()
3048
3049
30502013-06-30  Gavin Salam  <gavin.salam@cern.ch> + Matteo
3051
3052	* merged changes from speed development branch. Things are
3053	  currently a bit messy. Here's what we have
3054
3055	  - TilingAnalysis class
3056	    (inside Tiling2.hh|cc; it should be moved out & renamed TilingExtent?)
3057	    tiling used to have an extent that stretched up to rapidity of
3058	    most forward and backward particles; this new class limits the
3059	    rapidity extent of the tiling so as not to have very sparse
3060	    tiles at edges of the tiling.
3061
3062	  - Tiling: this was the first attempt at a speed improvement. The
3063	    main ingredient is that it tries not to search beyond the edge of
3064	    a tile if a particle's distance to the edge is greater than
3065	    than to its in-tile nearest neighbour.
3066	    Available as N2MinHeapTiled_experimental1   = -5
3067
3068	  - Tiling2, with its run_alt() call, is very similar to Tiling,
3069	    but reorders some checks and is marginally (up to 5%?) faster
3070	    Available as N2MinHeapTiled_experimental3   = -7
3071
3072	  - Tiling25 (with its run_alt() call), uses a patch of 25 tiles
3073	    of size R/2 for its NN searches. Gains are most substantial at
3074	    quite high multiplicities and/or large R values.
3075	    Available as N2MinHeapTiled_experimental2   = -6
3076
3077          - Tiling3: intended just for the anti-kt algorithm, this avoids
3078	    clustering ghosts with each other and so reduces some distance
3079	    computations. Incorporates most of the mods from the Tiling
3080	    approach as well
3081	    Available as N2MinHeapTiled_separate_ghosts_antikt = -10
3082
30832013-06-05  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo
3084
3085	* include/fastjet/SharedPtr.hh:
3086	  replaced USETR1SHAREDPTR -> __FASTJET_USETR1SHAREDPTR
3087	  (merged from rev.3129 of 3.0.X branch)
3088
30892013-05-22  Gregory Soyez  <soyez@fastjet.fr>
3090
3091	* tools/MassDropTagger.cc (result):
3092	  added a missing set of () when testing if the jet was obtained
3093	  from a C/A clustering
3094
30952013-05-13  Gregory Soyez  <soyez@fastjet.fr>
3096
3097	* tools/fastjet/tools/BackgroundEstimatorBase.hh:
3098	  corrected a typo in a comment
3099
31002013-05-04  Gavin Salam  <gavin.salam@cern.ch>
3101
3102	* include/fastjet/ClusterSequence.hh:
3103	* src/ClusterSequence_Delaunay.cc
3104	  moved inclusion of DynamicNearestNeighbours.hh from
3105	  ClusterSequence.hh (a forward definition is sufficient) to the
3106	  Delaunay file.
3107
3108	* include/fastjet/PseudoJet.hh:
3109	  added explicit fastjet:: to cast_if_derived call, to avoid
3110	  ambiguities when converting from fastjet to fjcore PseudoJets
3111	  (and vice versa), where it wasn't clear whether to use fastjet::
3112	  or fjcore:: cast_if_derived.
3113
31142013-05-03  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo
3115
3116	* include/fastjet/internal/SearchTree.hh:
3117	  renamed TRACK_DEPTH define as __FASTJET_SEARCHTREE_TRACK_DEPTH
3118
31192013-05-01  Gavin Salam  <gavin.salam@cern.ch>
3120
3121	* regression-tests/nightly-check.pl:
3122	  added themis (32 bit) to the nightly check, and reordered the
3123	  checks to make the structure more clearly visible.
3124
31252013-04-30 Matteo Cacciari <cacciari@lpthe.jussieu.fr>
3126
3127        * example/fastjet_timing_plugins.cc
3128	  fixed a couple of harmless errors in the messages
3129	  concerning missing plugins
3130
31312013-04-30  Gregory Soyez  <soyez@fastjet.fr>
3132
3133	* regression-tests/nightly-check.pl:
3134	  explicitly pointed to the correct version of libstdc++ when
3135	  checking gcc-4.8
3136
31372013-04-29  Gavin Salam  <gavin.salam@cern.ch>
3138
3139	* regression-tests/nightly-check.pl:
3140	  removed a couple more redundant machines for the nightly checks
3141
31422013-04-28  Gavin SALAM  <salam@lpthe.jussieu.fr>
3143
3144	* regression-tests/nightly-check.pl:
3145	  switched intel compiler tests over to default args (used to rely
3146	  on gcc34 libraries).
3147
31482013-04-27  Gavin SALAM  <salam@lpthe.jussieu.fr>
3149
3150	* regression-tests/nightly-check.pl:
3151	  updated CGAL directory
3152	  removed explicit g++3.4 test (but we still have it on zetes)
3153
31542013-04-06  Gavin Salam  <gavin.salam@cern.ch>
3155
3156	* configure.ac:
3157	  changed explicitly required autoconf to 2.63
3158
31592013-03-30  Gavin Salam  <gavin.salam@cern.ch>
3160
3161	* include/fastjet/PseudoJet.hh:
3162	* src/PseudoJet.cc:
3163	  in response to request from ATLAS, initialize PseudoJet::_rap to
3164	  a dummy value even though it's not necessary, in order to avoid
3165	  NaN's in ATLAS rigid NaN tests.
3166
3167	* configure.ac:
3168	  replaced AM_CONFIG_HEADER with AC_CONFIG_HEADERS to get
3169	  compatibility with autoconf-2.69 + automake-1.13. This breaks
3170	  very old autotools setups
3171
3172	  sorted out bug in sed commands for version numbers with OS X
3173	  version of sed. (Some versions of sed and grep don't recognise
3174	  "+").
3175
31762013-02-23  Gavin Salam  <gavin.salam@cern.ch>
3177
3178	* scripts/mkfjcore.sh:
3179	  made a couple of changes to get this to work on macs
3180	  + a little extra output (also added TODO-fjcore and renamed
3181	  preamble file)
3182
31832013-02-20  Gregory Soyez  <soyez@fastjet.fr> + Gavin & Matteo
3184
3185	* src/CompositeJetStructure.cc (CompositeJetStructure):
3186	  removed a compiler warning about recombiner being unused in
3187	  fjcore
3188
3189	* src/ClusterSequence_TiledN2.cc:
3190	  explicitly disabled a harmless gcc warning in
3191	  _add_untagged_neighbours_to_tile_union
3192	  Turned into a comment for future usage/bookkeeping
3193
3194	  Instead, explicitly initialise oldB.tile_index=0 in
3195	  _tiled_N2_cluster(), _faster_tiled_N2_cluster() and
3196	  _minheap_faster_tiled_N2_cluster().
3197
31982013-02-18  Gregory Soyez  <soyez@fastjet.fr>
3199
3200	* m4/CGAL.m4:
3201	  linked against gmp, gmpxx and mpfr if available (this provides a
3202	  more robust CGAL support as in some cases -lgmp has to be
3203	  explicitly included at link time)
3204
3205	* src/PseudoJetStructureBase.cc:
3206	* include/fastjet/PseudoJetStructureBase.hh:
3207	  forther #ifndef __FJCORE__ not included during the first round
3208
3209	* include/fastjet/Selector.hh:
3210	* include/fastjet/PseudoJetStructureBase.hh:
3211	* include/fastjet/PseudoJet.hh:
3212	* include/fastjet/CompositeJetStructure.hh:
3213	* include/fastjet/ClusterSequenceStructure.hh:
3214	* src/Selector.cc:
3215	* src/PseudoJetStructureBase.cc:
3216	* src/PseudoJet.cc:
3217	* src/CompositeJetStructure.cc:
3218	* src/ClusterSequenceStructure.cc:
3219	  FJCore work: code not included in the core has been placed inside
3220	    #ifndef __FJCORE__
3221	    ...
3222	    #endif
3223	  for automatic extraction of the core part of FastJet. This includes
3224	   . area-related headers and code
3225	   . CGAL support
3226
3227	* include/fastjet/internal/IsBase.hh (cast_if_derived):
3228	  use 0 instead of NULL (which would potentially require an
3229	  additional header)
3230
3231	* src/ClosestPair2D.cc (closest_pair):
3232	  use std::swap instead of swap (i.e. make the namespace explicit
3233	  to avoid conflict with fastjet::swap in SharedPtr (only needed
3234	  because we are in the fastJet namespace)
3235
32362013-02-14  Gavin Salam  <gavin.salam@cern.ch> + Matteo Cacciari
3237
3238	* include/fastjet/JetDefinition.hh:
3239	* include/fastjet/ClusterSequence.hh:
3240	  introduced JetDefinition::operator()(particles), which runs
3241	  the jet algorithm and returns an appropriately sorted vector
3242	  of jets
3243
3244	* src/JetDefinition.cc:
3245	* include/fastjet/JetDefinition.hh:
3246	  added is_spherical() member function, which returns true for
3247	  algorithms intended for use in spherical coordinates (i.e. e+e-
3248	  algorithms). Also extended the plugin interface so that plugins
3249	  can provide this information (unmodified plugins return false,
3250	  which makes sense because most current plugins are for hadron
3251	  colliders).
3252
3253	* plugins/SISCone/fastjet/SISConeSphericalPlugin.hh:
3254	* plugins/EECambridge/fastjet/EECambridgePlugin.hh:
3255	  implemented is_spherical() members that return true.
3256
32572013-01-29  Gavin Salam  <gavin.salam@cern.ch>
3258        * many places:
3259	  updated the svn ignore properties to ignore Makefile,
3260	  Makefile.in .deps
3261
3262	* tools/fastjet/tools/JetMedianBackgroundEstimator.hh:
3263	* tools/JetMedianBackgroundEstimator.cc (description):
3264	  description() now prints out the pt power if it differs from 1.
3265
3266	* autogen.sh:
3267	  fixed a minor bug when glibtool is missing.
3268
32692013-01-29  Gregory Soyez  <soyez@fastjet.fr> + Gavin
3270
3271	* tools/fastjet/tools/JetMedianBackgroundEstimator.hh:
3272	  provided an access, using jets_used(), to the jets that have
3273	  been used for the last call to rho() or sigma()
3274	  + changed come of the comments
3275
32762013-01-07  Gavin Salam  <gavin.salam@cern.ch>
3277
3278	* include/fastjet/Selector.hh:
3279	  tiny change to comments so that in doxygen one sees that
3280	  "pass()" is the routine needing to be overloaded.
3281
32822012-12-17  Gregory Soyez  <soyez@fastjet.fr>
3283
3284	* NEWS:
3285	  brought the NEWS from 3.0.2 to 3.0.3 from the branch
3286	  [3.0.3 was developed in a branch and consisted of a few bug
3287	  fixes borrowed from the trunk. All the changes are in agreement
3288	  between the trunk and the branch so there was just the summary
3289	  of changes that needed to be updates]
3290
32912012-12-11  Gavin Salam  <salam@lpthe.jussieu.fr>
3292
3293	* src/Selector.cc:
3294	* include/fastjet/Selector.hh:
3295	  added Selector::sum(...), which returns the 4-vector sum of the
3296	  input jets that pass the selection.
3297
32982012-09-18  Gavin Salam  <gsalam@macth69.cern.ch>
3299
3300	* fortran_wrapper/fastjetfortran.cc:
3301	  added a fastjeteegenkt_ routine, similar to fastjetppgenkt_, but
3302	  for e+e- generalised kt, as requested by Bryan.
3303
33042012-09-14  Gavin Salam  <salam@lpthe.jussieu.fr>
3305
3306	* example/fastjet_timing_plugins.cc:
3307	  added protection in case of null extras for SISCone
3308
33092012-08-21  Gavin Salam  <salam@lpthe.jussieu.fr>
3310
3311	* include/fastjet/ClusterSequence.hh:
3312	  following question from Daniel Maitre about
3313	  "jet_scale_for_algorithm()",  modified its doxygen comment to
3314	  indicate that it is mainly for internal use.
3315
33162012-07-11  Gregory Soyez  <soyez@fastjet.fr>
3317
3318	* tools/fastjet/tools/JetMedianBackgroundEstimator.hh:
3319	  When trying to access information relative to the last
3320	  computation of rho (or sigma) --- i.e. in mean_area(),
3321	  n_jets_used(), empty_area() and n_empty_jets() ---, throw an
3322	  error if the configuration has changed in the meantime.
3323
3324	* tools/JetMedianBackgroundEstimator.cc:
3325	  In BackgroundJetScalarPtDensity, explicitly exclude the ghosts
3326	  from the list of constituents to avoid problematic behaviour
3327	  when _pt_power <= 0.
3328
33292012-06-25  Gregory Soyez  <soyez@fastjet.fr>
3330
3331	* src/ClusterSequence.cc (print_banner):
3332	  updated references in the banner
3333
33342012-06-19  Gavin Salam  <salam@lpthe.jussieu.fr>
3335
3336	* doc/fastjet-doc.tex (section{Introduction}):
3337	  added a footnote about stopping the exclusive algorithm once it
3338	  reaches a predetermined number of jets. (Thanks to Giulia
3339	  Zanderighi for pointing out this omission).
3340
33412012-06-13  Gavin Salam  <salam@lpthe.jussieu.fr>
3342
3343	* include/fastjet/internal/SearchTree.hh (template):
3344	  a further fix for clang v1.1 (release 27) compilation
3345
33462012-06-12  Gregory Soyez  <soyez@fastjet.fr>
3347
3348	* include/fastjet/NNH.hh:
3349	* plugins/D0RunIICone/ILConeAlgorithm.hpp:
3350	  Worked around some issues to allow compilation with gcc 4.7 (and
3351	  clang) which no longer performs unqualified template
3352	  lookups. See e.g. http://gcc.gnu.org/gcc-4.7/porting_to.html
3353	  [Thanks to Gavin Hesketh and Jihun Kim for reporting this]
3354
33552012-05-04  Gavin Salam  <gsalam@macth69.cern.ch>
3356
3357	* include/fastjet/JetDefinition.hh ():
3358	  small changes to comments
3359
33602012-04-09  Gavin Salam  <salam@lpthe.jussieu.fr>
3361
3362
3363	* include/fastjet/JetDefinition.hh (enum Strategy):
3364	* src/ClusterSequence.cc
3365	  right now the strategies are as follows:
3366	  -7 = latest version of 9-tile (Tiling2::run_alt)
3367	  -6 = new 25-tile code.
3368
3369	* include/fastjet/Tiling2.hh
3370	* src/Tiling2.cc
3371	  this now contains run() and run_alt(); wrt run(), the latter
3372	  reorders the updates, so that the new object's neighbours go
3373	  first, blindly checking at each distance whether we've hit a
3374	  neighbour of the old points; then it looks at the remaining
3375	  tiles that might be relevant for the old points. Basically cuts
3376	  down the number of jet-to-tile distances by 10-20%, though no
3377	  measurable speed improvements.
3378
3379	  Also: added a new class TilingAnalysis, which tries to determine
3380	  a sensible rapidity extent for the tiling. Reduces the reliance
3381	  on nasty hand-coded limits compared to before.
3382
3383	* src/ClusterSequence_TiledN2.cc:
3384	  this now uses the TilingAnalysis to decide the rapidity
3385	  extents. For N=30, on the simple trial event
3386
3387            time ./fastjet_timing_plugins -antikt -R 0.5 -combine 1 -repeat 50000 < ~/work/fastjet/data/Pythia-1PtMin50+nMinBias-mansorted.dat -strategy -3 -nhardest 30
3388
3389	  there was a run-time reduction of 30%, presumably because one
3390	  avoids grid initialisation. Some of the parameters inside
3391	  TilingAnalysis are "inspired" guestimates.
3392
3393
3394	* include/fastjet/Tiling25.hh:       *** ADDED ***
3395	* src/Tiling25.cc:                   *** ADDED ***
3396	* src/Makefile.am
3397	* include/fastjet/Makefile.am
3398	  trial of a 25-tile approach with tiles of size R/2. Becomes
3399	  competitive only starting from N \sim 20k. For 44k, one gains a
3400	  factor of 1.3 in speed. In this region, relative to the old -4
3401	  strategy we have a factor 4 gain in speed -- so not negligible
3402	  for HI.
3403
3404
34052012-04-02  Gavin Salam  <gavin.salam@cern.ch>
3406
3407	* src/ClusterSequence.cc:
3408	* include/fastjet/JetDefinition.hh:
3409	* src/Makefile.am:
3410	* include/fastjet/Makefile.am:
3411	* src/Tiling3.cc:              *** ADDED ***
3412	* include/fastjet/Tiling3.hh:  *** ADDED ***
3413	  addition of tiling routines that allow for ghosts to be treated
3414	  separately from other particles. This is relevant for anti-kt
3415	  type algorithms where ghosts cluster with each other only at the
3416	  very end of the sequence. If one's not interested in the pure
3417	  ghost jets, then one can neglect all ghost-ghost distances.
3418	  Available as N2MinHeapTiled_separate_ghosts_antikt -- compiles
3419	  and runs OK on normal events, and seems to behave OK also on
3420	  ghosted events.  Note the ghost pt cutoff is currently
3421	  hard-coded.
3422
34232012-04-02  Gavin SALAM  <salam@lpthe.jussieu.fr> + Gregory
3424
3425	* src/Tiling.cc:
3426	* include/fastjet/Tiling.hh:
3427	  Used pointers to functions in Tile that allow for a faster
3428	  computation of the distance from a point to the edges and corners
3429	  of its tile.
3430
34312012-04-02  Gregory Soyez  <soyez@fastjet.fr>
3432
3433	* include/fastjet/Tiling2.hh:
3434	* include/fastjet/Tiling2.cc:
3435	  copied Tile (from Tile.{hh,cc} into Tile2 for future mods of Tile
3436
3437	* include/fastjet/Tiling2.hh:
3438	* include/fastjet/Tiling2.cc:
3439	* src/ClusterSequence.cc:
3440	* src/Makefile.am:
3441	* include/fastjet/Makefile.am:
3442	  inserted a copy of the current Tiling class for easier
3443	  comparison between the present status and further developments.
3444
34452012-04-02  Gavin Salam  <gavin.salam@cern.ch>
3446
3447	* include/fastjet/ClusterSequence.hh:
3448	* src/ClusterSequence_TiledN2.cc:
3449	  put the N2MinHeapTiled back to the old code now that we have a
3450	  dedicated strategy for developments from below. This also
3451	  removes any risk of penalty associated with increased tile size,
3452	  etc. in the old strategies.
3453
34542012-04-02  Gavin SALAM  <salam@lpthe.jussieu.fr> + Gregory
3455
3456	* include/fastjet/Tiling.hh:
3457	* src/Tiling.cc:
3458	  playing with the idea of two copies of bj_dist, with and without
3459	  2pi periodicity.
3460
34612012-04-02  Gavin Salam  <gavin.salam@cern.ch>
3462
3463	* include/fastjet/JetDefinition.hh:
3464	* src/ClusterSequence.cc:
3465
3466	  added N2MinHeapTiled_experimental1 and
3467	  N2MinHeapTiled_experimental2 and instrumented the first one so
3468	  that it uses the external tiling class.
3469
3470	* src/Tiling.cc:
3471	* include/fastjet/Tiling.hh:
3472	  completed and tested these so that it replicates the N2MinHeap
3473	  strategy that has been developed in the past few days.
3474
34752012-04-01  Gavin Salam  <salam@lpthe.jussieu.fr>
3476
3477	* src/Tiling.cc:              *** ADDED ***
3478	* include/fastjet/Tiling.hh:  *** ADDED ***
3479	  added as-yet incomplete Tiling classes to provide handling of
3480	  tiling that is external to the CS.
3481
3482	* include/fastjet/ClusterSequence.hh:
3483	  moved guards right up to top of file.
3484
3485	* include/fastjet/internal/MinHeap.hh:
3486	* src/MinHeap.cc:
3487
3488	  renamed _initialise(values) -> initialise(values) and added a
3489	  constructor that just sets the size and no more.
3490
34912012-03-31  Gavin Salam  <salam@lpthe.jussieu.fr>
3492
3493	* include/fastjet/ClusterSequence.hh:
3494	* src/ClusterSequence_TiledN2.cc:
3495	  small improvement in _distance_to_tile computation (cache
3496	  calculation of 0.5*tile spacing).
3497
34982012-03-30  Gavin SALAM  <salam@lpthe.jussieu.fr> + Gregory
3499
3500	* include/fastjet/ClusterSequence.hh:
3501	* src/ClusterSequence_TiledN2.cc:
3502	  completed a first "draft" of the new tiling strategy that
3503	  aims to avoid calculations with tiles that are too far away
3504	  for the particular configuration of particles at hand.
3505
35062012-03-30  Gavin Salam  <gsalam@macth69.cern.ch>
3507
3508	* example/fastjet_timing_plugins.cc (main):
3509	  added a "-skip n" option to skip the first n events
3510
35112012-03-29  Gavin Salam  <gsalam@macth69.cern.ch>
3512
3513	* src/ClusterSequence_TiledN2.cc (_minheap_faster_tiled_N2_cluster):
3514	  development work to try out impact of keeping track of max NN
3515	  distance within the tile. Currently just in the initial NN
3516	  determination. For N=10^4, akt05, it saves 40-50% of the time in
3517	  that calculation (10% overall). Line being used for speed checks is
3518
3519	    ./fastjet_timing_plugins -antikt -R 0.5 -combine 60 -repeat 100\
3520	      < ~/work/fastjet/data/Pythia-1PtMin50+nMinBias-mansorted.dat
3521
3522	  Correctness tests come out OK on 10^3 events.
3523
3524	* include/fastjet/ClusterSequence.hh:
3525	  additions to the Tile structure so that it can maintain info
3526	  about tile centres and the max_NN_dist within a tile.
3527
35282012-02-20  Gavin Salam  <salam@lpthe.jussieu.fr> + Gregory
3529
3530	* test-compare.sh:
3531	  changed the grep to correctly check the windows version number.
3532
3533	* include/fastjet/internal/DnnPlane.hh (class DnnPlane):
3534	* src/DnnPlane.cc:
3535	  moved a const double value specification into the .hh to fix
3536	  compilation issue with g++ 4.4.
3537
35382012-02-20  Gregory Soyez  <soyez@fastjet.fr>
3539
3540	* include/fastjet/config_win.h:
3541	  added the new version-number macros
3542
3543	* configure.ac:
3544	* config.h.in:
3545	* src/genconfig.sh:
3546	  defined a series of macros to handle version numbers
3547	    FASTJET_VERSION_{MAJOR,MINOR,PATCHLEVEL}
3548	  and, above all,
3549	    FASTJET_VERSION_NUMBER
3550	  a 5-digit integer of the form XYYZZ (for version X.Y,Z) that
3551	  allows to require specific versions of FastJet by using
3552	    #if FASTJET_VERSION_NUMBER > 30100
3553	      ....
3554	    #endif
3555	  For previous versions of FastJet, where this macro is not
3556	  defined, it defaults to 0.
3557
3558	* configure.ac:
3559	  fixed bug related to the --extra-warnings flag: it now sets its
3560	  own internal variable (ENABLE_EXTRA_WARNINGS_FLAG rather than
3561	  overwriting ENABLE_DEBG_FLAG. Now, enabling/disabling denug info
3562	  should work fine again.
3563
3564
35652012-02-17  Gregory Soyez  <soyez@fastjet.fr> & Matteo
3566
3567	* reintegrated the modifications from the
3568	  fastjet-3.0-CGAL-coincident branch. FastJet now allows for
3569	  coincident points in the NlnN strategy (using CGAL)
3570
35712012-02-17  Gregory Soyez  <soyez@fastjet.fr> & Matteo
3572
3573	* configure.ac:
3574        * include/fastjet/config_win.h:
3575        * Doxyfile:
3576        * tex/fastjet-doc.tex:
3577          changed version to 3.1.0-devel
3578
35792012-02-16  Gregory Soyez  <soyez@fastjet.fr>
3580
3581	* src/DnnPlane.cc:
3582	  added a comment about the commented out code which always uses
3583	  CGAL's distance comparison
3584
3585	* include/fastjet/internal/DnnPlane.hh:
3586	  Clarified a comment frow Gavin's query in its last commit.
3587
35882012-02-16  Gavin Salam  <salam@lpthe.jussieu.fr>
3589
3590	* include/fastjet/internal/DnnPlane.hh:
3591	* src/DnnPlane.cc:
3592	  modified comments in a few places.
3593
35942012-02-15  Gregory Soyez  <soyez@fastjet.fr>
3595
3596	* include/fastjet/internal/DnnPlane.hh:
3597	* src/DnnPlane.cc:
3598	  Fixed the longstanding issue that our NlnN strategies using CGAL
3599	  were not supporting coincident points ("known bug 1" in earlier
3600	  FastJet releases).
3601
3602	  This is achieved by adding a 'coincidence' integer to the
3603	  SupoerVertex used in DnnPlane which keeps track of the
3604	  coincidences reported by CGAL.
3605
3606	  In fixnig that issue, we became aware of rare situations where
3607	  rounding errors in comparing distances (in situations with 3
3608	  points a,b,c with dist(a,b)-dist(a,c)<<<1 and dist(b.c)<<<1)
3609	  could create inconsistencies between our distamce comparison and
3610	  CGAL's triangulation. This could is some particular setups lead
3611	  to infinite loops in the Clustering. We fixed it by using
3612	  explicitly CGAL's distance computation in these troublesome
3613	  situations (we do not do it in general because it could
3614	  introduce a 10-20% time penalty).
3615
3616	  Afterall, the new code has been tested to run nearly as fast as
3617	  the previous one: 212.95s to cluster our reference 10000 events
3618	  (with all 3 NlnN strategies3 times) compared to 211.46s with the
3619	  code from the previous stable release (and 28.125s to read the
3620	  events)) i.e. only a 0.7% penalty. And this is not worse in
3621	  'grid' cases with real distance degeneracies.
3622
3623
36242012-02-08  Gavin Salam  <salam@lpthe.jussieu.fr>
3625
3626	* example/
3627	  set the svn ignore properties a bit more sensibly.
3628
36292012-02-06  Gregory Soyez  <soyez@fastjet.fr>
3630
3631	* configure.ac:
3632	* doc/Makefile.am:
3633	* doc/figs/Makefile.am:              *** ADDED ***
3634	  added the figures of the manual to the distributed tarball
3635
36362012-01-17  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo & Gregory
3637
3638	* switched to 3.0.3-devel
3639
36402012-01-17  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo & Gregory
3641
3642	* Release of fastjet-3.0.2
3643
36442012-01-12  Gregory Soyez  <soyez@fastjet.fr>
3645
3646	* fastjet-config.in:
3647	  used @libdir@ instead of @prefix@/lib and @includedir@ instead
3648	  of @prefix@/include for a correct treatment of non-standard
3649	  installation location
3650
36512011-12-16  Matteo Cacciari  <cacciari@lpthe.jussieu.fr>
3652
3653        * configure.ac:
3654          added test that prevents user from installing in the build
3655          directory (copied from LHAPDF)
3656
36572011-12-13  Gregory Soyez  <soyez@fastjet.fr>
3658
3659	* plugins/D0RunICone/D0RunIBaseConePlugin.cc:
3660	* plugins/D0RunIICone/D0RunIIConePlugin.cc:
3661	  updated banner to give credit to the D0 collaboration
3662
3663	* COPYING:
3664	* plugins/D0RunIICone/ProtoJet.hpp:
3665	* plugins/D0RunIICone/inline_maths.h:
3666	* plugins/D0RunIICone/ILConeAlgorithm.hpp:
3667	* plugins/D0RunIICone/HepEntity.h:
3668	* plugins/D0RunIICone/ConeSplitMerge.hpp:
3669	* plugins/D0RunIICone/ConeJetInfo.hpp:
3670	* plugins/D0RunICone/inline_maths.h:
3671	* plugins/D0RunICone/HepEntityIpre96.h:
3672	* plugins/D0RunICone/HepEntityI.h:
3673	* plugins/D0RunICone/ConeClusterAlgo.hpp:
3674	  added license information (Lars Sonnenschein and the D0
3675	  collaboration granted us the permission to distribute the D0
3676	  codes under the terms of the GPLv2
3677
36782011-12-05  Gregory Soyez  <soyez@fastjet.fr>
3679
3680	* configure.ac:
3681	  fixed an issue in the "g++ presence test" to cover situations
3682	  where the full path to the compiler is specified.
3683
36842011-12-03  Gavin Salam  <salam@lpthe.jussieu.fr>
3685
3686	* ../contrib:                 *** ADDED ***
3687	* ../contrib/vermilion/*      *** ADDED ***
3688	* ../3rd_party_interfaces/ -> ../contrib/3rd_party_interfaces/
3689
3690	  set up some structure for our copy of contrib, including the
3691	  code from Chris Vermilion + moved our pythia8 interface into
3692	  there.
3693
36942011-12-02  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo + Gregory
3695
3696	* RoadMap:
3697	  cleaned it up in preparation for transition to 3.1.0-devel
3698
3699	* doc/contrib-policy.txt: *** ADDED ***
3700	  added this as a location to start thinking about how the contrib
3701	  area will work.
3702
37032011-12-02  Gregory Soyez  <soyez@fastjet.fr>
3704
3705	* configure.ac:
3706	  . added a test for sed
3707	  . added an explicit test that the C++ compiler returned by
3708	    AC_PROG_CXX (g++ if none found!) really exists (in case g++
3709	    is not installed)
3710
37112011-12-01  Gavin Salam  <salam@lpthe.jussieu.fr>
3712
3713	* src/ClusterSequence.cc:
3714	* include/fastjet/ClusterSequence.hh:
3715	  void _print_banner() -> static void print_banner(); i.e. it's
3716	  now public and documented in doxygen.
3717
3718	* example/fastjet_timing_plugins.cc:
3719	  this now prints a banner early on
3720
3721	* doc/fastjet-doc.tex (section{Error handling}):
3722	  added mention of CS::print_banner().
3723
37242011-12-01  Gregory Soyez  <soyez@fastjet.fr>
3725
3726	* configure.ac:
3727	  issued an error message if no C++ compiler is found
3728
37292011-11-29  Gavin Salam  <salam@lpthe.jussieu.fr>
3730
3731	* CHECKLIST:
3732	  updated this to reflect the new scripts/set-version.sh script
3733
3734	* doc/fastjet-doc.tex
3735	  added note about comment lines to be removed for automatic
3736	  version changes
3737
3738	* scripts/set-version.sh (version): *** ADDED ***
3739	  run
3740	    ./scripts/set-version.sh VERSION-NUMBER
3741	  to make all the changes needed to switch to a new
3742	  version
3743
3744	* mksnapshot.sh -> scripts/mksnapshot.sh
3745	  clean up main directory by having maintenance scripts in the
3746	  scripts/ directory.
3747
3748	* tarit.sh -> scripts/old/tarit.sh
3749	* tarit-areas.sh -> scripts/old/tarit-areas.sh
3750	* svntagit.sh -> scripts/old/svntagit.sh
3751	  these scripts were out of date in some way of other, so moved
3752	  them out of the way
3753
37542011-11-28  Gavin SALAM  <salam@lpthe.jussieu.fr>
3755
3756	* doc/fastjet-doc.tex:
3757	* Doxyfile (PROJECT_NUMBER):
3758	* include/fastjet/config_win.h (FASTJET_PACKAGE_STRING):
3759	* configure.ac:
3760	  version number becomes 3.0.2-devel
3761
3762	* switched SISCone back over to trunk
3763
37642011-11-25  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo & Gregory
3765
3766	Release of FastJet 3.0.1
3767
37682011-11-25  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo & Gregory
3769
3770	* NEWS:
3771	  further small changes.
3772
3773	* plugins/TrackJet/TrackJetPlugin.cc (_print_banner):
3774	  rephrased the banner to reflect updated authorship info.
3775
37762011-11-25  Gregory Soyez  <soyez@fastjet.fr>
3777
3778	* plugins/D0RunIICone/D0RunIIConePlugin.cc (_print_banner):
3779	* plugins/PxCone/PxConePlugin.cc (_print_banner):
3780	* plugins/D0RunICone/D0RunIBaseConePlugin.cc (_print_banner):
3781	* plugins/CMSIterativeCone/CMSIterativeConePlugin.cc (_print_banner):
3782	* plugins/CDFCones/CDFJetCluPlugin.cc (_print_banner):
3783	* plugins/CDFCones/CDFMidPointPlugin.cc (_print_banner):
3784	* plugins/ATLASCone/ATLASConePlugin.cc (_print_banner):
3785	  removed the mention to a minimal FJ version (vX.Y upwards)
3786
3787	* plugins/SISCone/SISConeSphericalPlugin.cc:
3788	* plugins/SISCone/SISConePlugin.cc:
3789	  redirect the SISCone banner to the same stream as the FastJet
3790	  banners.
3791
3792	* plugins/ATLASCone/ATLASConePlugin.cc:
3793	  fixed a memory leak in the interface to the ATLAS cone plugin
3794
3795	* example/fastjet_timing_plugins.cc:
3796	  inverted the ordering of some tests for the default jet alg to
3797	  make sure that the -kt command-line option is processed.
3798
37992011-11-24  Gregory Soyez  <soyez@fastjet.fr>
3800
3801	* plugins/PxCone/PxConePlugin.cc:
3802	  disabled the banner since the fortran code already has one
3803
3804	* plugins/D0RunICone/D0RunIBaseConePlugin.cc:
3805	* plugins/D0RunIICone/D0RunIIConePlugin.cc:
3806	* plugins/ATLASCone/ATLASConePlugin.cc:
3807	* plugins/CMSIterativeCone/CMSIterativeConePlugin.cc:
3808	  modified banner message
3809
38102011-11-24  Gavin SALAM  <salam@lpthe.jussieu.fr>
3811
3812	* COPYING:
3813	  have reworded this in various places to give a better overview
3814	  at the start of the file and a discussion of references that's
3815	  similar to what we have on the "About" page of the website.
3816
3817	* src/Voronoi.cc:
3818	* plugins/ATLASCone/ATLASConePlugin.cc:
3819	  typos
3820
3821	* example/fastjet_timing_plugins.cc:
3822	  added -all-algs option to run all algorithms and -file option to
3823	  read events from a file. You can now also specify multiple
3824	  algorithms, e.g. -kt -cam.
3825
3826	  NB: the algorithms loop is the outer one, and event-reading is
3827	  done in an innter an iev loop; -all-algs must be used in
3828	  conjunction with -file if you want the same set of particles to
3829	  be used for each jet alg.
3830
3831	* include/fastjet/ClusterSequence.hh:
3832	* src/ClusterSequence.hh:
3833        * plugins/D0RunIICone/D0RunIIConePlugin.cc
3834        * plugins/CDFCones/CDFMidPointPlugin.cc
3835        * plugins/CDFCones/CDFJetCluPlugin.cc
3836        * plugins/PxCone/PxConePlugin.cc
3837        * plugins/SISCone/siscone
3838        * plugins/CMSIterativeCone/CMSIterativeConePlugin.cc
3839        * plugins/D0RunICone/D0RunIBaseConePlugin.cc
3840        * plugins/TrackJet/TrackJetPlugin.cc
3841        * plugins/ATLASCone/ATLASConePlugin.cc
3842	  access to banner ostream is now through the cleaner
3843	  CS::fastjet_banner_stream() member + renamed
3844	  CS::fastjet_banner_ostr -> CS::_fastjet_banner_ostr and made it
3845	  private.
3846
38472011-11-24  Gregory Soyez  <soyez@fastjet.fr>
3848
3849	* plugins/D0RunICone/D0RunIBaseConePlugin.cc (_print_banner):
3850	  updated the version availability (3.0 rather than 2.4)
3851
38522011-11-24  Gavin Salam  <salam@lpthe.jussieu.fr>
3853
3854	* NEWS:
3855	  prepared preliminary summary of changes
3856
38572011-11-24  Gregory Soyez  <soyez@fastjet.fr>
3858
3859	* plugins/D0RunIICone/D0RunIIConePlugin.cc:
3860	* plugins/D0RunIICone/fastjet/D0RunIIConePlugin.hh:
3861	* plugins/D0RunICone/fastjet/D0RunIpre96ConePlugin.hh:
3862	* plugins/D0RunICone/fastjet/D0RunIConePlugin.hh:
3863	* plugins/D0RunICone/D0RunIBaseConePlugin.cc:
3864	* plugins/D0RunICone/HepEntityIpre96.h:
3865	* plugins/D0RunICone/HepEntityI.h:
3866	* plugins/D0RunICone/ConeClusterAlgo.hpp:
3867	* plugins/D0RunICone/inline_maths.h:
3868	* plugins/D0RunIICone/ILConeAlgorithm.hpp:
3869	* plugins/D0RunIICone/ProtoJet.hpp:
3870	* plugins/D0RunIICone/ConeSplitMerge.hpp:
3871	* plugins/D0RunIICone/ConeJetInfo.hpp:
3872	* plugins/D0RunIICone/HepEntity.h:
3873	* plugins/D0RunIICone/inline_maths.h:
3874	  added a history of Changes + a banner
3875
3876	* COPYING:
3877	  mentioned the origin of the D0 code
3878
3879	* plugins/TrackJet/fastjet/TrackJetPlugin.hh:
3880	* plugins/TrackJet/TrackJetPlugin.cc:
3881	* plugins/PxCone/fastjet/PxConePlugin.hh:
3882	* plugins/PxCone/PxConePlugin.cc:
3883	* plugins/CMSIterativeCone/fastjet/CMSIterativeConePlugin.hh:
3884	* plugins/CMSIterativeCone/CMSIterativeConePlugin.cc:
3885	* plugins/CDFCones/fastjet/CDFMidPointPlugin.hh:
3886	* plugins/CDFCones/fastjet/CDFJetCluPlugin.hh:
3887	* plugins/CDFCones/CDFMidPointPlugin.cc:
3888	* plugins/CDFCones/CDFJetCluPlugin.cc:
3889	* plugins/ATLASCone/fastjet/ATLASConePlugin.hh:
3890	* plugins/ATLASCone/ATLASConePlugin.cc:
3891	  print the banner to FJ's ClusterSequence::fastjet_banner_ostr
3892	  + removed 'disable_banner()'
3893
3894	* include/fastjet/ClusterSequence.hh:
3895	* src/ClusterSequence.cc (_print_banner):
3896	  added ClusterSequence::fastjet_banner_ostr. This is a (pointer
3897	  to a) stream where the banner will be printed.
3898
38992011-11-23  Gavin Salam  <salam@lpthe.jussieu.fr>
3900
3901	* src/ClusterSequence.cc (ClusterSequence::_print_banner):
3902	  updated banner following morning's discussion.
3903
39042011-11-22  Gavin Salam  <salam@lpthe.jussieu.fr>
3905
3906	* example/10-subjets.cc:
3907	  sorted out residual warning.
3908
3909	* plugins/D0RunICone/fastjet/D0RunIpre96ConePlugin.hh:
3910	* plugins/D0RunICone/fastjet/D0RunIBaseConePlugin.hh
3911	* plugins/D0RunICone/fastjet/D0RunIConePlugin.hh:
3912	  replaced CONrad -> CONErad.
3913
39142011-11-22  Gregory Soyez  <soyez@fastjet.fr>
3915
3916	* plugins/ATLASCone/fastjet/ATLASConePlugin.hh:
3917	* plugins/ATLASCone/ATLASConePlugin.cc:
3918	  added a banner
3919
3920	* plugins/ATLASCone/Makefile.am (libATLASConePlugin_la_SOURCES):
3921	  removed empty source files
3922
3923	* plugins/ATLASCone/CommonUtils.hh:
3924	* plugins/ATLASCone/JetConeFinderTool.cc:
3925	* plugins/ATLASCone/JetConeFinderTool.hh:
3926	* plugins/ATLASCone/JetDistances.hh:
3927	* plugins/ATLASCone/Jet.cc:
3928	* plugins/ATLASCone/Jet.hh:
3929	* plugins/ATLASCone/JetSplitMergeTool.cc:
3930	* plugins/ATLASCone/JetSplitMergeTool.hh:
3931	* plugins/ATLASCone/LorentzVector.hh:
3932	  added information about the file origin + a history of changes
3933
3934	* COPYING:
3935	  added info about all plugins written by the FastJet authors
3936
3937	* plugins/PxCone/PxConePlugin.cc (_print_banner):
3938	* plugins/CMSIterativeCone/CMSIterativeConePlugin.cc (_print_banner):
3939	* plugins/CDFCones/CDFJetCluPlugin.cc (_print_banner):
3940	* plugins/CDFCones/CDFMidPointPlugin.cc (_print_banner):
3941
3942	* plugins/PxCone/fastjet/PxConePlugin.hh:
3943	* plugins/CMSIterativeCone/fastjet/CMSIterativeConePlugin.hh:
3944	* plugins/TrackJet/fastjet/TrackJetPlugin.hh:
3945	  removed an unwanted 'const'
3946
39472011-11-22  Gavin Salam  <salam@lpthe.jussieu.fr>
3948
3949	* plugins/PxCone/pxcone.f (PXCONE):
3950	  added some info about licensing in this file.
3951
39522011-11-22  Gregory Soyez  <soyez@fastjet.fr>
3953
3954	* plugins/CDFCones/CDFcode/PhysicsTower.hh:
3955	* plugins/CDFCones/CDFcode/MidPointAlgorithm.hh:
3956	* plugins/CDFCones/CDFcode/JetCluAlgorithm.cc:
3957	* plugins/CDFCones/CDFcode/JetCluAlgorithm.hh:
3958	* plugins/CDFCones/CDFcode/LorentzVector.hh:
3959	* plugins/CDFCones/CDFcode/ClusterComparisons.hh:
3960	* plugins/CDFCones/CDFcode/Cluster.hh:
3961	* plugins/CDFCones/CDFcode/Centroid.hh:
3962	* plugins/CDFCones/CDFcode/CalTower.hh:
3963	  added info about permission for distribution + history of
3964	  changes
3965
3966	* plugins/CDFCones/CDFcode/Makefile.am:
3967	  removed empty files
3968
3969	* plugins/TrackJet/TrackJetPlugin.cc:
3970	* plugins/TrackJet/fastjet/TrackJetPlugin.hh:
3971	  added license information + print a banner at first usage
3972
3973	* plugins/PxCone/fastjet/PxConePlugin.hh:
3974	* plugins/PxCone/PxConePlugin.cc:
3975	  print a banner at first usage
3976
3977	* plugins/PxCone/README:
3978	  mentioned the list of changes in pxcone.f
3979
3980	* plugins/CMSIterativeCone/SortByEt.h:
3981	* plugins/CMSIterativeCone/CMSIterativeConePlugin.cc:
3982	  inserted a proper license description and a list of changes
3983	  compared to the original CMS code + print a banner at 1st use
3984
3985	* COPYING:
3986	  added a series of license agreements for 3rd party plugins
3987
39882011-11-21  Gregory Soyez  <soyez@fastjet.fr> + Gavin
3989
3990	* tools/MassDropTagger.cc (result):
3991	  replaced m() by equivalent expressions using m2()
3992
3993	* tools/fastjet/tools/MassDropTagger.hh:
3994	  used a WrappedStructure instead of a CompositeJetStructure for
3995	  the base MassDropTaggerStructure class.
3996
39972011-11-20  Gregory Soyez  <soyez@fastjet.fr>
3998
3999	* configure.ac:
4000	  put the extra warnings (-ansi -pedantic -Wextra -Wshadow)
4001	  under a --enable-extra-warnings configure flag
4002
40032011-11-20  Gavin Salam  <salam@lpthe.jussieu.fr>
4004
4005	* include/fastjet/PseudoJet.hh:
4006	  added pt(), pt2(), mt() and mt2() methods.
4007
4008	* src/GhostedAreaSpec.cc:
4009	* include/fastjet/GhostedAreaSpec.hh:
4010	  switched kt -> pt in default function names; kept copies of
4011	  functions with "kt" in name for backwards compatibility.
4012
4013	* test-script-output-orig.txt:
4014	  edits of kt -> pt given change in GAS.
4015
40162011-11-17  Gavin Salam  <salam@lpthe.jussieu.fr>
4017
4018	* src/ClusterSequence.cc:
4019	* include/fastjet/internal/base.hh:
4020	  moved the doxygen group list out of base.hh and into
4021	  ClusterSequence.cc; also added reference plugins where we mentioned
4022	  JetDefinition (otherwise it's a fairly non-obvious two clicks
4023	  away from the main page).
4024
40252011-11-17  Gregory Soyez  <soyez@fastjet.fr>
4026
4027	* src/ClusterSequence.cc (_decant_options):
4028	  added a missing call to _decant_options_partial()
4029	  (needed for proper initialisation as used e.g. in cases with
4030	  area)
4031
40322011-11-16  Gavin Salam  <salam@lpthe.jussieu.fr>
4033
4034	* src/ClusterSequence.cc:
4035	* include/fastjet/ClusterSequence.hh (template):
4036	  constructor now uses an initialisation list for things like the
4037	  _jet_def that are substantial and that one doesn't want to be
4038	  initialising twice. Also introduced _decant_options_partial()
4039	  and _initialise_and_run_no_decant(), which are now used directly
4040	  in the constructor. The calls _decant_options(...) and
4041	  _initialise_and_run(...) are maintained and just do the relevant
4042	  extra bits and pieces before calling _decant_options_partial()
4043	  and _initialise_and_run_no_decant() respectively. This shaves
4044	  off about 0.1 microseconds (can be relevant at low N).
4045
4046	* src/JetDefinition.cc (JetDefinition::JetDefinition):
4047	  removed function-wide ostringstream (for errors) in constructor,
4048	  which was causing a 0.6 microsecond time penalty, and replaced
4049	  it with oss's created only when an error condition is actually
4050	  seen.
4051
40522011-11-16  Gregory Soyez  <soyez@fastjet.fr>
4053
4054	* example/fastjet_timing_plugins.cc:
4055	  added a -repeat-incl <ptmin> option to show the jets above ptmin
4056	  at each repetition of the clustering
4057	  [modified it so that the jets are just extracted and sorted but
4058	  not printed]
4059
4060	* configure.ac:
4061	  increased the level of warnings in the default compilation flags
4062
4063	* example/10-subjets.cc:
4064	* example/04-constituents.cc:
4065	* example/fastjet_timing_plugins.cc:
4066	* example/fastjet_areas.cc (print_jets):
4067	  replaced/cast size_t by/to unsigned int
4068	  (this is mostly to avoid a compiler warning related to the fact
4069	  that size_t is equivalent to ungigned int on 32-bit machines and
4070	  long unsigned int on 64)
4071
40722011-11-16  Gavin Salam  <salam@lpthe.jussieu.fr>
4073
4074	* src/ClusterSequence.cc:
4075	  lowered switchover point from N2Plain -> N2Tiled based on
4076	  observations from Gregory and me on more modern computers than
4077	  were used in the original studies (presumably larger cache is at
4078	  play).
4079
40802011-11-15  Gregory Soyez  <soyez@fastjet.fr>
4081
4082	* src/ClusterSequence_TiledN2.cc (_minheap_faster_tiled_N2_cluster):
4083	  added a note about a gcc "may-be-used-uninitialised" warning
4084	  which is irrelevant.
4085
4086	* include/fastjet/NNH.hh (set_NN_nocross):
4087	  replaced 'head' and 'tail' by the parameters 'begin' and 'end'
4088	  (respectively). Note that all the calls to set_NN_nocross have
4089	  begin==head and end==tail so this is equivalent. But it is cleaner
4090	  and avoids a compiler warning.
4091
4092	* plugins/PxCone/fastjet/PxConePlugin.hh (ctor):
4093	  renamed arguments to avoid shadowing class members
4094
4095	* plugins/SISCone/fastjet/SISConeSphericalPlugin.hh:
4096	  removed extraneous ;
4097
4098	* src/CompositeJetStructure.cc (ctor):
4099 	  renamed a local var to avoid shadowing a class member
4100
41012011-11-14  Gavin Salam  <salam@lpthe.jussieu.fr>
4102
4103	* tools/Filter.cc:
4104	* tools/fastjet/tools/Filter.hh:
4105	  Reworked use of _subjet_def and _selector so that they are no
4106	  longer mutable. Also arranged for description to be more
4107	  accurate.
4108
41092011-11-14  Gregory Soyez  <soyez@fastjet.fr>
4110
4111	* tools/Filter.cc (_get_all_pieces, ...):
4112	  removed the internal mutable all_pieces variable and pass
4113	  instead an argument to the appropriate functions
4114
4115	* plugins/D0RunICone/HepEntityIpre96.h:
4116	* plugins/D0RunICone/HepEntityI.h:
4117	* plugins/ATLASCone/Jet.hh:
4118	* plugins/ATLASCone/LorentzVector.hh:
4119	* plugins/D0RunIICone/ILConeAlgorithm.hpp:
4120	* plugins/D0RunIICone/ProtoJet.hpp:
4121	* plugins/D0RunIICone/ConeJetInfo.hpp:
4122	* plugins/CDFCones/CDFcode/LorentzVector.hh:
4123	* include/fastjet/internal/Voronoi.hh:
4124	* src/Voronoi.cc:
4125	  started/completed a history of Changes to 3rd party code
4126
4127	* plugins/CDFCones/CDFcode/CalTower.hh (ctor):
4128	  added a few () to get rid of a gcc warning
4129
4130	* src/ClusterSequence_DumbN3.cc (_really_dumb_cluster):
4131	  marked as obsolete a part of the code that was associated with
4132	  another obsolete part of the code
4133
4134	* tools/fastjet/tools/Filter.hh:
4135	* tools/Filter.cc:
4136	  removed all_pieces as the 2nd argument of get_all_pieces: this
4137	  is a member variable of the class so there is no need to pass it
4138	  as an argument.
4139
4140	* src/ClusterSequence_TiledN2.cc (_tiled_N2_cluster,
4141	  _minheap_faster_tiled_N2_cluster, _faster_tiled_N2_cluster):
4142	  replaced Tile * tile by Tile * tile_ptr to avoid a
4143	  shadowing (gcc -Wshadow warning)
4144
4145	* example/09-user_info.cc (MyUserInfo ctor):
4146	* example/fastjet_timing_plugins.cc (main):
4147	* plugins/D0RunICone/fastjet/D0RunIpre96ConePlugin.hh (ctor):
4148	* plugins/D0RunICone/fastjet/D0RunIConePlugin.hh (ctor):
4149	* plugins/D0RunICone/fastjet/D0RunIBaseConePlugin.hh (ctor):
4150	* plugins/D0RunICone/HepEntityIpre96.h (ctor, Fill):
4151	* plugins/D0RunICone/HepEntityI.h (ctor, Fill):
4152	* plugins/EECambridge/fastjet/EECambridgePlugin.hh (ctor):
4153	* plugins/ATLASCone/fastjet/ATLASConePlugin.hh (ctor):
4154	* plugins/ATLASCone/Jet.hh (ctor):
4155	* plugins/ATLASCone/LorentzVector.hh (ctor):
4156	* plugins/D0RunIICone/ILConeAlgorithm.hpp (TemporaryJet ctor, midpoint):
4157	* plugins/D0RunIICone/ProtoJet.hpp (ctor,setJet):
4158	* plugins/D0RunIICone/ConeJetInfo.hpp (ctors):
4159	* plugins/D0RunIICone/fastjet/D0RunIIConePlugin.hh (ctor):
4160	* plugins/CDFCones/fastjet/CDFMidPointPlugin.hh (ctors):
4161	* plugins/CDFCones/fastjet/CDFJetCluPlugin.hh (ctors):
4162	* plugins/CDFCones/CDFcode/LorentzVector.hh (ctor):
4163	* plugins/SISCone/fastjet/SISConePlugin.hh (ctors):
4164	* plugins/SISCone/fastjet/SISConeSphericalPlugin.hh (ctor):
4165	* include/fastjet/NNH.hh (init, other_init):
4166	* tools/TopTaggerBase.cc (_cos_theta_W):
4167	* tools/JHTopTagger.cc (result, _split_once):
4168	* tools/CASubJetTagger.cc (result):
4169	* tools/RestFrameNSubjettinessTagger.cc (result):
4170	* tools/fastjet/tools/JHTopTagger.hh (ctor):
4171	* tools/fastjet/tools/TopTaggerBase.hh (description_of_selectors):
4172	* tools/fastjet/tools/Boost.hh (result):
4173	* tools/fastjet/tools/RestFrameNSubjettinessTagger.hh (ctor):
4174	* tools/MassDropTagger.cc (result):
4175	* tools/fastjet/tools/MassDropTagger.hh (ctor):
4176	* tools/Pruner.cc (result):
4177	* tools/fastjet/tools/JetMedianBackgroundEstimator.hh (set_rescaling_class):
4178	* tools/GridMedianBackgroundEstimator.cc (set_rescaling_class):
4179	* tools/JetMedianBackgroundEstimator.cc (set_jet_density_class):
4180	* tools/fastjet/tools/BackgroundEstimatorBase.hh (set_rescaling_class):
4181	* include/fastjet/ClusterSequenceArea.hh (initialize_and_run_cswa):
4182	* src/Error.cc (ctor):
4183	* src/ClusterSequence1GhostPassiveArea.cc (_initialise_and_run_1GPA):
4184	* src/ClusterSequencePassiveArea.cc (_initialise_and_run_PA):
4185	* src/ClusterSequenceVoronoiArea.cc (_initializeVA):
4186	* include/fastjet/ClusterSequenceVoronoiArea.hh (ctor):
4187	* src/Voronoi.cc (generateVoronoi):
4188	* src/ClusterSequenceActiveArea.cc (_initialise_and_run_AA,
4189	  _initialise_AA, _transfer_areas):
4190	* src/GhostedAreaSpec.cc (ctor):
4191	* src/PseudoJet.cc (ctor, boost, unboostm set_cached_rap_phi,
4192          set_structure_shared_ptr, reset_momentum_PtYPhiM):
4193	* src/JetDefinition.cc (ctor):
4194	* include/fastjet/ClusterSequenceArea.hh (ctors):
4195	* include/fastjet/AreaDefinition.hh (VoronoiAreaSpec):
4196	* include/fastjet/ClusterSequence1GhostPassiveArea.hh (ctor):
4197	* include/fastjet/ClusterSequencePassiveArea.hh (ctor):
4198	* include/fastjet/ClusterSequenceActiveArea.hh (ctor):
4199	* src/ClusterSequenceActiveAreaExplicitGhosts.cc (empty_area):
4200	* include/fastjet/ClusterSequenceActiveAreaExplicitGhosts.hh (ctors,
4201	  _initialise):
4202	* include/fastjet/ClusterSequenceAreaBase.hh (ctor):
4203	* src/ClusterSequenceAreaBase.cc (subtracted_jets):
4204	* src/Selector.cc (count, operator(), sift):
4205	* include/fastjet/GhostedAreaSpec.hh (ctors):
4206	* src/ClusterSequence.cc (_initialise_and_run, _decant_options,
4207	  inclusive_jets, exclusive_jets_up_to, print_jets_for_root,
4208	  particle_jet_indices):
4209	* include/fastjet/ClusterSequence.hh (ctor):
4210	* include/fastjet/Selector.hh (ctor):
4211	* include/fastjet/JetDefinition.hh (ctors):
4212	* include/fastjet/internal/DynamicNearestNeighbours.hh (ctor):
4213	* include/fastjet/PseudoJet.hh (reset_PtYPhiM, reset, reset_momentum):
4214	  added a '_in' suffix to some variables passed as argument to
4215	  avoid a shadowing gcc warning, and a '_local' suffix for similar
4216	  local variables.
4217	  Note that these warnings were anyway harmless as they were
4218	  shadowing unused methods.
4219
4220	* include/fastjet/internal/Voronoi.cc:
4221	* src/Voronoi.cc:
4222          - removed 'plot' and 'triangulate' (were always 0)
4223          - removed unused plot functions (openpl, circle, range,
4224            out_bisector, out_ep, out_vertex, out_site, out_triple)
4225          - removed unused 'VPoint p' in 'intersect'
4226	  - fixed missing changes in earlier history
4227
4228	* include/fastjet/internal/Voronoi.cc:
4229	* src/Voronoi.cc:
4230	  added a summary of changes compared to the original code by
4231	  S. O'Sullivan
4232
4233	* example/14-groomers.cc:
4234	* example/13-boosted_top.cc:
4235	* example/12-boosted_higgs.cc:
4236	* example/11-filter.cc:
4237	* example/09-user_info.cc:
4238	* example/08-selector.cc:
4239	* example/07-subtraction.cc:
4240	* example/06-area.cc:
4241	* example/05-eplus_eminus.cc:
4242	* example/04-constituents.cc:
4243	* example/03-plugin.cc:
4244	* example/02-jetdef.cc:
4245	* example/01-basic.cc:
4246	* example/fastjet_example.cc:
4247	* example/fastjet_areas.cc:
4248	* example/fastjet_timing_plugins.cc:
4249	  . removed some unused method parameters
4250	  . fixed format warnings for fprintf
4251
4252	* tools/Filter.cc:
4253	* include/fastjet/ClusterSequenceVoronoiArea.hh:
4254	* tools/fastjet/tools/BackgroundEstimatorBase.hh:
4255	  commented out unused method parameters
4256	  removed extraneous ';'
4257
4258	* include/fastjet/NNH.hh:
4259	  removed some unused method parameters
4260
42612011-11-13  Gregory Soyez  <soyez@fastjet.fr>
4262
4263	* src/CompositeJetStructure.cc:
4264	* src/JetDefinition.cc:
4265	* include/fastjet/CompositeJetStructure.hh:
4266	  commented out unused method parameters
4267
4268	* src/PseudoJetStructureBase.cc:
4269	  commented out the name of unused parameters in a few methods to
4270	  remove a compiler warning coming with -Wunused-parameter (and
4271	  -Wextra)
4272
4273	* src/Selector.cc (SelectorWorker):
4274	  removed the name of unused parameters in a few methods to remove
4275	  a compiler warning coming with -Wunused-parameter (and -Wextra)
4276
42772011-11-12  Gregory Soyez  <soyez@fastjet.fr>
4278
4279	* src/Selector.cc (SelectorWorker):
4280	  typo in comment
4281
4282	* include/fastjet/SharedPtr.hh (SharedPtr):
4283	  . in the postfix increment and decrement operators, replaced
4284	    "int unused" by "int" to avoid a compiler warning. Note that
4285	    this dummy var is just a C++ trick to differentiate the
4286	    postfix from the prefix operators.
4287	  . used the prefix operator instead of the postfix one whenever
4288	    possible
4289
42902011-11-12  Gavin Salam  <salam@lpthe.jussieu.fr>
4291
4292	* tools/fastjet/tools/Filter.hh:
4293	  added reference to manual for a simple example of a Filter
4294	  implementation.
4295
4296	* include/fastjet/PseudoJet.hh:
4297	  added a bunch of shorthands such as has_valid_cs() so as to
4298	  coincide with table 3.
4299
4300	* include/fastjet/SharedPtr.hh:
4301	  fixed typo in comment.
4302
43032011-11-11  Gavin Salam  <salam@lpthe.jussieu.fr>
4304
4305	* include/fastjet/ClusterSequence.hh:
4306	* src/ClusterSequence.cc:
4307	  moved main page of doxygen documentation into .cc file
4308	  to avoid big recompilation at every change.
4309
4310	* include/fastjet/Selector.hh:
4311	* include/fastjet/PseudoJet.hh:
4312	* include/fastjet/SharedPtr.hh:
4313	* include/fastjet/PseudoJetStructureBase.hh:
4314	  commented out unused dummy arguments to avoid compiler warnings.
4315
43162011-11-09  Gavin Salam  <gsalam@macth69.cern.ch>
4317
4318	* plugins/PxCone/README:
4319	  added copy of email from Mike Seymour granting authorization to
4320	  distribute under GPLv2.
4321
43222011-11-08  Gregory Soyez  <soyez@fastjet.fr>
4323
4324	* autogen.sh:
4325	* configure.ac:
4326	* config.h.siscone.in:    *** ADDED ***
4327	  added the necessary steps to configure/build SISCone directly
4328	  from the FastJet configure/build system. This has mailny the
4329	  advantage to reduce the size of the distribution (1.7MB instead
4330	  of 2.0MB) and save a bit of time during configuration. However
4331	  it comes at the expense that we have to hardcode the SISCone
4332	  version in a new configuration (auto)header --- since it would
4333	  no longer be obtained from SISCone's configure.ac. Therefore, we
4334	  stick to the old situation and comment out the inclusion of
4335	  SISCone configuration into FastJet's.
4336
43372011-11-07  Gregory Soyez  <soyez@fastjet.fr>
4338
4339	* configure.ac (AC_PROG_FC):
4340	  when searching for a Fortran compiler, make sure one is actually
4341	  found or exit with an error message.
4342
4343
43442011-11-07  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo & Gregory
4345
4346	* plugins/SISCone/SISConeSphericalPlugin.cc (run_clustering):
4347	* plugins/SISCone/SISConePlugin.cc (run_clustering):
4348	  jets' user indices are no longer set to the pass from which they
4349	  come.
4350
4351	* include/fastjet/PseudoJet.hh (P):
4352	  added validated_cluster_sequence() and
4353	  validated_cluster_sequence_area_base().
4354
43552011-10-31  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo
4356
4357	* doc/fastjet-doc.tex:
4358	  - moved strategies into an appendix of their own; we should add
4359	    timing fig. there
4360	  - documented deprecation of JetFinder and JD(jet_alg, R,
4361	    strategy) in relevant appendix
4362	  - various other small changes up to end of section 3.3;
4363	    next question is whether to move reco-schemes into an
4364	    appendix.
4365
4366	* include/fastjet/JetDefinition.hh:
4367	  removed some old commented code
4368
4369	* src/PseudoJet.cc (description):
4370	  fixed typo in default description
4371
43722011-10-28  Gregory Soyez  <soyez@fastjet.fr> & Matteo
4373
4374	* doc/fastjet-doc.tex:
4375	  reworked Section 7 (jet areas):
4376	   - rephrased slightly the introduction (mostly added a brief
4377	     usage example) to avoid being too technical
4378	   - reorganised the description of ClusterSequenceArea to reflect
4379	     the fact that jet-area information can directly be accessed
4380	     through PseudoJet.
4381
4382	  reworked Section 8 (background estim+subtraction):
4383	   - moved the section about the subtraction higher up (in Section
4384	     on general usage)
4385	   - positional dependence: made explicit that rho(jet) and
4386	     sigma(jet) work for both the JMBGE and the GMBGE, as well as
4387	     for both techniques (selector-based and rescaling-based)
4388
4389	* include/fastjet/ClusterSequenceArea.hh:
4390	  fixed a typo in the Doxygen comments
4391
43922011-10-21  Gregory Soyez  <soyez@fastjet.fr>
4393
4394	* BUGS:
4395	  mention the release of CGAL-3.9
4396
43972011-10-09  Gavin SALAM  <salam@lpthe.jussieu.fr>
4398
4399	* include/fastjet/ClusterSequence.hh:
4400	  changed link to fastjet main page in doxygen main page.
4401
4402	* Doxyfile (PROJECT_NUMBER):
4403	* doc/fastjet-doc.tex:
4404	* configure.ac:
4405	  switched version over to 3.0.1-devel
4406
4407	* plugins/SISCone:
4408	  switched it back to trunk
4409
44102011-10-09  Gregory Soyez  <soyez@fastjet.fr> & Matteo & Gavin
4411
4412	Release of FastJet 3.0.0
4413
44142011-10-09  Gavin Salam  <salam@lpthe.jussieu.fr>
4415
4416	* src/ClusterSequenceActiveAreaExplicitGhosts.cc (ClustSeqActAreaEG::_post_process):
4417          replaced area_4vectors[i] = _jets[i] with
4418          _area_4vectors[i].reset_momentum(_jets[i]);
4419	  so that areas are structure-free (and so they don't mess
4420	  up the use count, leading to potential memory leaks). Checked
4421	  this solves the leak found in the 11-filter example.
4422
4423	* INSTALL: added a note about the old compilation system not
4424	  working.
4425
4426	* NEWS: updated release date
4427
4428	* BUGS: fixed some wording in a few places.
4429
4430	* CHECKLIST included a line for checks on the examples.
4431
44322011-10-09  Matteo Cacciari <cacciari@lpthe.jussieu.fr>
4433
4434        * INSTALL: reworked a bit the initial part, updated the list
4435          of examples
4436
44372011-10-08  Gregory Soyez  <soyez@fastjet.fr>
4438
4439	* TODO: removed done items
4440
44412011-10-06  Gregory Soyez  <soyez@fastjet.fr>
4442
4443	* plugins/D0RunICone/D0RunIBaseConePlugin.cc:
4444	  inverted the order of the include files (this works
4445	  around an anonymous enum bug in gcc-4.0.1 on Macs)
4446
4447	* plugins/SISCone"
4448	  switched to SISCone 2.0.3
4449
4450	* doc/fastjet-doc.tex:
4451	* include/fastjet/config_win.h:
4452	* Doxyfile-devel:
4453	* Doxyfile:
4454	* configure.ac:
4455	  switched version number to 3.0.0
4456
4457	* plugins/D0RunICone/inline_maths.h:
4458	* plugins/D0RunICone/HepEntityI.h:
4459	* plugins/D0RunICone/ConeClusterAlgo.hpp:
4460	* plugins/D0RunICone/HepEntityIpre96.h:
4461	  put the d0runi namespace inside the FastJet namespace
4462
4463	* plugins/D0RunICone/ConeClusterAlgo.hpp:
4464          reverted a misordered #endif and namespace }
4465
4466	* include/fastjet/internal/IsBase.hh:
4467	  fised a typo in a class name in a doxygen comment
4468
4469	* src/genconfig.sh:
4470	  added the FASTJET_ prefix for the GridJet plugin
4471
44722011-09-29  Gavin Salam  <salam@lpthe.jussieu.fr>
4473
4474	* tools/*.cc:
4475	* tools/fastjet/tools/*.hh:
4476	  replaced tabs with spaces
4477
44782011-09-28  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo + Gregory
4479
4480	* example/fastjet_areas.cc:
4481	* test-script-output-orig.txt:
4482	  switched "make check" area test over to active area (new ghost
4483	  placement).
4484
4485	* example/07 upwards-*.cc updates:
4486	  added using namespace fastjet and removed redundant fastjet::
4487
4488	* example/14-groomers.cc:
4489	  small changes to comments + addition of header
4490
4491	* example/11-filter.cc:
4492	  addition of header
4493
4494
44952011-09-28  Matteo Cacciari <cacciari@lpthe.jussieu.fr>
4496
4497        * example/14-groomers.cc ** ADDED **
4498          added example showing unified use of filtering, trimming,
4499	  pruning
4500
45012011-09-28  Gregory Soyez  <soyez@fastjet.fr>
4502
4503	* NEWS:
4504	  mentioned libfastjettools
4505
45062011-09-27  Gavin Salam  <salam@lpthe.jussieu.fr>
4507
4508	* tools/Pruner.cc (Pruner::result):
4509	  removed extraneous cout.
4510
45112011-09-26  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo & Gregory
4512
4513	* include/fastjet/GhostedAreaSpec.cc:
4514	* src/GhostedAreaSpec.cc:
4515	  added warning for when set_fj2_placement(true) is called.
4516
45172011-09-25  Gregory Soyez  <soyez@fastjet.fr>
4518
4519	* tools/JetMedianBackgroundEstimator.cc (set_particles):
4520	  Bug fixed: simply set _uptodate to false instead of calling
4521	  reset(). This avoids that in code like
4522	    jmbge.set_rescaling_class(...);
4523	    jmbge.set_particles(...)\
4524	  the 2nd call resets the rescaling class to NULL (erasing the
4525	  effect of the 1st one)
4526
45272011-09-23  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo & Gregory
4528
4529	* include/fastjet/ClusterSequence.hh:
4530	* src/ClusterSequence.cc:
4531	  removed old (and objectionable) constructor that took just R
4532	  rather than a jet_def; also removed set_jet_algorithm and
4533	  set_jet_def and related _default_jet_algorithm private variable.
4534
4535	* include/fastjet/internal/Triangulation.hh:
4536	  moved the include guards.
4537
4538	* tools/Makefile.am:
4539	* tools/JHTopTagger.cc:
4540	* tools/TopTaggerBase.cc (_cos_theta_W): *** ADDED ***
4541	  moved the _cos_theta_W(...) call into a new file
4542	  TopTaggerBase.cc (also modified the .hh files)
4543
45442011-09-17  Gavin Salam  <salam@lpthe.jussieu.fr>
4545
4546	* src/JetDefinition.cc:
4547	* include/fastjet/JetDefinition.hh:
4548	  moved max_allowable_R value into .cc file to try and resolve
4549	  problem on karnak.
4550
45512011-09-16  Gavin Salam  <salam@lpthe.jussieu.fr> + Matteo
4552
4553	* tools/Filter.cc:
4554	  fixed a bug whereby the recombiner in the internal jet def may
4555	  point to a default recombiner that gets deleted before retuning
4556	  the filtered jet to the user; see also the BUGS file for a
4557	  residual issue in the case of recombiners that delete
4558	  themselves.
4559
4560	* tools/Pruner.cc (and .hh):
4561	  - added "minimal" constructor that takes a jet_alg (rather than
4562	    jet_def), automatically sets the R to
4563	    JetDefinition::max_allowable_R and deduces the recombiner
4564	    from the jet that is being Pruned.
4565	  - removed _recursively_mark_as_rejected, since no longer needed.
4566	  - added a "return true" in _check_explicit_ghosts to fix a bug
4567	    in the case of jets with pieces, so that areas were not available
4568	  - fixed a bug whereby internal pruning plugin was being deleted
4569	    too early
4570
4571	* include/fastjet/JetDefinition.hh:
4572	* include/fastjet/JetDefinition.cc:
4573	  changed hard-coded limit for R of 1000 into
4574	  JetDefinition::max_allowable_R, with extra comments;
4575	  replaced assertion with throw for when the condition is not
4576	  satisfied.
4577
45782011-09-13  Gavin Salam  <salam@lpthe.jussieu.fr> + Matteo
4579
4580	* tools/fastjet/tools/RestFrameNSubjettinessTagger.hh:
4581	* tools/fastjet/tools/BackgroundEstimatorBase.hh:
4582	* tools/fastjet/tools/JetMedianBackgroundEstimator.hh:
4583	* tools/fastjet/tools/GridMedianBackgroundEstimator.hh:
4584	  small mods and fixes to doxygen
4585
4586	* all files:
4587	  Changed the GPL pointer to be to the website
4588	  http://www.gnu.org/licenses/ rather than a physical address.
4589	  Updated the copyright line to make sure Gregory is always
4590	  included and have the latest date as 2011.
4591
45922011-09-12  Gavin Salam  <salam@lpthe.jussieu.fr> + Matteo
4593
4594	* tools/fastjet/tools/JHTopTagger.hh:
4595	* tools/fastjet/tools/MassDropTagger.hh:
4596	  small changes to comments
4597
4598	* tools/fastjet/tools/Filter.hh:
4599	  reworked the doxygen documentation.
4600
4601	* tools/fastjet/tools/Transformer.hh (class Transformer):
4602	  rewrote the main doxygen comment, aiming it at users rather than
4603	  developers.
4604
4605	* tools/Pruner.cc:
4606	* tools/fastjet/tools/Pruner.hh:
4607	  - worked on the comments a bit + switched it over to
4608	    childless_pseudojets();
4609	  - moved constructor with dynamic Rcut and zcut to .cc file and
4610	    asserted that the two pointers are non-zero.
4611	  - got description working in case of dynamic Rcut and zcut
4612
4613	* src/ClusterSequence.cc:
4614	* include/fastjet/ClusterSequence.hh:
4615	  renamed CS::orphaned() -> CS::childless_pseudojets()
4616
46172011-09-08  Gregory Soyez  <soyez@fastjet.fr>
4618
4619	* include/fastjet/ClusterSequence.hh:
4620	* src/ClusterSequence.cc:
4621	  added an "orphaned()" member that returns all the objects in the
4622	  ClusterSequence that have not made it into a jet (i.e. that have
4623	  no child and are not a recombination with the beam)
4624
4625	* src/Selector.cc:
4626	* include/fastjet/Selector.hh:
4627	  added SelectorIsZero that selects PseudoJet's with zero momentum
4628
4629	* tools/Pruner.cc (PruningPlugin):
4630	  when a branch of the internal ClsuterSequence is vetoed, keep it
4631	  until the point where is has been vetoed (instead of leaving its
4632	  constituents unclustered)
4633
4634	* BUGS:
4635	  added a mention about the known assertion violation we noticed
4636	  in CGAL 3.7, 3.8 and 3,9-beta and that will be fixed in CGAL 3.9
4637
46382011-09-05  Gregory Soyez  <soyez@fastjet.fr>
4639
4640	* tools/Pruner.cc:
4641	  added a couple of missing ';'
4642
46432011-09-04  Matteo Cacciari <cacciari@lpthe.jussieu.fr>
4644
4645	* tools/fastjet/tools/Pruner.hh:
4646	* tools/Pruner.cc:
4647          Some work on the doxygen comments and the description functions
4648
46492011-09-02  Gregory Soyez  <soyez@fastjet.fr>
4650
4651	* tools/Pruner.cc:
4652	* tools/fastjet/tools/Pruner.hh:
4653	  . fixed a wrong typedef syntax in Pruner
4654          . used the radius of the specified jet definition to do the
4655	    re-clustering (updated comments accordingly)
4656	  . used Rcut_factor instead of Rcut in the Pruner. The Rcut is
4657	    determined from the jet being pruned using Rcut_factor * 2m/pt
4658	  . replaced the requirement that the jet must have an associated
4659	    CS by the requirement that the jet must have constituents
4660	  . added a PrunerStructure that allows access to the rejected
4661	    constituents and the other jets that may have been found
4662	    during the re-clustering.
4663	  . added support for areas (provided the jet being pruned has
4664	    explicit ghosts)
4665	  . allowed the Rcut and zcut to be functions of the PseudoJet
4666	    being pruned
4667
46682011-09-02  Gregory Soyez  <soyez@fastjet.fr>
4669
4670	* include/fastjet/RangeDefinition.hh:
4671	* tools/RestFrameNSubjettinessTagger.cc:
4672	* tools/CASubJetTagger.cc:
4673	* tools/fastjet/tools/CASubJetTagger.hh:
4674	  removed some unnecessary 'fastjet::'
4675
46762011-09-01  Gregory Soyez  <soyez@fastjet.fr> + Matteo
4677
4678	* tools/fastjet/tools/Pruner.hh:     *** ADDED ***
4679	* tools/Pruner.cc:                   *** ADDED ***
4680	* tools/fastjet/tools/Makefile.am:
4681	* tools/Makefile.am:
4682	  added a Pruner transformer (arXiv:0903.5081) using an internal
4683	  PruningPlugin and PruningRecombiner. Note that the
4684	  implementation differs from the FastPrune plugin from
4685	  arXiv:0903.5081: for uniformity we provide Pruner as a
4686	  Transformer rather than a Plugin (as a consequence, our internal
4687	  Plugin just reclusters the constituents of a single jet and not
4688	  the whole event as in FastPrune).
4689
4690	* example/11-filter.cc (main):
4691	  fixed comment+requirement to have at least 3 (and not 2) jets
4692	  above 5 GeV
4693
46942011-08-31  Gavin Salam  <salam@lpthe.jussieu.fr>
4695
4696	* fortran_wrapper/fastjetfortran.cc:
4697	  replaced RangeDefinition with a Selector (is more uptodate and
4698	  avoids a deprecated warning).
4699
4700	* fortran_wrapper/Makefile.alt:
4701	  changed FC and F77 to refer to gfortran without a path (to avoid
4702	  risk of picking up one that differs from the user's default choice)
4703
4704	* include/fastjet/LimitedWarning.hh:
4705	* src/LimitedWarning.cc:
4706	  added set_default_max_warn(...) static member function;
4707	  changed interface to warn(warning, ostr) so that ostr must
4708	  now be a pointer; if it's null there is no output;
4709	  similarly if the default stream is null there's no output
4710	  (unless a different stream is requested in an individual warn call).
4711
4712	* src/Error.cc:
4713	* include/fastjet/Error.hh:
4714	  changed meaning of a null default stream choice, so that it now
4715	  suppressed output (as with change to LimitedWarning).
4716
47172011-08-29  Gavin Salam  <salam@lpthe.jussieu.fr>
4718
4719	* src/LimitedWarning.cc (LimitedWarning::warn):
4720	* include/fastjet/LimitedWarning.hh (class LimitedWarning):
4721	  bug fix: previously when the max warning count was set to zero,
4722	  there would be one summary entry for each call to the warning.
4723	  Fixed this by zeroing the summary pointer in the constructor and
4724	  using its zero status to decide whether to allocate it or not.
4725
4726
47272011-08-22  Matteo Cacciari <cacciari@lpthe.jussieu.fr>
4728
4729	* plugins/D0RunICone/fastjet/D0RunIBaseConePlugin.hh:
4730	* plugins/D0RunICone/fastjet/D0RunIConePlugin.hh:
4731	* plugins/D0RunICone/fastjet/D0RunIpre96ConePlugin.hh:
4732	  put "v3.0 or later" in all three files. Perhaps not necessary
4733	  for the base class, but seems sensible to have the same everywhere.
4734	  Also modified slightly the doxygen comments.
4735
4736	* include/fastjet/Error.hh
4737	  renamed set_backtrace() -> set_print_backtrace(), fixed
4738	  its doxygen comment
4739	  Reworked some doxygen comments, also to reflect the fact
4740	  that printing of backtrace is "off" by default
4741
4742	* include/fastjet/Error.hh
4743	* include/fastjet/Error.cc
4744	  added set_default_stream() for a user-set output stream
4745	  for errors
4746
4747	* include/fastjet/LimitedWarning.cc
4748	  added ostr.flush() in warn(), so as to get something written
4749	  to a file even in the event of the program aborting because of an
4750	  error
4751
47522011-08-16  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo
4753
4754	* include/fastjet/internal/LimitedWarning.hh:
4755	* include/fastjet/LimitedWarning.hh: *** ADDED ***
4756	* src/LimitedWarning.cc:             *** ADDED ***
4757	  moved LimitedWarning from internal to standard include space;
4758	  added two static functions:
4759	  - LimitedWarning::set_default_stream(...)
4760	  - LimitedWarning::summary(...) // for summary of all warnings issued
4761          Also moved the class into the error_handling part of doxygen
4762
4763	* <many other classes>
4764	  changed them to access limited warning through the new location
4765
4766	* include/fastjet/Error.hh (Error):
4767	  typo in comments
4768
47692011-08-11  Gregory Soyez  <soyez@fastjet.fr>
4770
4771	* tools/fastjet/tools/TopTaggerBase.hh:
4772	  fixed some doxygen comments
4773
47742011-08-10  Gregory Soyez  <soyez@fastjet.fr>
4775
4776	* configure.ac:
4777	* include/fastjet/config_win.h:
4778	* doc/fastjet-doc.tex:
4779	* Doxyfile:
4780	* Doxyfile-devel:
4781	  moved version number to 3.0beta2-devel
4782
47832011-08-10  Gregory Soyez  <soyez@fastjet.fr> & Matteo & Gavin
4784
4785	Release of FastJet 3.0beta1
4786
47872011-08-09  Gregory Soyez  <soyez@fastjet.fr>
4788
4789	* plugins/GridJet/fastjet/GridJetPlugin.hh:
4790	  put the GridJet plugin in the "plugins" documentation module
4791
4792	* plugins/D0RunICone/fastjet/D0RunIConePlugin.hh:
4793	* plugins/D0RunICone/fastjet/D0RunIpre96ConePlugin.hh:
4794	  "from version 2.4 onwards" -> "from version 3.0 onwards"
4795
47962011-08-09  Gregory Soyez  <soyez@fastjet.fr>
4797
4798	* configure.ac:
4799	* include/fastjet/config_win.h:
4800	* doc/fastjet-doc.tex:
4801	* Doxyfile:
4802	* Doxyfile-devel:
4803	  set the version number to 3.0beta1 in preparation of the release
4804
48052011-08-09  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo & Gregory
4806
4807	* NEWS:
4808	  prepared the NEWS for the release of FastJet 3.0beta1
4809
48102011-08-09  Gavin SALAM  <salam@lpthe.jussieu.fr>
4811
4812	* CHECKLIST:
4813	  started the checklist for the 3.0beta1 release.
4814
48152011-08-08  Gregory Soyez  <soyez@fastjet.fr>
4816
4817	* configure.ac:
4818	  sorted out quotation issues
4819
48202011-08-08  Gavin Salam  <salam@lpthe.jussieu.fr>
4821
4822	* include/fastjet/PseudoJet.hh:
4823	  added has_user_info() and has_user_info<...>() functions;
4824	  (also documented this).
4825
48262011-08-08  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo & Gregory
4827
4828	* plugins/GridJet/fastjet/GridJetPlugin.hh:
4829	  expanded the documentation a little.
4830
48312011-08-08  Gregory Soyez  <soyez@fastjet.fr>
4832
4833	* configure.ac:
4834	  print "/usr/local" instead of "NONE" as installation dir
4835	  if none is specified.
4836
4837	* configure.ac:
4838	* fastjet-config.in:
4839	  . replaced "echo -e" with the more portable "printf"
4840	  . added the configuration invocation arguments to the summary
4841	    printted for fastjet-config --config
4842
48432011-08-08  Gavin Salam  <salam@lpthe.jussieu.fr>
4844
4845	* tools/fastjet/tools/TopTaggerBase.hh:
4846	  added note about need to derive top tagger structures also from
4847	  something related to PseudoJetStructureBase
4848
48492011-08-05  Gavin Salam  <salam@lpthe.jussieu.fr>
4850
4851	* configure.ac:
4852	  exchanged order of -lsiscone and -lsiscone_spherical in
4853	  fastjet-config --libs (spherical first now), because the
4854	  spherical one needs elements from the standard one.
4855
48562011-08-04  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo
4857
4858	* tools/Makefile.am:
4859	* tools/fastjet/tools/Makefile.am:
4860	* tools/fastjet/tools/RestFrameNSubjettinessTagger.hh: (renamed)
4861	* tools/RestFrameNSubjettinessTagger.hh: (renamed)
4862	  renamed NSubjettinessTagger -> RestFrameNSubjettinessTagger to
4863	  avoid confusion with the other NSubjettiness based tagger.
4864
48652011-08-03  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo
4866
4867	* example/11-filter.cc:
4868	  Added examples of filters with subtraction.
4869          Revamped the output.
4870
4871	* tools/fastjet/tools/Filter.hh:
4872	* tools/Filter.cc:
4873	  added a set_subtractor(...) option to the Filter.
4874
4875	* AUTHORS:
4876	* doc/fastjet-doc.tex:
4877	  a common (and longer) acknowledgements list now present in both
4878	  files. Still not complete.
4879
4880	* src/Selector.cc:
4881	* include/fastjet/Selector.hh:
4882	  renamed SelectorM{Max,Min,Range} -> SelectorMass{Max,Min,Range},
4883	  to enhance code readability (as found when handling top tagging
4884	  examples).
4885
4886	* tools/fastjet/tools/JHTopTagger.hh:
4887	* tools/JHTopTagger.cc:
4888	  worked on the documentation so that it corresponds to the new
4889	  structure; description now include details of the top and W mass
4890	  selectors if they're present.
4891
48922011-08-02  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo
4893
4894	* tools/fastjet/tools/TopTaggerBase.hh:  *** ADDED ***
4895	* tools/fastjet/tools/JHTopTagger.hh:
4896	* tools/JHTopTagger.cc:
4897	  experimenting with a structure whereby the JHTopTagger derives
4898	  from a TopTaggerBase, as requested by Chris Vermilion.
4899
4900	* tools/fastjet/tools/BackgroundEstimatorBase.hh:
4901	  added a virtual destructor that does nothing.
4902
4903	* tools/fastjet/tools/Subtractor.hh:
4904	* tools/Subtractor.cc:
4905	  tried moving a const static invalid_rho definition into the .cc
4906	  file to work around problems on karnak. Changed the value so
4907	  that it's equal to -infinity.
4908
49092011-08-01  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo
4910
4911	* tools/Subtractor.cc:
4912	* tools/fastjet/tools/Subtractor.hh:
4913	  worked a bit on the documentation and allowed for construction
4914	  with a constant value of rho. Added a sensible description().
4915
4916	* src/Selector.cc:
4917	* include/fastjet/Selector.hh:
4918	  changed some documentation and argument names in parts related
4919	  to selector areas.
4920
49212011-07-26  Matteo Cacciari <cacciari@lpthe.jussieu.fr>
4922
4923        * doc/fastjet-doc.tex
4924	  Moved Internal pseudojet structure to appendix, revised Selectors.
4925
4926	* Doxyfile
4927	  added "Selected additional tools" to Doxygen main page
4928
49292011-07-26  Matteo Cacciari <cacciari@lpthe.jussieu.fr>
4930
4931        * tools/fastjet/tools/MassDropTagger.hh
4932        * tools/fastjet/tools/CASubJetTagger.hh
4933        * tools/fastjet/tools/NSubjettinessTagger.hh
4934        * tools/fastjet/tools/JHTopTagger.hh
4935        * tools/fastjet/tools/Filter.hh
4936        * tools/MassDropTagger.cc
4937        * tools/CASubJetTagger.cc
4938        * tools/NSubjettinessTagger.cc
4939        * tools/JHTopTagger.cc
4940        * tools/Filter.cc
4941          commented out _original_jet and function returning it
4942
49432011-07-26  Matteo Cacciari <cacciari@lpthe.jussieu.fr>
4944
4945        * example/07-subtraction.cc
4946        * tools/GridMedianBackgroundEstimator.cc
4947        * tools/JetMedianBackgroundEstimator.cc
4948        * tools/fastjet/tools/BackgroundEstimatorBase.hh
4949        * tools/fastjet/tools/JetMedianBackgroundEstimator.hh
4950        * tools/fastjet/tools/GridMedianBackgroundEstimator.hh
4951          added description() to base class and derived ones. Modified
4952	  subtraction example accordingly.
4953
4954        * tools/fastjet/tools/MassDropTagger.hh
4955        * tools/fastjet/tools/CASubJetTagger.hh
4956        * tools/fastjet/tools/NSubjettinessTagger.hh
4957        * tools/fastjet/tools/JHTopTagger.hh
4958          made doxygen comment to description() uniform through the taggers
4959
49602011-07-25  Matteo Cacciari <cacciari@lpthe.jussieu.fr>
4961
4962        * tools/CASubJetTagger.cc
4963	* tools/JHTopTagger.cc
4964	* tools/MassDropTagger.cc
4965	* tools/NSubjettinessTagger.cc
4966        * tools/fastjet/tools/CASubJetTagger.hh
4967	* tools/fastjet/tools/JHTopTagger.hh
4968	* tools/fastjet/tools/MassDropTagger.hh
4969	* tools/fastjet/tools/NSubjettinessTagger.hh
4970          added original() to all Taggers, like it exists in Filter,
4971	  as a step to make it uniform across Transformers
4972
49732011-07-25  Gregory Soyez  <soyez@fastjet.fr>
4974
4975	* doc/fastjet-doc.tex:
4976	  . fixed typo, reworked the description of PseudoJet::reset()
4977	  . inverted 2 class names in footnote 13 to make the text
4978	    alignemt a bit better.
4979
49802011-07-22  Gregory Soyez  <soyez@fastjet.fr>
4981
4982	* include/fastjet/internal/Voronoi.hh:
4983	* src/Voronoi.cc:
4984	* src/ClusterSequenceVoronoiArea.cc:
4985	  Renamed Point into VPoint to avoid any potential interference
4986	  with the fastjet::Point defined in Triangulation.hh (note that
4987	  both are only used internally)
4988
49892011-07-22  Gavin Salam  <salam@lpthe.jussieu.fr>
4990
4991	* doc/fastjet-doc.tex:
4992	  changed last paragraph of 9.1 (it didn't reflect the structure
4993	  of the many plugins in the following two subsections). Also
4994	  mentioned the stable_sort in the documentation of the ATLASCone
4995	  and TrackJet plugins.
4996
4997	  Also documented delete_recombiner_when_unused(),
4998	  delete_plugin_when_unused() and reshuffled some parts of the
4999	  plugin section so that plugin use now comes before explanations
5000	  about the structure of the plugin class.
5001
5002	* tools/fastjet/tools/MassDropTagger.hh:
5003	* tools/fastjet/tools/JHTopTagger.hh:
5004	* tools/fastjet/tools/CASubJetTagger.hh:
5005	* tools/fastjet/tools/NSubjettinessTagger.hh:
5006	  reowrked some doxygen comments a little.
5007
50082011-07-21  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo & Gregory
5009
5010	* example/fastjet_subtraction.cc:
5011	  removed deprecated things
5012
5013	* NEWS:
5014	  prepared draft of news for 3.0b1
5015
5016	* include/fastjet/PseudoJet.hh:
5017	* tools/fastjet/tools/JetMedianBackgroundEstimator.hh:
5018	  removed some old commented code.
5019
50202011-07-21  Gregory Soyez  <soyez@fastjet.fr>
5021
5022	* fastjet/tools/MassDropTagger.hh:
5023	* fastjet/tools/CASubJetTagger.hh:
5024	* fastjet/tools/NSubjettinessTagger.hh:
5025	* fastjet/tools/JHTopTagger.hh:
5026	* JHTopTagger.cc:
5027	* MassDropTagger.cc:
5028	* CASubJetTagger.cc:
5029	  Renamed the structure associated with XYZTagger,
5030	  XYZTaggerStructure (was XYZStructure)
5031
5032	* tools/fastjet/tools/JHTopTagger.hh:
5033	  fixed documentation of the cos_theta_W member
5034
50352011-07-21  Gregory Soyez  <soyez@fastjet.fr>
5036
5037	* tools/BackgroundEstimatorBase.cc:
5038	* tools/fastjet/tools/BackgroundEstimatorBase.hh:
5039	  declared the nempty argument of percentile(...) as a double
5040	  instead of an unsigned int.
5041
5042
50432011-07-20  Gavin Salam  <salam@lpthe.jussieu.fr>
5044
5045	* tools/fastjet/tools/JHTopTagger.hh:
5046	* tools/JHTopTagger.cc:
5047	  removed the mutable _jet in JHTopTagger; other small changes to
5048	  details of ways things are written.
5049
5050	* include/fastjet/ClusterSequenceWithArea.hh:
5051	  small change to C-preprocessor warning message
5052
5053
50542011-07-20  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo
5055
5056	* regression-tests/test-all-algs.pl:
5057	  added gridjet to default checks and also added the relevant
5058	  checksums.
5059
5060	* plugins/GridJet/GridJetPlugin.cc:
5061	* plugins/GridJet/fastjet/GridJetPlugin.hh: exchanged rapidity
5062	  extent and spacing in constructor (spacing now comes second),
5063	  for consistency with the GridMedianBGE. Added a consistency
5064	  check that extent>spacing to catch possible wrong order of
5065	  arguments.
5066
5067	* example/fastjet_timing_plugins.cc:
5068	  added -bkgd:gridmedian option
5069
5070	* tools/JetMedianBackgroundEstimator.cc:
5071	* tools/fastjet/tools/JetMedianBackgroundEstimator.hh:
5072	  for the CSAB,Selector constructor exchanged arguments, so it's
5073	  now Selector,CSAB (that way Selector always comes first).
5074
5075	* tools/fastjet/tools/GridMedianBackgroundEstimator.hh:
5076	* tools/GridMedianBackgroundEstimator.cc:
5077	  exchanged ymax and grid_spacing arguments in constructor
5078	  (grid_spacing now goes first, like the selector goes first
5079	  elsewhere). Added a consistency check that extent>spacing to
5080	  catch possible wrong order of arguments.
5081
5082	  included a check that particles have been set (throw an error
5083	  otherwise).
5084
50852011-07-20  Gregory Soyez  <soyez@fastjet.fr>
5086
5087	* tools/fastjet/tools/JetMedianBackgroundEstimator.hh:
5088	* tools/JetMedianBackgroundEstimator.cc:
5089	  . removed the ctor that sets the jets & the selector
5090	  . merged the "empty" ctor and the one setting just rho_range (by
5091	    using an identity range by default)
5092
5093	* regression-tests/test-all-algs.pl:
5094	* regression-tests/nightly-check.pl:
5095	  added support for area tests
5096
50972011-07-18  Gregory Soyez  <soyez@fastjet.fr>
5098
5099	* Doxyfile:
5100	  removed inline source and reference relations in class member
5101	  documentation
5102
5103	* tools/fastjet/tools/BackgroundEstimatorBase.hh:
5104	* tools/fastjet/tools/JetMedianBackgroundEstimator.hh:
5105	* tools/JetMedianBackgroundEstimator.cc:
5106	  . declared jet_density_class() and rescaling_class() as const
5107	  . moved rescaling_class() to the base class
5108	  . marked the density classes as preliminarry in doxygen
5109	    (+ minor midifocations to doxugen declarations)
5110	  . added a warning that this is still some preliminary work when
5111	    one tries to set the density class
5112
51132011-07-16  Gavin Salam  <salam@lpthe.jussieu.fr>
5114
5115	* regression-tests/test-all-algs.pl (setDefaults):
5116	  commented out areaConfigs for now, to prevent warnings, which
5117	  give issues with the nightly check.
5118
51192011-07-15  Gavin Salam  <salam@lpthe.jussieu.fr>
5120
5121	* regression-tests/test-all-algs.pl (setDefaults):
5122	  added a bunch of "areaConfigs", indicating how we might run area
5123	  tests.
5124
51252011-07-15  Gregory Soyez  <soyez@fastjet.fr> & Matteo
5126
5127	* tools/fastjet/tools/GridMedianBackgroundEstimator.hh:
5128	* tools/GridMedianBackgroundEstimator.cc:
5129	  added the computation of sigma (and sigma(jet))
5130
5131	* tools/fastjet/tools/JetMedianBackgroundEstimator.hh:
5132	* tools/JetMedianBackgroundEstimator.cc:
5133	  put the same description of rho_range everywhere
5134
5135	* tools/fastjet/tools/JHTopTagger.hh:
5136	* tools/fastjet/tools/MassDropTagger.hh:
5137	* tools/fastjet/tools/Filter.hh:
5138	  pointed the link to the correct example
5139
51402011-07-14  Matteo Cacciari  <cacciari@lpthe.jussieu.fr>
5141
5142	* tools/fastjet/tools/BackgroundEstimatorBase.hh:
5143	* tools/BackgroundEstimatorBase.cc:
5144          fixed the comment in front of _percentile()
5145
51462011-07-14  Gavin Salam  <salam@lpthe.jussieu.fr>
5147
5148	* example/fastjet_timing_plugins.cc:
5149	  added support for areas and background estimation (intended as a
5150	  prelude to their inclusion in night checks).
5151
5152	* src/ClusterSequenceAreaBase.cc:
5153	  fixed warning message for large -ve area.
5154
5155	* tools/fastjet/tools/BackgroundEstimatorBase.hh:
5156	* tools/BackgroundEstimatorBase.cc:
5157	  fixed bug whereby n_empty_jets was not being used in the new
5158	  percentile determination code; fixed missing bits of fj2
5159	  compliance (was present in earlier code, but got lost), moving
5160	  it all into _percentile; put in the safety checks (for -ve empty
5161	  area) that were already present in CSAB; fixed large -ve area
5162	  warning message.
5163
51642011-07-13  Gregory Soyez  <soyez@fastjet.fr>
5165
5166	* tools/fastjet/tools/BackgroundEstimatorBase.hh:
5167	* tools/BackgroundEstimatorBase.cc:
5168	  . added support for rescaling
5169	  . added a bunch of comments
5170	  . moved BackgroundRescalingYPolynomial from
5171	    JetMedianBackgroundEstimator
5172
5173	* tools/fastjet/tools/GridMedianBackgroundEstimator.hh:
5174	* tools/GridMedianBackgroundEstimator.cc:
5175	  . dosumented the class
5176	  . implemented support for rescaling (applied on each particles;
5177	    set_rescaling needs to be called before set_particles)
5178
5179	* tools/fastjet/tools/JetMedianBackgroundEstimator.hh:
5180	* tools/JetMedianBackgroundEstimator.cc:
5181	  . moved parts of the code from the header to the source
5182	  . sorted out come of the comments
5183
51842011-07-08  Gavin Salam  <gavin.salam@cern.ch> + Matteo
5185
5186	* tools/fastjet/tools/JetMedianBackgroundEstimator.hh:
5187	  reordered classes so that JMBGE appears first and all the helper
5188	  ones comes later. Reworked some of the comments a little.
5189
51902011-07-08  Gavin Salam  <gavin.salam@cern.ch>
5191
5192	* include/fastjet/GhostedAreaSpec.hh:
5193	* include/fastjet/ActiveAreaSpec.hh:
5194	  moved typedef of ActiveAreaSpec into GhostedAreaSpec; that way
5195	  people who used to get it indirectly still do, but anyone who
5196	  used the header itself will get a warning, without that warning
5197	  appearing indirectly from inclusion of other headers.
5198
51992011-07-08  Gregory Soyez  <soyez@fastjet.fr>
5200
5201	* example/12-boosted_higgs-new.cc:        *** REMOVED ***
5202	* example/12-boosted_higgs.cc:            ***  ADDED  ***
5203	* example/07-subtraction-new.cc:          *** REMOVED ***
5204	* example/07-subtraction.cc:              ***  ADDED  ***
5205	  removed the "-old" of the new versions of the examples
5206
5207	* example/12-boosted_higgs.cc:            *** REMOVED ***
5208	* example/12-boosted_higgs-old.cc:        ***  ADDED  ***
5209	* example/07-subtraction.cc:              *** REMOVED ***
5210	* example/07-subtraction-old.cc:          ***  ADDED  ***
5211	  appended "-old" to the deprecated examples
5212
5213	* tools/BackgroundEstimatorBase.cc:       ***  ADDED  ***
5214	* tools/fastjet/tools/JetMedianBackgroundEstimator.hh:
5215	* tools/fastjet/tools/GridMedianBackgroundEstimator.hh:
5216	* tools/JetMedianBackgroundEstimator.cc:
5217	* tools/GridMedianBackgroundEstimator.cc:
5218	  . moved _percentile and _median_and_stddev to the base class
5219	  . added 'nempty' support to _percentile
5220	  . made _median_and_stddev use _percentile
5221
5222	* tools/fastjet/tools/Subtractor.hh:
5223	  Use a BackgroundEstimatorBase
5224
5225	* tools/fastjet/tools/BackgroundEstimator.hh:          *** REMOVED ***
5226	* tools/fastjet/tools/JetMedianBackgroundEstimator.hh: ***  ADDED  ***
5227	* tools/BackgroundEstimator.cc:                        *** REMOVED ***
5228	* tools/JetMedianBackgroundEstimator.cc:               ***  ADDED  ***
5229	  renamed BackgroundEstimator -> JetMedianBackgroundEstimator
5230
5231	* example/Makefile.am:
5232	* example/11-boosted_higgs-new.cc:      *** REMOVED ***
5233	* example/12-boosted_higgs-new.cc:      ***  ADDED  ***
5234	* example/11-boosted_higgs.cc:          *** REMOVED ***
5235	* example/12-boosted_higgs.cc:          ***  ADDED  ***
5236	* example/12-filter.cc:                 *** REMOVED ***
5237	* example/11-filter.cc:                 ***  ADDED  ***
5238	  inverted examples 11 ad 12 (so that the two "boosted taggers"
5239	  examples have consecutive numbers
5240
52412011-07-07  Gavin Salam  <salam@lpthe.jussieu.fr> + Matteo
5242
5243	* example/13-boosted_top.cc:
5244	* tools/JHTopTagger.cc:
5245	* tools/fastjet/tools/JHTopTagger.hh:
5246
5247	  changed default mW to 80.4; reworked some of the comments to
5248	  help illustrate usage more explicitly; added mW and
5249	  cost_theta_W_max to description() output. JHTopStructure.W()
5250	  [etc] now returns a const reference rather than a copy.
5251
52522011-07-07  Gregory Soyez  <soyez@fastjet.fr>
5253
5254	* configure.ac:
5255	  tested a series of autoconf versions.
5256	  To be on the safe side, set pre-required version number to 2.59
5257	  as it is the lowest we could easily find (was 2.57). Note that
5258	  this only impacts the version used to produce configure.
5259
5260	* tools/fastjet/tools/JHTopTagger.hh:
5261	  worked on the comments
5262
5263	* configure.ac:
5264	  used AC_LANG_TEST(...) to enclose code excerpts (as advised by
5265	  autoconf)
5266
5267	* include/fastjet/JetDefinition.hh:
5268	* src/JetDefinition.cc:
5269	  added delete_plugin_when_unused and
5270	  delete_recombiner_when_unused for easier memory management
5271
5272	* fastjet-config.in:
5273	* m4/plugin.m4:
5274	* configure.ac:
5275	  fastjet-config --config now prints a summary of the fastjet
5276	  configuration
5277
5278	* tools/fastjet/tools/JHTopTagger.hh:
5279	* tools/JHTopTagger.cc:
5280	  added a cut on cos(theta_W) directly in the tagger.
5281
5282	* example/07-subtraction-new.cc:
5283	  used BGE::set_particles() + revised some of the comments
5284
5285	* tools/fastjet/tools/BackgroundEstimator.hh:
5286	* tools/BackgroundEstimator.cc:
5287	  added support for set_particles
5288
52892011-07-07  Gavin SALAM  <salam@lpthe.jussieu.fr>
5290
5291	* regression-tests/nightly-check.pl:
5292	  updated karnak gcc-4.4 tests to 4.4.3
5293
52942011-07-06  Gregory Soyez  <soyez@fastjet.fr>
5295
5296	* example/13-boosted_top.cc:               *** ADDED ***
5297	  added an example on how to use the JHTopTagger
5298
5299	* tools/JHTopTagger.cc:                    *** ADDED ***
5300	* tools/fastjet/tools/JHTopTagger.hh:      *** ADDED ***
5301	  added an implementation of the Johns Hopkins boosted top tagger
5302
53032011-07-06  Gavin SALAM  <salam@lpthe.jussieu.fr>
5304
5305	* regression-tests/nightly-check.pl:
5306	  added option to modify fastjet_timing_plugin compilation options
5307	  (anything that appeats after a ":" in the "link" options).
5308
5309	  switched karnak non-shared tests over to -O2 compilation (with
5310	  gridjet in), to work around the 4.0.1 non-caught throw issue.
5311
5312	  added output of the URL of the directory (to help with tracking
5313	  whether we run on trunk or on a branch).
5314
5315	  fixed issue with -only 0
5316
53172011-07-06  Gregory Soyez  <soyez@fastjet.fr>
5318
5319	* include/fastjet/WrappedStructure.hh:
5320	  included Error.hh
5321
53222011-07-05  Gregory Soyez  <soyez@fastjet.fr>
5323
5324	* include/fastjet/CircularRange.hh:
5325	* include/fastjet/RangeDefinition.hh:
5326	* src/RangeDefinition.cc:
5327	  declared RangeDefinition and Circular range as deprecated (use
5328	  Selector and SelectorCircle instead)
5329
5330	* example/07-subtraction-new.cc:
5331	* example/07-subtraction.cc:
5332	  ActiveAreaSpec -> GhostedAreaSpec (the former being deprecated)
5333
5334	* include/fastjet/ActiveAreaSpec.hh:
5335	  declared as deprecated
5336
5337	* include/fastjet/ClusterSequenceActiveArea.hh:
5338	  do not include deprecated headers ClusterSequenceWithArea.hh
5339	  and ActiveAreaSpec
5340
5341	* include/fastjet/ClusterSequenceWithArea.hh:
5342	  removed an unnecessary #ifndef
5343
5344	* include/fastjet/Makefile.am:
5345	  do not install config_win.h (just put it in the distribution)
5346
5347	* tools/fastjet/tools/MassDropTagger.hh:
5348	* tools/MassDropTagger.cc:
5349	  warned when the jet being tagged does not come from a
5350	  Cambridge/Aachen clustering
5351
5352	* testsuite/TestPseudoJet.hh (TestBase):
5353	  added tests of PJ::has_structure_of<ClusterSequence>()
5354
5355	* include/fastjet/ClusterSequence.hh:
5356	  included ClusterSequenceStructure so that CS::StructureType
5357	  is well-defined and PJ::has_structure_of<ClusterSequence>() works.
5358
5359	* include/fastjet/ClusterSequenceWithArea.hh:
5360	  declared as deprecated
5361
53622011-07-05  Gavin SALAM  <salam@lpthe.jussieu.fr>
5363
5364	* regression-tests/nightly-check.pl:
5365	  added --disable-gridjet to the --disable-shared karnak run; also
5366	  added a --disable-shared option to the g++-4.4 run on karnak.
5367
53682011-07-04  Gavin Salam  <salam@lpthe.jussieu.fr>
5369
5370	* doc/trial-progs/README:               *** ADDED ***
5371	* doc/trial-progs/checks-for-3.0b1.cc:  *** ADDED ***
5372	  add the doc/trial-progs directory for internal testing
5373	  of elements that will go into the documentation.
5374
53752011-07-03  Gavin SALAM  <salam@lpthe.jussieu.fr>
5376
5377	* regression-tests/nightly-check.pl:
5378	  -only can now take a comma-separated list.
5379	  Provided more output in cases where ssh reports failure
5380	  (including the messages and summary outputs if they exist).
5381
53822011-07-02  Gavin SALAM  <salam@lpthe.jussieu.fr>
5383
5384	* regression-tests/nightly-check.pl:
5385	  add -list option to get a list of the different setups that are
5386	  encoded (together with their index, to facilitate usage of -only)
5387
53882011-07-01  Gavin Salam  <salam@lpthe.jussieu.fr> + Matteo
5389
5390	* tools/Makefile.am:
5391	* tools/fastjet/tools/Makefile.am:
5392	* tools/fastjet/tools/BackgroundEstimator.hh:
5393	* tools/fastjet/tools/BackgroundEstimatorBase.hh:  *** ADDED ***
5394	* tools/GridMedianBackgroundEstimator.cc: *** ADDED ***
5395	* tools/fastjet/tools/GridMedianBackgroundEstimator.hh: *** ADDED ***
5396
5397	  Introduced a base class for background estimation, arranged for
5398	  BackgroundEstimator to derive from it and also added
5399	  GridMedianBackgroundEstimator (which is what has been used for
5400	  some of the grid rho tests).
5401
5402	* example/fastjet_timing_plugins.cc (main):
5403	  switched grid_ymax to 4.99999999 to avoid rounding error issues
5404	  in determining the number of grid cells in y (with R=0.4).
5405
5406	* include/fastjet/WrappedStructure.hh:
5407	  updated the exclusive_subjets_up_to here too.
5408
54092011-06-30  Gavin Salam  <salam@lpthe.jussieu.fr> [later, on the train]
5410
5411	* src/ClusterSequence.cc:
5412	* include/fastjet/ClusterSequence.hh:
5413
5414	  Wrote an explicit copy constructor, which just uses
5415	  transfer_from_sequence. Until now, there had been a default copy
5416	  constructor, which failed to update the structural pointers
5417	  within the copied jets (so they pointed to the wrong CS,
5418	  i.e. the original one, and if the original CS went out of scope,
5419	  the jets from the copy could no longer access their structure).
5420
5421	  Also modified transfer_from_sequence(...) so as to make its CS
5422	  argument const. One side effect was that this required _extras
5423	  to be converted from an auto_ptr to a SharedPtr, because until
5424	  now the auto_ptr in the original CS was being zeroed as part of
5425	  an ownership transfer (the call to set _extras from a plugin remains
5426	  auto_ptr based for now).
5427
54282011-06-30  Gavin Salam  <salam@lpthe.jussieu.fr> + Matteo
5429
5430	* regression-tests/test-all-algs.pl:
5431	  added a -verbose option.
5432
5433	* test-script-output-orig.txt:
5434	  added gridjet output.
5435
5436	* example/fastjet_timing_plugins.cc:
5437	* test-compare.sh:
5438	  put a FASTJET_ in front of some preprocessor variables (had been
5439	  missed in earlier tests).
5440
5441	* include/fastjet/PseudoJet.hh:
5442	* src/PseudoJet.cc (PtYPhiM, PseudoJet::set_cached_rap_phi):
5443	  can now legitimately be called with -2pi<phi<4pi (before was
5444	  only up to 2pi) and now explicitly enfore this in PtYPhiM.
5445
5446	* src/ClusterSequence_Delaunay.cc:
5447	  solved potential memory leak for rare cases when this throws an
5448	  error (e.g. for coincident points) by using an auto_ptr for DNN.
5449
54502011-06-30  Gavin Salam  <salam@lpthe.jussieu.fr> + Matteo + Gregory
5451
5452        * m4/plugin.m4
5453        * Doxyfile
5454        * src/genconfig.sh
5455        * example/makefile.static
5456        * example/fastjet_timing_plugins.cc
5457        * example/Makefile.am
5458        * configure.ac
5459        * test-compare.sh
5460        * Doxyfile-devel
5461        * plugins/GridJet
5462        * plugins/GridJet/fastjet
5463        * plugins/GridJet/fastjet/GridJetPlugin.hh
5464        * plugins/GridJet/fastjet/Makefile.am
5465        * plugins/GridJet/makefile.static
5466        * plugins/GridJet/Makefile.am
5467        * plugins/GridJet/GridJetPlugin.cc
5468        * plugins/SISCone/siscone
5469        * plugins/makefile.static
5470        * plugins/Makefile.am
5471        * ChangeLog
5472        * experimental/plugins/Makefile
5473        * config.h.in
5474	  Did most of the work of adding the GridJet plugin. Still not
5475	  functional though.
5476
54772011-06-30  Gregory Soyez  <soyez@fastjet.fr>
5478
5479	* tools/fastjet/tools/Filter.hh:
5480	* tools/Filter.cc:
5481	  For situations with C/A subjets with rho==0 and without explicit
5482	  ghosts, removed the "area" support since one cannot trust the area
5483	  of subjets without explicit ghosts.
5484
5485	* Doxyfile:
5486	* Doxyfile-devel:
5487	  fixed header path in the doc
5488
54892011-06-30  Gavin Salam  <salam@lpthe.jussieu.fr> + Matteo & Gregory
5490
5491	* doc/fastjet-doc.tex:
5492        * src/ClusterSequenceStructure.cc
5493        * src/PseudoJet.cc
5494        * src/ClusterSequence.cc
5495        * src/PseudoJetStructureBase.cc
5496        * include/fastjet/ClusterSequenceStructure.hh
5497        * include/fastjet/PseudoJet.hh
5498        * include/fastjet/ClusterSequence.hh
5499        * include/fastjet/PseudoJetStructureBase.hh
5500
5501          added exclusive_subjets_up_to(int) to CS & PJ, replaced
5502	  exclusive_subjets(int) with exclusive_subjets_up_to(int) in CSS
5503	  and PJSB and added exclusive_jets_up_to(int) to CS.
5504
5505	  We now consistently have the behaviour that
5506	  exclusive_subjets(int) and exclusive_jets(int) throw errors if
5507	  you request more subjets than there are available particles;
5508	  exclusive_subjets_up_to(int) and exclusive_jets_up_to(int) in
5509	  this case just return all available particles.
5510
5511
5512	* src/FunctionOfPseudoJet.cc:
5513	* include/fastjet/FunctionOfPseudoJet.hh:
5514	  removed the operator>(FOPJ<double> &, cut) [etc] functions for
5515	  now.
5516
55172011-06-30  Gregory Soyez  <soyez@fastjet.fr>
5518
5519	* tools/Filter.cc:
5520	  for rho!=0, if the jet has support for area but has no explicit
5521	  ghosts, do not compute the areas for the filtered elements (Note
5522	  that this is true when re-clustering is needed, for C/A
5523	  filtering, area support for the filtered elements is inherited
5524	  from the original cluster sequence.
5525
55262011-06-29  Gregory Soyez  <soyez@fastjet.fr>
5527
5528	* tools/Filter.cc:
5529	  - added support for recombination schemes
5530	  - improved various tests (including caching the pieces)
5531
55322011-06-29  Gavin SALAM  <salam@pallas.lpthe.jussieu.fr>
5533
5534	* regression-tests/nightly-check.pl:
5535	  got compilation of "external" program to use CXXFLAGS and also
5536	  arranged for icpc to have flags to make it use the gcc34 stdlib
5537	  (as suggested by Gregory).
5538
55392011-06-29  Gregory Soyez  <soyez@fastjet.fr>
5540
5541	* tools/fastjet/tools/Filter.hh:
5542	* tools/Filter.cc:
5543	  . added support for jet areas to the subjets for the case where
5544	    the parent jet has area support and rho=0
5545	  . added support for subtraction for composite jets
5546
5547	* include/fastjet/Selector.hh:
5548	* src/Selector.cc:
5549	  added support for &= and |=
5550
55512011-06-29  Gavin SALAM  <salam@pallas.lpthe.jussieu.fr>
5552
5553	* regression-tests/nightly-check.pl:
5554	  removed icpc checks (issues with gcc-4.6.0 STL), updated CGAL_DIR
5555
55562011-06-29  Gregory Soyez  <soyez@fastjet.fr>
5557
5558	* tools/fastjet/tools/BackgroundEstimator.hh:
5559	* tools/BackgroundEstimator.cc (_median_and_stddev):
5560	  same modification as below
5561
5562	* src/ClusterSequenceAreaBase.cc:
5563	* include/fastjet/ClusterSequenceAreaBase.hh:
5564          dealt with a potential overflow when the estimated number of
5565	  empty jets becomes large and negative:
5566	   - we issue a warning when n_empty < -pt_over_areas_size/4.0
5567	   - we make sure int_nj_median <= pt_over_areas_size-2
5568	  with int pt_over_areas_size = pt_over_areas.size(); this avoids
5569	  the issue of subtraction and negation operations on unsigned
5570	  int, which give nonsense, and also eliminates inappropriate
5571	  warnings about empty areas being too negative.
5572	  (imported from FastJet 2.4.4)
5573
5574
55752011-06-28  Gregory & Thiago Soyez  <soyez@fastjet.fr>
5576
5577	* include/fastjet/internal/Voronoi.hh:
5578	* src/Voronoi.cc:0000000000000000000000000000000000000000000000000000
5579	  imported the fixes to the Fortune/O'Sullivan code for the
5580	  Voronoi diagram generator from the fastjet-2.4.X (2.4.4) branch:
5581	  - dealt with nearly-degenerate parent points in "intersection"
5582	  - handled coniciding particles (assign the full cell to the
5583	    first of the coinciding particles + print a warning).
5584	  - solved an overflow issue.
5585
5586	* regression-tests/test-all-algs.pl:
5587	  updated the reference results using "stable_sort"
5588
5589	* BUGS:
5590	* plugins/ATLASCone/Jet.hh:
5591	* plugins/TrackJet/TrackJetPlugin.cc:
5592	  used stable_sort instead of sort to avoid potential issue for
5593	  "equal cases" (see "Other issues to be aware of", point 2 in
5594	  BUGS). Note that this would solve the issues in BUGS but would
5595	  still make the result dependent on the ordering of the particles
5596	  in case of a degeneracy.
5597
55982011-06-28  Gavin Salam  <gavin.salam@cern.ch>
5599
5600	* regression-tests/test-all-algs.pl:
5601	  updated this so that it looks for data file in the correct place
5602	  on cern mac.
5603
56042011-06-28  Gregory Soyez  <soyez@fastjet.fr>
5605
5606	* include/fastjet/internal/LimitedWarning.hh:
5607	  put the LimitedWarning class in the fastjet namespace
5608
56092011-06-28  Gavin SALAM  <salam@lpthe.jussieu.fr>
5610
5611	* src/GhostedAreaSpec.cc (GhostedAreaSpec):
5612	  fixed non-initialisation of _fj2_placement in one of the several
5613	  constructors.
5614
56152011-06-23  Gavin Salam  <salam@lpthe.jussieu.fr>
5616
5617	* regression-tests/test-all-algs.pl:
5618
5619	  $refResults{$name} can now be a reference to an array of valid
5620	  checksum results or a single checksum result. Exploited this for
5621	  the trackjet 1000 run, including the result corresponding to the
5622	  new recombination code (checked manually that differences are
5623	  just at the level of rounding errors).
5624
56252011-06-21  Gavin Salam  <salam@lpthe.jussieu.fr>
5626
5627	* example/fastjet_areas.cc:
5628	  made a call set set_fj2_placement(true) so that make check
5629	  continues to work.
5630
5631	* include/fastjet/GhostedAreaSpec.hh:
5632	* src/GhostedAreaSpec.cc:
5633	  Changed default ghost placement so that
5634
5635	  - number of phi and rapidity intervals rounded to nearest
5636	    integer (rather than up, which is less stable)
5637	  - rapidities offset by sqrt(area)/2 so that total area of
5638	    ghosts matches 2*rapmax.
5639	  - phi placed sensibly (i.e. no longer reproduce funny FJ2 phi definition)
5640
5641          Old behaviour can be obtained by calling
5642	  set_fj2_placement(true). The new behaviour produces ghosts that
5643	  should match nicely onto centres of the GridJet tiles.
5644
5645	* src/JetDefinition.cc (DefaultRecombiner::preprocess):
5646	  modified some of the preprocessing code for non-E-scheme
5647	  clustering and also got the recombination code to use
5648	  reset_PtYPhiM; checked that results don't change.
5649
5650	* src/ClusterSequenceActiveAreaExplicitGhosts.cc
5651	  (ClustSeqActAreaEG::_post_process):
5652	  tried to avoid some temporary PJs, but not clear this helps much.
5653
5654	* include/fastjet/ClusterSequenceActiveAreaExplicitGhosts.hh:
5655	  added an extra couple of reserve statements, that give some
5656	  speed gain in tests.
5657
5658	* src/PseudoJet.cc
5659	* include/fastjet/PseudoJet.hh (PseudoJet::reset_momentum):
5660	  added reset_momentum(const PJ & );
5661	  added PseudoJet::reset_momentum_PtYPhiM(...),
5662	        PseudoJet::reset_PtYPhiM(...),
5663	  which can bring speed advantages in some cases (e.g. recombiner).
5664
56652011-06-20  Gavin Salam  <salam@lpthe.jussieu.fr>
5666
5667	* include/fastjet/PseudoJet.hh:
5668	  introduced a new constructor that takes a bool as an argument;
5669	  its value is ignored, while but its presence indicates that
5670	  there should be no initialisation of anything other than the
5671	  shared pointers.
5672
5673	* src/JetDefinition.cc (DefaultRecombiner::recombine):
5674
5675	  replaced pab=pa+pb with pab.reset(x,y,z,E), which gives some
5676	  speed gain when this is a time-critical step (a factor of 1.2 to
5677	  1.7 in tests of CCN32-83). Also made use of the non-initialising
5678	  constructor for the temporary result variable, to gain a few
5679	  more percent in speed.
5680
5681	* src/JetDefinition.cc (DefaultRecombiner::preprocess):
5682	  fixed this to use reset_momentum for non-E schemes (more
5683	  efficient + touches neither user index nor user info).
5684
56852011-06-15  Gavin Salam  <salam@lpthe.jussieu.fr>
5686
5687	* include/fastjet/SharedPtr.hh:
5688	  speeded up the constructor from another SharedPtr.
5689
56902011-06-14  Gregory Soyez  <soyez@fastjet.fr>
5691
5692	* src/Voronoi.cc:
5693	  - fixed potential overflow issue when computing buckets in the
5694	    hash: we compare the position to the boundaries before making
5695	    the conversion to an int (avoids potential overflow issues)
5696	  - fixed completion test in the main loop (if there were still
5697	    some events to be processed in the priority queue after the
5698	    last site was considered, the previous version was stopping,
5699	    leaving an incomplete VD)
5700
57012011-06-05  Gavin Salam  <salam@lpthe.jussieu.fr>
5702
5703	* tools/fastjet/tools/BackgroundEstimator.hh:
5704	  rho(jet) was taking a copy rather than a const reference to the
5705	  jet.  In the comments to set_rescaling_class, mentioned the
5706	  BackgroundRescalingYPolynomial class as an example, and in the
5707	  docuementation for the latter, included the rapidity dependence
5708	  that we've been using the LHC7 Pythia8 4C tune
5709
57102011-06-03  Gregory Soyez  <soyez@fastjet.fr> & Gavin
5711
5712	* NEWS:
5713	* include/fastjet/config_win.h (FASTJET_PACKAGE_STRING):
5714	* configure.ac:
5715	* doc/fastjet-doc.tex:
5716	* Doxyfile-devel (PROJECT_NUMBER):
5717	* Doxyfile (PROJECT_NUMBER):
5718	  switched to version number 3.0beta1-devel
5719
57202011-06-03  Gregory Soyez  <soyez@fastjet.fr> & Gavin
5721
5722	Release of FastJet 3.0alpha3
5723
57242011-06-03  Gregory Soyez  <soyez@fastjet.fr>
5725
5726	* NEWS:
5727	  put the v3.0alpha3 release date
5728
5729	* doc/fastjet-doc.tex:
5730	* configure.ac:
5731	* Doxyfile:
5732	  updated the version number
5733
5734	* Doxyfile-devel:
5735	  updated the version number; enabled the search engine
5736
5737	* include/fastjet/config_win.h:
5738	  updated for v3.0alpha3
5739
5740	* example/11-boosted_higgs-new.cc:
5741	  explicitly set the recombiner to use by the filter
5742
5743	* tools/Filter.cc (_finalise):
5744	  do not reset the user and clust_seq_index of the result of the
5745	  Filter to those of the original jet
5746
57472011-06-03  Gavin Salam  <salam@lpthe.jussieu.fr>
5748
5749	* doc/fastjet-doc.tex:
5750	  sorted out documentation of the subtraction (referring readers
5751	  to the relevant example).
5752
5753	* tools/fastjet/tools/Transformer.hh (class Transformer):
5754	  clarified some comments
5755
5756	* README:
5757	  mods for 3.0, including updated references, mention of new
5758	  directories, etc.
5759
57602011-06-03  Gregory Soyez  <soyez@fastjet.fr>
5761
5762	* example/Makefile.am:
5763	* example/11-boosted_higgs-new.cc:       ***   ADDED   ***
5764	  added a new version of the boosted Higgs example using the new
5765	  available tools: MassDropTagger and Filter
5766
5767	* example/12-filter.cc:
5768	  take the 2nd and 3rd jets for the composite-jet example rather
5769	  than the two hardest
5770
5771	* BUGS:
5772	  added a comment about potential issues with plugins relying on
5773	  Et ordering of the input particles (due to the undefined
5774	  behaviour of sort(...) for equal entities). This applies for the
5775	  TrackJet plugin, for which it happens when 2 particles have
5776	  exactly the same Et (so it should not be too much of an issue
5777	  for the final jets); and for the ATLAS cone plugin where the
5778	  result could be affected in some situations (since 2 particles
5779	  with an difference in Et < 0.001 are considered equal)
5780
5781	* plugins/ATLASCone/JetConeFinderTool.cc:
5782	  added a comment about an instability in the ATLAS stable cone
5783	  search due to the Et ordering
5784
57852011-06-03  Gavin Salam  <salam@lpthe.jussieu.fr>
5786
5787	* example/12-filter.cc:
5788	  RfiltDyn -> DynamicRfilt, which now takes two arguments (Rmax,
5789	  deltaR_factor).
5790
5791	* example/07-subtraction.cc:
5792	* example/07-subtraction-new.cc:
5793	  changes to comments and default values
5794
5795	* example/09-user_info.cc:
5796	  changes to comments
5797
5798	* include/fastjet/PseudoJet.hh:
5799	  changes to comments + plus addition of delta_R(other) member
5800
58012011-06-03  Gregory Soyez  <soyez@fastjet.fr>
5802
5803	* plugins/Makefile.am (DIST_SUBDIRS):
5804	  removed the usage examples, since they are mostly covered by the
5805	  examples
5806
5807	* include/fastjet/JetDefinition.hh:
5808	* src/JetDefinition.cc (have_same_recombiner):
5809	  have_same_recombiner -> has_same_recombiner
5810
5811	* include/fastjet/JetDefinition.hh:
5812	* src/JetDefinition.cc (have_same_recombiner):
5813	  moved in jet definition:
5814	  JetDefinition::have_same_recombiner(other_jd)
5815
58162011-06-02  Gregory Soyez  <soyez@fastjet.fr> & Gavin
5817
5818	* include/fastjet/WrappedStructure.hh:
5819          throws an error if constructed from an empty (NULL) structure
5820
5821	* tools/Filter.cc (_recursively_check_ca):
5822	* src/ClusterSequence.cc (contains):
5823	* src/ClusterSequenceStructure.cc:
5824	* src/PseudoJet.cc:
5825	* include/fastjet/WrappedStructure.hh:
5826	* include/fastjet/ClusterSequenceStructure.hh:
5827	* include/fastjet/PseudoJetStructureBase.hh:
5828	* include/fastjet/PseudoJet.hh:
5829	  has_validated_cluster_sequence() -> has_valid_cluster_sequence()
5830
58312011-06-02  Gavin Salam  <salam@lpthe.jussieu.fr> & Gregory
5832
5833	* NEWS: tried to compactify it.
5834
5835	* include/fastjet/FunctionOfPseudoJet.hh:
5836	  worked on documentation
5837
5838	* src/JetDefinition.cc (DefaultRecombiner::recombine):
5839	  user_index used to be set to 0 on recombination. This should be
5840	  considered a bug (dates to 27 November 2006 and was never
5841	  updated to reflect the default user index of -1 that was set on
5842	  24 February 2007. The user index from recombination is now the
5843	  default that comes out of addition / initialisation (i.e. -1).
5844
58452011-06-02  Gregory Soyez  <soyez@fastjet.fr>
5846
5847	* src/CompositeJetStructure.cc:
5848	* include/fastjet/CompositeJetStructure.hh:
5849	  get the scalar area and its error from the pieces rather than
5850	  caching it + added support for is_pure_ghost (true if all pieces
5851	  are).
5852
5853	* tools/MassDropTagger.cc:
5854	* tools/NSubjettinessTagger.cc:
5855	  returned an empty PseudoJet when the tagger fails
5856
58572011-06-02  Gavin Salam  <salam@lpthe.jussieu.fr>
5858
5859	* testsuite/run_tests.cc:
5860	* testsuite/TestSubStructure.hh: *** ADDED ***
5861	  added some tests of CASubJetTagger and MassDropTagger
5862
5863	* testsuite/TestBase.hh:
5864	  verify function all return a boolean now; verify_equal for
5865	  PseudoJets takes an option to ignore the substructure; and added
5866	  a specific verify_null for PseudoJets that checks == 0
5867
5868	* tools/CASubJetTagger.cc:
5869	* tools/fastjet/tools/CASubJetTagger.hh:
5870	  made CASubJetTagger::JetAux private and updated some comments;
5871	  got rid of the mutable member and cleaned up some behaviour
5872	  (including correct failure on jet that should not be tagged).
5873
5874	  Changed the default scale to be jade (also put a non-zero
5875	  z_threshold). Changed error -> warning when alg passed is not
5876	  C/A.
5877
58782011-06-02  Gregory Soyez  <soyez@fastjet.fr>
5879
5880	* doc/fastjet-doc.tex:
5881	  added a table corresponding to the structure associated with a
5882	  PseudoJet for different types of PseudoJet.
5883
5884	* configure.ac:
5885	* plugins/Makefile.ac:
5886	* plugins/usage_examples:                *** REMOVED ***
5887	  removed usage_example for plugins (we have some examples in the
5888	  example dir!)
5889
58902011-06-02  Gregory Soyez  <soyez@lpthe.jussieu.fr>
5891
5892	* NEWS + RoadMap:
5893	  included changes up to here in the NEWS.
5894	  updated the RoadMap with open questions/tasks before 3.0a3
5895
5896	* tools/fastjet/tools/CASubJetTagger.hh:
5897	  added the StructureType (typedef'ed to CASubJetStructure)
5898
58992011-06-01  Gregory Soyez  <soyez@fastjet.fr>
5900
5901	* src/ClusterSequence.cc (contains):
5902	  instead of testing if jet structure shared pointer is equal to
5903	  the ClusterSequence one, compare directly the pointer to the
5904	  cluster sequence itself. This would work also with the wrapped
5905	  structure.
5906
5907	* tools/fastjet/tools/CASubJetTagger.hh:    ***   ADDED   ***
5908	* tools/CASubJetTagger.c:                   ***   ADDED   ***
5909	* tools/fastjet/tools/Makefile.am:
5910	* tools/Makefile.am:
5911	  added a tagger searching for a maximal scale (distance) in a
5912	  Cambridge/Aachen cluster sequence history
5913
5914	* include/fastjet/WrappedStructure.hh:      ***   ADDED   ***
5915	* include/fastjet/Makefile.am:
5916          added a wrapper around another structure (makes feasible the
5917	  addition of extra features to a structure while keeping sharing
5918	  the memry of the wrapped structure)
5919
59202011-05-31  Gregory Soyez  <soyez@fastjet.fr>
5921
5922	* tools/Filter.cc (_finalise):
5923	  do not set the structure share pointer at the end (this is
5924	  already done by the call to join() and would lead to a memory
5925	  problem)
5926
5927	* include/fastjet/Selector.hh:
5928	* src/Selector.cc:
5929	  removed SelectorIsZero (not needed now + could introduce some
5930	  confusion)
5931
59322011-05-30  Gregory Soyez  <soyez@fastjet.fr>
5933
5934	* tools/fastjet/tools/MassDropTagger.hh:
5935	  relaxed the input condition (has_parents is the only thing we
5936	  really use/need)
5937
5938	* tools/Filter.cc:
5939	  used has_validated_cluster_sequence instead of has_associated_cs
5940	  when apropriate
5941
5942	* include/fastjet/PseudoJet.hh:
5943	* src/PseudoJet.cc:
5944	  . adapted to the new has_associated_cs vs. has_validated_cs
5945	  . adapted to the argument added to has_pieces (in the structure)
5946	  . pieces() now relies entirely on the implementation in the
5947	    structure (before it was making sire that the structure had
5948	    support for pieces and throwing an error otherwise)
5949
5950	* include/fastjet/CompositeJetStructure.hh:
5951	* src/CompositeJetStructure.cc:
5952	  . adapted to the additional argument in has_pieces()
5953	  . considered pieces without constituents as their own
5954	    constituent. This means that except for composite jets with no
5955	    pieces (for which constituents() will return an empty vector)
5956	    all composite jets have constituents. constituents() will
5957	    recurse into pieces that have constituents support.
5958
5959	* include/fastjet/ClusterSequenceStructure.hh:
5960	* src/ClusterSequenceStructure.cc:
5961	  . pieces() for jets associated with a ClusterSequence will now
5962	    return the jets parent's (or an empty vector if the jet has no
5963	    parents). has_pieces() would return true in the first case and
5964	    false in the second.
5965	  . adapted to the new has_associated_cs vs. has_validated_cs
5966
5967	* include/fastjet/PseudoJetStructureBase.hh:
5968	  . added has_validated_cluster_sequence(). Now,
5969	    has_associated_cluster_sequence() just check if the structure
5970	    is associated with a CS. It no longer check if it is valid.
5971	    The added method is the one that also checks if it is valid.
5972	    That way we can disentangle between jets with no associated
5973	    cluster sequence and jets for which the cluster sequence has
5974	    gone out of scope
5975	  . added a reference argument to 'has_pieces()'
5976
5977	* src/PseudoJetStructureBase.cc:
5978	  slightly modified the messages for thrown errors
5979
5980	* tools/MassDropTagger.cc:
5981	* tools/MassDropTagger.hh:
5982	  added support for user-defined recombiners (in the tagged jets)
5983
5984	* src/JetDefinition.cc (have_same_recombiner):
5985	* include/fastjet/JetDefinition.hh:
5986	  added a test that different jet definitions share the same
5987	  recombiner
5988
5989	* tools/fastjet/tools/MassDropTagger.hh:
5990	* tools/MassDropTagger.cc:
5991	  used the parent ClusterSequence recombiner to build the final
5992	  composite jet
5993
5994	* tools/Filter.cc:
5995	* tools/MassDropTagger.cc:
5996	* tools/NSubjettinessTagger.cc:
5997	  used the non-const access to the structure to build the final
5998	  jet more transparently
5999
6000	* tools/fastjet/tools/MassDropTagger.hh:
6001	* tools/fastjet/tools/NSubjettinessTagger.hh:
6002	  removed the "mutable" qualifier for the structure data (no
6003	  longer needed with the non-const access to the
6004
6005	* src/PseudoJet.cc:
6006	* include/fastjet/PseudoJet.hh:
6007	  added structure_non_const_ptr() to get a "write" access to the
6008	  PseudoJet's underlying structure.
6009	  Only use this if you know what you are doing!
6010
6011
6012	* src/JetDefinition.cc (join):
6013	  avoided the risk that the recombiner does not handle properly
6014	  plus_equal for uninitialised jets.
6015
6016	* include/fastjet/CompositeJetStructure.hh:
6017	  added a templated version of join (as the first one, for use
6018	  together with structures derived from CompositeJetStructure)
6019	  with support for an external recombination scheme
6020
6021	* tools/Transformer.cc:
6022	* tools/Subtractor.cc:
6023	* tools/NSubjettinessTagger.cc:
6024	* tools/MassDropTagger.cc:
6025	* tools/Filter.cc:
6026	* tools/BackgroundEstimator.cc:
6027        * tools/fastjet/tools/Transformer.hh:
6028	* tools/fastjet/tools/Subtractor.hh:
6029	* tools/fastjet/tools/NSubjettinessTagger.hh:
6030	* tools/fastjet/tools/MassDropTagger.hh:
6031	* tools/fastjet/tools/Filter.hh:
6032	* tools/fastjet/tools/BackgroundEstimator.hh:
6033	* tools/fastjet/tools/Boost.hh:
6034	  renamed 'apply()' into 'result()'
6035
6036	* include/fastjet/FunctionOfPseudoJet.hh:
6037	  renamed 'apply()' into 'result()'
6038
6039	* include/fastjet/PseudoJet.hh:
6040	* srcPseudoJet.cc:
6041	  added a comparison (== and !=) between a PseudJEt and a constant
6042	  (double). It tests if a PseudoJet has zero momentum (the
6043	  operator == can only be called with a zero double value, an error
6044	  is thrown otherwise)
6045
60462011-05-26  Gregory Soyez  <soyez@fastjet.fr>
6047
6048	* src/FunctionOfPseudoJet.cc:              ***  ADDED  ***
6049	* include/fastjet/FunctionOfPseudoJet.hh:
6050	  added a series of Selectors implementing ordering between a
6051	  FunctionOfPseudoJet<double> and a double.
6052
6053	* src/Selector.cc:
6054	* include/fastjet/Selector.hh:
6055	  added a SelectorIsZero selecting zero PseudoJet
6056
6057	* tools/fastjet/tools/Filter.hh:
6058	* tools/Filter.cc:
6059	* example/12-filter.cc:
6060	  renamed FilteredJetStructure into FilterStructure
6061
6062	* example/09-user_info.cc:
6063	  removed unneeded header
6064
6065	* example/12-filter.cc:
6066	  typos in comments
6067
6068	* include/fastjet/CompositeJetStructure.hh:
6069	* include/fastjet/PseudoJet.hh:
6070	* include/fastjet/JetDefinition.hh:
6071	* src/CompositeJetStructure.cc:
6072	* src/PseudoJet.cc:
6073	* src/JetDefinition.cc:
6074	  join(pieces, Recombiner*) has been split into a join(pieces) in
6075	  PseudoJet.(hh,cc) and a join(pieces, Recombiner&) in
6076	  JetDefinition.(hh,cc). The advantage of this is that an end-user
6077	  that want to use join does not explicitly need to include any
6078	  header. If he wants the "basic" version then PseudoJet should
6079	  anyway already be available, and if he wants the version with
6080	  the recombiner then JetDefinition should already have been
6081	  included.
6082
60832011-05-20  Gregory Soyez  <soyez@fastjet.fr>
6084
6085	* src/PseudoJet.cc (has_area):
6086	  we were imposing an associated cluster sequence then calling the
6087	  underlying structure for area. This is overdoing it: just checking
6088	  if there is a structure and if it has area is what we need (we may
6089	  have area support in jets wo an associated ClusterSequence)
6090
6091	* example/09-user_info.cc:
6092	  included the CompositeJetStructure header
6093
6094	* src/PseudoJet.cc:
6095	* src/CompositeJetStructure.cc:
6096	* include/fastjet/PseudoJet.hh:
6097	* include/fastjet/CompositeJetStructure.hh:
6098	  added support for a user-specified recombiner in join(...).
6099
6100	  Since this requires the inclusion of JetDefinition.hh (for
6101	  JetDefiniton::Recombiner), we have moved the declaration of
6102	  join() in CompositeJetStructure.{hh,cc}. One thus needs to
6103	  include that header (on top of PseudoJet.hh) if one needs
6104	  join(...).
6105
6106	  The computation of the area (when applicable) is done in the
6107	  constructor of CompositeJetStructure and cached (as for areas in
6108	  ClusterSequenceArea).
6109
6110	* example/11-boosted_higgs.cc:
6111	  In the recombiner, considered negative user indices as
6112	  0 (particles with a default user index, such as potential ghosts
6113	  added to the computation, should not be considered as b-tagged)
6114
6115	* tools/Filter.cc (_check_ca):
6116	  slightly changed the coding style.
6117	  added a safety check in case one passes a composite jet with 0
6118	  pieces
6119
61202011-05-19  Gavin Salam  <salam@lpthe.jussieu.fr>
6121
6122	* src/ClusterSequence.cc (transfer_from_sequence):
6123	  put in protection to make sure transfer_from_sequence will throw
6124	  an error if the CS deletes_self_when_unused (which would cause
6125	  complications we don't want to worry about right now).
6126
61272011-05-19  Gregory Soyez  <soyez@fastjet.fr>
6128
6129	* tools/Filter.cc:
6130	  added the condition that all the pieces must share the same
6131	  cluster sequence for the C/A simplification to be applicable.
6132
6133	* tools/Filter.cc:
6134	* tools/fastjet/tools/Filter.hh:
6135	  improved the test for the simple CA trick: when the jet is made
6136	  of pieces, we ask that the maximal distance between the pieces
6137	  should not be smaller than the filtering radius. If that
6138	  requirement fails, we just recluster all the constituents
6139
6140	* example/12-filter.cc:
6141	  fixed a bug in the dynamic filter case (max(Rbb,0.3) was
6142	  implemented instead of min(Rbb,0.3))
6143
6144	* tools/NSubjettinessTagger.cc:
6145	  passed a pointer to the boost transformation rather than a
6146	  reference
6147
6148	* src/ClusterSequence.cc (transfer_from_sequence):
6149	* include/fastjet/ClusterSequence.hh:
6150	  merged the 2 versions of transfer_from_sequence into a single
6151	  one taking a pointer to a FunctionPOfPseudoJet<PseudoJet> (instead
6152	  of a reference) which is NULL by default.
6153
6154	  made the implementation a bit more robust in case action_on_jets
6155	  messes up with the structural information
6156
6157	* tools/Makefile.am:
6158	* tools/Transformer.cc:                   *** REMOVED ***
6159	  no longer needed (empty file)
6160
6161	* tools/fastjet/tools/Transformer.hh:
6162	  set apply() and description() as purely virtual: one has to
6163	  implement them in derived classes
6164
6165	* include/fastjet/FunctionOfPseudoJet.hh:
6166	  removed the virtual for operator(). This highlights the fact
6167	  that apply() is the one to be overloaded.
6168
61692011-05-18  Gavin Salam  <salam@lpthe.jussieu.fr>
6170
6171	* tools/fastjet/tools/NSubjettinessTagger.hh:
6172	* tools/NSubjettinessTagger.cc:
6173	  small changes to comments
6174
6175	* include/fastjet/FunctionOfPseudoJet.hh:
6176	  typos + other small changes in comments
6177
6178	* src/ClusterSequence.cc (ClusterSequence::transfer_from_sequence):
6179	  typo in comments
6180
6181	* tools/MassDropTagger.cc:
6182	  slight reworking of some comments
6183
6184	* tools/fastjet/tools/MassDropTagger.hh:
6185	  fixed the descriptions of mu() and y() for MassDropStructure
6186
6187	* tools/fastjet/tools/BackgroundEstimator.hh:
6188	  typos in comments
6189
6190	* testsuite/TestPseudoJet.hh (class TestPJCSaccess):
6191	  added a class to help help maintain consistency of behaviours
6192	  wrt constituents etc. once the CS goes out of scope
6193
61942011-05-18  Gregory Soyez  <soyez@fastjet.fr>
6195
6196	* doc/fastjet-doc.tex (algorithms):
6197	  . added a description of SelectorIdentity and
6198	    SelectorIsPureGhost
6199	  . put the correct ref to FunctionOfPseudoJet<> in the
6200	    documentation of BackgroundEstimator
6201	  . documented the Filter
6202	  . started to document the boosted taggers
6203
6204	* tools/NSubjettinessTagger.cc:
6205	  made sure that the subjets returned as the pieces of the result
6206	  refer to the ClusterSequence boostedback in the lab frame
6207
6208	* example/Makefile.am:
6209	  . added the example illustrating the "new" subtraction
6210	  . updated the comments
6211
6212	* example/07-subtraction-new.cc:
6213	  made subtractor take a pointer to the background estimator
6214
6215	* tools/MassDropTagger.cc:
6216	* tools/NSubjettinessTagger.cc:
6217	* example/12-filter.cc:
6218	  adapted to the renaming mentioned just below.
6219
6220	* include/fastjet/PseudoJet.hh:
6221	  renamed 'has_properties_of' -> 'has_structure_of' and
6222	  'extra_properties' -> 'structure_of'. This is hopefully more
6223	  indicative of the fact that it deals with the structure of the
6224	  jet.
6225
62262011-05-17  Gavin Salam  <salam@lpthe.jussieu.fr>
6227
6228	* tools/fastjet/tools/MassDropTagger.hh:
6229	  tiny change to comment.
6230
62312011-05-17  Gregory Soyez  <soyez@fastjet.fr>
6232
6233	* doc/fastjet-doc.tex (algorithms):
6234	  started to document the Transformer's; added FunctionOfPseudoJet<>
6235	  as an appendix.
6236
6237	* tools/fastjet/tools/Transformer.hh (>):
6238	  added a missing "virtual" in Transformer
6239
62402011-05-17  Gavin Salam  <salam@lpthe.jussieu.fr>
6241
6242	* tools/Filter.cc (Filter::apply):
6243	  compactified the apply(...) code somewhat, making use of
6244	  Selector::sift(...).
6245
62462011-05-17  Gregory Soyez  <soyez@fastjet.fr>
6247
6248	* tools/fastjet/tools/Subtractor.hh:
6249	* tools/Subtractor.cc:
6250	  reinserted the change made by Gavin on May 14th and somehow lost
6251	  during the insertion of FunctionOfPseudoJet<>. Checked that the
6252	  rest of the modifications are OK.
6253
62542011-05-16  Gregory Soyez  <soyez@fastjet.fr>
6255
6256	* tools/fastjet/tools/BackgroundEstimator.hh:
6257	* tools/BackgroundEstimator.cc:
6258	  replaced BackgroundDensityBase and BackgroundRescalingBase by
6259	  FunctionOfPseudoJet<double>
6260
6261	* tools/fastjet/tools/MassDropTagger.hh:
6262	* tools/fastjet/tools/NsubjettinessTagger.hh:
6263	  updated the info about what is included in the associated
6264	  structure
6265
6266	* tools/NSubjettinessTagger.cc:
6267	  kept the information about the internal cluster sequence
6268	  (boosted back to the lab frams)
6269
6270	* tools/NSubjettinessTagger.cc:                ***  ADDED  ***
6271	* tools/fastjet/tools/NSubjettinessTagger.hh:  ***  ADDED  ***
6272	  added a tagger using 2-subjettiness in the rest-frame of the fat
6273	  jet
6274
6275	* tools/MassDropTagger.cc:                     ***  ADDED  ***
6276	* tools/fastjet/tools/MassDropTagger.hh:       ***  ADDED  ***
6277	  added a tagger based on the mass-drop criterion
6278
6279	* tools/fastjet/tools/Boost.hh:                ***  ADDED  ***
6280	  added a couple of classes (FunctionOfPseudoJet<PseudoJet>) with
6281	  the action of boosting and unboosting a PseudoJet
6282
6283	* src/ClusterSequence.cc:
6284	* include/fastjet/ClusterSequence.hh:
6285	  added a version of transfer_from_sequence() that takes, as a
6286	  second argument, a FunctionOfPseudoJet<PseudoJet> that would be
6287	  an action applied on all the jets of the cluster sequence after
6288	  the transfer.
6289
6290	* include/fastjet/CompositeJetStructure.hh:
6291	  added a template version of join() to help create composite jets
6292	  with a Structure derived from CompositeJet Structure.
6293
6294	* tools/fastjet/tools/Makefile.am:
6295	* include/fastjet/Makefile.am:
6296	* tools/fastjet/tools/Transformer.hh:
6297	* include/fastjet/FunctionOfPseudoJet.hh:      ***  ADDED  ***
6298	* tools/fastjet/tools/FunctionOfPseudoJet.hh:  *** DELETED ***
6299	  moved FunctionOfPseudoJet<> to the core of FastJet.
6300
6301	  made apply() purely virtual to make sure one overloads it in
6302	  derived classes.
6303
6304	* tools/fastjet/tools/Subtractor.hh:
6305	* tools/fastjet/tools/Filter.hh:
6306	  declared the description as virtual (more consistent)
6307
6308	* tools/Subtractor.cc:
6309	* tools/fastjet/tools/Subtractor.hh:
6310	  overloaded apply instead of operator() to fit the new
6311	  Transformer.
6312
6313	* example/12-filter.cc:
6314	  added an example of the specification of a dynamic Rfilt
6315
6316	* tools/Filter.cc:
6317	* tools/fastjet/tools/Filter.hh:
6318	  . added a ctor specifying just Rfilt (Cambridge/Aachen used by
6319	    default)
6320	  . added a ctor with Rfilt specified using a
6321	    FunctionOfPseudoJet<double>. In that case, Rfilt will be
6322	    computed dynamically as a function of the jet being filtered
6323
6324	* tools/fastjet/tools/Transformer.hh:
6325	  Declared Transformer as a FunctionOfPseudoJet<PseudoJet> i.e. a
6326	  special function that returns a PseudoJet from a PseudoJet. This
6327	  also has a description and a structure type as before.
6328
6329	* tools/fastjet/tools/Makefile.am:
6330	* tools/fastjet/tools/FunctionOfPseudoJet.hh:      *** ADDED ***
6331	  added a generic FunctionOfPseudoJet<TOut> class allowing to
6332	  define a function returning a result ot type TOut from
6333	  a PseudoJet input.
6334
6335	  These functions have a virtual member 'apply()' that one can
6336	  overload to define any function.
6337
6338	  The operator() will have the same effect as apply when called
6339	  from a single object but can also be called on a vector of
6340	  objects.
6341
6342	* include/fastjet/CompositeJetStructure.hh:
6343	  added area support for CompositeJet.
6344	  Note that the area error is estimated (conservatively) as the
6345	  sum of the errors on each of the pieces.
6346
63472011-05-14  Gavin Salam  <salam@lpthe.jussieu.fr>
6348
6349	* tools/Subtractor.cc:
6350	* tools/fastjet/tools/Subtractor.hh:
6351	  subtractor now takes a pointer to a bge
6352
6353	* tools/fastjet/tools/BackgroundEstimator.hh:
6354	  fixed bug in BackgroundJetPtMDensity return value (excess sqrt)
6355
6356	* include/fastjet/PseudoJet.hh:
6357	  corrected typo in first sentence of doc...
6358
6359	* Doxyfile (SEARCHENGINE):
6360	  turned on the javascript-based search -- we should play with it
6361	  a little to see how it performs, especially over a web connection.
6362
6363	* doc/fastjet-doc.tex:
6364	  new documentation section for the BackgroundEstimator (and some
6365	  mods to the subdivision of the areas section as a whole)
6366
6367	* tools/fastjet/tools/BackgroundEstimator.hh:
6368	  worked on some comments and (for now) commented out all the
6369	  alternative calls to set_rescaling_class
6370
63712011-05-13  Gavin Salam  <salam@lpthe.jussieu.fr> + Gregory
6372
6373	* NEWS: prepared a summary of what we've done so far towards 3.0b1
6374
6375	* RoadMap:
6376	  a series of updates reflect needs for 3.0b1
6377
63782011-05-13  Gregory Soyez  <soyez@lpthe.jussieu.fr>
6379
6380	* include/fastjet/CompositeJetStructure.hh:
6381	  added area support for CompositeJet.
6382	  Note that the area error is estimated (conservatively) as the
6383	  sum of the errors on each of the pieces.
6384
6385	* tools/Subtractor.cc:
6386	* tools/fastjet/tools/Subtractor.hh:
6387	  overloaded apply instead of operator() to fit the new
6388	  Transformer.
6389
6390	* example/12-filter.cc:
6391	  added an example of the specification of a dynamic Rfilt
6392
6393	* tools/Filter.cc:
6394	* tools/fastjet/tools/Filter.hh:
6395	  . added a ctor specifying just Rfilt (Cambridge/Aachen used by
6396	    default)
6397	  . added a ctor with Rfilt specified using a
6398	    FunctionOfPseudoJet<double>. In that case, Rfilt will be
6399	    computed dynamically as a function of the jet being filtered
6400
6401	* tools/fastjet/tools/Transformer.hh:
6402	  Declared Transformer as a FunctionOfPseudoJet<PseudoJet> i.e. a
6403	  special function that returns a PseudoJet from a PseudoJet. This
6404	  also has a description and a structure type as before.
6405
6406	* tools/fastjet/tools/Function.hh:           *** ADDED ***
6407	  added a generic Function<TIn,TOut> class allowing to define an
6408	  object returning a result ot type TOut from an object of type
6409	  TIn.
6410	  Defined FunctionOfPseudoJet<TOut> allowing to define functions
6411	  of PseudoJet returning any desired type.
6412
6413	  These functions have a virtual member 'apply()' that one can
6414	  overload to define any function.
6415
6416	  The operator() will have the same effect as apply when called
6417	  from a single object but can also be called on a vector of
6418	  objects.
6419
6420	* tools/BackgroundEstimator.cc:
6421	* tools/fastjet/tools/BackgroundEstimator.hh:
6422	  Fixed policy regarding constness and selectors taking (or not) a
6423	  reference:
6424	   - rho(),sigma(): const; throws for selectors taking a reference
6425	   - rho(jet),sigma(jet): non-const; (allowed too for selectors
6426	     not taking a reference)
6427	   - mean_area(),...: const: return the result of the last
6428	     computation, do the computation if there's none available, in
6429	     the last case throws an error if there is a selector with an
6430	     unset reference.
6431          All const calls leave the behaviour unchanged (only mutable
6432	  cached data could change)
6433
6434	* src/Selector.cc (SelectorWorker):
6435	  fixed an issue with setting the reference for negated selectors
6436	  --- set_reference was missing in SW_Not.
6437
64382011-05-13  Gavin Salam  <salam@lpthe.jussieu.fr>
6439
6440	* include/fastjet/PseudoJet.hh:
6441	  added operator==(const PseudoJet& a, const PseudoJet& b) and
6442	  corresponding !=.
6443
6444	* tools/fastjet/tools/BackgroundEstimator.hh:
6445	* tools/BackgroundEstimator.cc:
6446	  added set_jets, set_cluster_sequence, set_selector calls and
6447	  allowed for constructors in which the jets/CS or selector are unset.
6448
6449	* tools/fastjet/tools/BackgroundEstimator.hh:
6450	  a few games with the range of set_rescaling_class(...) calls
6451
6452	* src/ClusterSequence.cc:
6453	* include/fastjet/ClusterSequence.hh:
6454	  added CS::_set_structure_shared_ptr(jet), to make sure use count
6455	  is kept updated any time a jet is associated with the CS
6456	  internally (all calls to jet.set_structure_shared_ptr(...) were
6457	  correspondingly replaced). This should ensure that the
6458	  delete_self_when_unused() call will work also with CSArea
6459	  etc. without mods all over the place.
6460
6461	* src/ClusterSequenceStructure.cc:
6462	  added a check in destructor that when _associated_cs is not
6463	  NULL, it is only deleted if CS::will_delete_self_when_unused()
6464	  is true. Previously we relied on the CS setting the
6465	  associated_cs pointer to null in its destructor. But if the CS
6466	  constructor throws an error, then ~CS never gets called and this
6467	  extra check becomes necessary.
6468
6469	* src/ClusterSequenceAreaBase.cc (subtracted_jet):
6470	  just added a comment about the set_structure call
6471
6472
64732011-05-12  Gregory Soyez  <soyez@lpthe.jussieu.fr>
6474
6475	* tools/fastjet/tools/Filter.hh:
6476	* tools/Filter.cc:
6477	  got rid of the internal_cs in FilteredJetStructure and at
6478	  various places in the Filter by using the new
6479	  CS::delete_self_when_unused().
6480
64812011-05-12  Gavin Salam  <salam@lpthe.jussieu.fr>
6482
6483	* src/Error.cc:
6484	  turned off backtrace by default
6485
6486	* src/ClusterSequenceStructure.cc (ClusterSequenceStructure):
6487	* include/fastjet/ClusterSequenceStructure.hh (PseudoJetStructureBase):
6488	* include/fastjet/ClusterSequence.hh:
6489	* src/ClusterSequence.cc:
6490	  added CS::delete_self_when_unused() allowing FastJet to look
6491	  after deletion of a CS when there are no longer any jets or
6492	  other objects associated with it. (+small fix to SharedPtr)
6493
64942011-05-12  Gregory Soyez  <soyez@lpthe.jussieu.fr>
6495
6496	* include/fastjet/SharedPtr.hh:
6497	  added the option to force the count to a user-specified value
6498	  (USE AT YOUR OWN RISKS). Note that this is certainly not in the
6499	  standard shared_ptr specification.
6500
65012011-05-12  Gavin Salam  <salam@lpthe.jussieu.fr>
6502
6503	* include/fastjet/PseudoJet.hh (class PseudoJet):
6504	  changed the default constructor so that it provides a
6505	  sensibly-initialised PseudoJet (with zero momentum). No speed
6506	  penalty and some significant speed improvement on some systems.
6507
6508	* testsuite/PJtiming.cc: *** ADDED ***
6509	  small program for testing timing of default PseudoJet constructor
6510
6511	* testsuite/TestBase.hh:
6512	* testsuite/TestPseudoJet.hh:
6513	* testsuite/run_tests.cc:
6514	  a bunch more tests, including one that found the _user_info not
6515	  being reset by reset_indices.
6516
6517	* include/fastjet/PseudoJet.hh (reset_indices):
6518	  ensured that _user_info also gets reset
6519
65202011-05-12  Gregory Soyez  <soyez@lpthe.jussieu.fr>
6521
6522	* include/fastjet/internal/Makefile.am (fastjetincludeinternal_HEADERS):
6523	* include/fastjet/internal/DerivedPseudoJetHelper.hh: *** REMOVED ***
6524	  no longer needed
6525
6526	* include/fastjet/PseudoJet.hh:
6527	  instead of having the template ctor decide whether the object is
6528	  derived from PseudoJet, do that in reset (that way, reset<L> also
6529	  handles properly the case where L derives from PseudoJet).
6530
6531	  We also switched to the use of cast_if_derived which avoid the
6532	  need for the DerivedPseudoJetHelper class
6533
6534	* include/fastjet/internal/IsBase.hh:
6535	  added a "cast_if_derived<B,D>" that, from a pointer of type D,
6536	  converts it into a pointer of type B if D is derived from B and
6537	  returns NULL otherwise (as dynamic_cast except that it works for
6538	  non-polymorphic types)
6539
65402011-05-12  Gavin Salam  <salam@lpthe.jussieu.fr>
6541
6542	* testsuite/run_tests.cc:
6543	* testsuite/TestBase.hh:
6544	* testsuite/TestPseudoJet.hh:  *** ADDED ***
6545	  added some more infrastructure for running tests and beefed-up
6546	  the PtYPhiM test.
6547
65482011-05-10  Gavin Salam  <salam@lpthe.jussieu.fr>
6549
6550	* tools/fastjet/tools/BackgroundEstimator.hh:
6551	  added (perhaps temporary) illustration of a templated
6552	  set_rescaling.
6553
65542011-05-09  Gavin Salam  <salam@lpthe.jussieu.fr> & Matteo
6555
6556	* tools/BackgroundEstimator.cc:
6557	* tools/fastjet/tools/BackgroundEstimator.hh
6558
6559	  added BackgroundRescalingBase and BackgroundRescalingYPolynomial
6560	  classes, and corresponding support within BackgroundEstimator
6561	  (both in the background estimation part and the local rho part,
6562	  so that overall normalisation should cancel).
6563
65642011-05-09  Gregory Soyez  <soyez@lpthe.jussieu.fr>
6565
6566	* tools/fastjet/tools/BackgroundEstimator.hh:
6567	  added a use_area_4vector method returning true if the background
6568	  estimation is currently using 4-vector area
6569
65702011-05-09  Gavin Salam  <salam@lpthe.jussieu.fr> + Matteo
6571
6572	* tools/BackgroundEstimator.cc:
6573	* tools/fastjet/tools/BackgroundEstimator.hh:
6574	  added facility for using the background estimator to get
6575	  estimates of quantities other than just pt/area, with a few
6576	  classes to help with this (e.g. for PtM). Docs etc. to follow
6577
6578	* tools/BackgroundEstimator.cc ():
6579	* tools/fastjet/tools/BackgroundEstimator.hh:
6580	  factored median calculation out into _median_and_stddev(...), in
6581	  anticipation of other future modifications (e.g. medians of
6582	  quantities other than pt/area).
6583
6584	  Also modified calculation of sigma so that it deals with the
6585	  "bin width" associated with each jet. To obtain the old FJ2
6586	  calculation of sigma, first call the new function
6587	  set_provide_fj2_sigma().
6588
6589
6590	* testsuite/TestBase.hh: *** ADDED ***
6591	* testsuite/run_tests.cc: *** ADDED ***
6592	  just some first structural thoughts about tests
6593
6594	* src/PseudoJet.cc:
6595	* include/fastjet/PseudoJet.hh:
6596	  renamed hint_associated_rap_phi() -> set_cached_rap_phi() [this
6597	  is hopefully a clearer name].
6598
6599	* src/GhostedAreaSpec.cc (add_ghosts):
6600	  renamed the old (wrong) phi as phi_fj2 and now use a phi that
6601	  has the correct px,py use. Also speeded up the ghost generation
6602	  a little (exprap) and added a hint to set the ghost rapidity and
6603	  phi. Checked that active results are unchanged.
6604
66052011-05-02  Gregory Soyez  <soyez@lpthe.jussieu.fr>
6606
6607	* src/PseudoJet.cc (PtYPhiM):
6608	  fixed serious bug where PtYPhiM was using ptm (=mt) to generate
6609	  x and y components (making pt wrong and m=0 when a non-zero m
6610	  was asked)
6611
66122011-04-28  Gavin Salam  <salam@lpthe.jussieu.fr>
6613
6614	* src/PseudoJet.cc (PtYPhiM):
6615	  fixed serious bug where PtYPhiM was generating exchanged x and y
6616	  components (making it inconsistent with the hinted phi). Pointed
6617	  out by Gregory.
6618
66192011-04-21  Gavin Salam  <salam@lpthe.jussieu.fr>
6620
6621	* src/ClusterSequence.cc (ClusterSequence::_initialise_and_run):
6622	* src/JetDefinition.cc:
6623	* include/fastjet/JetDefinition.hh:
6624	  added an undefined_jet_algorithm entry to the JetAlgorithm enum;
6625	  this is now set in the default constructor to JetDefinition;
6626	  corresponding entries/error-messages have been added to
6627	  JetDefinition::description() and
6628	  ClusterSequence::_initialise_and_run.
6629
66302011-04-18  Gavin Salam  <salam@lpthe.jussieu.fr>
6631
6632	* include/fastjet/PseudoJet.hh:
6633	  added the new hint_associated_rap_phi(rap,phi) routine, which
6634	  allows a user to tell the PseudoJet what its rapidity and phi
6635	  are, thus sometimes avoiding expensive recalculations.
6636
6637	* src/PseudoJet.cc (PtYPhiM):
6638	  made this significantly more efficient, by directly calculating
6639	  exp(y) rather than calling sinh and cosh; also avoided a
6640	  sqrt(pt^2+m^2) if the mass is zero and called
6641	  PseudoJet::hint_associated_rap_phi so that rapidity and phi info
6642	  are passed to the PseudoJet for free.
6643
66442011-04-16  Gavin Salam  <salam@lpthe.jussieu.fr>
6645
6646	* include/fastjet/PseudoJet.hh (PseudoJet::reset_momentum):
6647	  added reset_momentum(...), which changes the momentum but
6648	  leaves all other information untouched.
6649
66502011-04-14  Gregory Soyez  <soyez@lpthe.jussieu.fr> + Matteo & Gavin
6651
6652	* src/ClusterSequence.cc (_print_banner):
6653	  updated the banner
6654
6655	* doc/fastjet-doc.tex (Note):
6656	  fixed name in the acks
6657
66582011-04-12  Gavin Salam  <salam@lpthe.jussieu.fr>
6659
6660	* COPYING:
6661	  fixed a typo; added SISCone reference
6662
66632011-04-12  Gregory Soyez  <soyez@fastjet.fr>
6664
6665	* src/ClusterSequenceAreaBase.cc:
6666	  only imposes a finite area if the area has no explicit ghosts
6667
6668	* include/fastjet/ClusterSequenceAreaBase.hh:
6669	* include/fastjet/ClusterSequenceArea.hh:
6670	* include/fastjet/ClusterSequenceActiveArea.hh:
6671	* include/fastjet/ClusterSequencePassiveArea.hh:
6672	* include/fastjet/ClusterSequence1GhostPassiveArea.hh:
6673	* include/fastjet/ClusterSequenceActiveAreaExplicitGhosts.hh:
6674	* include/fastjet/Makefile.am:
6675	* src/GhostedAreaSpec.cc:
6676	* src/ClusterSequenceAreaBase.cc:
6677	* src/ClusterSequenceArea.cc:
6678	* src/ClusterSequencePassiveArea.cc:
6679	* src/ClusterSequenceActiveArea.cc:
6680	* src/ClusterSequenceActiveAreaExplicitGhosts.cc:
6681	* src/Makefile.am:
6682	  replaced the use of RangeDefinition by Selector. From
6683	  ClusterSequenceArea, the selector is required to be geometric
6684	  and to have a finite area. For more advanced usage, use
6685	  BackgroundEstimator and Subtractor.
6686
6687	  Note that from now on, the use of RangeDefinition is considered
6688	  obsolete and should be disfavoured. Use Selector instead.
6689
6690	* include/fastjet/Selector.hh:
6691	* src/Selector.cc:
6692	* tools/BackgroundEstimator.cc:
6693	  replaced the has_area test by is_geometric() that tests if the
6694	  selector only puts constraints on the geometry of the PseudoJet
6695	  (y and phi) and has_finite_area() that checks if the selector
6696	  has a	finite area
6697
6698	* include/fastjet/Selector.hh:
6699	* src/Selector.cc:
6700	  . added a SW_RangeDefinition that works from a RangeDefinition
6701	  . added a Selector ctor from a RangeDefinition [provided for
6702	    backward compatibility only]
6703
6704	* include/fastjet/RangeDefinition.hh (RangeDefinition):
6705	  removed the ctor from a Selector
6706
6707	* include/fastjet/Makefile.am (fastjetinclude_HEADERS):
6708	  removed PseudoJetPlusInfo.hh from the list of headers
6709	  since the file is no longer included.
6710
6711	* example/12-filter.cc:
6712	  adapted the example to the fact that extra_properties now
6713	  returns a reference
6714
67152011-04-12  Gavin Salam  <salam@lpthe.jussieu.fr>
6716
6717	* plugins/PxCone/Makefile.am:
6718	* plugins/SISCone/Makefile.am:
6719	* plugins/CDFCones/Makefile.am:
6720	* plugins/CDFCones/CDFJetCluPlugin.hh:    *** DELETED ***
6721	* plugins/CDFCones/CDFMidPointPlugin.hh:  *** DELETED ***
6722	* plugins/PxCone/PxConePlugin.hh:         *** DELETED ***
6723	* plugins/SISCone/SISConePlugin.hh:       *** DELETED ***
6724	  removed all of these deprecated headers; access now must be via
6725	  fastjet/PluginName.hh
6726
67272011-04-11  Gavin Salam  <salam@lpthe.jussieu.fr>
6728
6729	* include/fastjet/PseudoJet.hh:
6730	  extra_properties<T>() now returns a reference rather than a
6731	  pointer.
6732
6733	* include/fastjet/PseudoJetPlusInfo.hh: *** DELETED ***
6734	  we decided there wasn't much benefit from this
6735
6736	* example/07-subtraction-new.cc: *** ADDED ***
6737	  an example with the new form of subtraction; not yet compiled by
6738	  default; comments still need work.
6739
6740	* tools/Makefile.am:
6741	* tools/fastjet/tools/Subtractor.hh:
6742	* tools/Subtractor.cc:                   *** ADDED ***
6743	  modified comments; moved some of the code to .cc and ensured
6744	  that the resulting subtracted jets have their pt set to zero if the
6745	  subtraction would take away too much pt and that they retain
6746	  their structural information.
6747
6748	* tools/fastjet/tools/BackgroundEstimator.hh:
6749	* tools/BackgroundEstimator.cc:
6750	  made rho() and sigma() calls const, which necessitated making a
6751	  number of member variables mutable.
6752
67532011-04-06  Gavin SALAM  <salam@lpthe.jussieu.fr>
6754
6755	* regression-tests/nightly-check.pl:
6756	  re-enabled karnak
6757
67582011-03-30  Gregory Soyez  <soyez@lpthe.jussieu.fr>
6759
6760	* tools/fastjet/tools/Subtractor.hh:
6761	  passed the ctor argument as a reference
6762
6763	* tools/BackgroundEstimator.cc (_compute):
6764	  fixed typo in error message
6765
67662011-03-27  Matteo Cacciari  <cacciari@lpthe.jussieu.fr>
6767
6768        * fortran_wrapper/fastjetfortran.cc
6769	* fortran_wrapper/fastjet_fortran_example.f
6770
6771	  Added subroutine for rho determination from fortran
6772
67732011-03-24  Matteo Cacciari  <cacciari@lpthe.jussieu.fr>
6774
6775        * fortran_wrapper/fastjetfortran.cc
6776	* fortran_wrapper/fastjet_fortran_example.f
6777
6778	  Added fortran interface to calculate and retrieve
6779	  active jet areas (subroutines fastjetsisconewitharea(),
6780	  fastjetppgenktwitharea() and function fastjetarea()).
6781	  Also moved some code in new helper routine transfer_cluster_transfer()
6782
67832011-03-23  Gavin Salam  <salam@lpthe.jussieu.fr>
6784
6785	* regression-tests/nightly-check.pl:
6786	  removed karnak from nightly check
6787
6788	* include/fastjet/GhostedAreaSpec.hh:
6789	* GhostedAreaSpec.cc:
6790	  GhostedAreaSpec can now take a Selector in the constructor and
6791	  do the sensible thing with it (+later, got description working
6792	  for it)
6793
6794	* include/fastjet/Selector.hh:
6795	* Selector.cc:
6796
6797	  Set up separate area() and area(ghost_area) calls, so that we do
6798	  not need to provide a default area in the include file (this was
6799	  causing circularity in the includes with GhostedAreaSpec)
6800
6801	  Reorganised order of some methods (so everything public is
6802	  together).
6803
68042011-03-21  Gregory Soyez  <soyez@lpthe.jussieu.fr>
6805
6806	* tools/BackgroundEstimator.cc (_compute):
6807	  . use systematically scalar area to estimate the empty area
6808	  . fixed a bug in the computation of the empty area (dividing
6809	    by R^2 rather than R)
6810
6811	  Note that the method to compute the empty area when there is no
6812	  explicit ghost works as for ClusterSequenceAreaBase. This would
6813	  differ to what is implemented in ClusterSequenceActiveArea.
6814
68152011-03-20  Gregory Soyez  <soyez@lpthe.jussieu.fr>
6816
6817	* src/Selector.cc:
6818	  provide a virtual dtor to QuantityBase (so that the derived
6819	  quantities also have a virtual dtor).
6820
68212011-03-20  Gavin Salam  <salam@lpthe.jussieu.fr>
6822
6823	* src/ClusterSequenceVoronoiArea.cc:
6824	  fixed rounding-error issue in VAC::circle_area(...), which was
6825	  causing nan Voronoi areas in some circumstances for particles on
6826	  a calorimeter. (Problem reported by Sue Ann Koay, with example
6827	  event sent on 2011-03-20).
6828
6829	* src/Selector.cc (SelectorM*, SelectorEt*):
6830	  these were incorrectly interpreting their arguments as the
6831	  square-root of mass and Et. Should now be fixed.
6832
68332011-03-17  Gavin Salam  <salam@lpthe.jussieu.fr>
6834
6835	* src/Selector.cc:
6836	* include/fastjet/Selector.hh:
6837	  added two new Selector methods
6838
6839	  - Selector::count(jets), which returns a count of
6840	    the number of jets that pass the selection; intended to be a
6841	    a bit more efficient that getting a results vector and
6842	    evaluating its size.
6843
6844	  - Selector::sift(jets, jets_that_pass, jets_that_fail), which
6845	    sifts the input jets into two vectors, which respectively pass
6846	    and fail the selector.
6847
6848	  Also eliminated some operator indirection in the main selection
6849	  routine.
6850
6851	* regression-tests/nightly-check.pl:
6852	  removed zetes from nightly check since it's down.
6853
68542011-03-16  Gregory Soyez  <soyez@lpthe.jussieu.fr>
6855
6856
6857	* tools/fastjet/tools/Subtractor.hh:           *** ADDED ***
6858	* tools/fastjet/tools/Makefile.am:
6859	  added a transformer that performs subtraction (taking a
6860	  BackgroudEstimetor as a ctor parameter)
6861
6862	* tools/BackgroundEstimator.cc:
6863	* tools/fastjet/tools/BackgroundEstimator.hh:
6864	  added the "traditional" FastJet header.
6865
68662011-03-15  Gavin Salam  <salam@lpthe.jussieu.fr>
6867
6868	* tools/fastjet/tools/Filter.hh:
6869	  small change in description to take into account the two
6870	  possible scales "offered" with trimming.
6871
68722011-03-11  Gregory Soyez  <soyez@lpthe.jussieu.fr>
6873
6874	* example/01-basic.cc:
6875	* example/02-jetdef.cc:
6876	* example/04-constituents.cc:
6877	* example/06-area.cc:
6878	* example/08-selector.cc:
6879	* example/09-user_info.cc:
6880	* example/12-filter.cc:
6881	  sorted out the links in the Doxygen doc (class names had to be
6882	  prefixed by fastjet::)
6883
68842011-03-11  Gavin Salam  <salam@lpthe.jussieu.fr>
6885
6886	* tools/fastjet/tools/BackgroundEstimator.hh:
6887	* tools/BackgroundEstimator.cc:
6888          reworked some of the comments in BackgroundEstimator.
6889
68902011-03-10  Gavin SALAM  <salam@lpthe.jussieu.fr>
6891
6892	* configure.ac:
6893	  switched version number fo 3.0alpha3-devel
6894
68952011-03-10  Gavin SALAM  <salam@lpthe.jussieu.fr>
6896
6897	  Release of fastjet-3.0alpha2
6898
68992011-03-10  Gavin Salam  <salam@lpthe.jussieu.fr>
6900
6901	* configure.ac:
6902	* NEWS:
6903	* plugins/SISCone: [externals]
6904	* ...
6905	  preparing for 3.0alpha2
6906
6907	* tools/Makefile.am:
6908	* tools/fastjet/tools/Makefile.am:
6909	* tools/fastjet/tools/BackgroundEstimator.hh:
6910	* tools/BackgroundEstimator.cc:
6911          moved BackgroundEstimator into core from experimental area to
6912	  allow people to play with them in 3.0a2; adapted it to work with
6913	  latest naming of PseudoJet structure information
6914
6915
69162011-03-10  Gregory Soyez  <soyez@lpthe.jussieu.fr>
6917
6918	* tools/Filter.cc:
6919	* tools/fastjet.tools/Filter.hh:
6920	  declared _selector as mutable to better handle the case of
6921	  selectors taking a reference
6922
6923	* src/Selector.cc (SW_WithReference):
6924	  added the missing copy() method.
6925
6926	* example/Makefile.am:
6927	* example/09-extra_info.cc:                   *** REMOVED ***
6928	* example/09-user_info.cc:                    ***  ADDED  ***
6929	  renamed according to the renaming of the class. Note that the
6930	  example itself is still to be written!
6931
6932	* tools/fastjet/tools/Filter.hh:
6933	  - added a link in the Doxygen doc to the example 12
6934
6935	* example/12-filter.cc:
6936	  - updated description
6937	  - we now show 2 filters: "filtering" and "trimming"
6938
6939	* example/08-selector.cc:
6940	  fixed typo in description
6941
6942	* tools/fastjet/tools/Filter.hh:
6943	  use the jet being filtered as a reference if the selector takes
6944	  one.
6945
6946
69472011-03-10  Gavin Salam  <salam@lpthe.jussieu.fr>
6948
6949
6950	* doc/fastjet-doc.tex:
6951	  documented composite jets
6952
6953	* tools/fastjet/tools/Filter.hh:
6954	  worked on doxygen documentation of Filter.hh
6955
6956	* tools/fastjet/tools/Transformer.hh:
6957	  fixed a minor issue in doxygen output from this file
6958
6959	* NEWS:
6960	  working on this in view of 3.0alpha2
6961
6962	* doc/fastjet-doc.tex:
6963	  incomplete treatment UserInfoBase renaming
6964
6965	* example/fastjet_example.cc:
6966	  completed list of examples for doxygen
6967
6968	* src/ClusterSequence.cc (~ClusterSequence):
6969	  documenting use of assert
6970
6971	* various
6972	  updates to copyright dates
6973
6974	* Roadmap gets some completion
6975
6976	* include/fastjet/Selector.hh:
6977	* include/fastjet/internal/base.hh
6978	  added a new selectors "module" for doxygen
6979
69802011-03-10  Gregory Soyez  <soyez@lpthe.jussieu.fr>
6981
6982	* fastjet-config.in:
6983	  fixed portability issue with sed and newlines
6984
69852011-03-09  Gregory Soyez  <soyez@lpthe.jussieu.fr>
6986
6987	* include/fastjet/PseudoJetInterfaceBase.hh:   *** REMOVED ***
6988	* include/fastjet/PseudoJetStructureBase.hh:   ***  ADDED  ***
6989	* include/fastjet/ClusterSequenceInterface.hh: *** REMOVED ***
6990	* include/fastjet/ClusterSequenceStructure.hh: ***  ADDED  ***
6991	* include/fastjet/MergedJetInterface.hh:       *** REMOVED ***
6992	* include/fastjet/CombinedJetStructure.hh:     ***  ADDED  ***
6993	* src/PseudoJetInterfaceBase.cc:               *** REMOVED ***
6994	* src/PseudoJetStructureBase.cc:               ***  ADDED  ***
6995	* src/ClusterSequenceInterface.cc:             *** REMOVED ***
6996	* src/ClusterSequenceStructure.cc:             ***  ADDED  ***
6997	* src/MergedJetInterface.cc:                   *** REMOVED ***
6998	* src/CombinedJetStructure.cc:                 ***  ADDED  ***
6999	* include/fastjet/PseudoJet.hh:
7000	* src/PseudoJet.cc:
7001	* include/fastjet/ClusterSequence.hh:
7002	* src/ClusterSequence.cc:
7003	* src/ClusterSequenceAreaBase.cc (subtracted_jet):
7004	* tools/fastjet/tools/Transformer.hh:
7005	* tools/fastjet/tools/Filter.hh:
7006	* tools/Transformer.cc:
7007	* tools/Filter.cc:
7008	* example/12-filter.cc:
7009
7010	  done some renaming:
7011	   + Interface -> Structure
7012	   + ClusterSequenceInterface -> ClusterSequenceStructure
7013	   + MergedJetInferface -> CompositeJetStructure
7014	   + merge -> join
7015	   + FilteredJetInterface -> FilteredJetStructure
7016	   + UserInfo -> UserInfoBase
7017
7018	  In PseudoJet: set the structure methods to
7019 	    bool has_structure() const;
7020 	    const PJSB * structure_ptr() const;
7021 	    const PJSB * validated_structure_ptr() const;
7022 	    const SharedPtr<PJSB> structure_shared_ptr() const;
7023 	    const T & structure<T>() const;
7024 	    _associated_interface -> _structure
7025
7026	  In ClusterSequence.hh:
7027	    _interface_to_this -> _structure_shared_ptr
7028	    const SharedPtr<PJSB> structure_shared_ptr()
7029
7030	* include/fastjet/Selector.hh:
7031	* src/Selector.cc:
7032	  - pure-ghost selector: fixed comment; fixed return value for
7033	    jets with no area (false is returned as they are certainly
7034	    not ghosts)
7035	  - added a SelectorPtFractionMin that keeps the jets carrying
7036	    at least a given fraction of a reference jet.
7037
7038
70392011-03-08  Gregory Soyez  <soyez@lpthe.jussieu.fr>
7040
7041	* include/fastjet/Selector.hh:
7042	* src/Selector.xx:
7043	  added SelectorIdentity and SelectorIsPureGhost
7044
70452011-03-08  Gavin SALAM  <salam@lpthe.jussieu.fr> & Matteo
7046
7047	* example/Makefile.am:
7048	* experimental/tools/test.cc -> example/12-filter.cc:
7049
7050	  moved the test program for filter to example/
7051	  Note, this will probably need reworking a little in the future.
7052
7053	* include/fastjet/PseudoJetInterfaceBase.hh:
7054	  removed some extraneous semicolons.
7055
7056	* experimental/tools/Transformer.* -> tools/
7057	* experimental/tools/Filter.* -> tools/
7058	* tools/**/Makefile.am
7059	  moved the Filter (and Transformer) into tools/ directory of the
7060	  core structure.
7061
7062	  Removed TransformerInterface (it seemed to be unused and
7063	  redundant) + worked a little bit on comments.
7064
70652011-03-07  Gavin SALAM  <salam@lpthe.jussieu.fr> & Matteo
7066
7067	* src/PseudoJet.cc:
7068	* include/fastjet/PseudoJet.hh:
7069	* doc/fastjet-doc.tex:
7070	  renamed ExtraInfo -> UserInfo (and similarly for all occurrences
7071	  of extra_info -> user_info). Also changed some of the other
7072	  naming aspects:
7073
7074	    - user_info<L>() is now a template and returns a const ref
7075	    - user_info_ptr() returns the pointer
7076	    - user_info_shared_ptr() returns the shared pointer
7077
7078	  Updated documentation and included a simple usage example as
7079	  well.
7080
70812011-02-28  Gavin Salam  <salam@lpthe.jussieu.fr>
7082
7083	* tools/dummy.cc: *** ADDED ***
7084	  added missing file here.
7085
70862011-02-28  Gregory Soyez  <soyez@lpthe.jussieu.fr>
7087
7088	* src/PseudoJet.cc:
7089	* include/fastjet/PseudoJetInterfaceBase.hh:
7090	* include/fastjet/ClusterSequenceInterface.hh:
7091	* src/PseudoJetInterfaceBase.cc:
7092	* src/ClusterSequenceInterface.cc:
7093	  contains() + is_inside()  ->  object_in_jet() in the interface
7094	  (not in PseudoJet)
7095
7096	* include/fastjet/PseudoJetInterfaceBase.hh:
7097	  made pieces() throw an error when no pieces associated
7098
7099	* src/MergedJetInterface.cc:
7100	  trivial typo
7101
71022011-02-28  Gavin Salam  <salam@lpthe.jussieu.fr>
7103
7104	* src/ClusterSequenceInterface.cc:
7105	  changed the validated_cs Error messages to refer only to the CS
7106	  having gone out of scope (since anything that reaches CSI
7107	  necessarily has assoc CSI).
7108
7109	* src/ClusterSequence.cc:
7110	* include/fastjet/ClusterSequence.hh:
7111	  _potentially_valid(jet) replaced with contains(jet), and added a
7112	  check for all the exclusive_subjet calls.
7113
71142011-02-27  Gavin Salam  <salam@lpthe.jussieu.fr>
7115
7116	* tools/dummy.cc:  *** ADDED ***
7117	  added this file (with one dummy function) to avoid problems with
7118	  nightly checks on OS X.
7119
71202011-02-25  Gregory Soyez  <soyez@lpthe.jussieu.fr>
7121
7122	* include/fastjet/PseudoJet.hh:
7123	  added template methods to help accessing the interface:
7124	   + associated_interface_ptr<IfaceType> returns a pointer
7125	     of type IfaceType* or NULL if the interface is incompatible
7126	   + extra_properties<TransformerType> returns a pointer to
7127	     a interface of type TransformerType::InterfaceType (or
7128	     NULL if incompatible)
7129	   + has_properties_of<TransformerType> check that the
7130	     interface of the type TransformerType::InterfaceType
7131	     can be returned.
7132
71332011-02-24  Gregory Soyez  <soyez@lpthe.jussieu.fr>
7134
7135	* include/fastjet/MergedJetInterface.hh:
7136	  adjusted references and constness.
7137
7138	* include/fastjet/ClusterSequenceInterface.hh (PseudoJetInterfaceBase):
7139	  has_constituents() and has_exclusive_subjets() will throw an
7140	  Error if the associated CS has gone out of scope
7141
7142	* include/fastjet/Makefile.am (fastjetinclude_HEADERS):
7143	* src/Makefile.am (libfastjet_la_SOURCES):
7144	* include/fastjet/PseudoJet.hh:
7145	* src/PseudoJet.cc:
7146	* include/fastjet/MergedJetInterface.hh:             *** ADDED ***
7147	* src/MergedJetInterface.cc:                         *** ADDED ***
7148	  added the interface for a jet made of pieces (copied and adapted
7149	  from Merger in experimental/tools)
7150
7151	* src/ClusterSequenceInterface.cc:
7152	  for contains and is_inside, check that the two jets belong to the
7153	  same ClusterSequence (failing which false is returned)
7154
7155	* include/fastjet/ClusterSequenceInterface.hh:
7156	  all the has_* methods that were simply returning 'true' now
7157	  return true only if the associated ClusterSequence is still
7158	  available (and false otherwise).
7159	  That way, if has_xyz() returns true, xyz() can safely be applied
7160	  to get the result.
7161
7162	* include/fastjet/PseudoJetInterfaceBase.hh:
7163	* src/PseudoJetInterfaceBase.cc:
7164	  updated some of the default behaviours (e.g. a jet has no pieces
7165	  by default and pieces() throws an Error); updated comments
7166
7167	* include/fastjet/Makefile.am (fastjetinclude_HEADERS):
7168	* src/Makefile.am (libfastjet_la_SOURCES):
7169	* include/fastjet/PseudoJet.hh:
7170	* include/fastjet/ClusterSequenceInterface.hh:
7171	* src/ClusterSequenceInterfaceBase.cc:               *** DELETED ***
7172	* include/fastjet/ClusterSequenceInterfaceBase.hh:   *** DELETED ***
7173	* src/PseudoJetInterfaceBase.cc:                       *** ADDED ***
7174	* include/fastjet/PseudoJetInterfaceBase.hh:           *** ADDED ***
7175	  renamed the files ClusterSequenceInterfaceBase.* into
7176	  PseudoJetInterfaceBase.*
7177
7178	* src/ClusterSequenceAreaBase.cc:
7179	* src/ClusterSequence.cc:
7180	* src/ClusterSequenceInterfaceBase.cc:
7181	* src/PseudoJet.cc:
7182	* include/fastjet/PseudoJet.hh:
7183	* include/fastjet/ClusterSequence.hh:
7184	* include/fastjet/ClusterSequenceInterface.hh:
7185	* include/fastjet/ClusterSequenceInterfaceBase.hh:
7186	  done some renaming:
7187	    ClusterSequenceInterfaceBase -> PseudoJetInterfaceBase
7188	    *_csi -> *_interface
7189
71902011-02-23  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo
7191
7192	* doc/fastjet-doc.tex:
7193	* src/Selector.cc:
7194	* include/fastjet/Selector.hh:
7195	  changed relocate(...) and is_relocatable() to set_reference(...)
7196	  and takes_reference(...) + other small mods to wording of
7197	  documentation.
7198
7199	* example/08-selector.cc:
7200	* tools/Selector.cc -> src/Selector.cc
7201	* tools/fastjet/tools/Selector.hh -> include/fastjet/Selector.hh
7202	* various Makefile.am:
7203	* doc/fastjet-doc.tex:
7204	  moved Selector into core of distribution. For doxygen, left it
7205	  @ingroup tools. Revisit this later?
7206
72072011-02-23  Gavin SALAM  <salam@lpthe.jussieu.fr>
7208
7209	* include/Makefile.am:
7210	* include/FjPseudoJet.hh:        *** DELETED ***
7211	* include/FjClusterSequence.hh:  *** DELETED ***
7212	  removed these legacy headers
7213
72142011-02-22  Gavin Salam  <salam@lpthe.jussieu.fr>
7215
7216	* include/fastjet/ClusterSequenceInterface.hh:
7217	  tiny mods (extraneous semicolons)
7218
72192011-02-22  Gregory Soyez  <soyez@lpthe.jussieu.fr>
7220
7221	* include/fastjet/PseudoJet.hh:
7222	  include/fastjet/ClusterSequenceInterface.hh:
7223	  include/fastjet/ClusterSequenceInterfaceBase.hh:
7224	  src/PseudoJet.cc:
7225	  src/ClusterSequenceInterfaceBase.cc:
7226	  added a few extra methods:
7227	   . has_constituents() that tells if the interface
7228	     supports constituents
7229	   . has_exclusive_subjets() that tells if the interface
7230	     supports constituents
7231	   . pieces() that returns the pieces of a jet (by default
7232	     both "input particles" and clustering products are
7233	     considered as made of a single piece, the object itself.
7234
7235
72362011-02-20  Gavin Salam  <salam@lpthe.jussieu.fr>
7237
7238	* include/fastjet/ClusterSequence.hh:
7239	  adjusted comments
7240
72412011-02-17  Gregory Soyez  <soyez@lpthe.jussieu.fr>
7242
7243        * src/PseudoJet.cc
7244        * include/fastjet/ClusterSequenceInterfaceBase.hh
7245        * include/fastjet/ClusterSequenceInterface.hh
7246	* include/fastjet/PseudoJet.hh:
7247	  PseudoJet (and the various CSInterfaces) acquired a
7248	  description()
7249
72502011-02-09  Gregory Soyez  <soyez@lpthe.jussieu.fr>
7251
7252	* include/fastjet/ClusterSequenceWrapper.hh: *** REMOVED ***
7253	* src/ClusterSequenceInterface.cc:
7254	  Fixed the removal of ClusterSequenceWrapper (that apparently
7255	  went wrong during the branch merging.)
7256
72572011-02-08  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
7258
7259	* src/ClusterSequence_CP2DChan.cc (_CP2DChan_limited_cluster):
7260	  same bugfix (make_mirror(... Dlim4mirror) as earlier today (I
7261	  had forgotten one)
7262
72632011-02-08  Gregory Soyez  <soyez@lpthe.jussieu.fr>
7264
7265	* merged the fastjet-2.5.X-clusterinfo-devel branch into the trunk
7266
7267=========================================================================
7268              MERGING the devel-clusterinfo branch
7269    Here starts the ChangeLog for the modifications in the branch
7270=========================================================================
7271
72722011-02-08  Gregory Soyez  <soyez@lpthe.jussieu.fr>
7273
7274	* merged the (remaining) changes from the trunk into the branch
7275	  created at revision 1804. It should now be ready for a
7276	  reinsertion in the trunk.
7277
72782011-02-02  Gregory Soyez  <soyez@lpthe.jussieu.fr>
7279
7280	* src/ClusterSequence.cc:
7281	* include/fastjet/ClusterSequenceInterface.hh (ClusterSequenceInterfaceBase):
7282	  . removed the friendiness w CS: set_associated_cs can
7283	    be used instead
7284	  . added a missing const in the ctor
7285
72862011-02-01  Gregory Soyez  <soyez@lpthe.jussieu.fr>
7287
7288	* plugins/usage_examples/pxcone_example.cc:
7289	  prefixed ENABLE_PLUGIN_PXCONE with FASTJET_
7290
72912011-01-31  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
7292
7293	* tools/Selector.cc (SW_NHardest):
7294	  first check if the size of the vector is larger than the cut.
7295
7296
72972011-01-31  Gregory Soyez  <soyez@lpthe.jussieu.fr>
7298
7299	* src/Error.cc (Error):
7300	* configure.ac:
7301	  checked for the presence of execinfo.h
7302	  added a corresponding #ifdef in Error.cc
7303
7304	* src/Error.cc (Error):
7305	  prefixed the index in the stack with a hash
7306
7307	* include/fastjet/ClusterSequence.hh (ClusterSequence):
7308	  added a method to extraced the associated CSW (rename?)
7309
7310
7311	* m4/ax_prefix_config_h.m4:        *** ADDED ***
7312	  apparently this is missing on some installations of autoconf
7313	  just adding it to our own m4 dir seems to solve the problem
7314
7315	* configure.ac:
7316	  made sure AC_CONFIG_HEADER outputs its (intermediate) header in
7317	  include/fastjet in order to have the correct -I compilation flags
7318
7319	* Makefile.am:
7320	  extended the target distclean to remove leftovers from
7321	  AX_PERFIX_CONFIG_H
7322
7323
73242011-01-31  Gregory Soyez  <soyez@lpthe.jussieu.fr>
7325
7326	* src/ClusterSequence.cc (plugin_record_ij_recombination):
7327	  replaced wrapper- > interface (comes from a bugfix in the branch
7328	  that needed an update to the new nomenclature)
7329
7330	* src/PseudoJet.cc (has_area):
7331	  replaced NULL by 0 to avoid a warning.
7332
73332010-11-27  Gregory Soyez  <soyez@cern.ch>
7334
7335        * src/Makefile.am:
7336        * include/fastjet/Makefile.am:
7337	  included the previously added files in the build system
7338
7339	* include/fastjet/ClusterSequenceInterfaceBase.hh: *** ADDED ***
7340	* include/fastjet/ClusterSequenceInterface.hh:	   *** ADDED ***
7341	* src/ClusterSequenceInterfaceBase.cc:		   *** ADDED ***
7342	* src/ClusterSequenceInterface.cc:                 *** ADDED ***
7343	* src/PseudoJet.cc:
7344	* src/ClusterSequence.cc:
7345	* include/fastjet/PseudoJet.hh:
7346	* include/fastjet/ClusterSequence.hh:
7347	* include/fastjet/ClusterSequenceWrapper.hh:
7348	* include/fastjet/ClusterSequenceInfo.hh:        *** REMOVED ***
7349	* src/ClusterSequenceInfo.hh:                    *** REMOVED ***
7350
7351	  Merged the ClusterSequenceWrapper+ClusterSequenceInfo in a
7352	  single ClusterSequenceInterface. at the same time, we've added a
7353	  base calss ClusterSequenceInterfaceBase that allows to define
7354	  other bahaviours than the default one in
7355	  ClusterSequenceInterface.
7356
7357
73582010-11-04  Gregory Soyez  <soyez@cern.ch>
7359
7360	* include/fastjet/ClusterSequenceInfo.hh:
7361	  added a series of missing 'virtual' declarations
7362
73632010-11-03  Gregory Soyez  <soyez@cern.ch>
7364
7365        * src/Makefile.am:
7366        * include/fastjet/Makefile.am:
7367	  included the previously added files in the build system
7368
7369	* include/fastjet/ClusterSequenceInfo.hh: *** ADDED ***
7370	* src/ClusterSequenceInfo.cc:             *** ADDED ***
7371	* src/ClusterSequenceAreaBase.cc:
7372	* src/PseudoJet.cc:
7373	* src/ClusterSequence.cc:
7374	* include/fastjet/PseudoJet.hh:
7375	* include/fastjet/ClusterSequence.hh:
7376	* include/fastjet/ClusterSequenceWrapper.hh:
7377	  added ClusterSequenceInfo as an intermediate layer between the
7378	  ClusterSequenceWrapper and the classes that use it
7379	  (i.e. ClusterSequence and PseudoJet).
7380
7381	  By default, a single ClusterSequenceInfo object is shared
7382	  between all the objects associated with the same
7383	  ClusterSequence. This can thus be thought as a wrapper of
7384	  ClusterSequenceWrapper.
7385
7386	  The underlying idea behind this apparently redundant structure
7387	  is that if one wants to add info to a PseudoJet (e.g. jet
7388	  substructure or filtering info), one can derive a class from
7389	  ClusterSequenceInfo, add the extra information to it and
7390	  associate it to the analysed jet. That way, each jet could carry
7391	  its own extra information about its own substructure while
7392	  keeping a shared ClusterSequenceWrapper.
7393
7394=========================================================================
7395              MERGING the devel-clusterinfo branch
7396    Here stops the ChangeLog for the modifications in the branch
7397=========================================================================
7398
73992011-02-08  Gregory Soyez  <soyez@lpthe.jussieu.fr>
7400
7401	* src/ClusterSequence_CP2DChan.cc (_CP2DChan_limited_cluster):
7402	  for R>pi, some particles were mirrored outside the [-pi:3pi]
7403	  range causing an assertion to be failed in ClosestPair2D.
7404	  We fixed this by limiting the "mirroring distance" to pi
7405	  i.e. practically copying all the particles: adding 2pi to the
7406	  particles with phi<pi and subtracting 2pi to those with phi>pi
7407	  (note that the particles at phi==pi are not mirrored). For
7408	  additional security, we extended the range [-pi:3pi] to
7409	  [-3.15:9.45].
7410
74112011-02-05  Gavin Salam  <salam@lpthe.jussieu.fr>
7412
7413	* src/ClusterSequence.cc (ClusterSequence::_initialise_and_run):
7414	  fixed issue created by reordering of tests for Best strategy.
7415
74162011-02-03  Gregory Soyez  <soyez@lpthe.jussieu.fr>
7417
7418	* tools/fastjet/tools/Selector.hh:
7419	  added a Selector::nullify_non_selected() that sets to 0 the
7420	  jets that do not pass the selection (equivalent to
7421	  SelectorWorker::terminator())
7422
7423	* src/ClusterSequence.cc (_initialise_and_run):
7424	  . for the Best strategy, moved the small N test first;
7425	  . similarily, inverted the series of tests redirecting to the
7426	    processing method for the various strategies
7427
7428	* include/fastjet/Error.hh (Error):
7429	  . added a 'set_backtrace(bool)' to control whether the backtrace
7430	    is printed together with the error message or not
7431	  . added a bunch of Doxygen comments
7432
74332011-02-02  Gregory Soyez  <soyez@lpthe.jussieu.fr>
7434
7435	* src/Error.cc:
7436	  used the correct header (cstdlib) for the access to free()
7437
74382011-02-01  Gregory Soyez  <soyez@lpthe.jussieu.fr>
7439
7440	* plugins/usage_examples/pxcone_example.cc:
7441	  prefixed ENABLE_PLUGIN_PXCONE with FASTJET_
7442
74432011-01-31  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
7444
7445	* tools/Selector.cc (SW_NHardest):
7446	  first check if the size of the vector is larger than the cut.
7447
7448
74492011-01-31  Gregory Soyez  <soyez@lpthe.jussieu.fr>
7450
7451	* src/Error.cc (Error):
7452	* configure.ac:
7453	  checked for the presence of execinfo.h
7454	  added a corresponding #ifdef in Error.cc
7455
7456	* src/Error.cc (Error):
7457	  prefixed the index in the stack with a hash
7458
7459	* include/fastjet/ClusterSequence.hh (ClusterSequence):
7460	  added a method to extract the associated CSW (rename?)
7461
7462
7463	* m4/ax_prefix_config_h.m4:        *** ADDED ***
7464	  apparently this is missing on some installations of autoconf
7465	  just adding it to our own m4 dir seems to solve the problem
7466
7467	* configure.ac:
7468	  made sure AC_CONFIG_HEADER outputs its (intermediate) header in
7469	  include/fastjet in order to have the correct -I compilation flags
7470
7471	* Makefile.am:
7472	  extended the target distclean to remove leftovers from
7473	  AX_PERFIX_CONFIG_H
7474
74752011-01-28  Gregory Soyez  <soyez@lpthe.jussieu.fr>
7476
7477	* include/fastjet/Error.hh (Error):
7478	* src/Error.cc (Error):
7479	  when throwing a fastjet::Error, include a backtrace of the stack
7480	  in the message
7481
7482        * example/01-basic.cc:
7483        * example/02-jetdef.cc:
7484        * example/03-plugin.cc:
7485        * example/04-constituents.cc:
7486        * example/05-eplus_eminus.cc:
7487        * example/06-area.cc:
7488	* example/07-subtraction.cc:
7489        * example/08-selector.cc:
7490        * example/09-extra_info.cc:
7491	* example/10-subjets.cc:
7492	* example/11-boosted_higgs.cc:
7493	  changed "Source file" into "Source code" to avoid empty links
7494	  created by Doxygen
7495
7496	* include/fastjet/ClusterSequenceWrapper.hh:
7497	  remove the non_const_cs() method (it provided a way to cast
7498	  constness away)
7499
7500	* include/fastjet/config_win.h:
7501	* src/genconfig.sh:
7502	  reflected the change below to the other affected scripts
7503	  and headers
7504
7505	* configure.ac:
7506	* include/fastjet/version.hh:
7507	* example/03-plugin.cc:
7508	* example/fastjet_timing_plugins.cc:
7509	* plugins/usage_examples/many_algs_example.cc:
7510	* plugins/usage_examples/siscone_example.cc:
7511	* plugins/usage_examples/cdfmidpoint_example.cc:
7512	  added FASTJET_ to the macros defined in config(_auto).h
7513	  so that one can safely include it without risking
7514	  an interference with another package
7515
7516	* Doxyfile (STRIP_CODE_COMMENTS): set to NO
7517	  Doxyfile-devel (STRIP_CODE_COMMENTS): set to NO
7518	  + version number set to 3.0alpha2-devel
7519
75202011-01-27  Gavin SALAM  <salam@ada.lpthe.jussieu.fr>
7521
7522	* configure.ac:
7523	* plugins/SISCone/siscone
7524	  back on trunk for SISCone and
7525	  work starts on fastjet-3.0alpha2-devel
7526
75272011-01-27  Gregory Soyez  <soyez@cern.ch> and Gavin
7528	* NEWS
7529	* configure.ac
7530	  Release of fastjet-3.0alpha1
7531
75322011-01-27  Gregory Soyez  <soyez@cern.ch> and Gavin
7533
7534	* CHECKLIST:
7535	  reported ongoing progress
7536
7537	* plugins/SISCone/siscone
7538	  switched back to 2.0.1
7539
7540	* NEWS:
7541	  fixed the text for 3.0alpha1
7542
7543	* doc/fastjet-doc.tex:
7544	  added a note on what's new in 3.0alpha1
7545
7546	* include/fastjet/config_win.h:
7547	* configure.ac:
7548	  updated version number
7549
7550	* Doxyfile:
7551	* Doxyfile-devel:
7552	  updated version numbers; checked included paths
7553
7554	* fastjet-config.in:
7555	* examples/Makefile.am:
7556	  reverted the order of the fastjettools and fastjet libs
7557
7558
75592011-01-27  Gavin Salam  <salam@lpthe.jussieu.fr>
7560
7561	* fortran_wrapper/Makefile.am:
7562	* fortran_wrapper/README:
7563	* fortran_wrapper/fastjetfortran_v2.cc -> fastjetfortran.cc:
7564	* fortran_wrapper/Makefile:
7565	  moved what was called fastjetfortran_v2 to fastjetfortran
7566	  providing SISCone, constituents, dmerge features from fortran.
7567
7568	* several places:
7569	  set the svn:keywords property to Id
7570
75712011-01-27  Gregory Soyez  <soyez@cern.ch>
7572
7573	* example/Makefile.am:
7574        * example/09-extra_info.cc:         *** ADDED ***
7575	  added a (dummy) example for extra info
7576
7577	  + modified the doxygen doc for the examples
7578
7579
75802011-01-27  Gavin Salam  <salam@lpthe.jussieu.fr>
7581
7582	* include/fastjet/PseudoJet.hh:
7583	  renamed reset_extra_info(...) to set_extra_info(...)
7584	  and renamed argument.
7585
75862011-01-27  Gregory Soyez  <soyez@cern.ch>
7587
7588
7589	* example/README:              *** ADDED ***
7590        * example/01-basic.cc:         *** ADDED ***
7591        * example/02-jetdef.cc:	       *** ADDED ***
7592        * example/03-plugin.cc:	       *** ADDED ***
7593        * example/04-constituents.cc:  *** ADDED ***
7594        * example/05-eplus_eminus.cc:  *** ADDED ***
7595        * example/06-area.cc:          *** ADDED ***
7596	* example/07-subtraction.cc:   *** ADDED ***
7597        * example/08-selector.cc:      *** ADDED ***
7598	* example/10-subjets.cc:       *** ADDED ***
7599	* example/11-boosted_higgs.cc: *** ADDED ***
7600	* example/Makefile.am:
7601	  added a list of examples starting with the simplest one then
7602	  illustrating various specific features.
7603
76042011-01-26  Gregory Soyez  <soyez@cern.ch>
7605
7606	* tools/Selector.cc (SW_Relocatable):
7607	  for relocatable objects, make sure thay are initialized when
7608	  calling _get_rapidity_extent()
7609
76102011-01-26  Gavin Salam  <salam@lpthe.jussieu.fr>
7611
7612	* tools/fastjet/tools/Selector.hh:
7613	  relocate now returns a const Selector & rather than void, so
7614	  that one can write
7615
7616	     selector.relocate(jet_on_which_to_centre)(jets_to_select)
7617
76182011-01-26  Gregory Soyez  <soyez@cern.ch> + Gavin
7619
7620	* src/ClusterSequence.cc (plugin_record_ij_recombination):
7621	  when overwriting the recombination result with the specified
7622	  resulting PseudoJet, make sure it contains info about the
7623	  ClusterSequenceWrapper
7624
7625	* tools/fastjet/tools/Selector.hh:
7626	  put the logical operators inside the doc
7627
7628	* configure.ac, example/Makefile.am, tools/Makefile.am:
7629	  if --enable-debug is set, add by default -Woverloaded-virtual to
7630	  the list of default compilation flags (if the compiler supports it)
7631
7632	* tools/Selector.cc, tools/fastjet/tools/Selector.hh:
7633	  - added a SelectorRapPhiRange
7634	    (with a corresponding SW_RapPhiRange)
7635	  - used half_width instead of radius for the SelectorStrip (cc file)
7636	  - the Doughnut range now uses its own worker rather than a
7637	    combination of 2 circles (advantages: has a known area + is
7638	    really >= radius_in instead of >)
7639	  - added a relocatable Rectangle range (given rap and phi half-widths)
7640          - added check rapmin <= rapmax
7641
7642	* Makefile.am:
7643	  added the -Woverloaded-virtual flag for a better finding of
7644	  possible overloading issues.
7645
7646	* tools/Selector.cc:
7647	  fixed a missing const in various get_rapidity_extent
7648
7649	* tools/fastjet/tools/Selector.hh:
7650	  slight update of exception messages in SW::copy
7651
76522011-01-26  Gavin Salam  <salam@lpthe.jussieu.fr>
7653
7654	* tools/Selector.cc:
7655	* tools/fastjet/tools/Selector.hh:
7656	  moved some longer bits of code from Selector.hh to Selector.cc;
7657	  replaced assertions with exceptions; and tided up some comments
7658	  in a few places.
7659
76602011-01-26  Gavin Salam  <gavin.salam@cern.ch>
7661
7662	* regression-tests/nightly-check.pl:
7663	  switched --enable-monolithic check over to --disable-monolithic
7664
76652011-01-26  Gregory Soyez  <soyez@cern.ch>
7666
7667	* m4/plugin.m4:
7668	  check for monolithix uses yes/no instead of true/false
7669
76702011-01-25  Gregory Soyez  <soyez@cern.ch>
7671
7672	* Doxyfile:
7673	  remove alphabetical ordering of detailed descriptions
7674
7675	* include/fastjet/ClusterSequence.hh:
7676	  added extra doc on the mainpage (links to enum,...)
7677
7678	* include/fastjet/internal/base.hh:
7679	  added a "tool" module for the documentation;
7680	  documented the fastjet namespace
7681
76822011-01-25  Gavin Salam  <salam@lpthe.jussieu.fr>
7683
7684	* include/fastjet/PseudoJet.hh:
7685	  added a reset_extra_info(...) so that the user does not need to
7686	  be aware of any details of the shared pointer (unless they do
7687	  advanced things).
7688
7689	* doc/fastjet-doc.tex:
7690	  added documentation of D0 run I algorithm (and adapted the Run
7691	  II doc to correspond)
7692
7693	* plugins/D0RunICone/fastjet/D0RunIBaseConePlugin.hh:
7694	* plugins/D0RunICone/fastjet/D0RunIConePlugin.hh:
7695	* plugins/D0RunICone/fastjet/D0RunIpre96ConePlugin.hh:
7696	* Doxyfile
7697	* Doxyfile-devel
7698
7699	  updated comments to give more informative doxygen documentation
7700	  and included the D0RunI plugins in the doxygen.
7701
7702	* NEWS
7703	  working on making this accurate
7704
77052011-01-25  Gregory Soyez  <soyez@cern.ch>
7706
7707	* configure.ac:
7708	  enables the monolithic build of plugins by default
7709
7710	* Doxyfile, Doxyfile-devel:
7711	  fixed a missing \; updated the devel doc
7712
7713	* Doxyfile:
7714	  updated the file (v1.7.1)
7715	  limited the dot-graph depth to a single inheritance
7716
7717	* include/fastjet/ClusterSequence.hh (ClusterSequence):
7718	  reshaped the doxygen main page (restored links, added more links)
7719
7720	* include/fastjet/internal/IsBase.hh:
7721	  added the workarounds for MSVC
7722
7723	* m4/CGAL.m4:
7724	  in case a CGAL directory is explicitly specified, skip the
7725	  makefile test (previously, /usr/share/cgal/cgal.mk was
7726	  tested anyway). This is safer in case both an "old" and a new
7727	  installation coexist.
7728
7729	* configure.ac:
7730	  slightly moved the "tools" section (right after the plugins)
7731	  added a summary at the end of the run
7732
7733	* m4/plugin.m4:
7734	  added AC_PLUGIN_SUMMARY to show what is enabled/disabled
7735
77362011-01-25  Gavin Salam  <salam@lpthe.jussieu.fr> & Gregory
7737
7738
7739	* tools/                                  *** ADDED ***
7740	* tools/fastjet/			  *** ADDED ***
7741	* tools/fastjet/tools			  *** ADDED ***
7742	* tools/**/Makefile.am                    *** ADDED ***
7743	* tools/Selector.cc
7744	* tools/fastjet/tools/Selector.hh
7745        * Makefile.am
7746        * configure.ac
7747	* fastjet-config.in
7748	* Doxyfile-devel:
7749	* Doxyfile:
7750
7751	  Created a tools/ top-level directory, moved the Selector code in
7752	  from the experimental area, arranged all the Makefiles so that
7753	  it gets placed in libfastjettools and ensured that
7754	  fastjet-config adds that library too + Doxygen access.
7755
7756
7757
77582010-12-20  Gavin Salam  <salam@lpthe.jussieu.fr>
7759
7760	* fortran_wrapper/fastjet_fortran_example.f:
7761	* fortran_wrapper/fastjetfortran_v2.cc:
7762
7763	  Added a comment concerning the order of array indices in the
7764	  fortran interface noting that it differs from the order in
7765	  Pythia 6.
7766
77672010-12-20  Gavin SALAM  <salam@lpthe.jussieu.fr>
7768
7769	* regression-tests/test-all-algs.pl:
7770	  replaced a zcat (causing problems on mac) with a gunzip -c
7771
7772	* regression-tests/nightly-check.pl:
7773	  re-enabled karnak
7774
77752010-12-09  Gavin SALAM  <salam@lpthe.jussieu.fr>
7776
7777	* src/PseudoJet.cc (delta_phi_to):
7778	  fixed serious bug relating to sign of delta_phi_to (presence of
7779	  abs internally, which made the sign of the result unreliable)
7780
77812010-11-29  Gavin SALAM  <salam@lpthe.jussieu.fr>
7782
7783	* regression-tests/nightly-check.pl:
7784	  and took karnak out...
7785
77862010-11-28  Gavin SALAM  <salam@lpthe.jussieu.fr>
7787
7788	* regression-tests/nightly-check.pl:
7789	  put karnak back in.
7790
77912010-11-21  Gavin Salam  <salam@lpthe.jussieu.fr>
7792
7793	* regression-tests/test-all-algs.pl:
7794	  allowed -deposit option to create the deposit directoy.
7795
7796	* src/ClusterSequence_CP2DChan.cc:
7797	  added in assertions to make sure that we catch recombination
7798	  with mirror points (will only occur if the CP2DChan routines
7799	  mistakenly get called with R >= 2pi).
7800
78012010-11-20  Gavin Salam  <salam@lpthe.jussieu.fr>
7802
7803	* regression-tests/test-all-algs.pl:
7804	  changed the default data file so as to increase the number of
7805	  events that can be used for tests.
7806
7807	  switched checksum identifiers over to the new file name.
7808
7809	  Allowed both -strat and -strategy arguments, and also allowed
7810	  them to take a colon-separated list of multiple strategies.
7811
7812	* include/fastjet/JetDefinition.hh:
7813	  clarified possible issues when using the pointer returned by
7814	  recombiner().
7815
78162010-11-19  Gavin Salam  <salam@lpthe.jussieu.fr>
7817
7818	* include/fastjet/JetDefinition.hh (enum Strategy):
7819	  added comments indicating which strategies are non-functional
7820	  for R>=2pi.
7821
7822	* src/JetDefinition.cc:
7823	  replaced enforcement of R < pi/2 with R < 1000, now that we
7824	  support all R values in ClusterSequence. The reason for
7825	  maintaining some limit is that particles with pt=0, m=0 can have
7826	  rapidities O(10000) and one doesn't want the clustering to start
7827	  including them as if their rapidities were physical.
7828
7829	* include/fastjet/ClusterSequence.hh:
7830	* src/ClusterSequence.cc (ClusterSequence::_initialise_and_run):
7831	  set up automatic change of strategy when R>=2pi, to ensure that
7832	  we run a strategy that will give correct answers.
7833
7834	* src/ClusterSequence_TiledN2.cc (ClusterSequence::_initialise_tiles):
7835	  set the minimum number of tiles in the phi direction to be 3, so
7836	  that it works even for large values of R
7837
7838	* include/fastjet/internal/Dnn2piCylinder.hh:
7839	  just updated comments about periodicity in phi and the kt (etc.)
7840	  algorithms
7841
7842
78432010-10-27  Gregory Soyez  <soyez@cern.ch>
7844
7845	* src/genconfig.sh:
7846	* example/makefile.static:
7847        * plugins/CDFCones/CDFcode/makefile.static:
7848	* plugins/SISCone/makefile.static:
7849	* plugins/makefile.static:
7850	  aligned the static build of plugins to the default choices.
7851	  + minor corrections to have the static build actually work!
7852
78532010-10-26  Gregory Soyez  <soyez@cern.ch>
7854
7855	* m4/plugin.m4,
7856	  plugins/Makefile.am:
7857	  added comments for the automatic plugin release scripts.
7858
7859
78602010-10-26  Gavin Salam  <salam@lpthe.jussieu.fr>
7861
7862	* include/fastjet/GhostedAreaSpec.hh (class GhostedAreaSpec):
7863	  changed comment for add_ghosts
7864
78652010-10-25  Gregory Soyez  <soyez@cern.ch>
7866
7867	* plugins/D0RunICone/D0RunIBaseConePlugin.cc:
7868	  carry info about the recombination from HepEntity to the Fastjet
7869	  recombination
7870
7871	* plugins/D0RunICone/:                *** ADDED ***
7872	  released a plugin for the D0 run I cone algorithms.
7873	  (two versions: D0RunIpre96ConePlugin and D0RunIConePlugin
7874	   corresponding to the code used before an dafter 1996)
7875	  Thanks to Lars Sonnenschein for providing the code
7876
7877
78782010-10-13  Gavin SALAM  <salam@lpthe.jussieu.fr>
7879
7880	* regression-tests/nightly-check.pl:
7881	  temporary disabling of karnak (given nfs problems)
7882
7883	* include/fastjet/PseudoJet.hh:
7884	  small fix (template class name) to get compilation working with gcc-3.4
7885
78862010-10-10  Gavin Salam  <salam@lpthe.jussieu.fr>
7887
7888	* include/fastjet/PseudoJet.hh:
7889	* src/PseudoJet.cc:
7890	  added extra_info_cast<T>() member function to directly get a
7891	  cast to the extra information in the form one needs.
7892
7893	  Throws a PseudoJet::InexistentExtraInfo error (new internal
7894	  class, derived from Error).
7895
7896	* include/fastjet/Error.hh:
7897	  added a virtual destructor, so make life easier for when we want
7898	  to produce derived classes for errors.
7899
79002010-10-04  Gavin Salam  <gsalam@lxplus242.cern.ch>
7901
7902	* autogen.sh:
7903	  added comments at start as a reminder of how to run this without
7904	  getting configured in the process
7905
79062010-10-01  Gavin Salam  <salam@lpthe.jussieu.fr>
7907
7908	* fortran_wrapper/fastjet_fortran_example.f:
7909	* fortran_wrapper/fastjetfortran_v2.cc:
7910	  added fastjetdmerge_(..) and fastjetdmergemax_(..) functions,
7911	  requested by Stefano Frixione. Showed use of them in example
7912	  program.
7913
79142010-09-21  Gregory Soyez  <soyez@cern.ch>
7915
7916	* include/fastjet/PseudoJetPlusInfo.hh:
7917	  added PseudoJetPlusInfo::extra_info that already does the
7918	  dynamic cast amd returns a pointer to TExtraInfo
7919
7920	* include/fastjet/PseudoJet.hh:
7921	  added a 'const' version of extra_info_shared()
7922
7923	* include/fastjet/PseudoJetPlusInfo.hh:
7924	  - added a copy ctor from a "regular" PseudoJet. The extra
7925	    information is copied from the PJ if available and of the
7926	    correct format.
7927	  - added a 'convert_to_vector<T,U> that copies a vector of type
7928	    U to a vector of type T (provided t=u works)
7929
79302010-09-20  Gavin Salam  <salam@lpthe.jussieu.fr>
7931
7932	* example/fastjet_example.cc:
7933
7934	  removed testing line accidentally left in (printing of
7935	  unavailable areas) that caused the example program to fail.
7936
79372010-09-17  Gavin Salam  <salam@lpthe.jussieu.fr>
7938
7939	* example/fastjet_example.cc:
7940	* example/fastjet_areas.cc:
7941	* example/fastjet_subjets.cc:
7942	* example/fastjet_boosted_higgs.cc:
7943	* example/fastjet_timing.cc:
7944	* example/fastjet_timing_plugins.cc:
7945	* example/fastjet_subtraction.cc:
7946
7947	  switched these over to new form of access to jet
7948	  information.
7949
7950	* src/PseudoJet.cc:
7951	* include/fastjet/PseudoJet.hh:
7952	  added the validated_cs() and validated_csab() methods (intended
7953	  mainly for internal use), which return pointers to the associated
7954	  ClusterSequence (and ClusterSequenceAreaBase) objects if
7955	  possible, otherwise throw an error.
7956
7957	  All methods that provide information from the cluster sequence
7958	  now go through these methods (and so throw errors when they
7959	  can't return sensible information).
7960
7961	  Also added the exclusive_subjet (etc) series of methods
7962
79632010-09-16  Gregory Soyez  <soyez@cern.ch>
7964
7965	* include/fastjet/PseudoJet.hh:
7966	  removed the access to the shared ptr to the associated csw
7967
7968	* include/fastjet/internal/IsBase.hh:
7969	  moved to the internal headers folder
7970
7971	* include/fastjet/internal/DerivedPseudoJetHelper.hh:
7972	  renamed PseudoJetPlusInfoHandler into DerivedPseudoJetHelper
7973	  plus moved it in the internal headers folder
7974
7975	* include/fastjet/ClusterSequenceWrapper.hh:
7976	  placed things in the fastjet namespace
7977
7978	* include/fastjet/PseudoJet.hh (PseudoJet):
7979	  simplified the ctor with initialisation from a generic 4-vector
7980
7981	* Doxyfile and most of the headers,
7982	  Doxyfile-devel                                 *** ADDED ***
7983	  Doxygen documentation cleaning:
7984	  - classified the classes into modules (see base.hh for the list)
7985	  - added an internal tag (internal_doc) to allow removing
7986	    classes from the public page
7987	  - removed undocumented classes and private class members from
7988	    the public doxygen doc.
7989	  - added a Doxygen-devel file that (on top of the public/default
7990	    doc) includes internal classes and private member.
7991
7992
79932010-09-15  Gregory Soyez  <soyez@cern.ch>
7994
7995	* include/fastjet/Makefile.am:
7996	  added the new headers to the list of installed files
7997
7998	* include/fastjet/PseudoJetPlusInfo.hh:          *** ADDED ***
7999	  This is a generic template class that allows to build
8000	  PseudoJet carrying extra information. You'd basically
8001	  define a
8002	    class MyExtraInfo : public PseudoJet::ExtraInfo{};
8003	  then use
8004	    PseudoJetPlusInfo<MyExtraInfo> instead of PseudoJet
8005
8006	  The implementation allows one to copy from PseudoJetPlusInfo to
8007	  PseudoJet without any loss of information (e.g. you can copy,
8008	  element by element, a vector of PseudoetPlusInfo into a vector
8009	  of PseudoJet and pass it to a ClusterSequence without loosing
8010	  the original ExtraInfo).
8011	  Memory is managed internally so you can easily use the extra
8012	  information if you define your own recombiner.
8013
8014	* include/fastjet/PseudoJet.hh:
8015	  added support to carry extra info.  It is stored as a shared
8016	  pointer of a dummy type ExtraInfo. A generic extra information
8017	  can be stored by deriving a class from ExtraInfo.
8018
8019	* include/fastjet/PseudoJetPlusInfoHandler.hh:   *** ADDED ***
8020	  This class is a helper to allow to disantangle in the
8021	    template<T> PseudoJet::PseudoJet(T &some_four_vector)
8022	  between the situation where T just implements T[0--3] and
8023	  the case where T is derived from PseudoJet (and thus may carry
8024	  extra information)
8025
8026	* include/fastjet/IsBase.hh:                     *** ADDED ***
8027	  added a class (mostly borrowed from TR1 and boost), that allows
8028	  to check whether a given pair of typed are a based class and a
8029	  class derived from it.
8030
8031	* include/fastjet/PseudoJet.hh
8032	  src/PseudoJet.cc:
8033	  added associated_cluster_sequence_shared() that returns a
8034	  reference to the shared pointer holding the
8035	  ClusterSequenceWrapper
8036
8037	* include/fastjet/ClusterSequenceWrapper.hh:     *** ADDED ***
8038	  moved the ClusterSequenceWrapper class in its own header
8039
80402010-09-06  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
8041
8042	* regression-tests/nightly-check.pl:
8043	  pointed to a new installaion of CGAL (note: this could be done
8044	  through the CGAL_DIR environment var as it was done before)
8045
80462010-08-30  Gregory Soyez  <soyez@cern.ch>
8047
8048	* INSTALL:
8049	  Fixed default description of static/shared-lib build
8050
80512010-08-09  Gavin Salam  <salam@lpthe.jussieu.fr>
8052
8053	* include/fastjet/PseudoJet.hh:
8054	  _reset_indices now also resets the _associated_csw (mainly so
8055	  that reset() does the expected thing).
8056
8057	* include/fastjet/SharedPtr.hh:
8058	  for testing purposes, added an option (if you define
8059	  USETR1SHAREDPTR) in which SharedPtr basically wraps the STL TR1
8060	  shared_ptr.
8061
80622010-08-08  Gavin Salam  <salam@lpthe.jussieu.fr>
8063
8064	* src/ClusterSequenceAreaBase.cc:
8065	  subtracted_jet now transfers information about the csw too
8066
8067	* include/fastjet/PseudoJet.hh:
8068	  added associated_csw() to retrieve information about the cs
8069
80702010-07-29  Gavin Salam  <salam@lpthe.jussieu.fr>
8071
8072	* include/fastjet/PseudoJet.hh:
8073	  more organisation of documentation.
8074
80752010-07-28  Gavin Salam  <salam@lpthe.jussieu.fr>
8076
8077	* include/fastjet/ClusterSequence.hh:
8078	  added more info in the \mainpage section
8079
8080	* include/fastjet/PseudoJet.hh:
8081	  starting to group some of the member functions; but not yet very
8082	  successful.
8083
80842010-07-18  Gavin Salam  <salam@lpthe.jussieu.fr>
8085
8086	* AUTHORS:
8087	  realised authors was very out of date, so updated it.
8088
80892010-07-14  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
8090
8091	* include/fastjet/PseudoJet.hh:
8092	  added a virtual destructor; declared the methods that access the
8093	  associated CS as virtual too (for inheritance purposes).
8094	  Negligible speed impact; ~3-5% cost in memory.
8095
80962010-07-12  Gregory Soyez  <soyez@cern.ch>
8097
8098	* src/PseudoJet.cc:
8099	  used a ctor with initialisation for returning 0 PJs when the CSW
8100	  is not available.
8101
8102	* include/fastjet/PseudoJet.hh, src/PseudoJet.cc:
8103	  added support to acces the area properties.
8104
8105	* src/ClusterSequence.cc, include/fastjet/ClusterSequence.hh:
8106	  added a 'transfer_ownership' flag to CS::transfer_from_sequence
8107	  (true by default.) That way, the CS associated to the jets of
8108	  the CS is the new one.
8109
8110	* src/PseudoJet.cc, include/fastjet/PseudoJet.hh,
8111	  src/ClusterSequence.hh:
8112	  . replaced _parent_cs by _associated_csw and likewise changes in
8113	    the varisou methods.
8114	  . added a PseudoJet::set_associated_csw. That allows to remove
8115	    the friendship to CS in PJ.
8116	  . moved CSWrapper to PseudoJet (avoids incomplete type warnings)
8117
81182010-07-12  Gregory Soyez  <soyez@cern.ch>
8119
8120	* src/ClusterSequence.cc (ClusterSequence):
8121	  bug fixed: made sure that _wrapper_to_this "exists" before
8122	  setting its internal CS pointer to NULL
8123
8124	* src/PseudoJet.cc (has_parent_cluster_sequence):
8125	  simplified the test
8126
8127
81282010-07-12  Gavin SALAM  <salam@lpthe.jussieu.fr>
8129
8130	* ISSUES: *** ADDED ***
8131	  some thoughts on structure of CSW use etc.
8132
8133	* include/fastjet/ClusterSequence.hh:
8134	* include/fastjet/PseudoJet.hh:
8135	  minor changes to coding style / comments.
8136
8137	* src/ClusterSequence.cc:
8138	  changed const properties of CSWrapper
8139
8140
8141
81422010-07-12  Gregory Soyez  <soyez@cern.ch>
8143
8144	* src/ClusterSequence.cc, src/ClusterSequence_TiledN2.cc,
8145	* plugins/EECambridge/EECambridgePlugin.cc, include/fastjet/NNH.hh,
8146	* include/fastjet/internal/ClusterSequence_N2.icc:
8147	  SharedPointer adds an implementation of 'swap' in the fastjet
8148	  namespace. For code inside 'namespace fastjet{...}', the
8149	  std::swap() thus has to be specified explicitly (Note: if you just
8150	  have 'using namespace std; using namespace fastjet;' (i.e. use the
8151	  fastjet namespace but don't put your code inside it), then you can
8152	  call the swap functions from both std and fastjet without
8153	  explicitly specifying the namespace.
8154
8155	* include/fastjet/PseudoJet.hh, src/PseudoJet.cc:
8156	  added a list of methods giving access to the info in the parent
8157	  ClusterSequence (if any): has_parent_cluster_sequence(),
8158	  parent_cluster_sequence(), has_partner(), has_child(),
8159	  has_parents(), contains(), is_inside(), constituents()
8160
8161	* include/fastjet/PseudoJet.hh, include/fastjet/ClusterSequence.hh,
8162	* src/ClusterSequence.cc:
8163	  added a ClusterSequenceWrapper class that contains a pointer to
8164	  a ClusterSequence. Then, added a SharedPointer to such an object
8165	  both in ClusterSequence and PseudoJet. All the PseudoJet's created
8166	  within a ClusterSequence are thus given access to that parent
8167	  ClusterSequence through the shared pointer (_parent_cs in
8168	  PseudoJet). When the ClusterSequence goes out of scope, the
8169	  pointer in the common wrapper object is set to NULL so all
8170	  PseudoJet's can avoid accessing it.
8171
8172	* include/fastjet/SharedPtr.hh:
8173	  included cstdlib
8174
8175
81762010-03-31  Gavin Salam  <salam@lpthe.jussieu.fr>
8177
8178	* example/fastjet_timing_plugins.cc (print_jets):
8179	  output constituent index as well.
8180
8181	* fortran_wrapper/fastjetfortran_v2.cc:  *** COPIED from fastjetfortran.cc ***
8182
8183          an attempt at version 2 of the fortran wrapper, which
8184	  centralises some of the housekeeping calls and adds access to
8185	  constituents; tested that jet results are the same as for the
8186	  original version of the fortran wrapper
8187
8188	* fortran_wrapper/fastjet_fortran_example.cc:
8189	  adapted it to show constituents (v2 feature)
8190
8191	* fortran_wrapper/Makefile.alt:
8192	  now uses _v2
8193
8194	* fortran_wrapper/Makefile.am (EXTRA_DIST):
8195	  added fastjetfortran_v2.cc
8196
81972010-03-24  Gavin SALAM  <salam@lpthe.jussieu.fr>
8198
8199	* include/fastjet/ClusterSequence.hh:
8200	  removed the commented (unused) GenBriefJet code.
8201
82022010-03-10  Gregory Soyez  <soyez@cern.ch>
8203
8204	* include/fastjet/SharedPtr.hh:
8205          removed internal get_pointer() (use get() instead), made
8206	  get_container() private (_get_container())
8207
8208	* include/fastjet/SharedPtr.hh:
8209	  Apart from a few things like
8210	   - the support for deleter/allocator
8211	   - the initialisation from a weak_ptr or auto_ptr
8212	   - the {static,const,dynamic}_pointer_cast
8213	  the implementation seems to match the standard.
8214
8215	  Note, *_pointer_casts would require the constructor
8216	    template<class Y>
8217	    SharedPtr(SharedPtr<Y> & share, T * ptr);
8218	  which stores T but shares the counter with 'share'
8219	  This would probably require a __SharedCounter detached
8220	  from __SharedCounterPtr, so we postpone it for the moment
8221
8222
82232010-03-09  Gregory Soyez  <soyez@cern.ch>
8224
8225	* include/fastjet/SharedPtr.hh (SharedPtr):
8226	  Start getting closer to the boost implementation...
8227
8228	* include/fastjet/SharedPtr.hh (SharedPtr):
8229	  replaced the previous smart_ptr with a new SharedPtr:
8230	   - more generic implementation rather than sth tuned for a
8231	     specific situation
8232	   - removed the owner part (to be dealt with in an intermediate
8233	     class
8234	   - manage the object it's pointing to (i.e. deletes it when
8235	     counts==0)
8236	   - used standard fastjet coding conventions
8237
82382010-03-09  Gavin Salam  <salam@lpthe.jussieu.fr>
8239
8240	* include/fastjet/smart_ptr.hh:
8241	  added an operator*
8242
82432010-03-08  Gregory Soyez  <soyez@cern.ch>
8244
8245	* include/fastjet/smart_ptr.hh (smart_ptr):
8246	  added a template class to handle smart pointer (see description
8247	  in the header)
8248
82492010-03-08  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
8250
8251	* m4/CGAL.m4:
8252	  force the use of C++ language for the AC_CHECK_LIB test.
8253	  In that case, arguments passed through CXXFLAGS are used
8254	  automatically without having to set them again in CFLAGS.
8255
82562010-03-08  Gavin SALAM  <salam@lpthe.jussieu.fr>
8257
8258	* src/PseudoJet.cc:
8259	* include/fastjet/PseudoJet.hh:
8260
8261	  phi and rapidity are now no longer cached on construction of the
8262	  PseudoJet. Instead _phi is set to a nonsense value (-100), and
8263	  both _phi and _rap are calculated the first time that phi() or
8264	  rap() is requested.
8265
8266
8267*****************************************************
8268	Start of work towards FJ 2.5/3.0
8269*****************************************************
8270
82712010-02-26  Gavin Salam  <salam@lpthe.jussieu.fr>
8272
8273	* configure.ac:
8274	* CHECKLIST:
8275          release of 2.4.2 carried out; switched over to 2.5-devel
8276
82772010-02-26  Gavin Salam  <salam@lpthe.jussieu.fr>
8278
8279	* regression-tests/nightly-check.pl:
8280	  added a test with --enable-monolithic
8281
82822010-02-26  Gregory Soyez  <soyez@cern.ch>
8283
8284	* Merged changes from the devel-monolithic-2.4.2 branch
8285	  (see the log for 2010-02-12 for details)
8286
82872010-02-18  Gavin Salam  <salam@lpthe.jussieu.fr>
8288
8289	* src/ClusterSequence.cc (ClusterSequence::_print_banner):
8290	  added a "flush" to the output (to avoid problems in case the
8291	  application is separately writing to /dev/stdout)
8292
82932010-02-12  Gregory Soyez  <soyez@cern.ch>
8294
8295	* m4/plugin.m4:
8296	* configure.ac:
8297	  added a list of macros to handle the plugin configure options
8298	  modified the configure script accordingly
8299
8300	* fastjet-config.in:
8301	* configure.ac:
8302	  added a --list-plugins option to fastjet-config that lists the
8303	  available plugins
8304
8305        * configure.ac
8306          plugins/Makefile.am:
8307          plugins/SISCone/Makefile.am:
8308          plugins/CDFCones/Makefile.am:
8309          plugins/PxCone/Makefile.am:
8310          plugins/D0RunIICone/Makefile.am:
8311          plugins/NestedDefs/Makefile.am:
8312          plugins/TrackJet/Makefile.am:
8313          plugins/ATLASCone/Makefile.am:
8314          plugins/EECambridge/Makefile.am:
8315          plugins/Jade/Makefile.am:
8316          plugins/CMSIterativeCone/Makefile.am:
8317          added the --enable-monolithic option (off by default for the
8318          moment) that allows to build all the plugins in a single lib:
8319          libfastjetplugins.{a,so}
8320
83212010-02-12  Gavin Salam  <salam@lpthe.jussieu.fr>
8322
8323	* include/fastjet/JetDefinition.hh:
8324	* include/fastjet/ClusterSequenceAreaBase.hh:
8325
8326	  removed explicit names for arguments in preprocess(jet) and a number
8327	  of CSAB default implementations that were not actually using
8328	  their arguments. This should resolve an issue of warnings reported
8329	  by LHCb (Stefan Roiser <Stefan.Roiser@cern.ch>)
8330
83312010-02-02  Gavin SALAM  <salam@lpthe.jussieu.fr>
8332
8333	* regression-tests/nightly-check.pl:
8334	  switched to 1000 event tests on tycho (32bit), karnak (mac 64
8335	  bit) and on pallas with intel compiler.
8336
8337	* regression-tests/test-all-algs.pl:
8338
8339	  Put D0RunIICone back with the default tests.
8340
8341	  updated 1000 event d0runiicone checksum again following earlier
8342 	  wrong cut and paste.
8343
83442010-02-01  Gavin SALAM  <salam@lpthe.jussieu.fr>
8345
8346	* regression-tests/test-all-algs.pl:
8347
8348	  updated checksum values for 100 and 1000 events on d0runiicone,
8349	  following Gregory's inclusion of -fno-inline as a default
8350	  compiler flag (eliminates certain damaging optimisations under
8351	  32 bits).
8352
83532010-02-01  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
8354
8355	* plugins/D0RunIICone/Makefile.am (libD0RunIIConePlugin_la_CXXFLAGS):
8356	* configure.ac:
8357	  added the -fno-inline option when building the D0 cone
8358	  plugin. This is meant to solve a bug related to the optimisation
8359	  of the D0 code on some platforms (apparently gcc4 on 32-bit
8360	  systems).
8361	  Notes: - if -fno-inline is not supported, disable optimisation
8362	           by using -O0
8363	         - if the user explicitly specifies CXXFLAGS on the
8364	           command line, these will prevail. As a noticeable
8365	           example, if the compiler does not support -fno-inline
8366	           and the used specifies CXXFLAGS="-g -O2", the -O2 will
8367	           prevail over the -O0,
8368
8369	  Arranged a series of minor typos to clean the code.
8370
83712010-01-20  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
8372
8373	* configure.ac:
8374	  moved AC_PROG_LIBTOOL to avoid checking for a Fortran compiler
8375	  when it is not needed
8376
83772010-01-20  Gavin SALAM  <salam@lpthe.jussieu.fr>
8378
8379	* regression-tests/nightly-check.pl (build_and_check):
8380	  sorted out problems related to the output of fortran compiler
8381	  info. Put some tests onto tycho (32 bits).
8382
83832010-01-19  Gavin SALAM  <salam@lpthe.jussieu.fr>
8384
8385	* regression-tests/test-all-algs.pl:
8386	  allow for compressed data files. Added commented use of 10k
8387	  file. That was generated in same way as the default 1k file, but
8388	  does not currently give identical results for 1k events. Needs
8389	  further investigation between making it our new default file.
8390
8391	  DISABLED testing of D0RunIICone temporarily, given the 64 bit
8392	  issues.
8393
8394	* include/fastjet/ClusterSequenceArea.hh (initialize_and_run_cswa):
8395	* src/ClusterSequenceArea.cc:
8396	  added warning when using explicit ghosts with repeat!=1.
8397
83982009-11-19  Gavin SALAM  <salam@lpthe.jussieu.fr>
8399
8400	* include/fastjet/internal/ClusterSequence_N2.icc:
8401	* include/fastjet/ClusterSequence.hh (ClusterSequence):
8402
8403	  commented all bits of code related to GenBriefJet, which is not
8404	  used (following reports from Andy Buckley about missing virtual
8405	  destructor in that code).
8406
84072009-10-22  Gavin Salam  <salam@lpthe.jussieu.fr>
8408
8409	* src/ClusterSequenceActiveArea.cc
8410	(ClusterSequenceActiveArea::_throw_unless_jets_have_same_perp_or_E):
8411	  in error message, added reference to FAQ for explanations.
8412
84132009-07-08  Gavin SALAM  <salam@lpthe.jussieu.fr>
8414
8415	* Doxyfile:
8416	  changed image format over to png.
8417
84182009-07-03  Gavin SALAM  <salam@lpthe.jussieu.fr>
8419
8420	* regression-tests/nightly-check.pl:
8421	  removed zetes from nightly check because it's down and added a
8422	  separate check on toth with gcc-3.4.
8423
84242009-06-12  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
8425
8426	* plugins/D0RunIICone/D0RunIIConePlugin.cc (run_clustering):
8427	  explicitly discard empty jets (those sometimes come out of the
8428	  D0 code when the min_jet_Et parameter is set to 0.  This was
8429	  creating a segmentation fault (reported by Andy Buckley).
8430
84312009-06-10  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
8432
8433	* include/fastjet/ClusterSequence.hh (ClusterSequence):
8434	  fixed bug in exclusive_ymerge_max which was calling itself
8435	  rather than exclusive_dmerge_max. (Reported by Frank Siegert)
8436
84372009-05-29  Gavin SALAM  <salam@lpthe.jussieu.fr>
8438
8439	* moved SISCone back to trunk
8440	* switched to version 2.4.2-devel
8441
84422009-05-29  Gavin SALAM  <salam@lpthe.jussieu.fr>
8443
8444	* configure.ac:
8445	  switched to version 2.4.1
8446
8447	* regression-tests/nightly-check.pl:
8448	  added -only XX option for running just the test with index XX
8449
8450	* fastjet-config.in:
8451	  ensured that --rpath=no removes the RPATH that is there with CGAL.
8452
84532009-05-29  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
8454
8455	* fastjet-config.in:
8456	  fixed the returned compilation flags for
8457	  fastjet-config --cxxflags --libs
8458
8459
84602009-05-28  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
8461
8462	* configure.ac:
8463	  if CGAL is explicitly requested and not found (or not functional),
8464	  return an error (and exit)
8465
8466	* regression-tests/test-all-algs.pl (setRefResults):
8467	  added checksums for PxCone
8468
8469	* src/ClusterSequenceAreaBase.cc (get_median_rho_and_sigma),
8470	  include/fastjet/ClusterSequenceAreaBase.hh:
8471	  disregarded jets with 0 area in the computation of the median
8472	  rho and sigma. Added a warning wheh a 0-area jet is
8473	  encountered.
8474
8475
84762009-05-28  Gavin SALAM  <salam@lpthe.jussieu.fr>
8477
8478	* example/fastjet_timing_plugins.cc:
8479	* regression-tests/test-all-algs.pl:
8480	  inexistent algs no longer crash, and real crashes are now reported
8481	  by test-all-algs as *** BAD (crash) ***
8482
8483	* autogen.sh:
8484	  ensured that recursion for creation of configure files is only
8485	  inside the plugin directory (e.g. no $srcdir/tmp-* directories)
8486
8487	* regression-tests/nightly-check.pl:
8488	  simplified output of fail messages;
8489	  now if update changes the nightly check, then it reruns itself;
8490	  it should now also output a summary message about what it has done
8491
84922009-05-28  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
8493
8494	* configure.ac:
8495	  moved the test for Fortran at a more flexible and nice-looking place.
8496
8497	* include/fastjet/ClusterSequenceActiveAreaExplicitGhosts.hh (ClusterSequenceAreaBase):
8498	  commented out ghost_area()
8499
8500	* fastjet-config.in:
8501	  --rpath set to the form --rpath[=yes|no] (yes by default).
8502
8503	* configure.ac:
8504	  . enabled shared libs by defaut (following a long discussion
8505	    regarding static vs. shared libraries, we finally decided to
8506	    make a minimal modification compared to the previous release,
8507	    i.e. keep shared libraries on).
8508	    By default, shared libs will be built and used and a -rpath
8509	    will be added. You can switch back to static libs by adding
8510	    --shared=no to fastjet-config. The rpath can be removed using
8511	    --rpath=no or turned into a runpath using --runpath (ELF
8512	    platforms only)
8513	  . set a CONFIG_CXXFLAGS variable that allows one to specify the
8514	    compilation arguments in fastjet-config independently of the
8515	    ones used to compile fastjet.
8516
85172009-05-27  Gavin SALAM  <salam@lpthe.jussieu.fr>
8518
8519	* regression-tests/nightly-check.pl:
8520	  added facility for running some of the tests on remote hosts,
8521	  and included a bunch of remote runs by default.  Also set up a
8522	  fairly long series of combinations that will be tested...
8523
85242009-05-26  Gavin SALAM  <salam@lpthe.jussieu.fr>
8525
8526	* regression-tests/nightly-check.pl:
8527	  made it possible to have several set of configure/link/nev
8528	  options within a single run (e.g. to test out-of-the box
8529	  running, as well as a configure with full set of algs).
8530
8531	  Current tests include:
8532	  - out-of-the-box
8533          - all cxx plugins + CGAL
8534	  - shared enabled, static disabled, wtih --runpath
8535
85362009-05-26  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
8537
8538	* fastjet-config.in:
8539	  fixed a typo with the runpath argument
8540	  allows use of --cxxflags and --libs at the same time
8541
85422009-05-26  Gavin SALAM  <salam@lpthe.jussieu.fr>
8543
8544	* configure.ac:
8545	  following Gregory's suggestion, fixed a typo related to
8546  	  temporary CXXFLAGS (this solves a problem on testing some
8547	  algs, which seems to have been related to marginally different
8548 	  handling of floating point operations).
8549
85502009-05-25  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
8551
8552	* fastjet-config.in (Usage):
8553	  added support for a --rpath and a --runpath option to
8554	  fastjet-config
8555
8556	* configure.ac:
8557	  . switched back to static libs by default
8558	  . check if the compiler/linker supports -Wl,-enable-new-dtags
8559	    i.e. add support for the runpath (on supported platforms)
8560
85612009-05-25  Gavin SALAM  <salam@lpthe.jussieu.fr>
8562
8563	* include/fastjet/ClusterSequenceArea.hh:
8564	* include/fastjet/ClusterSequenceActiveArea.hh:
8565	* include/fastjet/ClusterSequenceActiveAreaExplicitGhosts.hh:
8566	* src/ClusterSequenceActiveAreaExplicitGhosts.cc:
8567	* src/ClusterSequenceActiveArea.cc:
8568
8569	  renamed area_spec -> ghost_spec, in a few places where they
8570	  won't affect users (but this helps readability)
8571
8572
8573	* fortran_wrapper/fastjetfortran.cc:
8574	* fortran_wrapper/fastjet_fortran_example.f:
8575
8576	  changed interface so that we have generalised kt
8577	  (fastjetppgenkt_) as the main way of accessing the
8578	  seq.rec. algorithms.
8579
85802009-05-21  Gavin Salam  <salam@lpthe.jussieu.fr>
8581
8582	* example/fastjet_timing_plugins.cc (print_jets_and_sub):
8583	  expanded output on the -subdcut flag.
8584
8585	* src/ClusterSequence.cc (ClusterSequence::exclusive_subdmerge_max):
8586	  added some comments about output (zero) when nsub >= number of constituents
8587
85882009-05-20  Gavin SALAM  <salam@lpthe.jussieu.fr>
8589
8590	* fortran_wrapper/fastjetsiscone.cc: *** DELETED ***
8591	* fortran_wrapper/fastjetfortran.cc: *** ADDED ***
8592	* fortran_wrapper/fastjet_fortran_example.f: (was siscone_example.f)
8593
8594	  extended the wrappers to have some seq.rec. pp algorithms as well
8595
85962009-05-10  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
8597
8598	* autogen.sh:
8599	  fixed a sh script problem (replaced [[ "x"=="y" ]] w [ "x"="y" ])
8600
8601	* src/Makefile.am, example/Makefile.am,
8602	  plugins/usage_examples/Makefile.am,
8603	  plugins/D0RunIICone/Makefile.am, plugins/SISCone/Makefile.am,
8604	  plugins/Jade/Makefile.am, plugins/CDFCones/CDFcode/Makefile.am,
8605	  plugins/CDFCones/Makefile.am, plugins/NestedDefs/Makefile.am,
8606	  plugins/CMSIterativeCone/Makefile.am,
8607	  plugins/TrackJet/Makefile.am, plugins/EECambridge/Makefile.am,
8608	  plugins/ATLASCone/Makefile.am, plugins/PxCone/Makefile.am,
8609	  include/fastjet/internal/Makefile.am:
8610	  replaced a bunch of ${VAR} by $(VAR)
8611
8612	* configure.ac:
8613	  - specified the tar-ustar option for automake. This solves a
8614	    problem with filenames of length larger than 99 that were not
8615	    included in the distribution under Ubuntu.
8616	  - moved F77 to FC (and related) so that gfortran is
8617	    automatically detected if available.
8618	  - added a bunch of comments regarding the recommendation to use
8619	    AC_CONFIG_MACRO_DIR([m4]) in the latest libtool
8620	    versions. Nothing is done (and justified!)
8621
8622
86232009-05-10  Gavin Salam  <salam@lpthe.jussieu.fr>
8624
8625	* plugins/ATLASCone/fastjet/ATLASConePlugin.hh:
8626	* plugins/ATLASCone/ATLASConePlugin.cc:
8627	  added R,seedPt,f to description + removed extraneous headers
8628
8629	* plugins/TrackJet/fastjet/TrackJetPlugin.hh:
8630	* plugins/TrackJet/TrackJetPlugin.cc:
8631	  moved some headers out of .hh into .cc
8632
8633	* plugins/CMSIterativeCone/fastjet/CMSIterativeConePlugin.hh:
8634	* plugins/CMSIterativeCone/CMSIterativeConePlugin.cc
8635	  fixed description so that it includes the radius and seed
8636	  threshold + removed extraneous headers.
8637
86382009-05-08  Gavin Salam  <salam@lpthe.jussieu.fr>
8639
8640	* regression-tests/nightly-check.pl:
8641	  added some comments for how this might evolve in future
8642
86432009-05-08  Matteo Cacciari  <cacciari@lpthe.jussieu.fr>
8644
8645	* example/fastjet_example.cc:
8646	* example/fastjet_subjets.cc:
8647	* example/fastjet_timing.cc:
8648	* include/fastjet/ClusterSequenceActiveAreaExplicitGhosts.hh:
8649	* plugins/usage_examples/run_jet_finder.cc:
8650          added #include <cstdio> for compatibility with g++-4.4
8651          (pointed out by <peter.elmer@cern.ch>
8652
86532009-05-07  Gavin SALAM  <salam@lpthe.jussieu.fr>
8654
8655	* regression-tests/nightly-check.pl:
8656	  put back the svn update lines.
8657
86582009-05-01  Gavin Salam  <salam@lpthe.jussieu.fr>
8659
8660	* regression-tests/nightly-check.pl:
8661	  removed the --enabled-shared option in the configure;
8662
8663	* moved siscone back over to the trunk...
8664
86652009-04-29  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
8666
8667	* include/fastjet/ClusterSequenceActiveAreaExplicitGhosts.hh (ClusterSequenceAreaBase):
8668	  added a ghost_area() method to get the info about the ghost area
8669	  used with this clusterSequence
8670
86712009-04-29  Gavin SALAM  <salam@lpthe.jussieu.fr>
8672
8673	* src/ClusterSequence.cc:
8674	* src/ClusterSequence_N2.cc:
8675	* include/fastjet/ClusterSequence.hh:
8676
8677	  replaced void ClusterSequence::_dummy_N2_cluster_instantiation()
8678	  (dummy instantiation of template to make it available elsewhere)
8679	  with _simple_N2_cluster_BriefJet() and
8680	  _simple_N2_cluster_EEBriefJet() (they are to be called and
8681	  should directly run the template).
8682
8683
86842009-04-27  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
8685
8686	* src/ClusterSequence.cc:
8687	  restored the warning about dangerous request for exclusive
8688	  jets (removed earlier today) with a more reasonnable
8689	  list of algorithms for which no warnings are given.
8690
8691	* include/fastjet/JetDefinition.hh:
8692	* plugins/Jade/fastjet/JadePlugin.hh:
8693	* plugins/EECambridge/fastjet/EECambridgePlugin.hh:
8694	  added a 'exclusive_seqence_meaningful' member allowing to know
8695	  if a plugin gives meaningful exclusive jets (default=false).
8696	  Set to true in Jade and EECambrigde.
8697
8698	* configure.ac:
8699	  include/fastjet/config_win.h:
8700	  DoxyFile:
8701	  switched version number to 2.4.1-devel
8702
8703	* test-compare.sh:
8704	  discard lines with "WARNING" (occurs in non-predictable
8705	  positions due to flushing issues)
8706
8707	* src/ClusterSequence.cc:
8708	  removed the WARNING previously given when extracting exclusive
8709	  jets for algorithms other than pp and e+e- kt
8710
8711
87122009-04-16  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
8713
8714	* plugins/SISCone/fastjet/SISConeBasePlugin.hh:
8715	  Switched back to an implementation without templates
8716	  (we're now using virtual function overloading)
8717
8718	* plugins/CMSIterativeCone/fastjet/CMSIterativeConePlugin.hh:
8719	  Added a plugin for the CMS iterative cone
8720	  (see plugins/CMSIterativeCone/README for details)
8721
87222009-04-13  Gavin Salam  <salam@lpthe.jussieu.fr>
8723
8724	* include/fastjet/PseudoJet.hh (dot_product):
8725	  added dot_product binary operator...
8726
87272009-04-10  Gavin SALAM  <salam@lpthe.jussieu.fr>
8728
8729	* m4/CGAL.m4:
8730	  updated comments to make it clearer what goes with 3.3.x v. 3.4.
8731
87322009-04-06  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo
8733
8734	* src/ClusterSequenceAreaBase.cc:
8735	* include/fastjet/ClusterSequenceAreaBase.hh:
8736	  changes to comments
8737
8738	* doc/fastjet-doc.tex:
8739	  sorted out a few details here and there about local ranges, and
8740	  added info on running with hard jets excluded.
8741
8742
8743	* include/fastjet/CircularRange.hh:
8744	  added check that a center has been properly defined
8745
87462009-03-31  Gavin Salam  <salam@lpthe.jussieu.fr>
8747
8748	* example/fastjet_timing_plugins.cc (main):
8749	  move root printout in with main jet printout (so you can get
8750	  root even for exclusive jets)
8751
87522009-03-18  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
8753
8754	* src/ClusterSequence.cc (ClusterSequence::add_constituents):
8755	  When the jet is made of a single particle, add explicitly that
8756	  particled instead of the given 'jet'. This ensures that calling
8757	  add_constituents with a subtracted jet containing only one
8758	  particle will work.
8759
87602009-03-11  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
8761
8762	* m4/CGAL.m4
8763	  m4/compiler_flags.m4:             *** ADDED ***
8764	  check if the compiler supports -frounding-math
8765	  (for the moment, just discard it if it's not supported)
8766
8767
87682009-03-11  Gavin SALAM  <salam@lpthe.jussieu.fr>
8769
8770	* regression-tests/nightly-check.pl:
8771	  switched over to using CGAL 3.4.
8772
8773	* plugins/CDFCones/fastjet/CDFJetCluPlugin.hh:
8774	  removed default overlap for jetclu...
8775
8776	* set svn:keywords to be "Id" on a bunch of files where this was
8777	  missing
8778
87792009-03-07  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
8780
8781	* plugins/Jade:                      *** ADDED ***
8782	  Added a plugin for the JADE algorithm
8783
8784	  It is an e+e- sequential recombination algorithm with
8785	  interparticle distance
8786	      dij = 2 E_i E_j (1 - cos theta_ij)
8787	  or equivalently
8788	      yij = dij/E_{visible}^2
8789
8790	  This corresponds to the distance measured used in
8791	    "Experimental Investigation of the Energy Dependence of the
8792	    Strong Coupling Strength."  JADE Collaboration (S. Bethke et
8793	    al.)  Phys.Lett.B213:235,1988
8794
8795	  The JADE article carries out particle recombinations in the
8796	  E-scheme (4-vector recombination), which is the default
8797	  procedure for this plugin.
8798
8799	  NOTE: other widely used schemes include E0, P, P0; however they
8800	        also involve modifications to the distance measure. Be
8801	        sure of what you're doing before running a JADE type
8802	        algorithm.
8803
8804	  To access the jets with a given ycut value (clustering stops
8805	  once all yij > ycut), use
8806	      vector<PseudoJet> jets = cluster_sequence.exclusive_jets_ycut(ycut);
8807	  and related routines.
8808
8809
88102009-03-02  Gavin Salam  <salam@lpthe.jussieu.fr>
8811
8812	* regression-tests/test-all-algs.pl:
8813	  fixed commented entry for d0runiicone with 10events
8814
88152009-03-02  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
8816
8817	* configure.ac:
8818	  Added options --enable-allplugins and --enable-allcxxplugins
8819	  Allow to enable all the (CXX) plugins at a go.
8820
8821	  We do actually only change the set of default values, so
8822	  combinations like
8823            ./configure --enable-allplugins --disable-pxcone
8824	  will enable everything but PxCone
8825
8826	  On top of that, --disable-all(cxx)plugins is automatically
8827	  defined by autoconf Therefore, we implement it so as it does
8828	  what it is supposed to do i.e. disable all the plugins. Again,
8829	  --disable-allplugins --enable-siscone will work and just enable
8830	  the SISCone plugin
8831
8832
88332009-02-18  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
8834
8835	* m4/CGAL.m4: put the resulting info on CGAL compilation
8836	  requirements into CGAL_xyz variables rather than the global
8837	  vars.
8838
8839
88402009-02-18  Gavin Salam  <salam@lpthe.jussieu.fr>
8841
8842	* include/fastjet/NNH.hh:
8843	  modified this so that one can now also use NNH<BJ,Info> where
8844	  Info is an information class. One then uses the constructor
8845
8846              NNH<BJ,Info>(const vector<PseudoJet> & particles, Info * info)
8847
8848	  and the briefjets get initialised via the call
8849
8850	      BJ->init(const PseudoJet & jet, Info * info)
8851
8852	  if you want to make sure that info does get modified, use
8853	  NNH<BJ, const Info>.
8854
8855	  The original NNH<BJ> continues to work without the Info in the
8856	  constructors/initialisation calls.
8857
8858
88592009-02-13  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
8860
8861	* example/fastjet_timing_plugins.cc (main):
8862	  added a -ycut comand-line argument
8863
8864	* plugin/EECambridge: *** ADDED ***
8865	  Added a plugin for the e+e- Cambridge algorithm.
8866	  Default: enabled.
8867	  This plugin takes ycut as a parameter.
8868
8869	* plugins/ATLASCone: *** ADDED ***
8870	  Added a plugin for the e+e- Cambridge algorithm.
8871	  Default: disabled.
8872	  This plugin takes as a parameter a cone radius, a seed
8873	    threshold (2.0 GeV by default) and an overlap
8874	    threshold (default:0.5). See the header file for a comment on
8875	    the default values.
8876
8877	  This plugin is derived from the SpartyJet implementation of the
8878	  ATLAS cone algorithm.
8879
8880
88812009-02-12  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
8882
8883	* m4/CGAL.m4: added support for CGAL 3.4 (and cleaned)
8884	  A Makefile can still be provided using the
8885	  --with-cgalmakefile=...  option, so backward compatibility is
8886	  not broken. On top of that, a path to an installation of CGAL
8887	  can be specified using --with-cgal-directory=PATH in which case
8888	  the headers and lib will be searched in PATH/include and
8889	  PATH/lib respectively. Finally, if no argument (except
8890	  --eanble-cgal) are specified, CGAL is searched in standard
8891	  locations.
8892
8893	* makefile.static: added support for CGAL 3.4
8894	  this is done in line with CGAL.m4 by allowing the specification
8895	  of a CGAL_DIRECTORY instead of the CGAL_MAKEFILE variable.
8896
8897
88982009-02-12  Gavin Salam  <salam@lpthe.jussieu.fr>
8899
8900	* src/ClusterSequence.cc (ClusterSequence::_initialise_and_run):
8901	  arranged for ee algos with an R value to behave sensibly when
8902	  R > pi (i.e. last pair of particles gets recombined into one).
8903
8904	* example/fastjet_example_v1_interface.cc -> example/graveyard
8905	* example/Makefile.am:
8906	  moved fastjet_example_v1_interface into the graveyard (no
8907	  longer
8908
8909	* example/fastjet_timing_plugins.cc:
8910	  tried to improve documentation of various options and added
8911	  -excly; -ee-print for printing jets in terms of px,py,pz,E;
8912	  common output file for a range of jet output options.
8913
8914	* include/fastjet/ClusterSequence.hh:
8915
8916	  added exclusive_ymerge, exclusive_ymerge_max,
8917	  n_exclusive_jets_ycut, exclusive_jets_ycut so as to provide more
8918	  helpful access to things in e+e- Jade and kt algorithms
8919
8920	* moved  plugins/Jade/NNH.hh -> fastjet/include/NNH.hh
8921	  so as to make it available to other algorithms too
8922
8923	* include/fastjet/ClusterSequence.hh:
8924	* src/ClusterSequence.cc (ClusterSequence::_fill_initial_history):
8925	  added Q() to return total energy in the event (relevant for e+e-)
8926
8927
89282009-02-11  Gavin Salam  <salam@lpthe.jussieu.fr>
8929
8930	* include/fastjet/internal/ClusterSequence_N2.icc: *** ADDED ***
8931	* include/fastjet/ClusterSequence.hh
8932	* src/ClusterSequence_N2.cc
8933	* include/fastjet/internal/Makefile.am
8934
8935	  reorganised things internally so that plugins should now have
8936	  access to the templated N2 implementation.
8937
89382009-02-10  Gavin Salam  <salam@lpthe.jussieu.fr>
8939
8940	* include/fastjet/PseudoJet.hh (class PseudoJet):
8941	  removed some consts following PAD's report of compilation
8942	  warnings un gcc 4.3 (with fastjet-2.3.4).
8943
89442009-01-26  Gavin SALAM  <salam@lpthe.jussieu.fr>
8945
8946	* Doxyfile:
8947	  updated to avoid warnings with doxygen 1.5.7
8948
89492009-01-23  Gavin SALAM  <salam@lpthe.jussieu.fr>
8950
8951	* experimental/coding-guidelines.txt:   *** ADDED ***
8952	  following GS's suggestion...
8953
89542009-01-21  Matteo Cacciari <cacciari@lpthe.jussieu.fr>
8955
8956        * include/fastjet/RangeDefinition.hh and CircularRange.hh
8957          Reinstated set_position(), added is_localizable() to base
8958          class (RangeDefinition) and derived one (CircularRange)
8959
8960
89612009-01-16  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
8962
8963	* for each plugin, put everything under the namespace
8964	    fastjet::<plugin_name>
8965	  to avoid any conflict with other codes
8966
8967
8968	* plugins/TrackJet/fastjet/TrackJetPlugin.hh
8969	  plugins/TrackJet/TrackJetPlugin.cc
8970	  plugins/NestedDefs/fastjet/NestedDefsPlugin.hh
8971	  plugins/NestedDefs/NestedDefsPlugin.cc:
8972          aligned with previous naming conventions (i.e. used _var for
8973	  private vars)
8974
8975
8976	* test-compare.sh:
8977	  extended the check down to pt=0 (instead of only jets with pt>5)
8978
8979
89802009-01-16  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo
8981
8982	* example/fastjet_timing_plugins.cc:
8983	  adapted this to use modern forms of constructors
8984
8985	* include/fastjet/JetDefinition.hh:
8986	* src/JetDefinition.cc:
8987	  put in a constructor without R (for eekt) and a default
8988	  constructor, as well as a check that the jet algorithm has been
8989	  constructed with the right number of parameters.
8990
8991	  *** BACKWARDS COMPATIBILITY BREAK ***
8992	      CALLING USUAL PP JET ALGS WITH NO R NOW
8993	      GIVES A RUN-TIME ERROR.
8994
8995	* test-compare.sh:
8996	  fixed problem with pxcone mixing f77/c++ output order according
8997	  to system, which caused problems in make check
8998
8999	* plugins/D0RunIICone/D0RunIIConePlugin.cc:
9000	  Attempt to sort out compilation problem on a mac
9001
9002
90032009-01-15  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
9004
9005	* include/fastjet/PseudoJet.hh (class PseudoJet):
9006	  added Et() and Et2() to compute the transverse energy
9007
9008
90092009-01-14  Gavin Salam  <salam@lpthe.jussieu.fr>
9010
9011	* doc/fastjet-doc.tex (subsection{SISCone Plugin}):
9012	* plugins/SISCone/SISConePlugin.cc (SISConePlugin::description):
9013	* plugins/SISCone/SISConeSphericalPlugin.cc (SISConeSphericalPlugin::description):
9014	* plugins/SISCone/fastjet/SISConeBasePlugin.hh:
9015
9016	  extras now contains a function int pass(jet), which returns the
9017	  pass of the jet;
9018
9019	  added function to set, query the use of the jet-definition's own
9020	  recombiner (which then overrides the presence of the pass in the
9021	  jets' user-index).
9022
9023	  documented the whole lot.
9024
9025	* example/fastjet_timing_plugins.cc:
9026	  -cones also prints out passes of jets, user-index, etc.
9027
90282009-01-14  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
9029
9030	* test-compare.sh:
9031	  added options to specify additional params
9032	  added options to specify another event
9033	  added genkt, eekt and eegenkt
9034
9035	  added multiple values of R
9036
9037
9038	* configure.ac:
9039	  even though they're enabled by default, AM_ENABLE_SHARED has to
9040	  be called so that ${enable_shared} is set to 'yes' instead of ''
9041
9042
9043	* test-compare.sh:
9044	  - dealt with a missing ${srcdir}
9045	  - cleaned a bit more the output
9046
9047
90482009-01-13  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
9049
9050	* configure.ac:
9051	  switched shared libs to enabled by default
9052	  note that the static libs are also built.
9053
9054
90552009-01-13  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo
9056
9057	* src/ClusterSequence.cc:
9058	* src/ClusterSequenceVoronoiArea.cc:
9059	* src/ClusterSequenceActiveArea.cc:
9060
9061	  made modifications to allow zero-particle events to work
9062	  fine. Tested various areas, as well as plain runs, including
9063	  plugins (or at least SISCone).
9064
9065	* src/ClusterSequence_TiledN2.cc:
9066	  added a lower limit on the tile size to avoid huge memory use
9067	  with tiny jet radii.
9068
9069	* include/fastjet/RangeDefinition.hh:
9070	  removed set_position and associated variables (will go back in
9071	  -> 2.5)
9072
90732009-01-13  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
9074
9075	* test-compare.sh
9076	  test-script-output-orig.txt:
9077	  used now fastjet_timings_plugin rather than many_algs_examples
9078	  to test the output of each installed algorithm/plugin.
9079
90802009-01-12  Gavin SALAM  <salam@lpthe.jussieu.fr>
9081
9082	* src/ClusterSequence.cc (ClusterSequence::_initialise_and_run):
9083	  changed the transition N for the anti-kt algorithm to
9084	  35000/R^1.15 (based only on R=0.7)
9085
9086
9087	* regression-tests/nightly-check.pl:
9088	  added --enable-shared, to test that Gregory's new option works
9089	  fine (probably want a manual test anyway...)
9090
90912009-01-11  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
9092
9093	* include/fastjet/RangeDefinition.hh (class RangeDefinition):
9094	  - initialised _phispan in the default constructor
9095	  - bound the phi range to twopi in the computation of total_area
9096
90972009-01-09  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
9098
9099	* include/fastjet/RangeDefinition.hh (class RangeDefinition):
9100	  sorted out the issue of periodicity for generic phi ranges.
9101
9102
91032009-01-09  Gavin SALAM  <salam@lpthe.jussieu.fr>
9104
9105	* regression-tests/test-all-algs.pl (setRefResults):
9106	* doc/fastjet-doc.tex
9107	* src/ClusterSequence.cc:
9108
9109          switched R in eegenkt to be in radians, not
9110	  sqrt(2(1-\cos\theta))!! Updated docs and regression tests also,
9111	  and deposited test results in in usual place,
9112	  ~salam/work/fastjet/validation-ref-2008-10-30
9113
9114	* example/ktjet_timing.cc:
9115	  added -get-all-dij option to print out the full list of dij
9116
9117	* example/fastjet_timing_plugins.cc:
9118	  added -get-all-dij option to print out the full list of dij
9119	  + fixed up up output on -excld (removed squared pt)
9120
9121	  Ran tests on 1k events
9122
9123	./fastjet_timing_plugins -nev 1000 -eekt -get-all-dij < ../../data/Pythia-PtMin1000-LHC-1000ev.dat | grep '^d for'
9124	./ktjet_timing           -nev 1000 -eekt -get-all-dij < ../../data/Pythia-PtMin1000-LHC-1000ev.dat | grep '^d for'
9125
9126	  and it passed it fine (modulo some small rounding error issues
9127	  here and there.
9128
9129
91302009-01-05  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
9131
9132	* plugins/TrackJet/TrackJetPlugin.cc:
9133	  released the TrackJet plugin.
9134	  Adapted many_algs_examples, fastjet_timing_plugins and
9135	  all build scripts accordingly
9136
9137
91382008-12-18  Gavin SALAM  <salam@lpthe.jussieu.fr>
9139
9140	* regression-tests/test-all-algs.pl:
9141	  added documentation on how to add a new algorithm.
9142
9143	* regression-tests/nightly-check.pl:
9144	  adding a little more info to output
9145
91462008-11-17  Gavin SALAM  <salam@lpthe.jussieu.fr>
9147
9148	* include/fastjet/RangeDefinition.hh:
9149	  added a check that phimax <= twopi in constructor
9150
91512008-10-31  Gavin SALAM  <salam@lpthe.jussieu.fr>
9152
9153	* regression-tests/nightly-check.pl:
9154	  finished a first version of this, with a fairly complete set of
9155	  checks.
9156
91572008-10-30  Gavin SALAM  <salam@lpthe.jussieu.fr>
9158
9159	* regression-tests/nightly-check.pl: *** ADDED ***
9160
9161	  started work on this script for running a full swathe of regular
9162	  checks
9163
9164	* regression-tests/test-all-algs.pl: *** ADDED ***
9165
9166	  script to help test correctness of fastjet, by running many algs
9167	  and, for each, comparing checksum of numerical part of results
9168	  to a previously stored checksum.
9169
9170	* example/fastjet_timing_plugins.cc:
9171	  various small changes to ease test-all-algs.pl behaviour
9172
91732008-10-30  Matteo Cacciari  <cacciari@lpthe.jussieu.fr>
9174
9175        * include/fastjet/RangeDefinition.hh:
9176	  replaced methods place_at() and place() with set_position()
9177
91782008-10-29  Gavin SALAM  <salam@lpthe.jussieu.fr> & Matteo
9179
9180	* include/fastjet/ClusterSequenceActiveAreaExplicitGhosts.hh:
9181	* include/fastjet/ClusterSequenceAreaBase.hh:
9182	* include/fastjet/ClusterSequenceArea.hh:
9183
9184	  added a virtual function has_explicit_ghosts(), which returns
9185	  true if the clusterSequence has explicit ghosts within the jets.
9186
9187	* src/ClusterSequenceArea.cc:
9188
9189	  if has_explicit_ghosts() is true, then don't bother with fancy
9190	  estimations of empty_area in
9191	  get_median_rho_and_sigma(...). Instead set it to zero, and
9192	  assume that the corresponding information is provided by the
9193	  pure ghost jets.
9194
9195          NB: the empty_area(range) routine also returns zero if
9196	  has_explicit_ghosts(); the empty_area(jets, range) does not, on
9197	  the grounds that the user may have deliberately passed some
9198	  incomplete set of jets within the range.
9199
92002008-10-27  Matteo Cacciari  <cacciari@lpthe.jussieu.fr>
9201
9202	* src/ClusterSequence.cc:
9203
9204	  updated banner link to www.fastjet.fr
9205
92062008-10-13  Matteo Cacciari  <cacciari@lpthe.jussieu.fr>
9207
9208        * include/fastjet/RangeDefinition.hh
9209          Added method place_at(jet) and place_at(rap,phi), to be used by
9210          derived local ranges to place the range at a jet's position,
9211          after having defined the range only once with just its
9212          geometrical parameters. Moved _rapjet and _phijet from
9213          private to protected. Correspondingly modified CircularRange.hh
9214
92152008-10-09  Gavin Salam  <salam@lpthe.jussieu.fr>
9216
9217	* example/fastjet_boosted_higgs.cc:     *** ADDED ***
9218	* example/data/HZ-event-Hmass115.dat:  *** ADDED ***
9219	* example/Makefile.am:
9220	* example/data/Makefile.am:
9221
9222	  added an example to show how to carry out subjet decomposition
9223	  for finding boosted objects
9224
9225	* example/Makefile.am:
9226	* example/fastjet_subjets.cc:
9227	  tidied this up a little & arranged for it to be compiled
9228
92292008-09-04  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo
9230
9231	* plugins/CDFCones/CDFJetCluPlugin.cc:
9232	  in transfer part of plugin, sorted the constituents of a jet (into
9233 	  ascending fjindex), to work around the problem that JetClu may
9234	  return constiuents in different orders when soft ghost-particles
9235	  are added.
9236
9237	  Note: JetClu seems to be IR unsafe (at the 10^{-4} level in toy
9238	  events) even when the seed threshold is non-zero. The frequence
9239	  is higher in real events and means that passive areas, and
9240	  active areas with repeat > 1, will throw fastjet::Error(...);
9241	  users should catch this if they want to continue running.
9242
9243	  tested on 1k events against unmodified jetclu plugin in 2.3.4
9244
9245-----------------------------------------------
9246released 2.3.4 on 2008-08-15
9247it contains jetclu & "exit" bug fixes from below + siscone 1.3.3
9248-----------------------------------------------
9249
92502008-08-15  Gavin Salam  <salam@lpthe.jussieu.fr>
9251
9252	* plugins/CDFCones/CDFJetCluPlugin.cc:
9253	  switched over to the use of PhysicsTower::fjindex for
9254	  bookkeeping a jet's contents (rather than a map, which had led
9255	  to a bug report by James Monk).
9256
9257	* plugins/CDFCones/CDFcode/PhysicsTower.hh (class PhysicsTower):
9258	  add fjindex member variable to this class to allow bookkeeping
9259	  needed by the JetClu plugin.
9260
9261
92622008-08-11  Gavin Salam  <salam@lpthe.jussieu.fr>
9263
9264	* include/fastjet/GhostedAreaSpec.hh (class GhostedAreaSpec):
9265	* src/GhostedAreaSpec.cc (GhostedAreaSpec::add_ghosts):
9266
9267	  added constructor and implementation for asymmetric ghost range
9268	  (different min & max rapidities), following request by Roman
9269	  Kogler <roman.kogler@desy.de> (H1 is asym in rap).
9270
9271	* example/fastjet_timing_plugins.cc:
9272
9273	  dense coverage switched over to using GhostedAreaSpec (will
9274	  change root pictures relative to earlier), used also for testing
9275	  the new asymmetric range of ghosts.
9276
9277
92782008-08-06  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
9279
9280	* example/fastjet_timing_plugins.cc (main):
9281	  when appropriate, delete the plugin at the end of the execution.
9282
9283
92842008-07-24  Matteo Cacciari <cacciari@lpthe.jussieu.fr>
9285
9286        * src/ClusterSequenceAreaBase.cc
9287          Added copy of user_index over to subtracted jet
9288          in subtracted_jet() [previously fogotten]
9289
9290
92912008-07-23  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
9292
9293	* NEWS:
9294	  updated the warnings about IR safety of the spherical
9295	  implementation of SISCone
9296
9297	* example/Makefile.am,
9298	  plugins/usage_examples/Makefile.am:
9299	  adapted the compilation flags to use the new version of the
9300	  plugin (requires inclusion of the SISCone headers)
9301
9302	* plugins/SISCone/fastjet/SISConeBasePlugin.hh,
9303	  plugins/SISCone/fastjet/SISConePlugin.hh,
9304	  plugins/SISCone/fastjet/SISConeSphericalPlugin.hh,
9305	  plugins/SISCone/SISConePlugin.cc,
9306	  plugins/SISCone/SISConeSphericalPlugin.cc:
9307	  Added a template plugin and made the two current plugins
9308	  derive from it.
9309
9310
93112008-07-18  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
9312
9313	* configure.ac:
9314	  removed the unnecessary -I../included flag from AM_CXXFLAGS
9315
9316
93172008-07-18  Gavin SALAM  <salam@lpthe.jussieu.fr>
9318
9319	* example/CmdLine.cc:
9320	* example/CmdLine.hh:
9321
9322	  put in a missing "const" & included cstdlib in the .cc (for
9323	  access to exit)
9324
9325
93262008-07-17  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
9327
9328	* include/fastjet/Makefile.am (nodist_fastjetinclude_HEADERS):
9329	  config_auto.h removed from the package distribution as it
9330	  may conflict with the configure-generated one when building
9331	  in a separate directory.
9332
9333
93342008-07-16  Gavin Salam  <salam@lpthe.jussieu.fr>
9335
9336	* mksnapshot.sh:
9337          included fix for ensuring the windows include file is correct in
9338	  the snapshot.
9339
93402008-07-14  Gavin Salam  <salam@lpthe.jussieu.fr>
9341
9342	* src/PseudoJet.cc:
9343	* include/fastjet/PseudoJet.hh:
9344          added sorted_by_pz() (used for safety tests on new algs)
9345
93462008-07-12  Gavin Salam  <salam@lpthe.jussieu.fr>
9347
9348	* NEWS:
9349	  added mention of spherical siscone
9350
9351	* example/fastjet_timing_plugins.cc:
9352	  added -sisconespheri option for running spherical siscone;
9353	  changed scale of "dense" additions to separate them better from
9354	  normal particles.
9355
9356	* plugins/SISCone/fastjet/SISConeSphericalPlugin.hh:
9357	  added comments about differences relative to the cylindrical
9358	  algorithm
9359
9360	  NB: some other files have changed with minor typographical fixes
9361
93622008-07-11  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
9363
9364	* include/fastjet/ClusterSequenceAreaBase.hh:
9365	  added a comment to notice that putting a negative
9366	  value for 'exclude_above' means the cut is discarded
9367	  (in parabolic_pt_per_unit_area).
9368
9369	* configure.ac (ENABLE_PLUGIN_SISCONE)
9370          examples/Makefile.am
9371          plugins/usage_examples/Makefile.am:
9372	  added libsiscone_spherical to the list of libs to link
9373	  against when using the SISCone plugin.
9374
9375
93762008-07-11  Matteo Cacciari <cacciari@lpthe.jussieu.fr>
9377
9378        * fixed CircularRange.hh (wrong filenme and missing fastjet
9379          namespace)
9380
9381
93822008-07-07  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
9383
9384	* plugins/SISCone/SISConeSphericalPlugin.cc:
9385	  plugins/SISCone/fastjet/SISConeSphericalPlugin.hh:
9386	  added a plugin for the spherical version of SISCone.
9387	  It is named SISConeSplericalPlugin and included in
9388	  the same plugin library as the main plugin
9389
9390
93912008-06-28  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
9392
9393	* plugins/NestedAlgs/fastjet/NestedAlgsPlugin.hh
9394	  plugins/NestedAlgs/NestedAlgsPlugin.cc:
9395	  - rename NestedAlgs in NestedDefs
9396	  - internally, call 'algorithms' 'definitions', for consistency
9397	  - do not put the last alg. recomb at the end but at the moment
9398	    they appear.
9399	  - keep the dij, diB for the last def; and set all others to
9400	    zero? That way people can run sub-jet tools on the last
9401	    jet-def without worrying about strange conflicts with the
9402	    previous dij's which have a different meaning.
9403      	  - do some renaming of the internal variables for readability
9404
9405
94062008-06-22  Gavin Salam  <salam@lpthe.jussieu.fr>
9407
9408	* doc/fastjet-doc.tex:
9409	  updated the documentation to contain information about the e+e-
9410	  algorithms; added note on accessing version info;
9411
9412	* src/ClusterSequence.cc:
9413	  removed warning about exclusive jets for the ee_kt alg.
9414
9415	  Added test of ee_kt R value.
9416
9417	  Arranged distance-measure normalisations such that dij has 1/R^2
9418	  for ee_gen_kt, but not for ee_kt (the former matches on directly
9419	  to gen_kt, the latter onto the usual e+e- convention).
9420
9421	* include/fastjet/JetDefinition.hh:
9422	* src/JetDefinition.cc (JetDefinition::JetDefinition):
9423
9424          moved the code for the constructor into the .cc file;
9425
9426	  For the ee_kt_algorithm, set the R value explicitly (R=4), to
9427	  avoid the user getting something that isn't the original kt
9428	  algorithm without realising. Also removed the mention of $R$ in
9429	  the description.
9430
9431	  NB: functionality of R for this alg can be obtained with
9432	  ee_genkt.
9433
9434
94352008-06-19  Gavin Salam  <salam@lpthe.jussieu.fr>
9436
9437	* TESTING:
9438	  ran basic tests on behaviour of eegenkt for a set of simple
9439	  events; checked that eegenkt with p=1 gives same as eekt (for
9440	  R=2); and rechecked once again against original KtJet.
9441
9442	* include/fastjet/JetDefinition.hh:
9443	  removed inappropriate restriction on R for eegenkt.
9444
9445
94462008-06-14  Gavin Salam  <salam@lpthe.jussieu.fr>
9447
9448	* include/fastjet/JetDefinition.hh (enum JetAlgorithm):
9449	* src/JetDefinition.cc (JetDefinition::description):
9450	* src/ClusterSequence.cc (ClusterSequence::_initialise_and_run, inclusive_jets):
9451	* src/ClusterSequence_N2.cc (ClusterSequence::_bj_set_jetinfo<EEBriefJet>):
9452
9453	  added support for the ee_genkt_algorithm [should double check
9454	  ee_kt (some mods may have affected it, though quick tests done)
9455	  and check genkt more extensively [e.g. with spherical plots?]
9456
94572008-06-02  Gregory Soyez  <gsoyez@quark.phy.bnl.gov>
9458
9459	* plugins/NestedAlgs/NestedAlgsPlugin.cc:
9460	  Added a new plugin which does the clustering by applying
9461	  successively a set of algorithms.
9462	  The usage simply goes as follows
9463	    list<JetDefinition> jet_list;
9464	    // add here the list of algs you want (the first one
9465	    // you want to be applied goes first) to 'jet_list'
9466	    JetDefinition jet_def = new NestedAlg(jet_list);
9467	    ClusterSequence(particle_list, jet_def);
9468	  As for the other plugins, NestedAlgs can be enabled or
9469	  disabled at configure-time using --enable-nestedalgs or
9470	  --disable-nestedalgs (enabled by default).
9471
94722008-05-28  Gavin Salam  <salam@lpthe.jussieu.fr>
9473
9474
9475	* plugins/D0RunIICone/fastjet/D0RunIIConePlugin.hh:
9476
9477	  Following discussions with Christophe Royon and Lars
9478	  Sonnenschein, removed the default value for the min_jet_Et in the
9479	  D0RunIIConePlugin, since two different values have been used
9480	  over the years.
9481
9482	* test-script-output-orig.txt:
9483	* example/fastjet_timing_plugins.cc:
9484	* plugins/usage_examples/many_algs_example.cc:
9485	  updated these to use min_jet_Et to 6 GeV (was 8) for the
9486	  d0runiicone
9487
94882008-05-23  Gavin Salam  <salam@lpthe.jussieu.fr>
9489
9490	* src/PseudoJet.cc:
9491	* include/fastjet/PseudoJet.hh:
9492
9493	  Added a delta_phi_to(...) member function to calculte phi
9494	  distance to another PseudoJet
9495
94962008-05-21  Gavin Salam  <salam@lpthe.jussieu.fr>
9497
9498	* include/fastjet/ClusterSequence.hh:
9499	* src/ClusterSequence.cc:
9500
9501	  Rather than have an inline virtual destructor, moved it into
9502	  the .cc file (no particular reason)
9503
95042008-05-17  Gavin Salam  <salam@lpthe.jussieu.fr>
9505
9506	* src/ClusterSequenceAreaBase.cc:
9507	* include/fastjet/ClusterSequenceArea.hh:
9508	* include/fastjet/ClusterSequenceAreaBase.hh:
9509
9510	  Added an extra version of get_median_rho_and_sigma which takes
9511	  an explicit list of jets and calculates the median from that ---
9512	  intended to help easily consider multiple R values within the
9513	  C/A algorithm. Also added empty_area_from_jets()
9514
9515	  NB: "gmrs" also takes an extra argument to indicate
9516	  whether the supplied jets are inclusive or not (affects
9517	  assumptions it makes in calculating number of empty jets)
9518
9519	  NB2: when playing these games, the estimate of the number of
9520	  empty jets is very hard to get in "plain" area classes for
9521	  non-inclusive jets. Currently it's done by estimating the
9522	  empty_area and dividing this by the mean_area of the non-empty
9523	  jets; however there are situations where this procedure becomes
9524	  dodgy (still to be understood why)...
9525
9526	* TODO:
9527	  updated this to reflect the current status of things
9528
95292008-05-16  Gavin SALAM  <salam@lpthe.jussieu.fr>
9530
9531	* NEWS:
9532	  updated this to reflect main current changes
9533
95342008-05-14  Matteo Cacciari  <cacciari@lpthe.jussieu.fr>
9535
9536        * include/fastjet/CircularRange.hh ADDED
9537          added derived class for circular range
9538
95392008-05-12  Gavin Salam  <salam@lpthe.jussieu.fr>
9540
9541	* example/root/jet-plots.C:
9542	  - changed histograms to doubles so that ghosting gives visible results.
9543          - JetHist::default_etamax and default_nbins can now be set
9544            by user
9545
9546	  - showjets now plots labels on axes
9547	  - it reads a comment from the file and uses it as a label
9548	    if none is supplied
9549          - it returns a pointer to the canvas, for user's subsequent
9550	    manipulation
9551
9552	* src/ClusterSequence.cc (ClusterSequence::print_jets_for_root):
9553	* include/fastjet/ClusterSequence.hh:
9554
9555          added alternative interface for print_jets_for_root, which takes
9556	  filename and optional comment
9557
9558	* include/fastjet/ClusterSequence.hh:
9559
9560          *** COULD BREAK COMPILED LIBRARIES?? ***
9561
9562	  added virtual ~ClusterSequence () {} destructor; necessary in
9563	  order to get deletion of pointers to generic ClusterSequence type
9564	  objects working correctly (e.g. ClusterSequence *, that points to
9565	  a ClusterSequenceArea).
9566
9567	  Leaving this out originally was related to the fact that we did
9568	  not originally forsee derived classes from ClusterSequence.
9569
9570-----------------------------------------------
9571released 2.3.3 on 2008-04-28
9572it contains bug fixes from below
9573-----------------------------------------------
9574
95752008-04-28  Gavin SALAM  <salam@lpthe.jussieu.fr>
9576
9577	* include/fastjet/internal/SearchTree.hh:
9578	  added a missing typename (pointed out by Belyaev).
9579
9580	* include/fastjet/Makefile.am (fastjetinclude_HEADERS):
9581	  added config_auto.h which was not being installed.
9582
95832008-04-18  Gavin SALAM  <salam@lpthe.jussieu.fr>
9584
9585	* mksnapshot.sh:
9586	  added this script for creating snapshots, numbered both with
9587	  date and revision number
9588
95892008-04-04  Gavin SALAM  <salam@lpthe.jussieu.fr> later
9590
9591	****  TESTS CARRIED OUT ****
9592
9593	  tested 1000 events from ../data/Pythia-PtMin1000-LHC-1000ev.dat
9594	  between fastjet_timing_plugins and ktjet_timing with dcut = 10
9595	  and dcut = 2000; both give identical results.
9596
9597          Commands used were:
9598	    ./ktjet_timing -eekt -nev 1000 -excld 2000 < ../../data/Pythia-PtMin1000-LHC-1000ev.dat
9599	    ./fastjet_timing_plugins -eekt -R 2.0 -nev 1000 -excld 2000 < ....
9600
9601          NB: R > sqrt(2) is mandatory within the current interface
9602
9603	* example/fastjet_timing_plugins.cc:
9604	* example/ktjet_timing.cc:
9605	  added e+e- kt run options to these programs
9606
9607	* include/fastjet/ClusterSequence.hh:
9608	* src/ClusterSequence_N2.cc:
9609	* src/ClusterSequence.cc:
9610
9611          modifications so that the _simple_N2_cluster() routine becomes a
9612	  template, whose action depends on specific type of BriefJet with
9613	  which it is called.
9614
9615	  Added the EEBriefJet type, together with minimal functions, so
9616	  as to get a form of the e+e- algorithm.
9617
9618	* include/fastjet/PseudoJet.hh
9619	  added the modp2() member function which returns the squared
9620	  modulus of the 3-vector part of the PseudoJet
9621
9622	* include/fastjet/JetDefinition.hh
9623	  added the ee_kt_algorithm;
9624
96252008-04-04  Gavin SALAM  <salam@lpthe.jussieu.fr> earlier
9626
9627	* plugins/CDFCones/fastjet/CDFMidPointPlugin.hh:
9628	* plugins/SISCone/fastjet/SISConePlugin.hh:
9629	  removed the default value for the overlap_threshold (was 0.5 and
9630	  this caused physics problems in the past; 0.75 is recommended).
9631
96322008-04-03  Gavin SALAM  <salam@lpthe.jussieu.fr>
9633
9634	* NEWS:
9635	  updated NEWS to reflect changes made on the 2.3.2-devel bug-fix
9636	  branch
9637
9638-----------------------------------------------
9639released 2.3.2 on 2008-04-03
9640it contains a subset of what is listed below
9641-----------------------------------------------
9642
96432008-04-03  Gavin SALAM  <salam@lpthe.jussieu.fr>
9644
9645	* BUGS:
9646	  updated this file to reflect current status
9647
96482008-04-01  Gregory SOYEZ  <soyez@tycho.lpthe.jussieu.fr>
9649
9650	* src/Voronoi.{hh,cc}
9651	  BUGS:
9652	  declared some variables as volatile.
9653	  Those were subject to "==" tests which lead to segmentation
9654	  faults when the registers did not have the same precision as a
9655	  regular double.
9656
9657	  This closes the following bug:
9658	  . The Voronoi area evaluation (=Passive for the kt algorithm), is
9659	    known to crash on events in which the momenta lie on a exact grid in
9660	    rapidity,phi (i.e. a calorimeter). An unsatisfactory workaround is
9661	    to slightly displace input momenta away from the exact grid.
9662	    Work is in progress to address this issue.
9663
9664
9665	* src/ClusterSequenceVoronoiArea.cc (VAC::VoronoiAreaCalc): added bits of comments
9666
96672008-03-28  Gregory Soyez  <g.soyez@ulg.ac.be>
9668
9669	* src/ClusterSequenceActiveArea.cc (ClusterSequenceActiveArea::_transfer_areas):
9670	  fixed array-size issue when there are unclustered particles.
9671
96722008-03-26  Gregory Soyez  <g.soyez@ulg.ac.be>
9673
9674	* configure.ac:
9675	  fix a bug with AM_CXXFLAGS being overwritten at some point
9676
96772008-03-23  Gavin Salam  <salam@lpthe.jussieu.fr>
9678
9679	* configure.ac:
9680	  fix CXXFLAGS in such a way as to allow the user to set their own
9681	  default.
9682
9683	* include/fastjet/ClusterSequenceArea.hh (class ClusterSequenceArea):
9684          added some missing Doxygen comments to this class
9685
96862008-03-15  Gavin Salam  <salam@lpthe.jussieu.fr>
9687
9688        * src/Voronoi.cc
9689        * plugins/SISCone/siscone
9690        * include/fastjet/ClusterSequence1GhostPassiveArea.hh
9691        * include/fastjet/ClusterSequencePassiveArea.hh
9692        * include/fastjet/ClusterSequenceActiveArea.hh
9693        * include/fastjet/internal/Voronoi.hh
9694	  got rid of using namespace std in the headers
9695
96962008-03-15  Gavin Salam  <salam@lpthe.jussieu.fr>
9697
9698	* did svnmerge.py uninit on the D0ILConePlugin branch
9699
9700	* merged the D0ILConePlugin Branch, which provides the D0 Run II
9701	  Cone, the genkt algorithm, and a full set of subjet tools (still
9702	  to be tested in part?)
9703
9704============== MERGE OF D0ILConePlugin Branch =====================
9705
97062008-01-12  Gavin SALAM  <salam@lpthe.jussieu.fr>
9707
9708	* example/fastjet_timing_plugins.cc:
9709	  changed position of a #ifdef ENABLE_PLUGIN_SISCONE so that when
9710	  we merge it doesn't logically conflict with a parallel change in
9711  	  the trunk).
9712
97132007-12-29  Gavin Salam  <salam@lpthe.jussieu.fr>
9714
9715	* include/fastjet/ClusterSequence.hh:
9716	* src/ClusterSequence.cc:
9717	  added a full set of subjet functions, in analogy with what's
9718	  available for normal exclusive jets. Not yet documented
9719
97202007-12-28  Gavin Salam  <salam@lpthe.jussieu.fr>
9721
9722	* doc/fastjet-doc.tex
9723	  documented genkt and subjet work;
9724
9725	  NB: MORE FUNCTIONALITY (SPLIT TO N JETS, ETC.) NEEDED
9726	  FOR THE SUBJET WORK.
9727
9728	* include/fastjet/JetDefinition.hh:
9729	* src/JetDefinition.cc:
9730	* src/ClusterSequence.cc:
9731	  Got genkt working.
9732
9733	* example/fastjet_timing_plugins.cc:
9734	  added option (-subdcut) for carrying out subjet analysis on
9735	  every jet; various methods are programmed internally, and the
9736	  subjet analysis was checked by making sure that for each method,
9737
9738	  ./fastjet_timing_plugins -nev 1000 -cam -subdcut 0.25 \
9739	       < ~/work/fastjet/data/Pythia-PtMin50-TeV-1000ev.dat
9740
9741	  gave identical results (similarly also for kt). This validates
9742	  the ClustSequence::exclusive_subjets(...) routine.
9743
9744	  Also added -doruniicone option.
9745
9746	* plugins/D0RunIICone/fastjet/D0RunIIConePlugin.hh:
9747	  added default values for min_jet_Et and split_ratio, such that
9748	  the algorithm can be called with just the cone radius and it
9749	  will correspond to what is used by D0.
9750
9751	* example/fastjet_subjets.cc:
9752	  added some explicit subjet analysis
9753
9754	* src/ClusterSequence.cc:
9755	  corrected a couple of bugs in exclusive_subjets
9756
97572007-12-21  Gavin Salam  <salam@lpthe.jussieu.fr>
9758
9759	* src/ClusterSequence.cc:
9760	* include/fastjet/ClusterSequence.hh:
9761	  added the exclusive_subjets(jet,dcut) routine to find out
9762	  about the subjets at scale (dcut) inside a given jet
9763
9764          -----------------------------------------------------
9765	* from revision 989 onwards, add subjet analysis
9766          -----------------------------------------------------
9767
97682007-12-14  Gavin Salam  <salam@lpthe.jussieu.fr>
9769
9770	* example/fastjet_timing_plugins.cc:
9771	  fixed compilation bug when siscone is disabled
9772
9773	* plugins/usage_examples/many_algs_example.cc:
9774	* test-script-output-orig.txt:
9775	* test-compare.sh
9776	  modified these so that D0 cone is tested as well + fixed bug
9777	  in check when siscone is disabled
9778
9779	* [various]/Makefile.am
9780	* configure.ac
9781	  added compilation of D0 code & plugins
9782
9783	* plugins/D0RunIICone/fastjet/D0RunIIConePlugin.hh:  *** ADDED ***
9784	* plugins/D0RunIICone/D0RunIIConePlugin.cc:  *** ADDED ***
9785
9786	  added these both, modified the D0RunIICone to get easy access to
9787	  jet constituents, and tested that it gives correct answers on
9788	  sample event sent by Lars Sonnenschein.
9789
9790	* plugins/D0RunIICone/ *** ADDED ***
9791	  - put in untarred version of D0RunIIcone/
9792	  - copied main pieces into top directory
9793	  - made modifications for compilation
9794	  - added index entry to HepEntity
9795
9796
97972007-12-14  Gavin Salam  <salam@lpthe.jussieu.fr>
9798          -----------------------------------------------------
9799	* on branch (from revision 981) for adding D0 cone...
9800          -----------------------------------------------------
9801
9802============== END OF MERGE OF D0ILConePlugin Branch =====================
9803
9804
98052008-03-15  Gavin Salam  <salam@lpthe.jussieu.fr>
9806
9807	* initialised svnmerge.py on
9808	  svn+ssh://tycho/ada1/lpthe/salam/svn/fastjet/branches/fastjet-release-devel-D0ILConePlugin
9809
9810
9811
98122008-03-15  Gavin Salam  <salam@lpthe.jussieu.fr>
9813
9814	* doc/fastjet-doc.tex (subsection[$k_t$ jet algorithm]):
9815	  added refs separately to inclusive and exclusive when describing
9816	  jet-alg (subsequent to mails from Piergiulio Lenzi who was
9817	  having trouble understanding what was happening).
9818
98192008-03-07  Gavin SALAM  <salam@lpthe.jussieu.fr>
9820
9821	* configure.ac:
9822	  switched version number over to 2.4-devel
9823
9824-----------------------------------------------
9825released 2.3.1 on 2008-03-07
9826-----------------------------------------------
9827
98282008-03-07  Gavin SALAM  <salam@lpthe.jussieu.fr>
9829
9830	* configure.ac
9831	* test-compare.sh
9832	* src/genconfig.sh
9833	* src/makefile.static
9834	* include/fastjet/config.h         *** ADDED ***
9835	* include/fastjet/config_win.h     *** ADDED ***
9836
9837	  Moved to a structure of config_auto.h (with autotools and unix
9838	  static makefiles), and  config_win.h (under windows).
9839	  The config.h file now detects the system and includes the
9840	  appropriate one
9841
98422008-02-28  Matteo Cacciari  <cacciari@lpthe.jussieu.fr>
9843
9844        * src/ClusterSequenceAreaBase.cc:
9845          Revisited part of the change made on 2008-02-18: subtracted
9846          jets with unphysical momentum now also get a valid index
9847
98482008-02-25  Gavin SALAM  <salam@lpthe.jussieu.fr>
9849
9850	* src/ClusterSequence.cc:
9851	  in exclusive_dmerge(njets) and exclusive_dmerge_max(njets),
9852	  fixed assert(njets > 0)  to njets >= 0;
9853	  Bug reported by Piergiulio Lenzi <lenzip@fi.infn.it>.
9854
9855
98562008-02-18  Matteo Cacciari  <cacciari@lpthe.jussieu.fr>
9857
9858        * src/ClusterSequenceAreaBase.cc:
9859	  in subtracted_jet(), copied cluster_hist_index from original
9860	  jet to sub_jet, so that one can then directly analyse sub_jet
9861	  (for instance in terms of its constituents). Feature request
9862          by Juan Rojo
9863
9864
98652008-01-28  Gavin Salam  <salam@lpthe.jussieu.fr>
9866
9867	* plugins/SISCone/fastjet/SISConePlugin.hh:
9868	  added note about recommended value for overlap_threshold
9869	  different from the default.
9870
9871	* Doxyfile:
9872	  updated this to reflect new plugin header locations
9873
9874	* CHECKLIST:
9875	  added this to indicate what's needed for a release
9876
9877
98782008-01-17  Gavin Salam  <salam@lpthe.jussieu.fr>
9879
9880	* src/genconfig.sh (configfile):
9881	  can now take a first argument to generate a file of whatever
9882	  name user likes.
9883
98842008-01-15  Gregory Soyez  <g.soyez@ulg.ac.be>
9885
9886	* plugins/PxCone/pxcone.h:
9887	  fix name conventions for VC compilation
9888
9889	* plugins/CDFCones/CDFcode/LorentzVector.hh (M_PI):
9890	* plugins/CDFCones/CDFcode/Centroid.hh (M_PI):
9891	* plugins/CDFCones/CDFcode/CalTower.hh (M_PI):
9892	  added a definition of M_PI in case not already defined (VC compilation)
9893
9894	* include/fastjet/internal/SearchTree.hh:
9895	  added 'typename' where required (VC compilation)
9896
9897	* src/ClusterSequenceVoronoiArea.cc:
9898	  - added the limis header (VC compilation)
9899	  - replaced M_PI by pi (defined in fastjet/internal/numconsts.hh)
9900
9901	* src/ClusterSequenceActiveArea.cc:
9902	  - added the algorithm, cmath and valarray headers (VC compilation)
9903	  - fixed a type/operator confusion in
9904	    ClusterSequenceActiveArea::_postprocess_AA (VC compilation)
9905
9906	* src/PseudoJet.cc:
9907	* src/ClusterSequence_TiledN2.cc:
9908	* src/ClusterSequenceAreaBase.cc:
9909	* src/ClosestPair2D.cc:
9910	  added the algorithm header (VC compilation)
9911
9912
99132008-01-15  Gavin Salam  <salam@lpthe.jussieu.fr>
9914
9915	* plugins/CDFCones/CDFcode/MidPointAlgorithm.cc (MidPointAlgorithm::iterateCone):
9916	  fixed speed issue with optimized compilation by making some
9917	  local variable volatile (Gregory's proposal). The problem was
9918	  that on 32 bit machines a 64 bit stored variable was being
9919	  compared to an 80 bit register -- making everything volatile
9920	  forces thing to go into memory and solves the problem.
9921
99222008-01-14  Gavin Salam  <salam@lpthe.jussieu.fr>
9923
9924        * plugins/SISCone/siscone
9925	  switched this back over to the SISCone trunk, in preparation for
9926	  Belyaev's bug fixes.
9927
99282008-01-11  Gavin SALAM  <salam@lpthe.jussieu.fr>
9929
9930	* TODO:
9931	  updated this a little
9932
9933	* test-compare.sh:
9934	  fixed typo that caused make check failure when siscone is disabled
9935
9936	* example/fastjet_timing_plugins.cc:
9937	  bug-fix in conditional compilation to get things to still work when
9938	  siscone is disabled.
9939
9940	* configure.ac:
9941	  switched over to 2.3.1-devel
9942
99432008-01-04  Gavin Salam  <salam@bison>
9944
9945	* BUGS:
9946	  added remark about pt=0 and ambiguities in clustering inputs on
9947	  a perfect y-phi grid + VC7.1 compilation.
9948
9949-----------------------------------------------
9950released 2.3.0 on 2008-01-03
9951-----------------------------------------------
9952
99532008-01-03  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo
9954
9955	* BUGS           *** ADDED ***
9956	* prepared things for the 2.3.0 release
9957
99582007-12-24  Gavin Salam  <salam@lpthe.jussieu.fr>
9959
9960	* NEWS:
9961	  added information summarising 2.1 -> 2.3
9962
99632007-12-18  Gavin SALAM  <salam@lpthe.jussieu.fr>
9964
9965	* Makefile.am:
9966	  added Doxyfile to EXTRA_DIST
9967
9968
99692007-12-11  Gavin Salam  <salam@lpthe.jussieu.fr>
9970
9971	* example/root/jet-plots.C:
9972	  minor fix to get it working with modern (5.16) version of root.
9973
99742007-12-04  Gavin Salam  <salam@lpthe.jussieu.fr> + Gregory
9975
9976	* include/fastjet/ClusterSequenceArea.hh:
9977	* include/fastjet/ClusterSequenceAreaBase.hh:
9978	  made 4-argument get_median_rho_and_sigma virtual, and added a
9979	  4-argument overridden version to ClusterSequenceArea; this was
9980	  necessary because when you redefine one version with a given
9981	  name, then you need to explicitly override all other versions
9982	  with the same name.
9983
99842007-12-04  Gavin Salam  <salam@lpthe.jussieu.fr>
9985
9986	* configure.ac
9987	  moved version number over to 2.3-beta1-devel
9988
9989	* NEWS
9990	  renamed 2.2-beta1 -> 2.3-beta0
9991
9992	* ClusterSequenceActiveArea.cc|hh
9993	  Commented out the parabolic_pt_per_unit_area function, since it
9994	  is provided by the AreaBase class. This should also avoid the
9995	  compilation warning about the base class function being hidden.
9996
9997	* example/fastjet_areas.cc:
9998	  added more explicit comments about some of the alternatives that
9999	  are currently commented out.
10000
100012007-12-03  Gavin Salam  <salam@lpthe.jussieu.fr> + Gregory
10002
10003	* TAGGED the 2.3-beta0 release
10004
100052007-11-30  Gregory Soyez  <g.soyez@ulg.ac.be>
10006
10007	* include/fastjet/Makefile.am: remove config.h from the list of
10008	  headers included in the distribution. It should be generated
10009	  from config.h.in at configure time. When included, it also seems
10010	  to cause trouble for make distcheck.
10011
10012	* test-compare.sh: add write permissions to the temporary copy of
10013	  the original output (read-only by default for make
10014	  distcheck). Also, explicitely remove the files generated by make
10015	  ckeck in case it succeeds (also required for make distcheck to
10016	  work.)
10017
100182007-11-29  Matteo Cacciari <cacciari@lpthe.jussieu.fr>
10019
10020        * src/ClusterSequenceAreaBase.cc
10021	  very minor fix to subtracted_jets() (use of int in loop was
10022	  giving a warning, *this was useless, eliminated debugging comments)
10023
10024        * src/ClusterSequence.cc
10025          Updated the banner (PLB + anti-kt)
10026
10027        * configure.ac
10028          Version number moved to 2.3-beta0 (from 2.3-beta0-devel)
10029
10030	* INSTALL
10031	  - single line version for compiling and linking external program
10032	  - replaced output example vith version 2.3-beta0 (only the banner
10033	    changes)
10034
10035
100362007-11-26  Matteo Cacciari <cacciari@lpthe.jussieu.fr>
10037
10038        * src/ClusterSequenceAreaBase.cc [+.hh] :
10039          * fixed comment of subtracted_jet()
10040          * added the methods subtracted_jets() which
10041            returns a vector of PseudoJet by acting on inclusive_jets()
10042
10043        * added fortran wrapper to TODO list
10044
10045        * typo-fixing in documentation
10046
10047        * include/fastjet/JetDefinition.hh
10048          include/fastjet/ClusterSequence.hh [.cc]
10049	  Replaced JetFinder by JetAlgorithm, and (_)jet_finder
10050	  by (_)jet_algorithm, in keeping with Les Houches convention.
10051	  Also replaced accordingly _default_jet_finder and the jet_finder()
10052	  method.
10053	  Backward compatibility is assured at the user-level by a
10054	  typedef and by doubling functions containing the word "jet_finder"
10055
10056	  NB. THERE IS ONE EXCEPTION: _default_jet_finder and _jet_finder
10057	  were protected variables of ClusterSequence: the replacement
10058	  will break derived classes using them. They should be replaced
10059	  everywhere by "_default_jet_algorithm" and "_jet_algorithm"
10060
10061        * src/ClusterSequenceAreaBase.cc
10062	  src/ClusterSequencePassiveArea.cc
10063	  src/JetDefinition.cc
10064	  replaced jet_finder() by jet_algorithm()
10065
10066        * example/fastjet_subtraction.cc
10067	  median rho is now calculated using ...per_unit_area_4vector
10068	  when used in 4-vector subtraction along with area_4vector
10069
10070	* example/fastjet_subtraction.cc
10071	          fastjet_areas.cc
10072		  fastjet_example.cc
10073		  fastjet_timing.cc
10074		  fastjet_timing_plugin.cc
10075          replaced "finder" with "algorithm"
10076
10077
100782007-11-22  Gavin SALAM  <salam@lpthe.jussieu.fr> & Matteo
10079
10080        Tidying up in anticipation of 2.3-beta0 release; in addition to
10081	what's mentioned below, various bits of old commented code
10082	removed.
10083
10084	* include/fastjet/JetDefinition.hh
10085	  introduced jet_algorithm() (does same as jet_finder());
10086
10087	* src/ClusterSequenceArea.cc:  *** ADDED *** +.hh
10088	* src/ClusterSequenceAreaBase.cc:  + .hh
10089
10090	  set get_median_rho_and_sigma (and parabolic...) to be virtual,
10091	  overloaded it in ClusterSequenceArea so as to check that if
10092	  ghosts were used they're over a suitably large rapidity range.
10093
10094	* src/ClusterSequenceAreaBase.cc:
10095	  removed explicit code for median_pt_per_unit_something -- it now
10096	  just calls get_median_rho_and_sigma and returns the median;
10097	  tested that results are identical!
10098
10099	* include/fastjet/RangeDefinition.hh:
10100	  modified comment for _numerical_total_area; added
10101	  virtual get_rap_limits() to find out what rapidity limits the
10102	  range has. Mentioned it in the documentation too.
10103
10104	* src/ClusterSequenceActiveArea.cc (_initialise_AA):
10105	* [and elsewhere]
10106	  removed commented lines with old "maxrap" interface for setting
10107	  range when finding median etc.
10108
10109	* configure.ac:
10110	  switched version number to 2.3-beta0
10111
10112	* plugins/SISCone/
10113	  put siscone onto tagged version 1.3.0
10114
101152007-11-10  Gavin Salam  <salam@lpthe.jussieu.fr>
10116
10117        Summary of places where tests carried out in past few days:
10118
10119        name     |  system    | tarball v autoconf+automake | conf
10120        -------------------------------------------------------------
10121        ramses   | OSX 10.3   | t + a 2.61+1.10 (DIY)       | ??
10122        tycho    | FC 7       | a 2.61+1.10                 | cp
10123        bison(me)| Ubun 7.04  | a 2.61+1.9.6                | cps
10124        bison(me)| cygwin     | a ???                       | p?(s?)
10125        lxplus   | SLC4       | t + a 2.59+1.9.2            | ps
10126        zetes    | SLC4?      | t                           | ps
10127        lpnui    | SLC3       | t                           | ps
10128
10129        The "conf" column indicates which of cgal, pxcone and shared were enabled,
10130        when I can remember... Lowest libtool: 1.5.6
10131
10132
10133	* plugins/PxCone/Makefile.am:
10134	  added missing pxcone.h to EXTRA_DIST
10135
10136	* test-compare.sh:
10137	  fixed bug causing it to fail when build takes place in a
10138	  separate directory.
10139
10140	* test-static.sh:  *** RENAMED FROM *** test-script.sh
10141	  modified it so that it uses test-compare.sh for carrying out the
10142	  tests.
10143
10144	* src/makefile.static:
10145	  adapted it so that it uses install-sh for the installation in
10146	  lib/ (works around issue with absent lib/ directory in the
10147	  distribution)
10148
10149	* Makefile.am:
10150	  included test-script.sh in EXTRA_DIST
10151
10152	* example/Makefile.am:
10153	  removed test-*.sh from EXTRA_DIST (since the scripts have been removed)
10154
10155	* plugins/usage_examples/Makefile.am:
10156	  removed test-*.sh from EXTRA_DIST (since the scripts have been removed)
10157	  added -I../../include so as to get the
10158	  ../../include/fastjet/config.h when building in a separate directory.
10159
101602007-11-09  Gregory Soyez  <g.soyez@ulg.ac.be>
10161
10162	* test-compare.sh:
10163	  test-script-output-orig.txt:
10164	  Allow to test the complete set of installed plugins.
10165
10166	* plugins/usage_examples/many_algs_example.cc (main):
10167	  append the anti-kt clustering algorithm
10168
10169	* fastjet-config.in: sort out the -static issue
10170	  Now, shared lib is used by default if enabled. You can still
10171	  use the static one using the --shared=no flag
10172
10173
101742007-11-09  Gavin Salam  <salam@lpthe.jussieu.fr>
10175
10176	* include/FjPseudoJet.hh:
10177	* include/FjClusterSequence.hh:
10178	  added obscolescence warning
10179
10180	* put version number over to 2.2-beta1-devel (-beta ensures it
10181	  comes alphabetically before 2.2.0)
10182
101832007-11-08  Gregory Soyez  <g.soyez@ulg.ac.be>
10184
10185	* test-compare.sh: all tests will be launched from here
10186	  This allows to test examples before plugins examples
10187
10188	* plugins/(PxCone|CDFCones|SISCone)/...Plugin.hh:
10189	  added a #warning to tell the user to switch to new version
10190
10191
101922007-11-08  Gavin SALAM  <salam@lpthe.jussieu.fr>
10193
10194	* plugins/(PxCone|CDFCones|SISCone)/Makefile.am:
10195	* plugins/(PxCone|CDFCones|SISCone)/...Plugin.hh: ***ADDED***
10196	  added
10197
10198	* example/root/Makefile.am: * example/Makefile.am: * configure.ac:
10199  	  put in some stuff missing from the
10200	  distribution (example/makefile.static, example/root/...)
10201
102022007-11-08  Gavin SALAM  <salam@lpthe.jussieu.fr>
10203
10204	* MERGED svn/fastjet/branches/fastjet-release-autoconf (Rev 938)
10205	  back into the trunk; assembled the Changelogs to be in date
10206	  order across the two groups of chages.
10207
102082007-11-08  gavin salam  <salam@lpthe.jussieu.fr>
10209
10210	* configure.ac:
10211	  removed EXEEXT for fastjet-config (relevant presumably only for
10212	  cygwin, where, as a script, it should not have the extension).
10213
10214	* example/Makefile.alt:
10215          removed explicit path to fastjet-config
10216
102172007-11-07  Gregory Soyez  <g.soyez@ulg.ac.be>
10218
10219	* m4/CGAL.m4: move the local m4 macro defs in the m4 subdir
10220	* Makefile.am (ACLOCAL_AMFLAGS): add info on the local m4 macros
10221	* autogen.sh: search local aclocal m4 macros in the m4 subdir
10222	* INSTALL: add info regarding autoreconf
10223
10224
102252007-11-07  Gavin SALAM  <salam@lpthe.jussieu.fr>
10226
10227	* autogen.sh:
10228          removed lines replacing libtool->glibtool on MAC, since with
10229	  fresh compilation of recent autoconf, automake and libtool, it's
10230	  all working fine.
10231
10232	* doc/Makefile.am *** ADDED ***
10233	  added doc/ to the tarfile
10234
10235	* fortran_wrapper/siscone_example.f:
10236	* fortran_wrapper/Makefile -> Makefile.alt
10237	* fortran_wrapper/Makefile.am
10238	* Makefile.am
10239	* configure.ac
10240          got the fortran wrapper example working
10241
102422007-11-07  Gavin SALAM  <salam@lpthe.jussieu.fr>
10243	* configure.ac:
10244	* example/Makefile.am:
10245	* plugins/usage_examples/Makefile.am:
10246
10247          when pxcone is enabled, the following macros get called
10248	    AC_PROG_F77
10249            AC_F77_LIBRARY_LDFLAGS
10250          they set up FLIBS, which is then used where relevant
10251
10252
102532007-11-07  Gavin SALAM  <salam@lpthe.jussieu.fr>
10254
10255	* include/fastjet/PseudoJet.hh:
10256	  modified reset(...) a little so that we have:
10257	  - version with 4 args (px,...,E) and template (vectorial) version
10258          - version that takes a PseudoJet
10259	  The first ones reset the indices to default values; the latter
10260	  just copies the PseudoJet;
10261
10262	  Also coordinated the resetting of indices.
10263
102642007-11-06  Gavin SALAM  <salam@lpthe.jussieu.fr>
10265
10266	* include/fastjet/PseudoJet.hh:
10267	  added PseudoJet::reset(...) for modifying the 4-momentum.
10268
102692007-11-06  Gavin SALAM  <salam@lpthe.jussieu.fr>
10270
10271	* src/ClusterSequence.cc:
10272	  promoted Gregory to full author status.
10273
10274	* include/fastjet/version.hh:
10275	* configure.ac:
10276	* src/genconfig.sh: ***ADDED***
10277
10278	  arranged things so that we generate include/fastjet/config.h
10279	  even with the makefile.static options, and we also use the
10280	  version number from config.h in fastjet output...
10281
10282          + fixed some dependence  issues in other makefiles
10283
10284	* example/fastjet_timing_plugins.cc:
10285	* example/fastjet_areas.cc:
10286        * plugins/usage_examples/cdfmidpoint_example.cc
10287        * plugins/usage_examples/siscone_example.cc
10288        * plugins/usage_examples/many_algs_example.cc
10289        * plugins/usage_examples/pxcone_example.cc
10290
10291	  adapted them to get rid of PLUGINS_NOT_IN_FASTJET and use
10292	  instead config.h
10293
10294	* example/Makefile.alt:
10295	  documented a bit better
10296
102972007-11-05  Gregory Soyez  <g.soyez@ulg.ac.be>
10298
10299	* fastjet-config.in:
10300	  configure.ac:
10301	  Previous replacement of AM_LIBS by CONFIG_LIBS had
10302	  some influence on fastjet-config that was not properly
10303	  taken into account. This should be fixed now.
10304
10305	* plugins/SISCone/fastjet
10306	  plugins/CDFCones/fastjet
10307	  plugins/PxCone/fastjet:
10308	  Those 3 directories now contain the header files for the
10309	  corresponding plugins
10310
10311	* plugins/SISCone/fastjet/Makefile.am
10312	  plugins/CDFCones/fastjet/Makefile.am
10313	  plugins/PxCone/fastjet/Makefile.am:
10314	  Files added for autotools support
10315
10316	* plugins/SISCone/SISConePlugin.cc
10317	  plugins/CDFCones/CDFJetCluPlugin.cc
10318	  plugins/CDFCones/CDFMidPointPlugin.cc
10319	  plugins/PxCone/PxConePlugin.cc
10320	  plugins/usage_examples/Makefile.am
10321	  plugins/usage_examples/siscone_example.cc
10322	  plugins/usage_examples/cdfmidpoint_example.cc
10323	  plugins/usage_examples/pxcone_example.cc
10324	  plugins/usage_examples/many_algs_example.cc
10325	  examples/Makefile.am
10326	  example/fastjet_timing_plugins.cc
10327	  example/fastjet_areas.cc:
10328
10329	  update to match the new include path structure
10330
10331
103322007-11-01  Gregory Soyez  <g.soyez@ulg.ac.be>
10333
10334	* INSTALL: add a bit more details
10335
10336	* CGAL.m4 (ACX_CHECK_CGAL):
10337	  fix the previous changes. CGAL check starts by looking
10338	  for a --with-cgalmakefile option. If this is absent it
10339	  looks for a defined CGAL_MAKEFILE variable. Otherwise,
10340	  the default location is used.
10341
103422007-10-31  Gavin Salam  <salam@lpthe.jussieu.fr>
10343
10344	* CGAL.m4 (ACX_CHECK_CGAL):
10345	  hopefully fixed problem with it not finding the CGAL makefile
10346
10347	* autogen.sh:
10348	  fixed minor incompatibility with plain sh (in Darwin "if")
10349
103502007-10-27  Gregory Soyez  <g.soyez@ulg.ac.be>
10351
10352	* example/fastjet_timing_plugins.cc:
10353	  plugins/usage_examples/many_algs_examples.cc:
10354	  use config.h to get the info on the available plugins
10355	  For the static build (using makefile.static), we
10356	  explicitely define the SISCone and CDFCones flags.
10357
10358	* example/test-areas.sh:                  *** ADDED ***
10359	  example/test-example.sh:                *** ADDED ***
10360	  test-compare.sh:                        *** ADDED ***
10361	  test-script-output-orig.txt
10362	  example/Makefile.am:
10363	  add tests accessible through "make check".
10364	  Note that the comparison results file has been reorganised
10365	  to follow the order in which tests are run now (the latter
10366	  being a consequence of the build/Makefile order).
10367
10368	* plugins/usage_examples/Makefile.am:
10369	  build many_algs_example and the enabled plugins tests
10370
10371	* example/Makefile.am:
10372	  - build different executables:
10373	    fastjet_example fastjet_example_v1_interface
10374	    fastjet_areas fastjet_subtraction
10375            fastjet_timing fastjet_timing_plugin
10376
10377	* autogen.sh: Add test to use glibtool(ize) under Darwin (Mac)
10378
10379
103802007-10-24  Gregory Soyez  <g.soyez@ulg.ac.be>
10381
10382	* series of small fixes to have a working make distcheck:
10383	  - correctly set the include dirs in case one builds into a
10384	    directory which is not the one containing the sources
10385	  - fix issues with the conditional build of plugins to make sure
10386	    that distribution-related make goals include all directories
10387
10388
103892007-10-24  Gavin Salam  <salam@lpthe.jussieu.fr>
10390
10391	* example/fastjet_areas.cc:
10392	* example/fastjet_timing_plugins.cc:
10393	  Arranged for these to work both with new compilations and old
10394	  (with ifdefs at beginning to decide where to search for
10395	  plugins), using the PLUGINS_NOT_IN_FASTJET define for the old case
10396
10397	* makefile.static:
10398	  added
10399	  CXXFLAGS += -DPLUGINS_NOT_IN_FASTJET
10400          to signal to example programs what is going on -- maybe sort
10401	  this out more elegantly later?
10402
10403	* test-script.sh:
10404	  arranged for it to use makefile.static (for now)
10405
10406	* example/makefile.static
10407	  put this in (things had got lost)
10408
10409	* example/Makefile.alt
10410	  this one should provide an example of how to get things to work
10411	  with the new build/install procedure
10412
10413
104142007-10-24  Gregory Soyez  <g.soyez@ulg.ac.be>
10415
10416	* plugins/PxCone/Makefile.am        *** ADDED ***
10417	  plugins/Makefile.am
10418	  configure.ac:
10419	  Add autotools support for the PxCone plugin
10420
10421	* configure.ac:
10422	  - add options to enable plugins:
10423	      --enable-siscone  (default=yes)
10424	      --enable-cdfcones (default=yes)
10425	      --enable-pxcone   (default=no)
10426	  - add recursion into the SISCone autotools build
10427	  - the --enable-shared cmd-line option is already handled by
10428	    libtool. We just need to add AM_DISABLE_SHARED to disable the
10429	    shared lib by default (can still be changed by using
10430	    --enable-shared)
10431
10432	* fastjet-config.in: added a '--prefix' option which returns the
10433	  installation dir
10434
10435
104362007-10-24  Gavin Salam  <salam@lpthe.jussieu.fr>
10437
10438	* configure.ac:
10439          included mention of the new Makefiles
10440
10441	* Makefile.am, example/Makefile.am, example/data/Makefile.am
10442	  Added the latter two and hopefully the example should now be
10443	  included in the tarball (but testing seems to be awkard)
10444
10445	* fastjet-config.in:
10446	  fixed bug left in from previous mod
10447
104482007-10-23  Gregory Soyez  <g.soyez@ulg.ac.be>
10449
10450	* Makefile.am: the script is installed ad bin_SCRIPT!!!!
10451
10452
104532007-10-23  Gavin Salam  <salam@lpthe.jussieu.fr>
10454
10455	* fastjet-config.in:
10456	  removed -static ouput in case where things only built with
10457  	  static option (but not tested)
10458
10459          changed some a+="b" to a=$a"b" for compatibility with mac
10460
104612007-10-22  Gavin SALAM  <salam@tycho.lpthe.jussieu.fr>
10462
10463	* example/Makefile.alt *** ADDED ***
10464	  illustration of how to compile things with the new structure.
10465
104662007-10-20  salam  <salam@BISON>
10467
10468	* INSTALL:
10469	  started adding some instructions
10470
10471	* configure.ac:
10472	  sorted out order of libraries for siscone plugin in fastjet-config
10473
104742007-10-19  Gregory Soyez  <g.soyez@ulg.ac.be>
10475
10476	* configure.ac:
10477	  plugins/SISCone/Makefile_main_SISCone.am  *** ADDED ***
10478
10479	  We add an additional Makefile.am to avoid the '/' in the SUBDIRS
10480	  in plugins/SISCone/Makefile.am which does not seem supported by
10481	  older vesions of automake
10482
10483	  We also replace each occurence of VAR+="value" by
10484	  VAR=${VAR}"value" which is more portable and apparently
10485	  supported by older versions of autoconf
10486
10487
104882007-10-19  Gavin Salam  <salam@lpthe.jussieu.fr>
10489
10490	* configure.ac:
10491	  changed version number by hand here to reflect what we have in
10492  	  the code (this needs to be dealt with properly at some point),
10493	  so that tarballs can't get confused with those already released.
10494
10495
104962007-10-18  Gregory Soyez  <g.soyez@ulg.ac.be>
10497
10498	* configure.ac:
10499	  fastjet-config.in
10500	  include/Makefile.am                   *** ADDED ***
10501	  include/fastjet/Makefile.am        	*** ADDED ***
10502	  include/fastjet/internal/Makefile.am	*** ADDED ***
10503	  plugins/CDFCones/Mkefile.am		*** ADDED ***
10504	  plugins/CDFCones/CDFcode/Makefile.am  *** ADDED ***
10505
10506	  A set of updates:
10507	   - added installation of fastjet headers
10508	   - added build of the CDFCones plugin
10509	   - and fixed issues with the SISCone plugin
10510	   - fixed bug in fastjet-config wrt plugins
10511
10512
105132007-10-17  Gregory Soyez  <g.soyez@ulg.ac.be>
10514
10515	* plugins/Makefile.am           *** ADDED ***
10516	  plugins/SISCone/Makefile.am   *** ADDED ***
10517	  These two files, together with modification of the main
10518	  configure.ac and Makefile.am allow for the SISCone plugin to be
10519	  installed
10520
10521	* modify the main Makefile.am so the fastjet-config program is
10522	  installed
10523
10524	* autogen.sh           *** ADDED ***
10525	  configure.ac	       *** ADDED ***
10526	  config.h.in	       *** ADDED ***
10527	  fastjet-config.in    *** ADDED ***
10528	  CGAL.m4 	       *** ADDED ***
10529	  Makefile.am 	       *** ADDED ***
10530	  src/Makefile.am      *** ADDED ***
10531	  This is the base files for an automake/autoconf-generated build
10532	  of fastjet. With those files, building of the main lib can be
10533	  done by issuing ./autogen.sh <configure-options>; make; make
10534	  install
10535	  There are configure options to configure the type of lib (shared
10536	  or static) and the CGAL support.
10537
10538	* Change the external reference to the SISCone svn so that
10539	  it points to the development trunk. This allows to use
10540	  the makefile.static and autoconf things already implemented
10541	  there.
10542
10543	* rename "ReleaseNotes' into "NEWS" and added "AUTHORS"
10544	  This is done to satisfy GNU standards
10545
10546	* move all Makefile to makefile.static
10547	  In doing that, we have updated the makefile contents so
10548	  that the recursive behaviour is not broken
10549
105502007-10-17  Gregory Soyez  <g.soyez@ulg.ac.be>
10551	* BRANCHED (REVISION 889) -> svn/fastjet/branches/fastjet-release-autoconf
10552	  for autoconf related work
10553?
105542007-10-16  Gavin Salam  <salam@lpthe.jussieu.fr>
10555
10556	* plugins/CDFCones/CDFcode/MidPointAlgorithm.cc:
10557	  added protection in midpoint code for cases when no stable cones are
10558	  found (e.g. because all particles are below seed threshold).
10559
10560
105612007-09-30  Gavin Salam  <salam@lpthe.jussieu.fr>
10562
10563	* AutoConfSpecs: *** ADDED ***
10564	  added this outline of what we might like from autoconf.
10565
105662007-08-24  Gavin SALAM  <salam@lpthe.jussieu.fr>
10567
10568	* bug-examples/:                           *** ADDED ***
10569	* bug-examples/voronoi-square-problem.*    *** ADDED ***
10570	  added this directory as a common place for putting code that
10571	  highlights bugs that need solving, together with a specific
10572	  example bug.
10573
10574	* include/fastjet/PseudoJet.hh:
10575	* src/PseudoJet.cc:
10576	  added a PtYPhiM(...) function for creating a pseudojet
10577	  from pt, y, phi, m (alternative would be a constructor from some
10578	  new type that just held pt,y,phi,m?)
10579
105802007-08-01  Matteo & Gavin SALAM  <salam@lpthe.jussieu.fr>
10581
10582	* fortran_wrapper/        *** ADDED ***
10583	  wrote a wrapper to show how to use parts of fastjet from
10584	  Fortran.
10585
105862007-07-30  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo
10587
10588	* src/Makefile:
10589	  removed the pedantic option because CGAL 3.3 fails with it.
10590
10591	* example/fastjet_timing_plugins.cc
10592	  added output of fastjet version
10593
10594
105952007-07-26  Gavin Salam  <salam@lpthe.jussieu.fr>
10596
10597	* include/fastjet/GhostedAreaSpec.hh:
10598	  added GhostedAreaSpec::generator_at_own_risk() for access to the
10599	  internal generator object.
10600
106012007-07-18  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo
10602
10603
10604	* include/fastjet/ClusterSequence.hh|cc:
10605	  added version of has_child which returns a pointer to the
10606	  child (more efficient) and also introduced object_in_jet
10607
10608	  Corrected bugs in has_child and has_partner, related to the
10609	  treatment of cases near beam jets;
10610
10611	  introduced a new protected member function
10612	  _potentially_valid(jet), for checking the use of a jet won't
10613	  lead to crash-causing nonsense (it may still lead to meaningless
10614	  answers).
10615
10616	  NB: now adding [RETHINK-IF-CHANGE-NUMBERING: ...] in
10617	  neighoburhood of things that may be affected if we ever decide
10618	  to give inclusive jets their own separate identify.
10619
106202007-07-12  Gavin Salam  <salam@lpthe.jussieu.fr>
10621
10622	* plugins/SISCone/SISConePlugin.cc:
10623	  added output of SISCone version number within the plugin
10624	  description.
10625
10626	* include/fastjet/JetDefinition.hh:
10627	* src/ClusterSequence.cc:
10628	  added fastjet_version_string() function which returns a string
10629	  along the lines of "FastJet version 2.2beta1-devel"
10630
106312007-06-28  Matteo Cacciari  <cacciari@lpthe.jussieu.fr>
10632
10633        * added subtracted_jet and subtracted_pt methods
10634	  to ClusterSequenceAreaBase
10635
106362007-06-28  Gavin SALAM  <salam@lpthe.jussieu.fr>
10637
10638	* include/fastjet/GhostedAreaSpec.hh:
10639	  added deprecated access to intenal random number generator (for
10640	  internal development purposes) -- not guaranteed to stay.
10641
10642	* include/fastjet/ClusterSequenceAreaBase.hh:
10643	* include/fastjet/ClusterSequenceArea.hh:
10644	  Added is_pure_ghost as a virtual function in the area base
10645	  class (implemented -- gives false by default) and added a proper
10646	  version to ClusterSequenceArea.
10647
10648	* test-script.sh + test-script-output-orig.txt:
10649	  sorted out some little hiccups in test script output
10650
10651-----------------------------------------------
10652released 2.2beta0 on 2007-06-28
10653-----------------------------------------------
10654
106552007-06-27  Gavin SALAM  <salam@lpthe.jussieu.fr>
10656
10657	* include/fastjet/version.hh
10658	  updated version number to 2.2beta0
10659
10660	* test-script-output-orig.txt
10661	  adapted this to current version
10662
10663	* example/fastjet_subtraction.cc
10664	  sorted out some poor naming
10665
106662007-06-25  Gavin SALAM  <salam@lpthe.jussieu.fr>
10667
10668	* moved SISConePlugin/siscone over to 1.2.0 tag of siscone
10669
106702007-06-22  Gavin SALAM  <salam@lpthe.jussieu.fr>
10671
10672	* regression-tests/regression-test.pl:   *** ADDED ***
10673	  regression-tests*.res                  *** ADDED ***
10674
10675	  added this directory for carrying out regressions tests and
10676	  output files, so as to (help) ensure that each new version of
10677	  fastjet is giving consistent results.
10678
10679	* ChangeLog (this file!):
10680	  moved contents of INTERNAL_CHANGELOG (deleted) into here.
10681
10682	* include/fastjet/JetDefinition.hh:
10683	  updated comments relating to optimal strategy for a given N
10684
10685	* README: adapted this to reflect current situation with plugins
10686	  and anti-kt
10687
106882007-06-17  Gavin Salam  <salam@lpthe.jussieu.fr>
10689
10690	* include/fastjet/JetDefinition.hh:
10691	  introduced typedef so that JetAlgorithm == JetFinder
10692
10693	* src/PseudoJet.cc:
10694	  added pseudorapidity() method.
10695
10696	* plugins/CDFCones/CDFJetCluPlugin.hh:
10697	  added control of ratcheting to quick constructor for
10698	  CDFJetCluPlugin.
10699
107002007-06-16  Gavin Salam  <salam@lpthe.jussieu.fr> + Matteo
10701
10702	* ClusterSequence--various-area-classes.cc|hh
10703	  adapted all the derived classes so that they take the
10704	  RangeDefinition rather than maxrap -- this is subsequent to
10705	  changes made below
10706
10707        * plugins/Makefile
10708          plugins/CDFCones/Makefile
10709          fixed error on Macs (case-insensitive file system)
10710
107112007-06-16  Matteo Cacciari <cacciari@lpthe.jussieu.fr>
10712
10713        * RangeDefinition.hh
10714	  Added. Allows one to define the range in which to average
10715	  pt/area points in terms of rapmin,rapmax,phimin,phimax
10716
10717        * ClusterSequenceAreaBase.cc|hh
10718          added parabolic_pt_per_unit_area, essentially copied from
10719	  ClusterSequenceActiveArea except for the raprange, which has
10720	  now no default and must be specified.
10721
107222007-06-14  Gavin Salam  <salam@lpthe.jussieu.fr> + Matteo
10723
10724	* ClusterSequence.cc|hh:
10725	  added has_parents(...), has_child(...) and has_partner(...)
10726	  methods for acccessing the branching structure.
10727
107282007-06-06  Gavin SALAM  <salam@lpthe.jussieu.fr>
10729
10730	* src/ClusterSequenceActiveAreaExplicitGhosts.cc:
10731	  amplified warning message.
10732
10733	* src/ClusterSequenceActiveArea.cc:
10734	  added extra checking when matching different sequences (bounds,
10735	  making sure we match dij with dij and not dij with diB).
10736
10737	* include/fastjet/JetDefinition.hh:
10738	  added enum entry for the genkt_algorithm
10739
107402007-06-05  Gavin SALAM  <salam@lpthe.jussieu.fr>
10741
10742	* test-script-output-orig.txt
10743	  updated this so that it corresponds to current results (concerns
10744	  areas and banners)
10745
107462007-06-04  Gavin Salam  <salam@lpthe.jussieu.fr>
10747
10748	* include/fastjet/internal/LimitedWarning.hh: *** ADDED ***
10749	  added this for dealing with warnings that should appear a
10750	  limited number of times
10751
10752	* src/ClusterSequenceActiveAreaExplicitGhosts.cc|hh:
10753	  fixed bug (a missing "!") in determination of
10754	  has_dangerous_particles, and switched warnings over to the
10755	  LimitedWarning class.
10756
10757	* src/ClusterSequenceAreaBase.cc:
10758	  added warnings about jet alg used in median determination (if
10759	  not kt, cam)
10760
107612007-06-03  Gavin Salam  <salam@lpthe.jussieu.fr>
10762
10763	* src/ClusterSequenceActiveArea.cc:
10764	  made error for unmatched sequences more explicit and provided a
10765	  explanation of origin (based on has_dangerous_particles()
10766	  below), when the suspected cause is particles with low pt.
10767
10768	  Also added (but did not test) has_dangerous_particles().
10769
10770	* src/ClusterSequenceActiveAreaExplicitGhosts.cc|hh:
10771	  added max_ghost_perp2() and has_dangerous_particles() member
10772	  functions, as well as an explicit warning (first few times) in
10773	  cases which are dangerous (particle pt2 < ghost pt);
10774
107752007-05-28  Gavin Salam  <salam@lpthe.jussieu.fr>
10776
10777	* TODO: *** ADDED ***
10778	  it was about time we had this in here, even if it's not yet
10779  	  complete.
10780
107812007-05-16  Gregory Soyez  <g.soyez@ulg.ac.be>
10782
10783	* src/ClusterSequenceVoronoiArea.cc:
10784	  Clearing parts of the code
10785
107862007-05-14  Gavin SALAM  <salam@lpthe.jussieu.fr>
10787
10788	* include/fastjet/ClusterSequenceWithArea.hh: *** ADDED ***
10789	* include/fastjet/ClusterSequenceActiveArea.hh:
10790	* include/fastjet/ClusterSequenceArea.hh:
10791
10792	  switched to naming and backwards compatibility options decided
10793	  on 2007-05-11.
10794
107952007-05-11  Gavin SALAM  <salam@lpthe.jussieu.fr> (later)
10796
10797	* include/fastjet/ClusterSequenceWithArea.hh
10798          -> include/fastjet/ClusterSequenceArea.hh
10799
10800	  + corresponding renaming in various places -- designed to ensure
10801	  we really can get full backwards compatibility.
10802
108032007-05-11  Gavin SALAM  <salam@lpthe.jussieu.fr>
10804
10805	* include/fastjet/ClusterSequenceActiveArea.hh:
10806	* include/fastjet/ClusterSequenceWithArea.hh:
10807
10808	  partially fixed the problem of backwards compatibility with v2.1
10809	  by #defining ClusterSequenceWithArea as ClusterSequenceAreaBase,
10810	  UNLESS ClusterSequenceWithArea is explicitly included anywhere.
10811
10812
108132007-05-10  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo
10814
10815	* include/fastjet/AreaDefinition.hh: (later)
10816	  changed the enum values and order for AreaType (to make them
10817	  more logical)
10818
10819	* include/fastjet/ActiveAreaSpec.hh: *** ADDED ***
10820	  new version of this file, which just defines ActiveAreaSpec =
10821	  GhostedAreaSpec, for backwards compatibility
10822
10823	* ActiveAreaSpec -> GhostedAreaSpec:
10824	  changed the name to reflect use of this class for passive &
10825	  active;
10826
10827	* AreaDefinition.hh|cc
10828          moved AreaType enum out of class. Sorted out the descriptions.
10829
10830	* ClusterSequenceActiveAreaExplicitGhosts.cc|hh:
10831	  sorted out empty_area for this case too.
10832
10833	* plugins/SISCone/SISConePlugin.hh:
10834	  fixed missing component in a constructor
10835
10836
108372007-05-09  Gavin Salam  <salam@lpthe.jussieu.fr> + Matteo [later]
10838
10839	* JetDefinition.cc|hh:
10840	* plugins/SISCone/SISConePlugin.hh|cc:
10841	  added mechanism for supporting ghosted passive areas in plugins
10842
10843	* include/fastjet/ClusterSequencePassiveArea.hh  *** ADDED ***
10844        * src/ClusterSequencePassiveArea.cc              *** ADDED ***
10845
10846	  put in support for this passive area class that redirects one to
10847	  the supposedly optimal passive-area determination for each each
10848	  algorithm.
10849
10850
10851	* include/fastjet/AreaDefinition.hh:
10852        * include/fastjet/ClusterSequence1GhostPassiveArea.hh:
10853        * include/fastjet/ClusterSequencePassiveArea.hh:
10854        * include/fastjet/ClusterSequenceActiveArea.hh:
10855        * include/fastjet/ClusterSequenceWithArea.hh:
10856
10857          various changes related to the above, including selection of the
10858	  PassiveArea from the WithArea class.
10859
10860
108612007-05-09  Gavin Salam  <salam@lpthe.jussieu.fr> + Matteo
10862
10863        * ClusterSequencePassiveArea -> ClusterSequence1GhostPassiveArea
10864
10865	* JetDefinition.cc|hh:
10866	* ClusterSequence.cc|hh:
10867	  introduced cambridge_for_passive_algorithm (for internal use
10868	  only), and moved the jet_scale_for_algorithm routine into the
10869	  .cc file.
10870
108712007-05-09  Gavin Salam  <salam@lpthe.jussieu.fr>
10872
10873	* src/JetDefinition.cc:
10874
10875	* src/ClusterSequence.cc:
10876	  updated banner to reflect current status
10877
10878	* example/Makefile (depend):
10879	* src/Makefile:
10880	  removed CXXFLAGS from make depend (it caused it to get all CGAL
10881	  files).
10882
10883	* many places:
10884	  set the svn:keywords property to "Id" on many files where it was
10885	  missing. Sorted out some copyright statements (e.g. Voronoi.cc
10886	  we should not be claiming copyright!)
10887
108882007-05-09  Gregory Soyez  <g.soyez@ulg.ac.be>
10889
10890	* include/fastjet/ClusterSequenceWithArea.hh:
10891	  redirect to the ClusterSequencePAssiveArea class when area type
10892	  is set to passive_area
10893
10894	* include/fastjet/AreaDefinition.hh:
10895	  - added passive_area to the list of allowed area types.
10896	  - added a new ctor specifying an ActiveAreaSpec together with
10897	    an AreaType. This allow definition of active,
10898	    active_with_explicit_ghosts and passive areas.
10899
10900
109012007-05-08  Gavin SALAM  <salam@lpthe.jussieu.fr> & matteo
10902
10903	* include/fastjet/ClusterSequencePassiveArea.hh: ***ADDED***
10904	* src/ClusterSequencePassiveArea.cc:             ***ADDED***
10905
10906	  added a passive class that scans a single ghost over the event,
10907	  repeating the clustering once for each ghost position -- the
10908	  name may well evolve in the coming days.
10909
10910	* ClusterSequenceActiveArea.hh|cc:
10911	  changed some private/protected statuses to allow the PassiveArea
10912	  to access whatever it needs to access, and split some of the
10913	  functions into pieces so that they can be used piecemeal from
10914	  derived class.
10915
109162007-05-08  Gregory Soyez  <g.soyez@ulg.ac.be>
10917
10918	* src/ClusterSequenceVoronoiArea.cc:
10919	  Fix problem with particles at phi=0
10920
10921
109222007-05-08  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo
10923
10924	* ActiveAreaSpec.hh|cc:
10925	  added get_random_statu(), set_random_status(),
10926	  checkpoint_random(), restore_checkpoint_random(), to facilitate
10927	  the user's life when then need correlated random numbers for the
10928	  areas.
10929
10930	* include/fastjet/internal/BasicRandom.hh:
10931	  added set_status and get_status routines in the <int> and
10932	  <double> versions.
10933
109342007-05-08  Gavin, Matteo & Gregory
10935
10936	* example/fastjet_areas.cc:
10937	  adapted example to new form of ClusterSequenceWithAreas
10938
10939	* include/fastjet/AreaDefinition.hh:
10940	  added default constructor for VoronoiAreaSpec
10941
10942	* ActiveAreaSpec.cc|hh
10943	  changed default grid_scatter (1e-4 -> 1.0) [gives better
10944	  systematics at large ghost areas, and runs faster on cone], and
10945	  redefined scatter (kt and y,phi) to be around central values
10946	  (rather than an asymmetric shift as before).
10947
10948	* ClusterSequenceWithArea.hh
10949	  added constructors that take ActiveAreaSpec and VoronoiAreaSpec
10950	  directly.
10951
109522007-05-07  Gavin SALAM  <salam@lpthe.jussieu.fr>
10953
10954	* ClusterSequenceVoronoiArea.hh|cc:
10955	  added area_4vector to class, based on sum of cell centers rather
10956	  than the 4vector for each cell.
10957
109582007-05-07  Gregory Soyez  <g.soyez@ulg.ac.be>
10959
10960	* include/fastjet/ClusterSequenceWithArea.hh|cc: Append Voronoi
10961	  area computation.
10962
10963	* src/ClusterSequenceVoronoiArea.hh|cc: Add a class to compute the
10964	  Voronoi area.
10965
10966	* src/Voronoi.hh|cc: Add O'Sullivan C++ adaptation of Fortune's
10967	  code to compute Voronoi diagrams.
10968
109692007-05-07  Gavin SALAM  <salam@lpthe.jussieu.fr> & Matteo
10970
10971	* ClusterSequence.hh|cc:
10972	  added the transfer_from_sequence(...) member, which copies the
10973	  information from another sequence into this one.
10974
10975	* include/fastjet/ClusterSequenceWithArea.hh:  *** ADDED ***
10976	  class to access a generic type of area, as specified through an
10977	  AreaDefinition.
10978
10979	* AreaDefinition.hh|cc    *** ADDED ***
10980          start of work towards an area definition, to be used as an input
10981	  to the future ClusterSequenceWithArea.hh|cc
10982
10983	* RENAMED  ClusterSequenceWithArea.hh|cc
10984	        -> ClusterSequenceAreaBase.hh|cc
10985
10986	  carried out this renaming in view of reusing the original name
10987	  not as a base class, but rather as a class that provides easy
10988	  access to all different types of areas.
10989
10990	  NB: numerous associated changes, for things to carry on
10991	  working...
10992
109932007-05-06  Gavin SALAM  <salam@lpthe.jussieu.fr>
10994
10995	* ClusterSequenceWithArea.hh|cc:
10996	  added get_median_rho_and_error(...) to allow one to extract
10997	  the median together with the size of fluctuations around the
10998	  median (and the mean error, of use in doing converting
10999	  fluctuations to errors on individual jets).
11000
110012007-05-05  Gavin Salam  <salam@lpthe.jussieu.fr>
11002
11003	* areas/jet_def_from_cmdline.cc|hh:
11004
11005	  added this so as to provide easy (and common) access to a jet
11006	  finder from the command-line
11007
110082007-05-02  Gavin SALAM  <salam@lpthe.jussieu.fr> & Matteo
11009
11010	* include/fastjet/ClusterSequenceWithArea.hh|cc:
11011	  added empty_area(...), n_empty_jets(...),
11012	  median_pt_per_unit_area(...),
11013	  median_pt_per_unit_area_4vector(...), and the one that does the
11014	  work, median_pt_per_unit_something, as virtual functions, so
11015	  that these facilities can be accessed with any of the area
11016	  classes.
11017
11018	* include/fastjet/ClusterSequenceActiveArea.hh|cc:
11019	  added versions of empty_area(...), n_empty_jets(...), that make
11020	  use of all the information that's available from the ghosts.
11021
11022	* include/fastjet/JetDefinition.hh:
11023        * plugins/*/*Plugin.hh:
11024	  added the double R() const abstract virtual member function to
11025	  the JetDefinition::Plugin class, and updated all the plugins, so
11026	  that one can get a sensible value of R out of any algorithm.
11027
11028
110292007-04-24  Gavin SALAM  <salam@lpthe.jussieu.fr>
11030
11031	* plugins/SISCone/SISConePlugin.hh|cc:
11032	  added the split_merge_on_transverse_mass in the constructor (+
11033	  other ways of accessing it), which interfaces with SISCone's
11034	  SM_var2_hardest_cut_off variable.
11035
110362007-04-19  Gavin SALAM  <salam@lpthe.jussieu.fr> & Matteo
11037
11038	* src/ClusterSequenceActiveArea.cc|hh:
11039          moved the check on equivalence of ghosted jets into a common
11040	  member function for ij and iB recombination -- now they both use
11041	  pt == ptref || E == Eref. At some point this check should be
11042	  made more robust (move away from momentum and towards tags or
11043	  something similar).
11044
110452007-04-18  Gavin SALAM  <salam@lpthe.jussieu.fr> & Matteo
11046
11047	* include/fastjet/JetDefinition.hh:
11048	* include/fastjet/ClusterSequence.hh:
11049	* src/JetDefinition.cc:
11050	* src/ClusterSequence.cc:
11051
11052          introduced the "antikt" algorithm.
11053
11054	* example/fastjet_timing_plugins.cc
11055	  got it working with antikt
11056
110572007-04-13  Gavin SALAM  <salam@lpthe.jussieu.fr>
11058
11059	* example/root/jet-plots.C: *** ADDED ***
11060	  root script for plotting output from print_jets_for_root(...);
11061	  see instructions at beginning for usage.
11062
11063	* include/fastjet/ClusterSequence.hh|cc:
11064	  added print_jets_for_root, which takes jets and outputs them in
11065	  a form suitable for the root script...
11066
11067	* example/fastjet_timing_plugins.cc:
11068	  fixed a bug that prevented compilation and added some extra
11069	  cone-related options.
11070
11071-----------------------------------------------
11072released 2.1.0 on 2007-04-02
11073-----------------------------------------------
11074
110752007-04-02  Gavin SALAM  <salam@lpthe.jussieu.fr> + MC
11076
11077	* plugins/usage_examples/many_algs_example.cc:
11078	  removed PxCone by default (compile with -DUSEPXCONE get it back
11079	  and adapt Makefile too).
11080
11081	* test-script.sh
11082	  corrected bug related to G77LIBDIR; removed fortran related
11083	  stuff (pxcone now out by default)
11084
110852007-03-16  Gavin SALAM  <salam@lpthe.jussieu.fr>
11086
11087	* example/data/cone-midpoint-problem-ev1.dat
11088	* example/data/cone-midpoint-problem-ev2.dat
11089	  added these to illustrate the IR problem with midpoint
11090
110912007-03-14  Gavin Salam  <salam@lpthe.jussieu.fr>
11092
11093	* plugins/SISCone/SISConePlugin.hh:
11094	  changed the default number of passes to 0
11095
11096	* plugins/SISCone/SISConePlugin.cc:
11097	  fixed bug in choice of split-merge scale when recomputing jets
11098	  from a cached siscone run.
11099
11100
111012007-03-12  Gavin SALAM  <salam@lpthe.jussieu.fr>
11102
11103	* src/PseudoJet.cc|hh:
11104	  added boost(...) and unboost(...) methods.
11105
11106	* example/data/cone-darktower.dat:
11107	* example/data/cone-sm-pt-problem-ev(1|2).dat:
11108	  added two simple example events to illustrate the split-merge problem
11109	  with pt ordering, as well as the dark-tower problem in
11110	  single-pass algs.
11111
111122007-03-10  Gavin Salam  <salam@lpthe.jussieu.fr>
11113
11114	* include/fastjet/ActiveAreaSpec.hh:
11115	  changed default repeat value to 1 (was 5);
11116
11117	* plugins/CDFCones/CDFcode/ClusterComparisons.hh:
11118	* plugins/CDFCones/CDFcode/Cluster.hh:
11119	* plugins/CDFCones/CDFcode/MidPointAlgorithm.cc|hh:
11120	  added support for the pt_tilde scale in the split-merge
11121	  procedure; note that the way this is done adds a small (1-3%)
11122	  speed penalty for all choices.
11123
11124
11125	* plugins/CDFCones/CDFMidPointPlugin.cc|hh:
11126	  added the corresponding pt_tilde entry to the SplitMergeScale
11127	  enum.
11128
11129	* plugins/SISCone/SISConePlugin.hh:
11130	  changed default split_merge_scale to SM_pttilde; in legacy
11131	  interface, bool split_merge_on_transverse_mass now decides
11132	  between SM_mt and SM_pttilde;
11133
111342007-03-09  Gavin Salam  <salam@lpthe.jussieu.fr>
11135
11136	* plugins/SISCone/SISConePlugin.cc|hh:
11137	  introduced the SISConePlugin::SplitMergeScale enum (like the one
11138	  for the CDF plugin) and implemented the interface between this
11139	  and siscone's corresponding enum (NB: they must be ordered the
11140	  same way, otherwise you will get surprises...).
11141
111422007-03-06  Gavin SALAM  <salam@lpthe.jussieu.fr> & Matteo
11143
11144	* include/fastjet/version.hh:
11145	  updated internal version number (to avoid confusion)
11146
11147	* include/fastjet/ActiveAreaSpec.hh|cc:
11148	  added description() member function
11149
11150	* moved siscone external back onto siscone trunk
11151
111522007-03-04  Gavin Salam  <salam@lpthe.jussieu.fr>
11153
11154	* doc/fastjet-doc.tex:
11155	  Wrote the SISCone section; moved the example program forward,
11156	  since it uses only features from section 2, not all the
11157	  subsequence stuff. Updated intro.
11158
11159
11160	* plugins/SISCone/SISConePlugin.hh:
11161	  added the stable_cones() method to SISConeExtras, which is
11162	  identical to protocones() (but stable_cones is a more consistent
11163	  name).
11164
111652007-03-03  Gavin Salam  <salam@lpthe.jussieu.fr>
11166
11167	* switched the plugins/SISCone svn:externals property to point to
11168	  svn+ssh://login.hepforge.org/hepforge/svn/siscone/tags/siscone-1.1.0
11169	  rather than
11170	  svn+ssh://login.hepforge.org/hepforge/svn/siscone/trunk
11171
111722007-03-01 (later) Gavin Salam  <salam@lpthe.jussieu.fr>
11173
11174	* include/fastjet/PseudoJet.hh:
11175	  added transverse mass functions.
11176
11177	* plugins/SISCone/SISConePlugin.cc|hh:
11178	  added a new member function
11179	  SISConeExtras::most_ambiguous_split(), which returns the degree
11180	  of ambiguity of the most ambiguous decision about attributing a
11181	  particle to one or other jet during a split step.  Useful for
11182	  testing purposes.
11183
11184	* example/fastjet_timing_plugins.cc:
11185	  started adding minimal access to cone information with the
11186	  "-cones" option.
11187
111882007-03-01  MC
11189
11190        * doc/fastjet-doc.tex
11191          Updated the documentation to describe the new options
11192          of pt_per_unit_area and parabolic_pt_per_unit_area
11193          concerning the use of area_4vector
11194
111952007-03-01  Gavin Salam  <salam@lpthe.jussieu.fr>
11196
11197	* include/fastjet/PseudoJet.hh:
11198	  fixed bug in phi_std() pointed out by Oscar Stal,
11199	  <oscar.stal@tsl.uu.se>
11200
11201	* test-script-output-orig.txt
11202	  updated this so that it corresponds to current output.
11203
11204	* include/fastjet/ClusterSequence.hh:
11205	  added the ClusterSequence::Extras class, as well as
11206	  ClusterSequence::extras() function which returns a (possibly
11207	  null) pointer to any extras.
11208
11209	* plugins/SISCone/SISConePlugin.hh|cc:
11210	  updated them to reflect a change in naming in siscone;
11211	  added SISConeExtras class (derives from
11212	  ClusterSequence::Extras), whose contents are set up from within
11213	  the plugin and which allows a user to access the protocones.
11214
11215	* ReleaseNotes:
11216	  updated to reflect recent additions
11217
112182007-02-28  Gavin Salam  <salam@lpthe.jussieu.fr> + MC
11219
11220	* src/ClusterSequenceActiveArea.cc:
11221	  switched over to use of the current recombination scheme when
11222	  averaging 4vector areas over multiple repeats with different
11223	  ghosts.
11224
11225	* include/fastjet/JetDefinition.hh:
11226	  added Recombiner::plus_equal(A,B) to help simplify code in
11227	  various places
11228
11229        * src/ClusterSequenceActiveArea.cc|hh
11230  	  Added median_4vector option to mean_pt_strategies for
11231  	  pt_per_unit_area
11232	  Added use_area_4vector to parabolic_pt_per_unit_area
11233	  NB. Neither is the default.
11234
11235        * src/JetDefinition.cc
11236	  Corrected bug in massless recombination schemes for when
11237	  the pt of both particles is zero
11238
11239	* src/ClusterSequenceActiveAreaExplicitGhosts.cc
11240	  The area_4vector is now calculated with the same
11241	  recombination scheme as the jets
11242
11243
112442007-02-25  Gavin Salam  <salam@lpthe.jussieu.fr>
11245
11246	* plugins/PxCone/pxcone.f:
11247	  fixed some bugs in the way momenta are recombined relating to
11248	  2pi periodicity of phi; identified origin of a remaining problem
11249	  of jets depending on the order of input particles -- related to
11250	  the way the n-way midpoints are determined.
11251
112522007-02-24  Gavin Salam  <salam@lpthe.jussieu.fr>
11253
11254	* include/fastjet/PseudoJet.hh:
11255	  arranged for template constructor also to set default user and
11256	  cluster-history indices
11257
112582007-02-21  Gavin SALAM  <salam@lpthe.jussieu.fr>
11259
11260	* plugins/CDFCones/CDFMidPointPlugin.hh|cc:
11261	  added the option of specifying the scale to be used in the
11262	  split-merge step (pt is default, but we also have Et and mt), to
11263	  take advantage of the modification made to the CDF code below.
11264
11265	* plugins/CDFCones/CDFcode/MidPointAlgorithm.hh|cc:
11266	  added the option of specifying the scale to be used in the
11267	  split-merge step (pt is default, but we also have Et and mt)
11268
11269	  NB: this means that the CDF code we release is now actually a
11270	  modified version of the original.
11271
112722007-02-20  Gavin Salam  <salam@lpthe.jussieu.fr>
11273
11274	* example/CmdLine.*
11275	  updated these to recent versions
11276
11277	* example/fastjet_timing_plugins.cc (main):
11278	  added the -nomt option for choosing the ordering in siscone
11279	  split merge.
11280
11281	* plugins/SISCone/SISConePlugin.cc|h:
11282	  added the "bool split_merge_on_transverse_mass" parameter to
11283	  constructor, put in a corresponding member variable and used it
11284	  when calling siscone.
11285
112862007-02-18  Gavin Salam  <salam@lpthe.jussieu.fr>
11287
11288	* plugins/SISCone/Makefile (libSISConePlugin.a): fixed some
11289	  dependencies wrt to the siscone distribution directory.
11290
112912007-02-12  Gavin Salam  <salam@lpthe.jussieu.fr>
11292
11293	* updated test-script.sh to accept -j2 option for faster compilation
11294
11295	* ADDED include/fastjet/version.hh which sets the version number;
11296	  this is used throughout, also in tarit.sh and in svntagit.sh
11297
11298	* ADDED svntagit.sh which will one day deal with all the tagging...
11299
11300	* updated the test script ref. output to reflect the new version
11301  	  numbers
11302
113032007-02-09  Gavin Salam  <salam@lpthe.jussieu.fr>
11304
11305	* switched external reference to siscone over to new repository,
11306	  svn+ssh://login.hepforge.org/hepforge/svn/siscone/trunk
11307
113082007-02-08  Gavin Salam  <salam@lpthe.jussieu.fr>
11309
11310	* modified tarit.sh so that it indicates which svn commands to
11311	  use to tag the release
11312
113132007-01-24  Gavin Salam  <salam@lpthe.jussieu.fr> + Matteo
11314
11315        * tweaked test-script.sh some more
11316        * added fastjet-release/test-script-output-orig.txt
11317        * modified tarit.sh accordingly
11318
113192007-01-23  Gavin Salam  <salam@lpthe.jussieu.fr> + Matteo
11320
11321        * removed more (all?) extraneous semi-colons
11322	* added fastjet-release/test-script.sh
11323	* added protojet_ptmin argument to SISConePlugin constructor (etc.)
11324
113252007-01-19+20  Gavin Salam  <salam@lpthe.jussieu.fr>
11326
11327	* removed some extraneous semi-colons after functions in many
11328	  places, and checked that library now compiles with the "-pedantic
11329	  -Wno-long-long -Wimplicit -Wreturn-type -Wunused -Wparentheses"
11330	  options. NB PxConePlugin needs some more work on it before it
11331	  will compile (variable length arrays).
11332
113332007-01-12  Gavin Salam  <salam@lpthe.jussieu.fr> + matteo
11334
11335        * areas/SubtractionDefinition.hh
11336          definition class for a future subtraction class
11337
11338        * areas/ClusterSequenceWithSubtraction.hh
11339          class for subtraction
11340
11341        * areas/subtraction-HIeff-native.cc
11342          main program which will eventually use the new
11343          subtraction class
11344
11345        * areas/subtraction-HIeff-iter.cc
11346          Added before. Slightly modified version of
11347          subtraction-HIeff-tests.cc.
11348          Performs a multi-pass subtraction,
11349          the same which will eventually be performed by the
11350          "-native" file above.
11351
11352
11353
113542007-01-08  Gavin Salam  <salam@lpthe.jussieu.fr>
11355
11356	* areas/area-plots/2point-areas-3alg.gp
11357	  Passive area for 3 algs
11358
11359	* areas/areas-1gluon-for-root.cc
11360	  areas/root-games/ghosted_plots.C
11361
11362          root-related stuff for when there's a single hard parton
11363	  (illustrate active areas)
11364
11365
11366
113672007-01-02  Gavin Salam  <salam@lpthe.jussieu.fr>
11368
11369        * added the areas/hydjet_eff directory to repository
11370
11371
113722006-12-28  Gavin Salam  <salam@lpthe.jussieu.fr>
11373
11374	* Added a "caching" option to the SISCone plugin to allow runs
11375	  with multiple overlap_threshold values (and everything else
11376	  identical) to reuse the set of stable cones.
11377
11378	* in PseudoJet introduced the "have_same_momentum(jeta, jetb)"
11379	  function (used in SISCone plugin).
11380
113812006-12-26  Gavin Salam  <salam@lpthe.jussieu.fr>
11382
11383        * Added SISCone to the list of plugins made automatically
11384
11385        * SISCone plugin now sets the jet "user_index" to be equal to the
11386	  pass at which the jet was found; documentation added to the
11387	  beginning of the class...
11388
11389	* adapated areas/areas-hist.cc to use midpoint and siscone plugins
11390	  as well...
11391
11392	* dealt with renaming from scones -> siscone;
11393
11394	* added the siscone repository as an "external" repository to
11395	  fastjet, inside plugins/SISCone (so that it is updated
11396	  automatically each time fastjet is updated -- but note: commits
11397	  do not recurse automatically down...)
11398
11399        * also updated the usage_examples (many_algs_example now also runs
11400	  siscone).
11401
11402	* made this version 2.1.0b1 (changed tarit, but did not "tag" it)
11403
114042006-12-21  Gavin Salam <salam@lpthe.jussieu.fr> + Gregory Soyez
11405
11406	* Modified SCones plugin so that it provides information also on
11407	  the use of "wrong" split-merge procedure.
11408
114092006-12-18  Gavin Salam <salam@lpthe.jussieu.fr> + Gregory Soyez
11410
11411	* Added output of description of the algorithm in the
11412	  fastjet_timing_plugins routine routines (and got the .pl script
11413	  to read it), so that one knows what it is one's been doing.
11414
11415
114162006-12-14  Gavin Salam <salam@lpthe.jussieu.fr> + Gregory Soyez
11417
11418	* Added static function set_print_errors(bool) to Error.hh class
11419	  so that user can request "quiet" exceptions. NOT YET TESTED...
11420
11421
114222006-12-12  Gavin Salam <salam@lpthe.jussieu.fr> + Gregory Soyez
11423
11424	* Added plugin for SCones (Gregory's seedless cones code);
11425	  ran some basic tests; note the seedless cone code is not yet
11426	  included here, and the Makefile is accordingly a bit rough...
11427
11428        * added example/fastjet_timing_plugins for running the timing
11429	  tests with the various plugin algorithms.
11430
114312006-12-07  Gavin Salam <salam@lpthe.jussieu.fr>
11432
11433        * Changed tar script so that it works by first creating a tar
11434	  file, unpacking it in /tmp, renaming the corresponding directory
11435	  and then recreating the tar file (all of this to get the proper
11436	  directory name while maintaining symbolic links)
11437
11438	* added ClusterSequence::unclustered_particles(), which returns a
11439	  vector of unclustered particles.
11440
11441	* added warning (printed up to 5 times) when extracting exclusive
11442	  jets with an algorithm other than kt.
11443
11444	* in main Makefile, changed default inclusion of fortran libraries
11445	  to avoid also getting multiple libstdc++ (when g77 uses a
11446	  different version of gcc than g++).
11447
114482006-11-30  Gavin Salam <salam@lpthe.jussieu.fr>
11449
11450	* Renamed the plugin directories (to have capitalisation
11451	  corresponding to library names), added the CDF cone code
11452	  together with Makefiles etc.
11453
11454        * added plugins/usage_examples to illustrate how to use the
11455	  plugins, and how to use multiple jet algorithms together; added
11456	  some documentation to the pxcone and midpoint plugins (jetclu
11457	  users are on their own for the time being...)
11458
11459	* adapted Doxyfile to include the plugins directory; made it
11460	  non-recurisve so that it doesn't get the CDF code and as a
11461	  result had to add various directories by hand
11462
11463	* added mention of plugins/ directory in documentation.
11464
11465	* Updated the banner to include mention of plugins; compactified
11466	  the rest a little.
11467
11468	* Updated ReleaseNotes to reflect the current status
11469
114702006-11-29  Gavin Salam <salam@lpthe.jussieu.fr>
11471
11472	* Added the Et and Et2 schemes, as well as boost invariant BIpt
11473	  and BIpt2 schemes.
11474
114752006-11-28  Gavin Salam <salam@lpthe.jussieu.fr>
11476
11477	* fixed problems with alternative orderings of arguments in
11478	  JetDefinition constructor; added constructor with external
11479	  recombination scheme; added "preprocess" virtual function to
11480	  recombination scheme so that it carries out necessary
11481	  modification of momenta before running the clustering (as in
11482	  ktjet), and checked that pt and pt2 schemes give results
11483	  identical to those in ktjet (albeit boost-dependent...)
11484
114852006-11-27  Gavin Salam <salam@lpthe.jussieu.fr>
11486
11487        * added recombination scheme functionality, both via a plugin (not
11488	  currently tested much) and (for standard use) with a
11489	  RecombinationScheme enum; take a look at ReleaseNotes for things
11490	  that still need to be done/tested...
11491
11492	  Modified example program so that it makes recombination scheme
11493	  freedom explicitly visible.
11494
114952006-11-23  Gavin Salam <salam@lpthe.jussieu.fr>
11496
11497        * added areas/area-hist-plots/ which contains results of area
11498	  histograms for "idealized" soft clustering and clustering with a
11499	  single hard parton.
11500
115012006-11-13  Gavin Salam <salam@lpthe.jussieu.fr>
11502
11503        * Added more stuff related to plots & sorted out some svn:ignore
11504	  properties
11505
115062006-11-11  Gavin Salam <salam@lpthe.jussieu.fr>
11507
11508        * added a whole bunch of plots and related material in the
11509	  area-plots directory that previously weren't in version control
11510
11511	* added a QM2006/ directory which includes some material
11512	  (jet-finding on individual events) for illustrative plots.
11513
11514	* in areas/ put a recent version of the CmdLine.* utility class.
11515
11516	* added areas/README to help navigate that directory, which is
11517	  rapidly becoming too complex!
11518
11519
115202006-11-06  Gavin Salam <salam@lpthe.jussieu.fr>
11521
11522        * added squared_distance(...) to PseudoJet (does the same as
11523	  plain_distance, but the name is more logical).
11524
11525        * added areas/subtraction-tests-HIeff.cc for carrying out
11526	  efficiency and purity studies.
11527
11528	* areas/SimpleHist.hh got modified to provide more extensive
11529	  histogramming facilities (notably an overflow bin)
11530
11531	* areas/run-mass-test.pl was modified to as to enable combined
11532	  hydjet+subtraction-tests-HIeff running. (Had previously also
11533	  been modified to have run_hydjet as the executable rather than
11534	  test2_hydjet).
11535
115362006-10-25  Gavin Salam <salam@lpthe.jussieu.fr>
11537
11538        * added m() method to PseudoJet (like CLHEP, for negative m2() it
11539	  returns -sqrt(-m2())).
11540
11541	* to PseudoJet, added cluster_sequence_history_index() and
11542	  set_cluster_sequence_history_index(...) as alternative names for
11543	  cluster_hist_index() and set_cluster_hist_index(...), in the
11544	  hope that these new names might be more meaningful.
11545
11546	* added a function particle_jet_indices(...) to ClusterSequence so
11547	  as to allow the user to easily identify which particles fall into
11548	  which jet (or no jet at all).	 [NOT YET DOCUMENTED]
11549
115502006-10-19  Gavin Salam <salam@lpthe.jussieu.fr>
11551
11552	* replaced eta -> y (or rap) in documentation (was potentially
11553	  unclear before) and in ActiveAreaSpec class...
11554
115552006-10-16  Gavin Salam <salam@lpthe.jussieu.fr>
11556
11557        Introduced plugin functionality (CCN28-76)
11558
11559	* added description() member function to JetDefinition class
11560	  (involved adding src/JetDefinition.cc which returns a default
11561	  value).
11562
11563	* added a JetDefinition::Plugin abstract base class, which serves
11564	  as a model for user-supplied plugins; added an JetDefinition
11565	  constructor that takes a pointer to a plugin.
11566
11567        * added checks in ClusterSequence to see whether we're dealing
11568	  with a plugin -- if we are then the plugin clustering routine is
11569	  called instead of ours;
11570
11571	  modified the inclusive_jets() routine so that it behaves
11572	  sensibly regardless of the diB values and ordering of the
11573	  clustering returned by the plugin.
11574
11575	  added "plugin_record_ij_recombination", etc., member functions
11576	  to allow the plugin to make a record of what it's done in the
11577	  cluster sequence.
11578
115792006-10-12  Gavin Salam <salam@lpthe.jussieu.fr>
11580
11581	* in include/fastjet/ClusterSequence.hh added a slightly more
11582	  user-friendly message for the doxygen main page.
11583
115842006-10-09  Gavin Salam <salam@lpthe.jussieu.fr> + Matteo
11585
11586	    --- release of fastjet-2.0.0 ---
11587
11588	* added a wider range of arithmetic operations on PseudoJets;
11589	  added phi_std() and phi_02pi() which return values respectively
11590	  in the -pi..pi range and 0..2pi range; in the clustering code,
11591	  switched from use of phi() to phi_02pi() to allow for future
11592	  changes to action of phi().
11593
11594	* switched fastjet_subtraction.cc over to new arithmetic
11595	  operations.
11596
11597	* programmed improved formulae for automatic choice of best
11598	  strategy, including the choice also for the Cambridge algorithm.
11599
11600	* switched a number of member function of PseudoJet over from
11601	  const double & to simply double.
11602
11603	* various small changes made to the documentation.
11604
116052006-09-25  Gavin Salam <salam@lpthe.jussieu.fr> + Matteo
11606
11607	* added areas/areas-hist.cc for getting the distribution of areas
11608	  for pure noise (+ option of anchor).
11609
11610	* moved the SimpleHist.hh file into this directory from ../../chan
11611
11612
116132006-08-24  Gavin Salam <salam@lpthe.jussieu.fr> + Matteo
11614
11615	* Renamed old_median -> non_ghost_median
11616
11617        * parabolic_pt_per_unit_area made const
11618
116192006-08-23  Gavin Salam <salam@lpthe.jussieu.fr>
11620
11621	* Renamed NlnNCam2piMultD -> NlnNCam (for simplicity).
11622
116232006-08-22  Matteo Cacciari <cacciari@lpthe.jussieu.fr>
11624
11625        * example/fastjet_subtraction.cc
11626
11627          Added the subtraction using area_4vector. The results
11628          are compared in output to the "standard" subtraction.
11629          Added some comments.
11630
11631
116322006-08-19  Gavin Salam  <salam@lpthe.jussieu.fr>
11633
11634	* include/fastjet/Error.hh
11635
11636          error message output now states that this is a fastjet::Error
11637	  error.
11638
11639	* include/fastjet/ClusterSequence.hh
11640	* src/ClusterSequence.cc
11641
11642	  Put some of the bookkeeping code into specific member functions
11643	  (_transfer_input_jets, _decant_options), so that this
11644	  housekeeping can be more easily (reliably) carried out also by
11645	  derived classes.
11646
11647	  These new functions, as well as _do_iB_recombination_step,
11648	  _do_ij_recombination_step have been made protected (as opposed
11649	  to private), again for access from derived classes.
11650
11651	* src/ClusterSequenceActiveAreaExplicitGhosts.cc
11652	* include/fastjet/ClusterSequenceActiveAreaExplicitGhosts.hh
11653
11654	  Arranged for _is_pure_ghost(int history_index) to return false
11655	  for any negative value of history_index (so that e.g. BeamJet is
11656	  not considered a ghost).
11657
11658	* include/fastjet/ClusterSequenceActiveArea.hh
11659	* src/ClusterSequenceActiveArea.cc
11660
11661	  Rather than first running the clustering on the unghosted event
11662	  and then providing area info from runs on ghosted events, this
11663	  class now deduces the unghosted clustering sequence from a
11664	  ghosted event, so as to reduce the number of runs. This is
11665	  relevant for heavy-ions. If the requested number of repetitions
11666	  is zero, it reverts to the plain unghosted-clustering
11667
11668
116692006-08-19  Gavin Salam  <salam@lpthe.jussieu.fr>
11670
11671	* include/fastjet/internal/BasicRandom.hh   *** ADDED ***
11672	* src/BasicRandom.hh                        *** ADDED ***
11673
11674	  Added these files, which are basically copies of the (GPL)
11675	  random-number generator from Zoltan Nagy's nlojet++ program.
11676
11677	* include/fastjet/ActiveAreaSpec.hh
11678	* ActiveAreaSpec.cc
11679
11680	  Added _our_rand() to return a random double between 0.0 and 1.0,
11681	  checked that it gave identical results to before and then
11682	  switched over to using the BasicRandom<double> class.
11683
11684	  NOTE: currently the random number generator object for
11685	  ActiveAreaSpec is static (ie. there is a single sequence shared
11686	  among all instances of ActiveAreaSpec). One consequence of this
11687	  is that in areas-2point.cc, previously we restarted the sequence
11688	  from the beginning for each separation Delta eta (giving some
11689	  correlation between successive values of eta), whereas, now,
11690	  successive values of eta are completely uncorrelated.
11691
11692	* include/fastjet/ClusterSequenceActiveArea.hh
11693
11694	  Commented the lines that reset the global C random seed and
11695	  wrote a warning about this.
11696
11697
116982006-08-17  Gavin Salam  <salam@lpthe.jussieu.fr>  & Matteo
11699
11700	* Reworked naming scheme, so that all includes are now in
11701	  include/fastjet/ and those not destined for the user are in
11702	  include/fastjet/internal; we've introduced a namespace (fastjet)
11703	  and a fastjet/internal/base.hh file where we define begin and
11704	  end macros for it; we've put everything into the namespace...
11705
11706	  The "Fj" prefix has been systematically removed...
11707
11708	  added private/fastjet-rename-v1-to-v2.pl, to help in much of the
11709	  renaming of internals.
11710
11711	* Introduced include/FjPseudoJet.hh and
11712	  include/FjClusterSequence.hh files that provide access to
11713	  everything needed by programs based on the v1 legacy interface
11714
11715	* Removed the CP2DCHAN compile definition -- now the Chan code is
11716	  always included.
11717
11718	* Added areas code to main release: created a base class
11719	  ClusterSequenceWithArea, as well as derived classes:
11720
11721            ClusterSequenceActiveArea                // was WithMeanArea
11722	    ClusterSequenceActiveAreaExplicitGhosts  // was WithArea
11723
11724	  and also included the class
11725
11726	    ActiveAreaSpec
11727
11728	* Placed an explicit limit (via assertion) on R <= pi/2 (larger
11729	  than this can cause crashes in many places...)
11730
11731	* Removed extraneous code in areas/, adapted remaining code to new
11732	  interface.
11733
117342006-08-15  Gavin Salam  <salam@lpthe.jussieu.fr>  & Matteo
11735
11736	* Copied Chan method across from its development directory
11737
11738	* Added a data/ directory with some sample input files
11739
11740	* moved release number up to 1.9, in preparation for forthcoming
11741	  release 2
11742
11743        * updated examples to use new interface for specifying jet finder
11744
117452006-08-11  Gavin Salam  <salam@lpthe.jussieu.fr>
11746
11747        * modified FjPseudoJet's rapidity calculation so that it gives
11748          answers that are not completely crazy for momenta where rounding
11749          error causes the difference between E and pz to be zero.
11750
11751	* played around with passive areas (including a plot or two) --
11752	  they seem to work OK.
11753
11754	* fixed a bug (when reaching last pair of objects to cluster) in
11755	  the CP2DChan strategies.
11756
11757	* in the main Makefile (and Triangulations.h) added option for
11758	  using a simpler CGAL kernel -- this can give about 20% speed
11759	  gain but it's not clear how robust it is.
11760
117612006-08-10  Gavin Salam  <salam@lpthe.jussieu.fr>
11762
11763	* incorporated a first passive areas class,
11764	  FjClusterSequenceWithPassiveArea. It is quite slow, and
11765	  currently seen only very limited testing, but seems to work in
11766	  the 2-particle case...
11767
11768	  next steps: add gnuplot visulation, look at more complex events
11769
11770	* modified order of includes in some other class definitions to
11771	  place private things after public ones.
11772
117732006-08-04  Gavin Salam  <salam@lpthe.jussieu.fr>
11774
11775	* switched remaining jet-finding strategies over to use of
11776	  "_do_XY_recombination_step".
11777
11778	* updated thresholds for "Best" to take into account the
11779	  N2MinHeapTiled version (though perhaps this should wait until
11780	  we've incorporated MinHeap into our "standard" suite...
11781
11782	  Have not updated things to deal with the Cambridge algorithm --
11783	  not sure what the best option would be here, given that Chan's
11784	  approach is so cache dependent...
11785
117862006-08-04  Gavin Salam  <salam@lpthe.jussieu.fr>
11787
11788	* added routines for clustering the Cambridge algorithm based on
11789	  Chan's closest pairs (CP) method. The new strategies are:
11790
11791	    NlnNCam4pi          // all points duplicated
11792	    NlnNCam2pi2R        // points within R of 0,2pi duplicated
11793	    NlnNCam2piMultD     // two steps of clustering to reduce duplctn.
11794                                   [fastest]
11795
11796          For 10^4 particles, on a dual core P4D with 2MB cache,
11797	  NlnNCam2piMultD seems to be about 2.5 times faster than NlnN
11798	  (and 1.7 times faster than N2MinHeapTiled described below).
11799
11800	  As N grows larger, the advantages of the NlnNCam routines seem
11801	  to disappear, presumably because we end up outside limits of
11802	  cache. (And on machines with a small cache, e.g. anubis with
11803	  512KB, the advantage of the Cambridge-specific routines seem to
11804	  disappear.
11805
11806	* added a version of the tiled N2 algorithm that makes use of the
11807	  MinHeap developed for the CP work:
11808
11809	    N2MinHeapTiled
11810
11811	  On a dual-core P4D with 2MB cache, it seems to be the fastest
11812	  general option for 400 \lesssim N \lesssim 16000.
11813
11814	* the above options currently all require the CP2DChan library
11815	  which is in cvs in ../chan/ -- compilation there uses scons:
11816
11817	        scons libCP2DChan.a
11818
11819          (was testing out scons as an alternative to make...). At some
11820	  point, we should probably merge that codebase into ours.
11821
11822	* added FjClusterSequence::_do_ij_recombination_step and
11823	  _do_iB_recombination_step so as to avoid rampant duplication of
11824	  the associated code. Not all clusterings have switched over to
11825	  this yet...
11826
11827
118282006-07-17  Gavin Salam  <salam@lpthe.jussieu.fr>
11829
11830	* added area-plots/midpoint-zmass-profile-N1947.eps to see what
11831	  cone timings are like...
11832
118332006-07-17  Gavin Salam  <salam@lpthe.jussieu.fr>
11834
11835	* In FjJetDefinition.hh renamed _R -> _Rparam (single letter
11836	  with underscore caused problems under g++3.3)
11837
11838	* Added results and associated files for the ttbar analysis.
11839
11840
118412006-07-15  Gavin Salam  <salam@lpthe.jussieu.fr>
11842
11843        * FjPseudoJet: added operator+=,-=,*=,/=, which leave the
11844	  user and cluster_hist indices unchanged. It is natural (in a
11845	  sense) insofar as these operators act naturally just on the
11846	  momentum -- in practice it is also useful because a user may
11847	  want to correct a jet in some way while still have the jet
11848	  associated with its "history").
11849
11850	* subtraction-tests-ttbar: now gives a full panoply of results in
11851	  histograms so that one can get a semi-sensible analysis of
11852	  ttbar events.
11853
11854	* run-mass-test.pl: adapted it so that it deals nicely with the
11855	  ttbar cases too...
11856
118572006-07-14  Gavin Salam  <salam@lpthe.jussieu.fr>
11858
11859	* *** ADDED include/FjJetDefinition.hh ***
11860	  in which we now define:
11861
11862                  enum FjStrategy       // unchanged
11863	          enum FjJetFinder      // was part of FjClusterSequence
11864	          class FjJetDefinition // new
11865
11866	  The class is designed to hold all info that specifies a jet
11867	  algorithm (currently, just R, jet-finder ID and strategy)
11868
11869	  In FjClusterSequence.* new interfaces have been introduced in
11870	  which the FjJetDefinition is used to specify the jet algorithm;
11871	  these interfaces are present both for the public constructor and
11872	  for the protected _initialise_and_run(...) routines...
11873
11874	  In areas/, some minor changes have been made to account for these
11875	  changes...
11876
11877	  Also got the limit on the inclusive pt for the Cambridge jets
11878	  working (introduced separate code inside the inclusive_jets
11879	  routine).
11880
11881	  Started work on the ttbar project...
11882
11883	* In areas/FjClusterSequenceWith[Mean]Area.*
11884
11885	  Introduced the class FjActiveAreaSpec, which contains the
11886	  specification of how one defines the active area. It is intended
11887	  to provide a somewhat cleaner way of passing the information
11888	  around, and should hopefully provide an easier way of dealing
11889	  with the random number issue for this class (at least it's now
11890	  a well separated).
11891
11892	  Introduced new interfaces for the various area routines so that
11893	  one can refer to them in both the new way (with an
11894	  FjActiveAreaSpec object) and the old way (for backwards
11895	  compatibility).
11896
11897	  For now the FjActiveAreaSpec is inside the
11898	  FjClusterSequenceWithArea.* files -- but perhaps at some point
11899	  it should be moved?
11900
11901
119022006-07-13  Gavin Salam  <salam@lpthe.jussieu.fr>
11903
11904	* Added areas/subtraction-tests-ttbar.cc
11905	        areas/FlavourHolder.hh
11906	        areas/FlavourHolder.cc
11907
11908          as part of work towards an analysis of semi-leptonic ttbar
11909	  events.
11910
119112006-07-10  Gavin Salam  <salam@lpthe.jussieu.fr> + Matteo Cacciari
11912
11913        * Added option in FjClusterSequenceWithMeanArea of excluding
11914	  particles with pt/area greater than some threshold
11915
119162006-07-05  Gavin Salam  <salam@lpthe.jussieu.fr> + Matteo Cacciari
11917
11918        * Minor bug-fixed to FjClusterSequenceWithMeanArea
11919	  + some files added related to heavy-ion studies
11920
119212006-07-03  Gavin Salam  <salam@lpthe.jussieu.fr> + Matteo Cacciari
11922
11923	* Added areas/subtraction-tests-inclpt.cc for looking at inclusive
11924	  pt distributions (designed for use with hydjet events, at least
11925	  initially).
11926
11927	* To FjClusterSequenceWithMeanArea.* added
11928	  parabolic_pt_per_unit_area for carrying out a parabolic
11929	  (a+b*y^2) fit	to the pt/area.
11930
11931	* areas/run-mass-test.pl adapted to deal with the hydjet case too
11932
11933	* areas/area-plots -- all plots updated (for Florence talk and
11934	  Matteo's US visit [done some time ago...])
11935
11936
119372006-06-18  Gavin Salam  <salam@lpthe.jussieu.fr>
11938
11939	* to areas/FjClusterSequenceWithArea.* placed upper limit on
11940	  number of seed warnings messages; on subtraction-tests-mass,
11941	  also placed upper limit on output of info (to avoid eccessively
11942	  large mails when running jobs)
11943
119442006-06-18  Gavin Salam  <salam@lpthe.jussieu.fr>
11945
11946	* to areas/FjClusterSequenceWithArea.* placed upper limit on
11947	  number of seed warnings messages; on subtraction-tests-mass,
11948	  also placed upper limit on output of info (to avoid eccessively
11949	  large mails when running jobs)
11950
119512006-06-18  Gavin Salam  <salam@lpthe.jussieu.fr>
11952
11953	* to FjClusterSequenceWith[Mean]Area.* added
11954
11955	    FjPseudoJet extended_area(const FjPseudoJet & jet) const;
11956
11957	  member function which returns a four vector corresponding to
11958	  E-scheme addition and averaging of the ghost vectors (with
11959	  appropriate normalisation for each).
11960
11961	* adapated areas/subtraction-tests-mass.cc to use the new extended
11962	  area (i.e. four-vector subtraction) for an alternative
11963	  subtraction scheme ("hecr" "fecr" go into two extra columns at
11964	  end, so as not to mess up original file format).
11965
11966
119672006-06-13  Gavin Salam  <salam@lpthe.jussieu.fr>
11968
11969        * Found bug in reading of hydjet format (didn't skip particles
11970	  with istat/=1), but in practice they ended up having
11971	  non-sensical rapidities so got thrown out anyway (i.e. results
11972	  don't change);
11973
11974	  THIS BUG SHOULD BE FIXED EVERYWHERE ELSE TOO...
11975
119762006-06-06  Gavin Salam  <salam@lpthe.jussieu.fr>
11977
11978	* Added vector<int> FjClusterSequence::unique_history_order(),
11979	  which returns a order in which to read the history such
11980	  branchings are then independent of irrelevant degeneracies in
11981	  the d_ij. This is basically a corrected version of the
11982	  _extract_tree function added yesterday to
11983	  FjClusterSequenceWithMeanArea (now removed from that class).
11984
11985	* Arranged for FjClusterSequenceWithMeanArea to use the new
11986	  unique_history_order to map jets between the plain clustering
11987	  and that with the active area measurement. First tests suggests
11988	  that it's behaving properly (i.e. giving same results as before
11989	  for the kt algorithm, and sensible looking results for the
11990	  cambridge algorithm).
11991
11992
119932006-06-05  Gavin Salam  <salam@lpthe.jussieu.fr>
11994	* Added the _extract_tree private member function to
11995	  FjClusterSequenceWithMeanArea, which extracts a tree that should
11996	  have a unique ordering independently of degeneracies in the
11997	  labelling of the clustering. It comes along with some
11998	  helpers... Maybe it should be transferred into the main class?
11999
120002006-06-04  Gavin Salam  <salam@lpthe.jussieu.fr>
12001
12002	* Added the jets(), history() and n_particles() member functions
12003	  to FjClusterSequence so that the user can access this raw
12004	  information if they want to (this was a solution to the problem
12005	  of accessing things when transferring info between area classes
12006	  -- somehow protected information of an object of a related class
12007	  is not available to "this"). These functions provide a const ref
12008	  (so hopefully the user can't do anything dangerous).
12009
12010	* reworked transfer of information from the ...WithArea ->
12011	  ...WithMeanArea classes, so that now all jets should have a mean
12012	  area associated with them, and it might even work for the
12013	  Cambridge algorithm [though one has to watch out for possible
12014	  degeneracies there at the stage of jets -> inclusive jets].
12015
120162006-06-02  Gavin Salam  <salam@lpthe.jussieu.fr>
12017
12018	* FjClusterSequenceWithMeanArea.* -- split this into .cc and .hh
12019	  files to make things a bit cleaner in future.
12020
12021	* FjClusterSequenceWithArea.* added is_pure_ghost() function and
12022	  modified calculation of areas so that it occurs in a
12023	  post-processing stage; got areas-native to print out whether a
12024	  jet is a true one or a ghost one...
12025
12026	* FjClusterSequence.cc: made _fill_initial_history reserve space
12027	  in _jets and _history.
12028
120292006-06-01  Gavin Salam  <salam@lpthe.jussieu.fr>
12030
12031	* FjClusterSequence.cc: caused it to throw an error if the event
12032	  is empty. (Should think about what happens if the event contains
12033	  only one parton?)
12034
120352006-05-31  Gavin Salam  <salam@lpthe.jussieu.fr>
12036
12037	* added -cone075 options for areas/subtraction-tests-mass.cc
12038  	  (overlap fraction of 0.75 with standard midpoint cone)
12039
120402006-05-29  Gavin Salam  <salam@lpthe.jussieu.fr>
12041
12042	* added a few more options for areas/subtraction-tests-mass.cc
12043	  (one of them allowing one to eliminate the temporary
12044	  intermediate file in run-mass-tests.sh)
12045
120462006-05-27  Gavin Salam  <salam@lpthe.jussieu.fr>
12047
12048	* added enum FjClusterSequence::FjJetFinder, which defines the
12049   	  kt_algorithm and the cambridge_algorithm; implemented
12050	  FjClusterSequence::set_jet_finder which determines which of the
12051	  two algorithms to use in the clustering. Added -cam option to
12052	  fastjet_timing and subtraction-tests-mass. Note that the
12053	  Cambridge impleemntation is extremely crude , that many
12054	  functionalities are still missing, and that we will almost
12055	  certain want to rethink the interface to it at some later
12056	  point...
12057
12058	* added areas/merge-hist.pl for merging histograms and added a
12059	  -freq option to subtractes-tests-mass so as to allow output of
12060	  intermediate results.
12061
120622006-05-26  Gavin Salam  <salam@lpthe.jussieu.fr>
12063
12064        * in areas/subtraction-tests-mass.cc: changed outnormalisation of
12065	  histograms so as to make it easy to compare histograms made with
12066	  different bin widths and different numbers of events.
12067
12068	* in areas/subtraction-tests-mass.cc introduced -cone and
12069	  -searchcone options for running with the plain midpoint cone and
12070	  CDF's IR nearly unsafe midpoint searchcone algo.
12071
12072	* added areas/run-mass-test.pl which runs pythia and pipes its
12073	  output into subtraction-tests-mass (via a named pipe, splitting
12074	  up the options appropriately between the two programs).
12075
12076	* copied areas/subtraction-tests.cc -> subtraction-tests-mass.cc and
12077	  started organizing it a bit better, removing extraneous material
12078	  etc.; added new option -bin (sets the bin width).
12079
12080	* introduced -in and -out options for subtraction-tests.cc (naming
12081	  the files makes it easier to figure out what's going on when we
12082	  look at an output file later).
12083
12084
12085
120862006-05-25  Gavin SALAM  <salam@lpthe.jussieu.fr> & Matteo for conception
12087
12088	* added examples/test-correctness.sh for testing that all the
12089	  different algorithms are giving consistent results
12090
12091	* in FjClusterSequence.hh, introduced jet_scale_for_algorithm,
12092	  which given a jet returns the scale to be used in the
12093	  clustering. Currently it is kt^2, but by replacing it with the
12094	  1, one gets the Cambridge/Aachen algorithm. Made modifications
12095  	  elsewhere so that everything should now be using the new form;
12096	  still need to check that with the scale set to 1 it gives the
12097	  same as the Cambridge algorithm code [and maybe want to examine
12098	  timings?].
12099
121002006-05-24  Gavin SALAM  <salam@lpthe.jussieu.fr>
12101
12102        * In areas/, added basic histogramming class (CSHisto), and used
12103	  it to look at mass distribution of a reconstructed Z (decayed to
12104	  two jets).
12105
12106        * In FjPseudoJet.* added m2() member function and one instance of
12107	  a multiplication operator.
12108
12109	* In DynamicNearestNeighbours.hh and DnnPlane.cc, renamed
12110	  DNN_Error -> DnnError, and added a constructor for DnnError that
12111	  prints out an error message.
12112
12113	* Added the file include/FjError.hh which defines a class FjError
12114	  that is used for throwing all exceptions (except those related
12115	  to DnnError -- maybe need to catch things there?)
12116
121172006-05-23  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo (part)
12118
12119	* Added FjClusterSequenceWithMeanArea::play option when calling
12120	  FjClusterSequenceWithMeanAreapt_per_unit_area, for printing
12121	  out all sorts of bits and pieces; median was renamed old_median,
12122	  and now median gives a median which takes into account also the
12123	  average number of non-jets when calculating the median position.
12124          It is this new median that is now used also when determining
12125	  cuts for averages.
12126
12127          Mean pt/area ratios and overal pt/area ratios now also take into
12128	  account the non-jet number and area (respectively).
12129
12130
121312006-05-22  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo
12132
12133        * modified (areas|examples)/CmdLine.* so as to have the facility
12134	  to find out if there are any unused/invalid options.
12135
12136	* Added areas/subtraction-tests.cc for examining how subtraction
12137	  of underlying events etc works
12138
12139	* Added internal support for getting "non-jet" areas inside
12140	areas/FjClusterSequenceWithMeanArea.hh (but no external handles
12141	for time being).
12142
12143	* modified a couple of comments in FjPseudoJet.hh to better
12144	  reflect return values of plain_distance().
12145
121462006-05-15  Gavin SALAM  <salam@lpthe.jussieu.fr> + Matteo
12147
12148	* Added areas/areas-test-mean-class and
12149	areas/FjClusterSequenceWithMeanArea.hh to help automate the study
12150	of areas and relevant subtractions. Played with it a bit...
12151
12152	* in FjClusterSequence.hh -> included cmath and switched abs ->
12153	std::abs (following compiler complaints with g++ 4.1.0, where we
12154	would have got int abs(int) rather than the double version).
12155
12156	* in FjClusterSequence.hh: made the clustering history protected
12157	rather than private.
12158
121592006-05-12  Gavin SALAM + Matteo Cacciari  <salam@lpthe.jussieu.fr>
12160
12161	* in areas/areas-histogramming.cc (not part of release) discovered
12162	that CGAL (probably) is playing with random numbers messing up our
12163	sequence for area studies via creation of ghosts; so currently
12164	set explicit new seed at each turn of loop.
12165
12166	Also fixed Makefile dependencies in areas/.
12167
12168	Also, writeout_combinations with FlClusterSequence_witharea now
12169	prints out the full list of particles (including ghosts) before
12170	clustering.
12171
12172	* discovered problem with gcc-3.2.3 and certain events,
12173	specifically:
12174
12175	./fastjet_timing -combine 10 -incl 0.0 -strategy 2 < ../../Pythia-1PtMin50+nMinBias-mansorted.dat
12176
12177	The problem manifests itself when erasing things from the tree,
12178	but hasn't been identified beyond that; running it with valgrind
12179	it miraculously works (and gives no valgrind errors). It works
12180	also with gcc-3.3 (Mac) and gcc-3.4.3 (zetes). Some commented code
12181	is in FjClusterSequence_Delaunay to try to uncover what's
12182	happening, but no conclusion has been reached yet. Non-Delaunay
12183	variants work fine (3pi,4pi variants have problems for different
12184	event sets, e.g. -combine 12).
12185
121862006-04-04  Gavin SALAM  + Matteo Cacciari <salam@lpthe.jussieu.fr>
12187
12188	* src/FjClusterSequence_Delaunay.cc: in _add_ktdistance_to_map,
12189	changed if (kt2i <  _jets[jj].kt2()) to
12190                if (kt2i <= _jets[jj].kt2())
12191        so as catch the case when the two are equal.
12192
121932006-03-??  Gavin SALAM  + Matteo Cacciari <salam@lpthe.jussieu.fr>
12194
12195        * some bug fixes to sanitization routines (appeared with different
12196	compiler version).
12197
121982006-02-28  Gavin SALAM  <salam@lpthe.jussieu.fr>
12199
12200	* Replaced typedef std::pair<double,double> EtaPhi with a class
12201	that allows one to conveniently sanitize phi into the correct range.
12202
12203	* From FjClusterSequence::_delaunay_cluster, called the
12204	sanitization routine when inserting a new point... Should make
12205	thing a bit more robust in cases where arithmetic rounding tricks
12206	cause confusion bewteen 0 and 2pi.
12207
122082006-02-26  Gavin Salam  <salam@lpthe.jussieu.fr>
12209
12210	* adapted timing scripts so as to get reasonable behaviour for
12211	very high N (including subtraction of read time and limiting
12212	nstat).
12213
122142006-02-17  Gavin SALAM  <salam@lpthe.jussieu.fr> & Matteo Cacciari
12215
12216	This is release v1.0.0b3
12217
12218	* fixed huge memory leak in the N ln N CGAL-based strategies.
12219
12220	* changes to internal structure of FjClusterSequence class to
12221	simplify future developments.
12222
122232006-02-13  Gavin Salam  <salam@lpthe.jussieu.fr>
12224
12225	This is release v1.0.0b2
12226
12227	* added "#include <cassert>" in places where it's needed (thanks
12228	to Thomas Kluge for pointing out the need for this).
12229
12230	* Improved error message in case of request for N ln N strategy
12231	when CGAL has not been compiled in.
12232
12233	* when creating package, main Makefile is automatically modified
12234	to have USE_CGAL=no (the original is put back after creating the
12235	tarfile).
12236
122372006-02-13   v1.0.0b1
12238	* arranged for harmonisation of behaviour of the various example
12239	programs...
12240
122412006-02-04   v1.0.0b0
12242	* added minimal standard files (ChangeLog, LICENSE) and headers
12243	for GNU dist and included cvs ID string in all code files.
12244
12245----------------------------------------------------------------------
122462006/02/04 GPS
12247--------------
12248
12249FjClusterSequence.hh
12250FjClusterSequence_TiledN2.cc
12251        fixed bug in tiling for R/=1 (assumptions about indices for
12252        wrapping in phi that were hard-coded for R=1).
12253
12254example/ktjet_timing.cc  *** ADDED ***
12255        Makefile adapted too...
12256
12257----------------------------------------------------------------------
122582006/02/03 GPS
12259--------------
12260
12261Various things done since copying across from previous directory in
12262preparation for release:
12263
12264Name changes:        Fj prefix added to public types
12265FjStrategy:          turned into enum and renamed from "clever"
12266directory structure: src/, example/, lib/, include/ rather single dir
12267documentation:       added doc/fastjet-doc.tex as a manual
12268
12269