~maddevelopers/mg5amcnlo/2.7.4_array

« back to all changes in this revision

Viewing changes to Template/NLO/MCatNLO/Scripts/MCatNLO_MadFKS_HERWIGPP.Script

  • Committer: olivier-mattelaer
  • Date: 2019-10-16 11:38:38 UTC
  • mfrom: (282.1.28 2.6.7)
  • Revision ID: olivier-mattelaer-20191016113838-6u4j5u3hn06rq2wc
pass to 2.6.7

Show diffs side-by-side

added added

removed removed

Lines of Context:
149
149
if [ -f $HWPPPATH/bin/Herwig ]; then HWEXE=Herwig ; fi
150
150
HWVER=`$HWPPPATH/bin/$HWEXE --version`
151
151
HWVER=($(echo "$HWVER" | sed 's/ / /g'))
152
 
HWVER=($(echo ${HWVER[1]} | tr "." "\n"))
153
 
HWVER=${HWVER[0]}
154
 
if [ "$HWVER" -ge 7 ]; then HWNEW=1 ; HWEXE=Herwig   ; fi
155
 
if [ "$HWVER" -le 2 ]; then HWNEW=0 ; HWEXE=Herwig++ ; fi
 
152
HWVER1=($(echo ${HWVER[1]} | tr "." "\n"))
 
153
HWVER2=($(echo ${HWVER1[1]} | tr "." "\n"))
 
154
HWVER=$(echo "$HWVER1$HWVER2" | bc)
 
155
if [ "$HWVER" -ge 72 ]; then HWNEW=3 ; HWEXE=Herwig   ; fi
 
156
if [ "$HWVER" -eq 71 ]; then HWNEW=2 ; HWEXE=Herwig   ; fi
 
157
if [ "$HWVER" -eq 70 ]; then HWNEW=1 ; HWEXE=Herwig   ; fi
 
158
if [ "$HWVER" -le 69 ]; then HWNEW=0 ; HWEXE=Herwig++ ; fi
156
159
 
157
 
if [[ "$PDFCODE" -ne 0 && "$HWNEW" -eq 0 ]] || [ "$HWNEW" -eq 1 ]
 
160
if [[ "$PDFCODE" -ne 0 && "$HWNEW" -eq 0 ]] || [ "$HWNEW" -ge 1 ]
158
161
then
159
162
  HERPDF='EXTPDF'
160
163
  PDFLIBRARY='LHAPDF'
166
169
  if [ "$PDFCODE" -gt 1 ]; then PDFSET=$PDFCODE; fi
167
170
  if [ "$PDFCODE" -lt 0 ]; then LHAOFL=EXTRAPOLATE; fi
168
171
  if [ "$PDFCODE" -lt -1 ]; then PDFSET=$((PDFCODE*-1)); fi
169
 
  if [[ "$PDFCODE" -eq 0 && "$HWNEW" -eq 1 ]]; then PDFSET=25000 ; LHAOFL=FREEZE ; fi
 
172
  if [[ "$PDFCODE" -eq 0 && "$HWNEW" -ge 1 ]]; then PDFSET=25000 ; LHAOFL=FREEZE ; fi
170
173
  linklhapdf
171
174
# convert PDF number to name reading PDFsets.index
172
175
  ISLHA5=0
184
187
      echo 'Unable to understand LHAPDF version!'
185
188
      exit 1
186
189
  fi
187
 
  if [[ "$ISLHA5" -eq 1 && "$HWNEW" -eq 1 ]]
 
190
  if [[ "$ISLHA5" -eq 1 && "$HWNEW" -ge 1 ]]
188
191
  then
189
192
      echo " Please, use LHAPDF6 with HW7 "
190
193
      exit 1
282
285
  HWPPUTIMAKE="HWPPUTI="$HWPPUTI
283
286
  FORFILEMAKE="FORFILE="$HWPPUTI
284
287
  HEPMCF=HepMCFortran7.h
285
 
  if [ "$HWVER" -le 2 ]; then HEPMCF=HepMCFortran2.h; fi
 
288
  if [ "$HWVER" -le 69 ]; then HEPMCF=HepMCFortran2.h; fi
286
289
  cp $thisdir/HWPPAnalyzer/$HEPMCF $thisdir/HWPPAnalyzer/HepMCFortran.h
287
290
  HWPPANALYZER=HepMCFortran
288
291
  if ! make -C $thisdir/HWPPAnalyzer $HWPPUTI $HWPPANALYZER.so $HWPPMAKE "$LIBSMAKE" "$LIBSMAKEP" "$INCLMAKE" "$FORFILEMAKE"
385
388
mv $EXEC_NAMEFF $exefile
386
389
 
387
390
# create input file
 
391
if [ "$HWNEW" -le 1 ]
 
392
then
 
393
GENERATOR="LHCGenerator"
 
394
EXTRACTOR="QCDExtractor"
 
395
elif [ "$HWNEW" -ge 2 ]
 
396
then
 
397
GENERATOR="EventGenerator"
 
398
EXTRACTOR="PPExtractor"
 
399
fi
 
400
 
388
401
cat <<EOF > ./$ifile
389
402
#
390
403
#  Create the Les Houches handler for MC@NLO
394
407
 
395
408
# --------------------------------------------------------------------- #
396
409
# 1.) NECESSARY SETTINGS FOR RUNNING WITH MC@NLO EVENTS (DO NOT MODIFY)
 
410
EOF
397
411
 
 
412
if [ "$HWNEW" -le 1 ]
 
413
then
 
414
cat <<EOF >> ./$ifile
398
415
set /Herwig/Shower/Evolver:HardVetoMode 1
399
416
set /Herwig/Shower/Evolver:HardVetoScaleSource 1
400
417
set /Herwig/Shower/Evolver:MECorrMode 0
401
 
 
402
 
 
 
418
EOF
 
419
fi
 
420
 
 
421
cat <<EOF >> ./$ifile
403
422
# create the Handler & Reader
404
423
create ThePEG::LesHouchesFileReader /Herwig/EventHandlers/LHEReader
405
424
create ThePEG::LesHouchesEventHandler /Herwig/EventHandlers/LHEHandler 
406
425
insert /Herwig/EventHandlers/LHEHandler:LesHouchesReaders 0 /Herwig/EventHandlers/LHEReader
407
 
 
 
426
EOF
 
427
 
 
428
 
 
429
cat <<EOF >> ./$ifile
408
430
set /Herwig/EventHandlers/LHEReader:AllowedToReOpen 0
409
431
set /Herwig/EventHandlers/LHEReader:MomentumTreatment RescaleEnergy
410
432
set /Herwig/EventHandlers/LHEReader:WeightWarnings 0
411
 
 
 
433
EOF
 
434
 
 
435
 
 
436
cat <<EOF >> ./$ifile
412
437
set /Herwig/EventHandlers/LHEHandler:WeightOption VarNegWeight
413
 
set /Herwig/EventHandlers/LHEHandler:PartonExtractor /Herwig/Partons/QCDExtractor
 
438
set /Herwig/EventHandlers/LHEHandler:PartonExtractor /Herwig/Partons/$EXTRACTOR
414
439
set /Herwig/EventHandlers/LHEHandler:CascadeHandler /Herwig/Shower/ShowerHandler 
415
440
set /Herwig/EventHandlers/LHEHandler:HadronizationHandler /Herwig/Hadronization/ClusterHadHandler
416
441
set /Herwig/EventHandlers/LHEHandler:DecayHandler /Herwig/Decays/DecayHandler
417
 
set /Herwig/Generators/LHCGenerator:EventHandler /Herwig/EventHandlers/LHEHandler
418
 
set /Herwig/Generators/LHCGenerator:NumberOfEvents $NEVENTS
419
 
set /Herwig/Generators/LHCGenerator:RandomNumberGenerator:Seed $RNDEVSEED_HWPP
420
 
set /Herwig/Generators/LHCGenerator:PrintEvent $MAXPR_HWPP
421
 
set /Herwig/Generators/LHCGenerator:MaxErrors $ERR_NUM_HWPP 
422
 
set /Herwig/Generators/LHCGenerator:DebugLevel 1
 
442
set /Herwig/Generators/$GENERATOR:EventHandler /Herwig/EventHandlers/LHEHandler
 
443
set /Herwig/Generators/$GENERATOR:NumberOfEvents $NEVENTS
 
444
set /Herwig/Generators/$GENERATOR:RandomNumberGenerator:Seed $RNDEVSEED_HWPP
 
445
set /Herwig/Generators/$GENERATOR:PrintEvent $MAXPR_HWPP
 
446
set /Herwig/Generators/$GENERATOR:MaxErrors $ERR_NUM_HWPP 
 
447
set /Herwig/Generators/$GENERATOR:DebugLevel 1
423
448
EOF
424
449
 
425
 
if [ $HWNEW = 0 ]
 
450
if [ "$HWNEW" -eq 0 ]
426
451
then
427
452
cat <<EOF >> ./$ifile
428
453
insert /Herwig/EventHandlers/LHEHandler:PreCascadeHandlers 0 /Herwig/NewPhysics/DecayHandler
430
455
fi
431
456
 
432
457
whichherpdf $HERPDF
433
 
if [[ "$pdftype" -eq 1 && "$HWNEW" -eq 0 ]] || [ "$HWNEW" -eq 1 ]
 
458
if [[ "$pdftype" -eq 1 && "$HWNEW" -eq 0 ]] || [ "$HWNEW" -ge 1 ]
434
459
then
435
460
cat <<EOF >> ./$ifile
436
461
# Define PDF from MCatNLO.inputs PDFSET number
438
463
create ThePEG::LHAPDF /LHAPDF/MCNLOPDF ThePEGLHAPDF.so
439
464
set /LHAPDF/MCNLOPDF:PDFName $PDFSETN
440
465
set /LHAPDF/MCNLOPDF:RemnantHandler /Herwig/Partons/HadronRemnants
 
466
EOF
 
467
 
 
468
if [ "$HWNEW" -ge 1 ]
 
469
then
 
470
cat <<EOF >> ./$ifile
 
471
set /Herwig/Partons/RemnantDecayer:AllowTop Yes
 
472
EOF
 
473
fi
 
474
 
 
475
cat <<EOF >> ./$ifile
441
476
set /Herwig/EventHandlers/LHEReader:PDFA /LHAPDF/MCNLOPDF
442
477
set /Herwig/EventHandlers/LHEReader:PDFB /LHAPDF/MCNLOPDF
443
478
set /Herwig/Particles/p+:PDF /LHAPDF/MCNLOPDF
494
529
# 3.) ADDITIONAL SETTINGS
495
530
 
496
531
# SHOWER SETTINGS
497
 
set /Herwig/Shower/Evolver:IntrinsicPtGaussian 2.2*GeV
498
532
EOF
499
533
 
 
534
 
500
535
if ((`bc <<< "$LAMBDAHERW >= 0.0"`))
501
536
then
502
537
LAMBDAHERW=$(echo "$LAMBDAHERW * 1000" | bc)
512
547
EOF
513
548
fi
514
549
 
 
550
if [ "$HWNEW" -le 1 ]
 
551
then
 
552
cat <<EOF >> ./$ifile
 
553
set /Herwig/Shower/Evolver:IntrinsicPtGaussian 2.2*GeV
 
554
EOF
 
555
elif [ "$HWNEW" -ge 2 ]
 
556
then
 
557
cat <<EOF >> ./$ifile
 
558
set /Herwig/Shower/ShowerHandler:IntrinsicPtGaussian 1.3*GeV
 
559
EOF
 
560
fi
515
561
 
516
 
if [ $HWNEW = 1 ]
 
562
if [ "$HWNEW" -ge 1 ]
517
563
then
518
564
cat <<EOF >> ./$ifile
519
565
set /Herwig/Shower/PartnerFinder:PartnerMethod Random
520
566
set /Herwig/Shower/PartnerFinder:ScaleChoice Partner
 
567
EOF
 
568
fi
 
569
 
 
570
if [ "$HWNEW" -le 1 ]
 
571
then
 
572
cat <<EOF >> ./$ifile
521
573
set /Herwig/Shower/GtoQQbarSplitFn:AngularOrdered Yes
522
 
 
523
 
#set /Herwig/Shower/Evolver:Interactions QCDOnly
524
 
#set /Herwig/Shower/Evolver:SoftCorrelations No
525
 
#set /Herwig/Shower/Evolver:SpinCorrelations Yes
526
 
 
527
 
set /Herwig/Shower/Evolver:SpinCorrelations No
528
 
set /Herwig/Shower/KinematicsReconstructor:FinalStateReconOption Default
529
 
set /Herwig/Shower/KinematicsReconstructor:InitialStateReconOption Rapidity
 
574
set /Herwig/Shower/GammatoQQbarSplitFn:AngularOrdered Yes
 
575
#set /Herwig/Shower/ShowerHandler:Interactions QCDOnly
 
576
#set /Herwig/Shower/ShowerHandler:SoftCorrelations No
 
577
#set /Herwig/Shower/ShowerHandler:SpinCorrelations Yes
 
578
EOF
 
579
fi
 
580
 
 
581
if [ "$HWNEW" -ge 2 ]
 
582
then
 
583
cat <<EOF >> ./$ifile
 
584
set /Herwig/Shower/ShowerHandler:SpinCorrelations No
530
585
set /Herwig/Shower/ShowerHandler:MaxPtIsMuF Yes
531
 
set /Herwig/Shower/ShowerHandler:RestrictPhasespace On
 
586
set /Herwig/Shower/ShowerHandler:RestrictPhasespace Yes
532
587
 
533
588
EOF
534
589
fi
807
862
# 4.) HW++ SETTINGS THAT ARE NOT ALLOWED TO BE TOUCHED BY THE USER
808
863
 
809
864
#Boost and reconstruction stuff
 
865
EOF
 
866
 
 
867
if [ "$HWNEW" -eq 1 ] || [ "$HWNEW" -eq 2 ]
 
868
then
 
869
cat <<EOF >> ./$ifile
 
870
set /Herwig/Shower/KinematicsReconstructor:FinalStateReconOption Default
 
871
set /Herwig/Shower/KinematicsReconstructor:InitialStateReconOption Rapidity
 
872
EOF
 
873
fi
 
874
 
 
875
if [ "$HWNEW" -eq 3 ]
 
876
then
 
877
cat <<EOF >> ./$ifile
 
878
set /Herwig/Shower/KinematicsReconstructor:InitialStateReconOption Rapidity
 
879
EOF
 
880
fi
 
881
 
 
882
cat <<EOF >> ./$ifile
810
883
set /Herwig/Shower/KinematicsReconstructor:ReconstructionOption General
811
884
set /Herwig/Shower/KinematicsReconstructor:InitialInitialBoostOption LongTransBoost
812
885
 
813
886
# --------------------------------------------------------------------- #
814
887
# 5.) CREATE THE ANALYZER AND SAVE THE RUN (DO NOT MODIFY)
815
 
 
816
888
EOF
817
889
 
818
890
if [ "$HWPPUTI" != "" ]
819
891
then
820
892
cat <<EOF >> ./$ifile
821
893
create MCatNLO::$HWPPANALYZER $HWPPANALYZER $HWPPANALYZER.so
822
 
insert /Herwig/Generators/LHCGenerator:AnalysisHandlers 0 $HWPPANALYZER
 
894
insert /Herwig/Generators/$GENERATOR:AnalysisHandlers 0 $HWPPANALYZER
823
895
 
824
896
EOF
825
897
else
826
898
cat <<EOF >> ./$ifile
827
899
#create MCatNLO::hepfortr hepfortr hepfortr.so
828
 
#insert /Herwig/Generators/LHCGenerator:AnalysisHandlers 0 hepfortr
 
900
#insert /Herwig/Generators/$GENERATOR:AnalysisHandlers 0 hepfortr
829
901
 
830
902
#  Useful analysis handlers for HepMC related output
831
903
##################################################
832
904
# Schematic overview of an event (requires --with-hepmc to be set at configure time
833
905
# and the graphviz program 'dot' to produce a plot)
834
906
#create MCatNLO::$HWPPANALYZER $HWPPANALYZER $HWPPANALYZER.so
835
 
#insert /Herwig/Generators/LHCGenerator:AnalysisHandlers 0 $HWPPANALYZER
836
 
# insert LHCGenerator:AnalysisHandlers 0 /Herwig/Analysis/Plot
 
907
#insert /Herwig/Generators/$GENERATOR:AnalysisHandlers 0 $HWPPANALYZER
 
908
# insert $GENERATOR:AnalysisHandlers 0 /Herwig/Analysis/Plot
837
909
# A HepMC dump file (requires --with-hepmc to be set at configure time)
838
 
# insert LHCGenerator:AnalysisHandlers 0 /Herwig/Analysis/HepMCFile
839
 
insert /Herwig/Generators/LHCGenerator:AnalysisHandlers 0 /Herwig/Analysis/HepMCFile
 
910
# insert $GENERATOR:AnalysisHandlers 0 /Herwig/Analysis/HepMCFile
 
911
insert /Herwig/Generators/$GENERATOR:AnalysisHandlers 0 /Herwig/Analysis/HepMCFile
840
912
set /Herwig/Analysis/HepMCFile:PrintEvent $NEVENTS
841
913
set /Herwig/Analysis/HepMCFile:Format GenEvent
842
914
set /Herwig/Analysis/HepMCFile:Units GeV_mm
845
917
fi
846
918
 
847
919
cat <<EOF >> ./$ifile
848
 
saverun $runfile /Herwig/Generators/LHCGenerator
 
920
saverun $runfile /Herwig/Generators/$GENERATOR
849
921
EOF
850
922
 
 
923
 
851
924
( cd . ;\
852
925
     $exefile )
853
926