Installing FxFx interface in aMC@NLO for Pythia8

Asked by Onur Karayalcin

Hi,

I read all related questions and their answers but could not realize how to install or interface FxFx-merging with Pythia8 in <email address hidden>. After downloading aMCNLO tarball, I run the package using ./mg5_aMC command and then, I installed hepmc, pythia8, Delphes, ExRootAnalyzer and others. However, when I generate p p > t t~ j j process inclusively, I opened the Run card file to adjust 3 = ickkw option. It gives error because there is no option as FxFx-merging. So, I mean that I could not achieve to install FxFx-merging. I checked the link http://amcatnlo.web.cern.ch/amcatnlo/FxFx_merging.htm but I did not find how to install FxFx-merging with Pythia8.

I am asking how to install the interface FxFx-merging with Pythia8 in <email address hidden> version.

Thanks a lot for helping and guidance,

Regards,

Onur Karayalcin

Question information

Language:
English Edit question
Status:
Solved
For:
MadGraph5_aMC@NLO Edit question
Assignee:
Rikkert Frederix Edit question
Solved by:
Onur Karayalcin
Solved:
Last query:
Last reply:
Revision history for this message
Rikkert Frederix (frederix) said :
#1

Dear Onur,

There is nothing to install, since the default Pythia8 MC@NLO interface has the FxFx interface build in. What is the error you get if you set ickkw=3? Did you specify the pythia8 location in the configuration.txt file?

Best,
Rikkert

Revision history for this message
Onur Karayalcin (karayalcino) said :
#2

Dear Rikkert,

I tried to save configuration file in ../input/configuration.txt file but I could not do it properly. The file as follows partially,

.
.
.
#! Time allowed to answer question (if no answer takes default value)
#! 0: No time limit
# timeout = 60

#! Pythia8 path.
#! Defines the path to the pythia8 installation directory (i.e. the
#! on containing the lib, bin and include directories) .
#! If using a relative path, that starts from the mg5 directory
pythia8_path = /Users/onurkarayalcin/Programs/aMCNLO-2/MG5_aMC_v2_5_2/HEPTools/pythia8

#! MG5aMC_PY8_interface path
#! Defines the path of the C++ driver file that is used by MG5_aMC to
#! steer the Pythia8 shower.
#! Can be installed directly from within MG5_aMC with the following command:
#! MG5_aMC> install mg5amc_py8_interface
mg5amc_py8_interface_path = /Users/onurkarayalcin/Programs/aMCNLO-2/MG5_aMC_v2_5_2/HEPTools/MG5aMC_PY8_interface
.
.
.

I think the path of pythia_interface is okey but I wonder if it is correct or not ? If it is not, how can I save configuration file in configuration.txt file ?

Best,
Onur

Revision history for this message
Rikkert Frederix (frederix) said :
#3

Dear Onur,

What is the error you get with your run with ickkw=3? I need more information to be able to help you. What are the exact steps you do to get your error message from a fresh and clean MG5_aMC installation?

Best,
Rikkert

Revision history for this message
Onur Karayalcin (karayalcino) said :
#4

Dear Rikkert,

I installed MG5_aMC version 2.5.2 and open cd /MG5_aMC_v2_5_2/bin/ directory in order to compile ./mg5_aMC. I make needed installations by commands,

install hepmc
install pythia8

and I get the lines from terminal,

Successful installation of 'pythia8' in '/Users/onurkarayalcin/Programs/aMCNLO-2/MG5_aMC_v2_5_2/HEPTools'.
pythia8 successfully installed in /Users/onurkarayalcin/Programs/aMCNLO-2/MG5_aMC_v2_5_2/HEPTools.
save configuration file to /Users/onurkarayalcin/Programs/aMCNLO-2/MG5_aMC_v2_5_2/input/mg5_configuration.txt

Here, actually I do not know how to save config file in configuration.txt because defined paths for pythia8 interface look correct. After installation of Delphes, then I opened proc_card.dat to produce inclusively ,

generate p p > t t~ @1
add process p p > t t~ j @2
add process p p > t t~ j j@3

So, I compiled the file by ./bin/mg5_aMC proc_card.dat and get PROC_sm_0 directory. I entered PROC_sm_0 and use the command ./bin/generate_events to start simulation. Firstly, I choose PYTHIA8 for shower/hadronization. and press 0. Secondly, I entered run_card.dat and modified number of events to 1000, beam energy to 7 TeV but I can not set ickkw =3 because there is no option . Matching parameter part of run card as below,

#*********************************************************************
# Matching parameter (MLM only)
#*********************************************************************
 1 = ickkw ! 0 no matching, 1 MLM
 1.0 = alpsfact ! scale factor for QCD emission vx
 False = chcluster ! cluster only according to channel diag
 4 = asrwgtflavor ! highest quark flavor for a_s reweight
 False = auto_ptj_mjj ! Automatic setting of ptj and mjj if xqcut >0
                                   ! (turn off for VBF and single top processes)
 30.0 = xqcut ! minimum kt jet measure between partons

As you see, there are just two option such as 0 and 1. That is the main problem, I could not interface with FxFx-merging. However, I set ickkw =3 and save the file. Then, I get the warning is that ,

ickkw >1 is pure alpha and only partly implemented.
No module named madgraph.interface.extended_cmd
not valid argument. Valid argument are file path or value in (0,done,1,param,2,run,3,pythia8).

That is normal I mean since there is no option for ickkw>1. Thirdly, I entered in pythia_card.dat and change the qcut from -1 to 50 and opened other options like MPI,etc... I compiled and get the error,

INFO: Update the dependent parameter of the param_card.dat
ickkw >1 is pure alpha and only partly implemented.
Do you really want to continue
Command "generate_events " interrupted with error:
TypeError : __init__() takes at least 2 arguments (3 given)
Please report this bug on https://bugs.launchpad.net/mg5amcnlo
More information is found in 'ME5_debug'.
Please attach this file to your report.
quit

So, there are all the steps. I hope that explanation is fresh and clear enough. Excuse me for non-complete statements. My question is that are there wrong step?

Best,
Onur

Revision history for this message
Rikkert Frederix (frederix) said :
#5

Dear Onur,

FxFx works only for processes generated at NLO, see http://amcatnlo.web.cern.ch/amcatnlo/FxFx_merging.htm . Hence, you have to do

generate p p > t t~ [NLO] @1
add process p p > t t~ j [NLO] @2
...

I.e., at the "[NLO]" tag in the process generation.

Best,
Rikkert

Revision history for this message
Onur Karayalcin (karayalcino) said :
#6

Dear Rikkert,

 I understand and it works. I am a bit late to thank you so much since I wanted to be sure the solution is valid.

Best,

Onur

Revision history for this message
Onur Karayalcin (karayalcino) said :
#7

Dear Rikkert,

Firstly, I posted a question in https://bugs.launchpad.net/mg5amcnlo/+bug/1400049 but its status is invalid. That is the reason why I prefer to ask my question here.

I think I have the same problem in link https://bugs.launchpad.net/mg5amcnlo/+bug/1400049. I'm using MG5_aMC_v2_5_2 and I’m trying to validate the FxFx merging in aMC@NLO, studying the tt~ + jets production.I’ve generated my event sample inclusively in the following way:
- import model sm
- generate p p > t t~ [QCD] @0
- add process p p > t t~ j [QCD] @1
- add process p p > t t~ j j [QCD] @2
- output PROC_$MODELNAME_$X

../PROCNLO_loop_sm_2/ directory is created after compile with command ./bin/mg5_aMC proc_card.dat
To launch, I used commands

cd PROCNLO_loop_sm_2/
./bin/generate_events

- launch (I’ve set, in both the run_card.dat and in the shower_card.dat, the ‘correct values’ for FxFx merging flags (e.g. ickkw = 3, #ofevents=20000, beam energy=7000TeV for both, qcut=50, PYTHIA8=Shower) and I’ve not changed the default options like PDFsets. After compile, it is written on the terminal screen,

.
.
INFO: Poles successfully cancel for 20 points over 20 (tolerance=1.0e-05)
INFO: Starting run
INFO: Using 4 cores
INFO: Cleaning previous results
INFO: Doing NLO matched to parton shower
INFO: Setting up grids
INFO: Idle: 405, Running: 4, Completed: 0 [ current time: 11h10 ]
INFO: Idle: 404, Running: 4, Completed: 1 [ 3.9s ]
INFO: Idle: 402, Running: 4, Completed: 3 [ 8.4s ]
INFO: Idle: 401, Running: 4, Completed: 4 [ 8.4s ]
INFO: Idle: 400, Running: 4, Completed: 5 [ 8.7s ]
/Users/onurkarayalcin/Programs/aMCNLO-1/MG5_aMC_v2_5_2/PROCNLO_loop_sm_2/SubProcesses/P2_gg_ttxg/ajob1: line 34: 12375 Segmentation fault: 11 ../madevent_mintMC > log.txt < input_app.txt 2>&1
WARNING: program /Users/onurkarayalcin/Programs/aMCNLO-1/MG5_aMC_v2_5_2/PROCNLO_loop_sm_2/SubProcesses/P2_gg_ttxg/ajob1 4 F 0 0 launch ends with non zero status: 139. Stop all computation
INFO: Idle: 400, Running: 3, Completed: 6 [ 18.7s ]
INFO: Idle: 400, Running: 2, Completed: 7 [ 18.8s ]
INFO: Idle: 400, Running: 1, Completed: 8 [ 18.8s ]
INFO: Idle: 400, Running: 0, Completed: 9 [ 18.9s ]
.
.

I get segmentation error(I repeated the procedure for pp>tt~ j process inclusively but it gives the same error) and stop all computation. Then, I describe your recommendations and applied respectively. I go to the

/Users/onurkarayalcin/Programs/aMCNLO-1/MG5_aMC_v2_5_2/PROCNLO_loop_sm_2/SubProcesses/P2_gg_ttxg/GF3

directory and execute

../madevent_mintMC <input_app.txt

command. So, it gives the error like

ERROR :: MadFKS parameter file FKS_params.dat could not be found or is malformed. Please specify it.

And I tried it for other GF* directories and other P2_* directories, however I get the same error. Additionally, I have G* files for all process folders for tt~ +2j process. Secondly, P1* subprocess directories work without any error.

I can not get the source of error exactly. Is it related to PDFsets? Would you help and guide me?

Best,
Onur

Revision history for this message
Rikkert Frederix (frederix) said :
#8

Dear Onur,

Could you try running

../madevent_mintMC <input_app.txt

in the

/Users/onurkarayalcin/Programs/aMCNLO-1/MG5_aMC_v2_5_2/PROCNLO_loop_sm_2/SubProcesses/P2_gg_ttxg/GF1

directory? What error does it give?

Best,
Rikkert

Revision history for this message
Onur Karayalcin (karayalcino) said :
#9

Dear Rikkert,

Firstly, I excuse to reply lately. I applied your instruction and get the error like ,

########################################################################
# #
# You are using OneLOop-3.6 #
# #
# for the evaluation of 1-loop scalar 1-, 2-, 3- and 4-point functions #
# #
# author: Andreas van Hameren <email address hidden> #
# date: 18-02-2015 #
# #
# Please cite #
# A. van Hameren, #
# Comput.Phys.Commun. 182 (2011) 2427-2438, arXiv:1007.4716 #
# A. van Hameren, C.G. Papadopoulos and R. Pittau, #
# JHEP 0909:106,2009, arXiv:0903.4665 #
# in publications with results obtained with the help of this program. #
# #
########################################################################
 ---- POLES CANCELLED ----

         *******************************************
         * C O L L I E R *
         * *
         * Complex One-Loop Library *
         * In Extended Regularizations *
         * *
         * by A.Denner, S.Dittmaier, L.Hofer *
         * *
         * version 1.1 *
         * *
         *******************************************

Program received signal SIGSEGV: Segmentation fault - invalid memory reference.

Backtrace for this error:
#0 0x11334e6a9
#1 0x11334da75
#2 0x7fff8f2dc529
#3 0x106dd008b
#4 0x106dd0f70
#5 0x106d3a1a4
#6 0x1065939e5
#7 0x10659206e
#8 0x106530ce3
#9 0x10656f477
#10 0x106525c2d
#11 0x106528b9f
#12 0x106528fea
#13 0x1064e8514
#14 0x1064aa3e4
#15 0x1064aa9f8
#16 0x1064f2ad6
#17 0x1064ee540
#18 0x1064f50e9
#19 0x10703de57
Segmentation fault: 11

It says poles cancelled and give 19 errors with segmentation fault. I wonder about that I could not tune physical parameters correctly. I changed beam energies from 6500 to 7000 TeV, qcut =50, jet radius = 1.0 and other are default parameters. What could you recommend me to do ?

Best,
Onur

Revision history for this message
Rikkert Frederix (frederix) said :
#10

Dear Onur,

This does not seem to be a problem with MG5_aMC as such, but rather with the use of non-compatible compilers on your system. Please make sure to install/use compatible c++/fortran compilers and reinstall MG5_aMC from scratch. Please ask your local system administrator for assistance in case you don't know how to do this.

Best,
Rikkert

Revision history for this message
Valentin Hirschi (valentin-hirschi) said :
#11

I suspect your problem is related to one of the loop reduction library that is activated in your run: COLLIER.

Some other users have reported similar segmentation faults with such reduction tool and similarly complicated processes. It is therefore important that we diagnose the problem and fix it.

To make sure of this, one could rerun by de-activating COLLIER in the 'MadLoopParams.dat' card located in

/Users/onurkarayalcin/Programs/aMCNLO-1/MG5_aMC_v2_5_2/PROCNLO_loop_sm_2/Cards

and change this entry

#MLReductionLib
!6|7|1

to

#MLReductionLib
6|1

(make sure to remove the exclamation mark).

However, I would prefer to first investigate what exactly goes wrong here, so that we can fix it.
Could you run the same command indicated by Rikkert with the debugger gdb?
You can do so by simply running:

cd /Users/onurkarayalcin/Programs/aMCNLO-1/MG5_aMC_v2_5_2/PROCNLO_loop_sm_2/SubProcesses/P2_gg_ttxg/GF3
gdb ../madevent_mintMC

Which opens the gdb console in which you can run the following command:

run < input_app.txt

It might be that the traceback will not be complete as the compiler flag '-g' is not used everywhere, but it should hopefully confirm that the problem lies in COLLIER.

Then in order for us to be able to easily reproduce and fix the problem, it would be ideal to know which PS point triggered the segmentation fault. Could you then do the following:

a)
In the folder:

/Users/onurkarayalcin/Programs/aMCNLO-1/MG5_aMC_v2_5_2/PROCNLO_loop_sm_2/SubProcesses/P2_gg_ttxg/V2_gg_ttxg

Open the file 'loop_matrix.f' and right under the lines (around line 445):

C ----------
C BEGIN CODE
C ----------

Add the following code:

      write(*,*) '===== DIAGNOSTIC ====='
      write(*,*) 'Helicity selected=',USERHEL
      write(*,*) 'MU_R=',MU_R
      write(*,*) 'G=',G
      CALL WRITE_MOM(P_USER)
      write(*,*) '======================'

b) In the same folder, run:

make

to regenerate the library '[...]/SubProcesses/P2_gg_ttxg/libMadLoop.a'

c) Now in the directory:

/Users/onurkarayalcin/Programs/aMCNLO-1/MG5_aMC_v2_5_2/PROCNLO_loop_sm_2/SubProcesses/P2_gg_ttxg

Run the following to recompile the executable madevent_mintMC, linked this time to the newly generated 'libMadLoop.a':

rm madevent_mintMC
make madevent_mintMC

d) Now you can go back to the integration folder:

/Users/onurkarayalcin/Programs/aMCNLO-1/MG5_aMC_v2_5_2/PROCNLO_loop_sm_2/SubProcesses/P2_gg_ttxg/GF1

and run it as before with:

../madevent_mintMC < input_app.txt

However, this time, right before the crash, you will have the 'DIAGNOSTIC' printout which will reveal what was the problematic PS point and allow us to independently further investigate it. Please let us know what it is.

Thank you for you help with this.

Revision history for this message
Onur Karayalcin (karayalcino) said :
#12

Dear Valentin,

Firstly, I try to investigate the fault according to your instructions and after applying the commands as follows,

 cd /Users/onurkarayalcin/Programs/aMCNLO-1/MG5_aMC_v2_5_2/PROCNLO_loop_sm_2/SubProcesses/P2_gg_ttxg/GF3

gdb ../madevent_mintMC

run < input_app.txt

It gave me the lines below,
# #
########################################################################
 ---- POLES CANCELLED ----
ABS integral = 0.5737E+01 +/- 0.8367E+00 ( 14.584 %)
Integral = 0.1294E+01 +/- 0.5493E+00 ( 42.431 %)
Virtual = 0.7888E-01 +/- 0.2610E-01 ( 33.094 %)
Virtual ratio = 0.6732E+01 +/- 0.8135E+00 ( 12.084 %)
ABS virtual = 0.2817E+00 +/- 0.2521E-01 ( 8.950 %)
Born*ao2pi = 0.1997E-01 +/- 0.1702E-02 ( 8.523 %)
Chi^2 per d.o.f. 0.0000E+00
accumulated results ABS integral = 0.5737E+01 +/- 0.8367E+00 ( 14.584 %)
accumulated results Integral = 0.1294E+01 +/- 0.5493E+00 ( 42.431 %)
accumulated results Virtual = 0.7888E-01 +/- 0.2610E-01 ( 33.094 %)
accumulated results Virtual ratio = 0.6732E+01 +/- 0.8135E+00 ( 12.084 %)
accumulated results ABS virtual = 0.2817E+00 +/- 0.2521E-01 ( 8.950 %)
accumulated results Born*ao2pi = 0.1997E-01 +/- 0.1702E-02 ( 8.523 %)
accumulated result Chi^2 per DoF = 0.0000E+00
update virtual fraction to: 0.250 3.950
At line 268 of file MC_integer.f (unit = 52, file = 'grid.MC_integer')
Fortran runtime error: Cannot write to file opened for READ
[Inferior 1 (process 5232) exited with code 02]

So, I thought there was no fault and continue to do other procedure and every step works fıne. As a result, I get a repetitious screen after run by

../madevent_mintMC < input_app.txt

command. On the screen, there is 'DIAGNOSTIC' printouts like

======================
 ===== DIAGNOSTIC =====
 Helicity selected= 7
 MU_R= 202.10154590450264
 G= 1.2000888585250415
  Phase space point:
     ---------------------
     E | px | py | pz | m
     0.27380490882502698E+03 0.00000000000000000E+00 0.00000000000000000E+00 0.27380490882502698E+03 0.00000000000000000E+00
     0.27380490882502698E+03 -0.00000000000000000E+00 -0.00000000000000000E+00 -0.27380490882502698E+03 0.00000000000000000E+00
     0.18574475520199528E+03 0.79166361909432332E+01 -0.28918796287646309E+02 -0.60606469768028994E+02 0.17300000000000000E+03
     0.19826673856321568E+03 0.73176264923307714E+01 -0.22854109199018684E+02 -0.93834117759653836E+02 0.17300000000000000E+03
     0.16359832388484301E+03 -0.15234262683274004E+02 0.51772905486664989E+02 0.15444058752768282E+03 0.19073486328125000E-05
     Four-momentum conservation sum:
    -0.28421709430404007E-13 0.00000000000000000E+00 0.71054273576010019E-14 0.00000000000000000E+00
    ---------------------
and a bunch of this kind of DIAGNOSTIC printouts and running is stopped by the fault like

*** Error in `../madevent_mintMC': corrupted double-linked list: 0x000000000f669e50 ***
======= Backtrace: =========
/lib/x86_64-linux-gnu/libc.so.6(+0x777e5)[0x7f50e3ed57e5]
/lib/x86_64-linux-gnu/libc.so.6(+0x80539)[0x7f50e3ede539]
/lib/x86_64-linux-gnu/libc.so.6(cfree+0x4c)[0x7f50e3ee198c]
../madevent_mintMC[0xc2ba48]
../madevent_mintMC[0xa972c5]
../madevent_mintMC[0x4bf859]
../madevent_mintMC[0x4c4a4e]
../madevent_mintMC[0x4c4c25]
.
.
.
Program received signal SIGABRT: Process abort signal.

Backtrace for this error:
#0 0x7F50E49A0E08
#1 0x7F50E499FF90
#2 0x7F50E3E934AF
#3 0x7F50E3E93428
#4 0x7F50E3E95029
#5 0x7F50E3ED57E9
#6 0x7F50E3EDE538
#7 0x7F50E3EE198B
#8 0xC2BA47 in std::ctype<char>::do_widen(char) const
#9 0xA972C4 in void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char const*>(char const*, char const*, std::forward_iterator_tag)
#10 0x4BF858 in void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char const*>(char const*, char const*, std::forward_iterator_tag)
#11 0x4C4A4D in void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char const*>(char const*, char const*, std::forward_iterator_tag)
.
.
.
#19 0x4B10A4 in void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char const*>(char const*, char const*, std::forward_iterator_tag)
#20 0x4B4126 in void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char const*>(char const*, char const*, std::forward_iterator_tag)
#21 0x7F50E3E7E82F
#22 0x405588
#23 0xFFFFFFFFFFFFFFFF
Aborted (core dumped)

I get these errors. What could you recommend me at this stage ?

Best,
Onur

Revision history for this message
Valentin Hirschi (valentin-hirschi) said :
#13

Thanks for these tests Onur,

Unfortunately the traceback is not accurate enough to allow to pinpoint the
origin of the seg. fault. So we have to recompile MadLoop with the option
'-g' in the compiler flags.

You can do so by opening

/Users/onurkarayalcin/Programs/aMCNLO-1/MG5_aMC_v2_
5_2/PROCNLO_loop_sm_2/Source/make_opts

and uncommenting the following line (around line 13):

#FFLAGS+= -g -fbounds-check
-ffpe-trap=invalid,zero,overflow,underflow,denormal -Wall
->
FFLAGS+= -g -fbounds-check
-ffpe-trap=invalid,zero,overflow,underflow,denormal -Wall

(i.e. remove the '#' symbol).

Then you can recompile MadLoop entirely by going to the directory:

/Users/onurkarayalcin/Programs/aMCNLO-1/MG5_aMC_v2_5_2/PROCNLO_loop_sm_2/
SubProcesses/P2_gg_ttxg/V2_gg_ttxg

You can clean the compilation and recompile from scratch with:

make clean
make

(You will see that this time the debugging flags such as '-g' are added to
the gfortran compilation commands).

As before you can now recompile 'madevent_mintMC' with:

cd /Users/onurkarayalcin/Programs/aMCNLO-1/MG5_aMC_v2_5_2/PROCNLO_loop_sm_2/
SubProcesses/P2_gg_ttxg
rm madevent_mintMC
make madevent_mintMC

And then relaunch the integration as before in
[...]/SubProcesses/P2_gg_ttxg/GF3
(or GF1, whichever was giving you the segfault.)

Now this time the traceback should be more precise.

Concerning the 'DIAGNOSTIC' printout, I am not interested in all those
appearing on your screen but only *the last one* right before the segfault
happens.
So please copy and report here that last one just before the segmentation
fault.
This is because it will reveal what phase-space point caused the seg-fault
and I can then attempt to easily reproduce and fix this issue myself.

On Thu, Mar 9, 2017 at 6:08 PM, Onur Karayalcin <
<email address hidden>> wrote:

> Question #526586 on MadGraph5_aMC@NLO changed:
> https://answers.launchpad.net/mg5amcnlo/+question/526586
>
> Onur Karayalcin posted a new comment:
> Dear Valentin,
>
> Firstly, I try to investigate the fault according to your instructions
> and after applying the commands as follows,
>
> cd
> /Users/onurkarayalcin/Programs/aMCNLO-1/MG5_aMC_v2_5_2/PROCNLO_loop_sm_2/
> SubProcesses/P2_gg_ttxg/GF3
>
> gdb ../madevent_mintMC
>
> run < input_app.txt
>
> It gave me the lines below,
> # #
> ########################################################################
> ---- POLES CANCELLED ----
> ABS integral = 0.5737E+01 +/- 0.8367E+00 ( 14.584 %)
> Integral = 0.1294E+01 +/- 0.5493E+00 ( 42.431 %)
> Virtual = 0.7888E-01 +/- 0.2610E-01 ( 33.094 %)
> Virtual ratio = 0.6732E+01 +/- 0.8135E+00 ( 12.084 %)
> ABS virtual = 0.2817E+00 +/- 0.2521E-01 ( 8.950 %)
> Born*ao2pi = 0.1997E-01 +/- 0.1702E-02 ( 8.523 %)
> Chi^2 per d.o.f. 0.0000E+00
> accumulated results ABS integral = 0.5737E+01 +/- 0.8367E+00 ( 14.584
> %)
> accumulated results Integral = 0.1294E+01 +/- 0.5493E+00 ( 42.431
> %)
> accumulated results Virtual = 0.7888E-01 +/- 0.2610E-01 ( 33.094
> %)
> accumulated results Virtual ratio = 0.6732E+01 +/- 0.8135E+00 ( 12.084
> %)
> accumulated results ABS virtual = 0.2817E+00 +/- 0.2521E-01 ( 8.950
> %)
> accumulated results Born*ao2pi = 0.1997E-01 +/- 0.1702E-02 ( 8.523
> %)
> accumulated result Chi^2 per DoF = 0.0000E+00
> update virtual fraction to: 0.250 3.950
> At line 268 of file MC_integer.f (unit = 52, file = 'grid.MC_integer')
> Fortran runtime error: Cannot write to file opened for READ
> [Inferior 1 (process 5232) exited with code 02]
>
> So, I thought there was no fault and continue to do other procedure and
> every step works fıne. As a result, I get a repetitious screen after run
> by
>
> ../madevent_mintMC < input_app.txt
>
> command. On the screen, there is 'DIAGNOSTIC' printouts like
>
> ======================
> ===== DIAGNOSTIC =====
> Helicity selected= 7
> MU_R= 202.10154590450264
> G= 1.2000888585250415
> Phase space point:
> ---------------------
> E | px | py | pz | m
> 0.27380490882502698E+03 0.00000000000000000E+00
> 0.00000000000000000E+00 0.27380490882502698E+03
> 0.00000000000000000E+00
> 0.27380490882502698E+03 -0.00000000000000000E+00
> -0.00000000000000000E+00 -0.27380490882502698E+03
> 0.00000000000000000E+00
> 0.18574475520199528E+03 0.79166361909432332E+01
> -0.28918796287646309E+02 -0.60606469768028994E+02
> 0.17300000000000000E+03
> 0.19826673856321568E+03 0.73176264923307714E+01
> -0.22854109199018684E+02 -0.93834117759653836E+02
> 0.17300000000000000E+03
> 0.16359832388484301E+03 -0.15234262683274004E+02
> 0.51772905486664989E+02 0.15444058752768282E+03
> 0.19073486328125000E-05
> Four-momentum conservation sum:
> -0.28421709430404007E-13 0.00000000000000000E+00
> 0.71054273576010019E-14 0.00000000000000000E+00
> ---------------------
> and a bunch of this kind of DIAGNOSTIC printouts and running is stopped
> by the fault like
>
> *** Error in `../madevent_mintMC': corrupted double-linked list:
> 0x000000000f669e50 ***
> ======= Backtrace: =========
> /lib/x86_64-linux-gnu/libc.so.6(+0x777e5)[0x7f50e3ed57e5]
> /lib/x86_64-linux-gnu/libc.so.6(+0x80539)[0x7f50e3ede539]
> /lib/x86_64-linux-gnu/libc.so.6(cfree+0x4c)[0x7f50e3ee198c]
> ../madevent_mintMC[0xc2ba48]
> ../madevent_mintMC[0xa972c5]
> ../madevent_mintMC[0x4bf859]
> ../madevent_mintMC[0x4c4a4e]
> ../madevent_mintMC[0x4c4c25]
> .
> .
> .
> Program received signal SIGABRT: Process abort signal.
>
> Backtrace for this error:
> #0 0x7F50E49A0E08
> #1 0x7F50E499FF90
> #2 0x7F50E3E934AF
> #3 0x7F50E3E93428
> #4 0x7F50E3E95029
> #5 0x7F50E3ED57E9
> #6 0x7F50E3EDE538
> #7 0x7F50E3EE198B
> #8 0xC2BA47 in std::ctype<char>::do_widen(char) const
> #9 0xA972C4 in void std::__cxx11::basic_string<char,
> std::char_traits<char>, std::allocator<char> >::_M_construct<char
> const*>(char const*, char const*, std::forward_iterator_tag)
> #10 0x4BF858 in void std::__cxx11::basic_string<char,
> std::char_traits<char>, std::allocator<char> >::_M_construct<char
> const*>(char const*, char const*, std::forward_iterator_tag)
> #11 0x4C4A4D in void std::__cxx11::basic_string<char,
> std::char_traits<char>, std::allocator<char> >::_M_construct<char
> const*>(char const*, char const*, std::forward_iterator_tag)
> .
> .
> .
> #19 0x4B10A4 in void std::__cxx11::basic_string<char,
> std::char_traits<char>, std::allocator<char> >::_M_construct<char
> const*>(char const*, char const*, std::forward_iterator_tag)
> #20 0x4B4126 in void std::__cxx11::basic_string<char,
> std::char_traits<char>, std::allocator<char> >::_M_construct<char
> const*>(char const*, char const*, std::forward_iterator_tag)
> #21 0x7F50E3E7E82F
> #22 0x405588
> #23 0xFFFFFFFFFFFFFFFF
> Aborted (core dumped)
>
> I get these errors. What could you recommend me at this stage ?
>
> Best,
> Onur
>
> --
> You received this question notification because you are an answer
> contact for MadGraph5_aMC@NLO.
>

--
Valentin

Revision history for this message
Onur Karayalcin (karayalcino) said :
#14

Dear Valentin,

I opened the file:

 /Users/onurkarayalcin/Programs/aMCNLO-1/MG5_aMC_v2_
5_2/PROCNLO_loop_sm_2/Source/make_opts

and made active the comment line 13 which is

 FFLAGS+= -g -fbounds-check
-ffpe-trap=invalid,zero,overflow,underflow,denormal -Wall

Then I recompiled the Madloop file and applied other instructions. I it gave on the screen :

#15 0x4B4126 in void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char const*>(char const*, char const*, std::forward_iterator_tag)
#16 0x7FFBAA09382F
#17 0x405588
#18 0xFFFFFFFFFFFFFFFF
Segmentation fault (core dumped)

I thought that you care about this lines of error , just before seg fault. However, I wonder if it is not. Additionally, I repeated a few times applying your instructions step by step. In my opinion, I could not make steps correctly because there is no "-g" flagged error.

What could you recommend me to next step ?

Best,
Onur

Revision history for this message
Valentin Hirschi (valentin-hirschi) said :
#15

Ok, well given this traceback I am no longer sure that the issue comes from
MadLoop.

In any case, could you report here the latest "Diagnostic" PS point that
was printed out *right before* the segmentation showed up?

On Fri, Mar 10, 2017 at 6:04 PM, Onur Karayalcin <
<email address hidden>> wrote:

> Question #526586 on MadGraph5_aMC@NLO changed:
> https://answers.launchpad.net/mg5amcnlo/+question/526586
>
> Onur Karayalcin posted a new comment:
> Dear Valentin,
>
> I opened the file:
>
> /Users/onurkarayalcin/Programs/aMCNLO-1/MG5_aMC_v2_
> 5_2/PROCNLO_loop_sm_2/Source/make_opts
>
> and made active the comment line 13 which is
>
> FFLAGS+= -g -fbounds-check
> -ffpe-trap=invalid,zero,overflow,underflow,denormal -Wall
>
> Then I recompiled the Madloop file and applied other instructions. I it
> gave on the screen :
>
> #15 0x4B4126 in void std::__cxx11::basic_string<char,
> std::char_traits<char>, std::allocator<char> >::_M_construct<char
> const*>(char const*, char const*, std::forward_iterator_tag)
> #16 0x7FFBAA09382F
> #17 0x405588
> #18 0xFFFFFFFFFFFFFFFF
> Segmentation fault (core dumped)
>
> I thought that you care about this lines of error , just before seg
> fault. However, I wonder if it is not. Additionally, I repeated a few
> times applying your instructions step by step. In my opinion, I could
> not make steps correctly because there is no "-g" flagged error.
>
> What could you recommend me to next step ?
>
> Best,
> Onur
>
> --
> You received this question notification because you are an answer
> contact for MadGraph5_aMC@NLO.
>

--
Valentin

Revision history for this message
Onur Karayalcin (karayalcino) said :
#16

Dear Valentin,

I give a late feedback just to be sure about applying instructions correctly. So, the last DIAGNOSTIC values on the screen as follows:

 ======================
 ===== DIAGNOSTIC =====
 Helicity selected= 29
 MU_R= 220.30685329038042
 G= 1.2040982402681804
  Phase space point:
     ---------------------
     E | px | py | pz | m
     0.29701246793797367E+03 0.00000000000000000E+00 0.00000000000000000E+00 0.29701246793797367E+03 0.00000000000000000E+00
     0.29701246793797367E+03 -0.00000000000000000E+00 -0.00000000000000000E+00 -0.29701246793797367E+03 0.00000000000000000E+00
     0.27784814448279513E+03 0.54456042107397927E+02 0.82510209015335207E+02 -0.19364192799798090E+03 0.17299999999999994E+03
     0.28078705623537780E+03 -0.29992000594872842E+02 -0.10791309156056298E+03 0.19070295099837318E+03 0.17299999999999997E+03
     0.35389735157774375E+02 -0.24464041512525078E+02 0.25402882545227776E+02 0.29389769996077035E+01 0.38628224721001747E-06
     Four-momentum conservation sum:
     0.21316282072803006E-13 -0.71054273576010019E-14 -0.71054273576010019E-14 0.14210854715202004E-13
    ---------------------
 ======================

         *******************************************
         * C O L L I E R *
         * *
         * Complex One-Loop Library *
         * In Extended Regularizations *
         * *
         * by A.Denner, S.Dittmaier, L.Hofer *
         * *
         * version 1.1 *
         * *
         *******************************************

*** Error in `../madevent_mintMC': munmap_chunk(): invalid pointer: 0x000000000e622800 ***
======= Backtrace: =========
/lib/x86_64-linux-gnu/libc.so.6(+0x777e5)[0x7f6d847937e5]
/lib/x86_64-linux-gnu/libc.so.6(cfree+0x1a8)[0x7f6d8479fae8]
../madevent_mintMC[0x52d692]
../madevent_mintMC[0x529831]
../madevent_mintMC[0x555225]
../madevent_mintMC[0x509e40]
../madevent_mintMC[0x4c8013]
../madevent_mintMC[0x4cc6be]
../madevent_mintMC[0x4ccd28]
../madevent_mintMC[0x4a5bf3]
../madevent_mintMC[0x46cda9]
../madevent_mintMC[0x46d51b]
../madevent_mintMC[0x4af2db]
../madevent_mintMC[0x4ab20c]
../madevent_mintMC[0x4b10a5]
../madevent_mintMC[0x4b4127]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf0)[0x7f6d8473c830]
../madevent_mintMC[0x405589]

There is more than you want to see from the screen but I desired give you detailed info. Maybe there is a useful line.

What could you recommend me to apply on this step ?

Best,
Onur

Revision history for this message
Valentin Hirschi (valentin-hirschi) said :
#17

This is indeed the phase-space point that is responsible for the
segmentation fault.

When I try to independently evaluate it, it is unstable and requires either
the loop-reduction tool COLLIER or NINJA in quadruple precision.
With the default setup, COLLIER will be used first and in my case
everything works as intended and point is rescued.
In your case however, COLLIER triggers a segmentation fault that I
unfortunately cannot reproduce.

We should then first make sure that disabling COLLIER solves the problem.
So please edit the file in:

/Users/onurkarayalcin/Programs/aMCNLO-1/MG5_aMC_v2_5_2/PROCNLO_loop_sm_2/SubProcesses/MadLoopParams.dat

and change

#MLReductionLib
6|7|1

into

#MLReductionLib
6

And then rerun madevent_mintMC in the GF folder like you did before. This
time there shouldn't be any crash.

Also, if you change the entry before to

#MLReductionLib
7

(which forces MadLoop to always use COLLIER) you should get a crash very
soon when running madevent_mintMC.

Given that I cannot reproduce this segmentation fault, I would ask you to
recompile COLLIER with the '-g' debug flag as follows:

cd
/Users/onurkarayalcin/Programs/aMCNLO-1/MG5_aMC_v2_5_2/HEPTools/collier/COLLIER-1.1/build
cmake -DCMAKE_BUILD_TYPE=Debug -Dstatic=ON ..
make clean
make
cd ..
cp libcollier.a ../libcollier.a

And then re-link madevent_mintMC like you did before; that is:

cd /Users/onurkarayalcin/Programs/aMCNLO-1/MG5_aMC_v2_5_2/PROCNLO_loop_sm_2/
SubProcesses/P2_gg_ttxg
rm madevent_mintMC
make madevent_mintMC

You should now be able to rerun madevent_mintMC from one of the GF folder
with 'gdb' and this time when running 'bt' from withing gdb, you should
have a more explicit backtrace (when doing this, make sure that you have 7
present in the list of the option '#MLReductionLib' above):

cd /Users/onurkarayalcin/Programs/aMCNLO-1/MG5_aMC_v2_5_2/PROCNLO_loop_sm_2/
SubProcesses/P2_gg_ttxg/GF3
gdb ../madevent_mintMC
gdb > run < input_app.txt
[...] (seg fault happening)
gdb > bt

In conclusion please tell me the following:

a) Confirm that the segmentation fault do not happen when COLLIER is not
active. (i.e. when '7' is not n the list of #MLReductionLib)

b) Report the backtrace that you obtain in gdb when the segmentation fault
is triggered with COLLIER recompiled with the '-g' flag.

Thank you for your help in fixing this problem.

On Sun, Mar 12, 2017 at 10:53 PM, Onur Karayalcin <
<email address hidden>> wrote:

> Question #526586 on MadGraph5_aMC@NLO changed:
> https://answers.launchpad.net/mg5amcnlo/+question/526586
>
> Onur Karayalcin posted a new comment:
> Dear Valentin,
>
> I give a late feedback just to be sure about applying instructions
> correctly. So, the last DIAGNOSTIC values on the screen as follows:
>
> ======================
> ===== DIAGNOSTIC =====
> Helicity selected= 29
> MU_R= 220.30685329038042
> G= 1.2040982402681804
> Phase space point:
> ---------------------
> E | px | py | pz | m
> 0.29701246793797367E+03 0.00000000000000000E+00
> 0.00000000000000000E+00 0.29701246793797367E+03
> 0.00000000000000000E+00
> 0.29701246793797367E+03 -0.00000000000000000E+00
> -0.00000000000000000E+00 -0.29701246793797367E+03
> 0.00000000000000000E+00
> 0.27784814448279513E+03 0.54456042107397927E+02
> 0.82510209015335207E+02 -0.19364192799798090E+03
> 0.17299999999999994E+03
> 0.28078705623537780E+03 -0.29992000594872842E+02
> -0.10791309156056298E+03 0.19070295099837318E+03
> 0.17299999999999997E+03
> 0.35389735157774375E+02 -0.24464041512525078E+02
> 0.25402882545227776E+02 0.29389769996077035E+01
> 0.38628224721001747E-06
> Four-momentum conservation sum:
> 0.21316282072803006E-13 -0.71054273576010019E-14
> -0.71054273576010019E-14 0.14210854715202004E-13
> ---------------------
> ======================
>
> *******************************************
> * C O L L I E R *
> * *
> * Complex One-Loop Library *
> * In Extended Regularizations *
> * *
> * by A.Denner, S.Dittmaier, L.Hofer *
> * *
> * version 1.1 *
> * *
> *******************************************
>
> *** Error in `../madevent_mintMC': munmap_chunk(): invalid pointer:
> 0x000000000e622800 ***
> ======= Backtrace: =========
> /lib/x86_64-linux-gnu/libc.so.6(+0x777e5)[0x7f6d847937e5]
> /lib/x86_64-linux-gnu/libc.so.6(cfree+0x1a8)[0x7f6d8479fae8]
> ../madevent_mintMC[0x52d692]
> ../madevent_mintMC[0x529831]
> ../madevent_mintMC[0x555225]
> ../madevent_mintMC[0x509e40]
> ../madevent_mintMC[0x4c8013]
> ../madevent_mintMC[0x4cc6be]
> ../madevent_mintMC[0x4ccd28]
> ../madevent_mintMC[0x4a5bf3]
> ../madevent_mintMC[0x46cda9]
> ../madevent_mintMC[0x46d51b]
> ../madevent_mintMC[0x4af2db]
> ../madevent_mintMC[0x4ab20c]
> ../madevent_mintMC[0x4b10a5]
> ../madevent_mintMC[0x4b4127]
> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf0)[0x7f6d8473c830]
> ../madevent_mintMC[0x405589]
>
> There is more than you want to see from the screen but I desired give
> you detailed info. Maybe there is a useful line.
>
> What could you recommend me to apply on this step ?
>
> Best,
> Onur
>
> --
> You received this question notification because you are an answer
> contact for MadGraph5_aMC@NLO.
>

--
Valentin

Revision history for this message
Onur Karayalcin (karayalcino) said :
#18

Dear Valentin,

I have applied the instructions step by step and I get the lines when '6' is selected in MadloopParams.dat library:
.
.
 Diagram information for clustering has been set-up for nFKSprocess 9
 Diagram information for clustering has been set-up for nFKSprocess 10
 getting user params
Enter number of events and iterations:

I mean it works. I do not have so much idea about what I should reach as a result but try to answer your questions as follows:

a) When COLLIER is not active there is any error and I get some meaningful results and a table of values. There is no seg faults or anything like that. However, some errors arise if I use '7' in MadloopParams.dat library.

b)When I select '7' in MadloopsParams.dat library , it is reported :

        *******************************************
         * C O L L I E R *
         * *
         * Complex One-Loop Library *
         * In Extended Regularizations *
         * *
         * by A.Denner, S.Dittmaier, L.Hofer *
         * *
         * version 1.1 *
         * *
         *******************************************

At line 1419 of file /home/cakir/Work/Programs/MonteCarlo/MG5_aMC_v2_5_2/HEPTools/collier/COLLIER-1.1/src/tensors/BuildTensors.F90
Fortran runtime error: Index '6' of dimension 2 of array 'addgtab' above upper bound of 5
[Inferior 1 (process 11186) exited with code 02]
(gdb) bt
No stack.
(gdb)

That is the result which I get the same for GF1 and GF3.

Thank you for help me with patience. What could you recommend after this step ?

Best,
Onur

Revision history for this message
Valentin Hirschi (valentin-hirschi) said :
#19

Thank you, this is very instructive.

So first of all, let me stress that you can continue with your project and
application by simply using the value '6' for the entry '#MLReductionLib'
in your MadLoopParams.dat card.
As you observe, this gets rid of your problem.

That being said, it would be very helpful for us to completely fix the
problem if you could once again copy the 'DIAGNOSTIC' lines (i.e last
phase-space point details) that appear *right before* you see the crash on:

"""
At line 1419 of file /home/cakir/Work/Programs/MonteCarlo/MG5_aMC_v2_5_2/
HEPTools/collier/COLLIER-1.1/src/tensors/BuildTensors.F90
Fortran runtime error: Index '6' of dimension 2 of array 'addgtab' above
upper bound of 5
"""

Please, also send me by email (at <email address hidden>) the
following files:
/Users/onurkarayalcin/Programs/aMCNLO-1/MG5_aMC_v2_5_2/Cards/param_card.dat
/Users/onurkarayalcin/Programs/aMCNLO-1/MG5_aMC_v2_
5_2/Cards/proc_card_mg5.dat
/Users/onurkarayalcin/Programs/aMCNLO-1/MG5_aMC_v2_
5_2/SubProcesses/MadLoopParams.dat

Finally also let me know your compiler version (obtained with 'gfortran
--version') and machine operating system.

With all of this, I should be able to reproduce the problem and investigate
it on my end.

On Tue, Mar 14, 2017 at 7:38 PM, Onur Karayalcin <
<email address hidden>> wrote:

> Question #526586 on MadGraph5_aMC@NLO changed:
> https://answers.launchpad.net/mg5amcnlo/+question/526586
>
> Onur Karayalcin posted a new comment:
> Dear Valentin,
>
> I have applied the instructions step by step and I get the lines when '6'
> is selected in MadloopParams.dat library:
> .
> .
> Diagram information for clustering has been set-up for nFKSprocess
> 9
> Diagram information for clustering has been set-up for nFKSprocess
> 10
> getting user params
> Enter number of events and iterations:
>
> I mean it works. I do not have so much idea about what I should reach as
> a result but try to answer your questions as follows:
>
> a) When COLLIER is not active there is any error and I get some
> meaningful results and a table of values. There is no seg faults or
> anything like that. However, some errors arise if I use '7' in
> MadloopParams.dat library.
>
> b)When I select '7' in MadloopsParams.dat library , it is reported :
>
> *******************************************
> * C O L L I E R *
> * *
> * Complex One-Loop Library *
> * In Extended Regularizations *
> * *
> * by A.Denner, S.Dittmaier, L.Hofer *
> * *
> * version 1.1 *
> * *
> *******************************************
>
> At line 1419 of file /home/cakir/Work/Programs/MonteCarlo/MG5_aMC_v2_5_2/
> HEPTools/collier/COLLIER-1.1/src/tensors/BuildTensors.F90
> Fortran runtime error: Index '6' of dimension 2 of array 'addgtab' above
> upper bound of 5
> [Inferior 1 (process 11186) exited with code 02]
> (gdb) bt
> No stack.
> (gdb)
>
> That is the result which I get the same for GF1 and GF3.
>
> Thank you for help me with patience. What could you recommend after this
> step ?
>
> Best,
> Onur
>
> --
> You received this question notification because you are an answer
> contact for MadGraph5_aMC@NLO.
>

--
Valentin

Revision history for this message
Valentin Hirschi (valentin-hirschi) said :
#20

Your issue (i.e. the seg. fault encountered in the loop reduction tool COLLIER) is actually solved by the solution implemented in rev.278 of v2.5.3 to fix a similar bug. It is related to the inconsistent setting of maximal loop ranks in the file 'global_coefs.inc' when outputting merging processes at NLO.
You should therefore find this issue solved when using current public version v2.5.3. (you are using the slightly older version v2.5.2 where this fix is not present).

Revision history for this message
Onur Karayalcin (karayalcino) said :
#21

Dear Valentin,

I fixed the problem with installing v2.5.3, so I do not get the FxFx error. There is no error about COLLIER. Thanks a lot for helping with patience.

Best,

Onur