Advanced Computing Platform for Theoretical Physics

Commit e1852849 authored by ralfulrich's avatar ralfulrich
Browse files

fixes of README and cmake-stuff for Rivet/HepMC3/fastjet

parent c7581eaa
......@@ -193,7 +193,7 @@ if (HepMC3_FOUND)
src/CRMChepmc3.h)
set_property(SOURCE src/CRMC.cc src/CRMCoptions.cc src/crmcMain.cc
APPEND PROPERTY COMPILE_DEFINITIONS WITH_HEPMC3)
MESSAGE("Build HEPMC3 Output Interface")
MESSAGE("Build HepMC3 Output Interface: ${HepMC3_DIR}")
FIND_PACKAGE(Rivet)
if (Rivet_FOUND)
......@@ -202,15 +202,15 @@ if (HepMC3_FOUND)
LIST(APPEND CRMC_HEADERS src/OutputPolicyRivet.h)
set_property(SOURCE src/CRMC.cc src/CRMCoptions.cc src/crmcMain.cc
APPEND PROPERTY COMPILE_DEFINITIONS WITH_RIVET)
MESSAGE("Build Rivet interface")
MESSAGE("Build Rivet interface: ${Rivet_DIR}")
endif (Rivet_FOUND)
endif (HepMC3_FOUND)
FIND_PACKAGE (Fastjet COMPONENTS fastjet)
if (FASTJET_FOUND)
if (Fastjet_FOUND)
include_directories("${Fastjet_INCLUDE_DIRS}")
MESSAGE("Include fastjet filter")
endif (FASTJET_FOUND)
MESSAGE("Include fastjet filter: ${Fastjet_INCLUDE_DIRS}")
endif (Fastjet_FOUND)
# prepare crmc to use same size HEPMC common block than HepMC was compiled with
......
......@@ -4,7 +4,7 @@
# FIND_PACKAGE( fastjet [REQUIRED] [COMPONENTS ...] )
#
# It sets the following variables:
# ${FASTJET_FOUND}
# ${Fastjet_FOUND}
# ${Fastjet_INCLUDE_DIRS}
# ${Fastjet_LIBRARY_DIRS}
# ${Fastjet_LIBRARIES}
......@@ -22,13 +22,15 @@ FOREACH (COMPONENT ${Fastjet_FIND_COMPONENTS})
PATHS
/usr
/usr/local
${FASTJET_PREFIX}
${FASTJET_ROOT}
${FASTJET_ROOT_DIR}
${Fastjet_PREFIX}
${Fastjet_ROOT}
${Fastjet_DIR}
${Fastjet_ROOT_DIR}
${HEP_ROOT}
$ENV{FASTJET_PREFIX}
$ENV{FASTJET_ROOT}
$ENV{FASTJET_ROOT_DIR}
$ENV{Fastjet_PREFIX}
$ENV{Fastjet_ROOT}
$ENV{Fastjet_DIR}
$ENV{Fastjet_ROOT_DIR}
$ENV{HEP_ROOT}
PATH_SUFFIXES
......@@ -38,7 +40,7 @@ FOREACH (COMPONENT ${Fastjet_FIND_COMPONENTS})
# set found flag
IF ({${${COMPONENT}_PATH} MATCHES "${COMPONENT}_PATH-NOTFOUND")
SET(FASTJET_FOUND FALSE)
SET(Fastjet_FOUND FALSE)
ELSE ({${${COMPONENT}_PATH} MATCHES "${COMPONENT}_PATH-NOTFOUND")
MESSAGE (STATUS "Fastjet ${COMPONENT} library path found: ${${COMPONENT}_PATH}")
ENDIF ({${${COMPONENT}_PATH} MATCHES "${COMPONENT}_PATH-NOTFOUND")
......@@ -53,13 +55,15 @@ FIND_PATH(Fastjet_INCLUDE_DIRS
PATHS
/usr
/usr/local
${FASTJET_PREFIX}
${FASTJET_ROOT}
${FASTJET_ROOT_DIR}
${Fastjet_PREFIX}
${Fastjet_ROOT}
${Fastjet_DIR}
${Fastjet_ROOT_DIR}
${HEP_ROOT}
$ENV{FASTJET_PREFIX}
$ENV{FASTJET_ROOT}
$ENV{FASTJET_ROOT_DIR}
$ENV{Fastjet_PREFIX}
$ENV{Fastjet_ROOT}
$ENV{Fastjet_DIR}
$ENV{Fastjet_ROOT_DIR}
$ENV{HEP_ROOT}
PATH_SUFFIXES
......@@ -69,7 +73,7 @@ FIND_PATH(Fastjet_INCLUDE_DIRS
# set found flag
IF (${Fastjet_INCLUDE_DIRS} MATCHES "Fastjet_INCLUDE_DIRS-NOTFOUND")
SET(FASTJET_FOUND FALSE)
SET(Fastjet_FOUND FALSE)
ELSE (${Fastjet_INCLUDE_DIRS} MATCHES "Fastjet_INCLUDE_DIRS-NOTFOUND")
MESSAGE(STATUS "Fastjet include path found: " ${Fastjet_INCLUDE_DIRS} )
ENDIF (${Fastjet_INCLUDE_DIRS} MATCHES "Fastjet_INCLUDE_DIRS-NOTFOUND")
......@@ -78,16 +82,16 @@ ENDIF (${Fastjet_INCLUDE_DIRS} MATCHES "Fastjet_INCLUDE_DIRS-NOTFOUND")
# if not found
IF(${FASTJET_FOUND} MATCHES "FALSE")
IF(${Fastjet_FOUND} MATCHES "FALSE")
IF (Fastjet_FIND_REQUIRED)
MESSAGE( FATAL_ERROR
"Fastjet shared library or includes not found\n"
"Please install Fastjet and/or set FASTJET_PREFIX environment\n"
"Please install Fastjet and/or set Fastjet_PREFIX environment\n"
)
ELSE (Fastjet_FIND_REQUIRED)
MESSAGE( WARNING
"Fastjet shared library or includes not found\n"
"Please install Fastjet and/or set FASTJET_PREFIX environment\n"
"Please install Fastjet and/or set Fastjet_PREFIX environment\n"
)
ENDIF (Fastjet_FIND_REQUIRED)
......@@ -95,12 +99,12 @@ IF(${FASTJET_FOUND} MATCHES "FALSE")
# end if not found
# if found :
ELSE(${FASTJET_FOUND} MATCHES "FALSE")
SET(FASTJET_FOUND TRUE)
ELSE(${Fastjet_FOUND} MATCHES "FALSE")
SET(Fastjet_FOUND TRUE)
#set Fastjet_LIBRARIES
FOREACH(COMPONENT ${Fastjet_FIND_COMPONENTS})
list(APPEND Fastjet_LIBRARIES ${${COMPONENT}_PATH})
ENDFOREACH(COMPONENT ${Fastjet_FIND_COMPONENTS})
ENDIF(${FASTJET_FOUND} MATCHES "FALSE")
ENDIF(${Fastjet_FOUND} MATCHES "FALSE")
......@@ -29,10 +29,12 @@ FOREACH (COMPONENT ${HepMC_FIND_COMPONENTS})
/usr/local
${HEPMC_PREFIX}
${HEPMC_ROOT}
${HEPMC_DIR}
${HEPMC_ROOT_DIR}
${HEP_ROOT}
$ENV{HEPMC_PREFIX}
$ENV{HEPMC_ROOT}
$ENV{HEPMC_DIR}
$ENV{HEPMC_ROOT_DIR}
$ENV{HEP_ROOT}
......@@ -89,7 +91,7 @@ IF(${HEPMC_FOUND} MATCHES "FALSE")
"Please install HepMC and/or set HEPMC_PREFIX environment\n"
)
ELSE (HepMC_FIND_REQUIRED)
MESSAGE( INFO "HepMC2 library not found")
MESSAGE("HepMC2 library not found")
ENDIF (HepMC_FIND_REQUIRED)
......
......@@ -77,17 +77,30 @@ QGSJETII-03 (-m11) : S. Ostapchenko,
Installation
**********************************************************
To install please get the latest version from the authors and
install the following pre-requisites: BOOST, HEPMC3, CMAKE (*).
The next optional step is to modify the CMakeLists.txt file to
your needs of which models should be compiled. After you have
done so, you can compile the program:
To install please get the latest version from the authors and install
the following pre-requisites: BOOST, HepMC3, CMAKE (*). Consider also
the extensions provided by Rivet (>v3) and fastjet.
In order to compile with Fastjet, set the Fastjet_DIR environment
variable to the location of your Fastjet installation.
In order to compile with HepMC3, make sure that the 'HepMC3-config'
tool is accessible via your PATH environment variable.
In order to compile with Rivet, make sure that the 'rivet-config' tool
is accessible via your PATH environment variable.
Note, the only one model is compiled by default: EPOS-LHC. You can
select many further models by passing "-DCRMC_SIBYLL" etc for all
available models to cmake. Check 'CMakeLists.txt' for a list of
models, or even better use the 'ccmake' tool for all configurations.
After you have done so, you can compile the program:
mkdir -p installed
cd installed
cmake DIRECTORY_WHERE_YOUR_SOURCE_IS
make install #you can compile faster with option --jobs=8
cmake <DIRECTORY_WHERE_YOUR_SOURCE_IS> [any futher config like -DCRMC_QGSJETII04]
make install # you can compile faster with option --jobs=8
To test the installation you can use
......@@ -97,11 +110,8 @@ bin/crmc -T <your options>
if you want to test some specific set of options.
(*) On CERN lxplus HEPMC2 (which is NOT RECOMMENDED anymore->use HepMC3) is preinstalled. Try setting
SET(HEPMC_PREFIX /afs/cern.ch/sw/lcg/external/HepMC/2.06.08/x86_64-slc6-gcc48-opt/)
in your CMakeLists.txt
(*) HepMC2 is not recommended any more. The support is deprecated and
will disappear. Use HepMC3.
**********************************************************
Troubleshoot
......@@ -251,7 +261,7 @@ When you run into this limitation you will receive lots of warning messages.
**********************************************************
Example For Analysing HepMC3 Files
******I****************************************************
******I***************************************************
In the directory ./ExampleAnalyser you can find code for a small
example that loops over the hepmc3 and hepmc3gz files and its particles. To
install make sure you have boost, hepmc3, and root setup as for the
......@@ -260,3 +270,4 @@ normal installation of crmc then run
"make" and "bin/analyse"
to run the code.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment