FastJet 3.0.2
|
00001 //STARTHEADER 00002 // $Id: RangeDefinition.cc 2577 2011-09-13 15:11:38Z salam $ 00003 // 00004 // Copyright (c) 2005-2011, Matteo Cacciari, Gavin P. Salam and Gregory Soyez 00005 // 00006 //---------------------------------------------------------------------- 00007 // This file is part of FastJet. 00008 // 00009 // FastJet is free software; you can redistribute it and/or modify 00010 // it under the terms of the GNU General Public License as published by 00011 // the Free Software Foundation; either version 2 of the License, or 00012 // (at your option) any later version. 00013 // 00014 // The algorithms that underlie FastJet have required considerable 00015 // development and are described in hep-ph/0512210. If you use 00016 // FastJet as part of work towards a scientific publication, please 00017 // include a citation to the FastJet paper. 00018 // 00019 // FastJet is distributed in the hope that it will be useful, 00020 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00021 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00022 // GNU General Public License for more details. 00023 // 00024 // You should have received a copy of the GNU General Public License 00025 // along with FastJet. If not, see <http://www.gnu.org/licenses/>. 00026 //---------------------------------------------------------------------- 00027 //ENDHEADER 00028 00029 #include "fastjet/RangeDefinition.hh" 00030 00031 FASTJET_BEGIN_NAMESPACE // defined in fastjet/internal/base.hh 00032 00033 using namespace std; 00034 00035 LimitedWarning RangeDefinition::_warnings_deprecated; 00036 00037 // calculate, and set in _total_area, the area with a numerical test 00038 // takes a reasonable time with rapmax = 10, npoints = 100 00039 void RangeDefinition::_numerical_total_area(double rapmax, int npoints) { 00040 00041 int count = 0; 00042 double deltaphi = twopi/double(npoints); 00043 double deltarap = 2.0*rapmax/double(npoints); 00044 double phi = 0.0; 00045 for(int i = 0; i < npoints; i++) { 00046 double rap = -rapmax; 00047 for (int j = 0; j < npoints; j++) { 00048 if ( is_in_range(rap,phi) ) { count++; } 00049 rap += deltarap; 00050 } 00051 phi += deltaphi; 00052 } 00053 00054 _total_area = double(count)/double(npoints*npoints)*2.0*twopi*rapmax; 00055 } 00056 00057 00058 // the use of RangeDefinition is deprecated since FastJet version 00059 // 3.0 onwards. Please use Selector instead. 00060 // RangeDefinition is only provided for backward compatibility 00061 // reasons and is not guaranteed to work in future releases of 00062 // FastJet. 00063 void RangeDefinition::_warn_deprecated() const{ 00064 _warnings_deprecated.warn("The use of RangeDefinition is deprecated since FastJet version 3.0 onwards. Please consider using Selector (defined in fastjet/Selector.hh) instead. There is no guarantee that support for RangeDefinition will be provided in future releases of FastJet."); 00065 } 00066 00067 FASTJET_END_NAMESPACE