-
Notifications
You must be signed in to change notification settings - Fork 7
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Version 1.2.3 imported from tarball.
- Loading branch information
Showing
39 changed files
with
5,264 additions
and
2,375 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -16,6 +16,11 @@ Contact | |
|
||
[email protected] | ||
|
||
If you would like to receive notifications about OpenLoops updates and news | ||
per e-mail, please sign up to our mailing list at | ||
|
||
https://www.hepforge.org/lists/listinfo/openloops-announce | ||
|
||
OpenLoops is a Fortran 90 package for the calculation of tree and one-loop | ||
matrix elements for Standard Model processes based on | ||
|
||
|
@@ -63,35 +68,66 @@ Compile | |
|
||
Download and compile process libraries | ||
|
||
./scons auto=<processes> | ||
./openloops libinstall <processes> | ||
|
||
where <processes> is a white space separated list of the processes or | ||
process collections (with suffix ".coll") which should be installed. | ||
Some process collections are defined in the process repository (in | ||
particular "all.coll" to install all processes from the repository). | ||
User-defined collections can be set up as plain text files with file | ||
extension ".coll" with line break separated names of process libraries. | ||
|
||
where <processes> is a comma separated list of the processes or | ||
process collections (ending with "/") which should be installed. | ||
A list of the available process libraries can be found here | ||
|
||
http://openloops.hepforge.org/processes | ||
|
||
Process libraries usually include all real correction processes required | ||
for an NLO calculation. However these processes are not compiled by default. | ||
Note that Sherpa uses its own matrix elements for real corrections, thus | ||
compiling OpenLoops real corrections is not required for usage with Sherpa. | ||
In order to activate the compilation of real corrections, create a file named | ||
"openloops.cfg" in your installation directory which contains the following | ||
(besides other options which you might have set): | ||
|
||
[OpenLoops] | ||
compile_extra = 1 | ||
|
||
The set of available processes will be extended continuously. | ||
If you need a process which is not (yet) available, please contact the | ||
OpenLoops authors. | ||
|
||
|
||
================================================================ | ||
Update OpenLoops from SVN (when it's already installed from SVN) | ||
================================================================ | ||
====================================== | ||
Update OpenLoops and process libraries | ||
====================================== | ||
|
||
To pull updates from SVN and compile | ||
Note that automatic updates of the process independent OpenLoops code | ||
are only supported when OpenLoops was installed from SVN. | ||
|
||
svn update | ||
./scons | ||
To update from SVN and update all installed processes | ||
|
||
./openloops update | ||
|
||
To only update installed processes, but not OpenLoops itself | ||
(this also works when OpenLoops was not installed from SVN) | ||
|
||
./openloops update --processes | ||
|
||
Updating individual process libraries works the same way as installing | ||
new processes. | ||
|
||
./openloops libinstall <processes> | ||
|
||
To update process libraries (will install new libraries if available and | ||
replace old libraries if newer versions are available) | ||
If process collections are used, new processes in the collection | ||
will be installed and previously installed processes will be updated | ||
if newer versions are available. E.g. | ||
|
||
./scons auto=lhc/ | ||
./openloops libinstall all.coll | ||
|
||
After updating OpenLoops, updating the installed processes might be required | ||
for compatibility. | ||
Updating/installing processes also creates/updates a local database | ||
of all processes which are available for download. This database is used | ||
at runtime to report if a requested process is available for download, | ||
if it is not yet installed. | ||
|
||
|
||
===================== | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,27 +1,34 @@ | ||
|
||
cwd = Dir('..').abspath | ||
|
||
import os | ||
import sys | ||
sys.path.insert(0, os.path.abspath(os.path.join('..', 'pyol', 'tools'))) | ||
sys.path.insert(0, os.path.abspath(os.path.join(cwd, 'pyol', 'tools'))) | ||
import OLBaseConfig | ||
|
||
OLBaseConfig.prefix = '..' | ||
OLBaseConfig.prefix = cwd | ||
config = OLBaseConfig.get_config(ARGLIST) | ||
|
||
if config['import_path']: | ||
if config['import_env']: | ||
env_path = os.environ.get('PATH', '') | ||
env_ld_library_path = os.environ.get('LD_LIBRARY_PATH', '') | ||
else: | ||
env_path = [] | ||
env_ld_library_path = [] | ||
|
||
env = Environment(tools = ['default', config['fortran_compiler']], | ||
env = Environment(tools = ['default', config['fortran_tool']], | ||
ENV = {"PATH": env_path, "LD_LIBRARY_PATH": env_ld_library_path}, | ||
CXX = config['cxx'], | ||
F90 = config['fortran_compiler'], | ||
CCFLAGS = config['ccflags'] + config['generic_optimisation'], | ||
FORTRAN = config['fortran_compiler'], | ||
F90FLAGS = config['f90_flags'] + config['generic_optimisation'], | ||
F90PATH = [os.path.join('..', 'lib_src', 'openloops', 'mod')], | ||
LIBPATH = [os.path.join('..', config['generic_lib_dir'])], | ||
RPATH = [os.path.join('..', config['generic_lib_dir'])]) | ||
F90PATH = [os.path.join(cwd, 'lib_src', 'openloops', 'mod')], | ||
LIBPATH = [os.path.join(cwd, config['generic_lib_dir'])], | ||
LINKFLAGS = config['link_flags'], | ||
RPATH = [os.path.join(cwd, config['generic_lib_dir'])]) | ||
|
||
env.Program('OL_minimal.f90', LIBS = ['openloops']) | ||
env.Program('OL_fortran.f90', LIBS = ['openloops']) | ||
env.Program('OL_cpp.cpp', LIBS = ['openloops']) | ||
env.Program('OL_blha.cpp', LIBS = ['openloops']) | ||
env.Program('OL_minimal', ['OL_minimal.f90'], LIBS = ['openloops']) | ||
env.Program('OL_fortran', ['OL_fortran.f90'], LIBS = ['openloops']) | ||
env.Program('OL_cpp', ['OL_cpp.cpp'], LIBS = ['openloops']) | ||
env.Program('OL_blha', ['OL_blha.cpp'], LIBS = ['openloops']) |
Oops, something went wrong.