Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • emsmith/athena
  • dzubov/athena
  • pscholer/athena
  • akvam/athena
  • flasagni/athena
  • hartman/athena
  • alux/athena
  • berenice/athena
  • mschott/athena
  • mgenest/athena
  • pbalek/athena
  • dsalvato/athena
  • korcyl/athena
  • tlyubush/athena
  • lyubushk/athena
  • gstark/athena
  • yharris/athena
  • lmonsoni/athena
  • nagano/athena
  • lcorpe/athena
  • lshi/athena
  • rrosten/athena
  • ytsujika/athena
  • tiledemo/athena
  • abagdato/athena
  • fparodi/athena
  • tmoxter/athena
  • lheinric/athena
  • milu/athena
  • pyin/athena
  • juesseiv/athena-celeritas
  • mmlynari/athena
  • matthier/athena
  • jsandesa/athena
  • borisov/athena
  • zchubini/athena
  • mpenzin/athena
  • mcorradi/athena
  • okovanda/athena
  • meevans/athena
  • isiral/athena
  • haa2mu2tau/athena
  • nkvu/athena
  • andre/athena
  • ebakos/athena
  • gwmyers/athena
  • lportale/athena
  • vasothil/athena
  • bwinter/athena
  • brle/athena
  • camacho/athena
  • icioara/athena
  • mcentonz/athena
  • quli/athena
  • mikhail/athena
  • begilber/athena
  • gartoni/athena
  • abkahn/athena
  • mbasso/athena
  • pagacova/athena
  • dgancarc/athena
  • stefania/athena
  • gmarchio/athena
  • jolsson/athena
  • atlasdqm/athena
  • chuanshu/athena
  • yygao/athena
  • shimoji/athena
  • zhenw/athena
  • jojamies/athena
  • cnass/athena
  • beckerov/athena
  • passaggi/athena
  • marvin/athena
  • hdf5-utils/athena
  • pberta/athena
  • aaboulho/athena
  • acrobert/athena
  • ranjitn/athena
  • cescobar/athena
  • ktodome/athena
  • kastanas/athena
  • huirun/athena
  • atrzupek/athena
  • tzorbas/athena
  • lfountas/athena
  • ccarrion/athena
  • aambler/athena
  • derendar/athena
  • britzger/athena
  • hanl/athena
  • epender/athena
  • gipezzul/athena
  • mmineev/athena
  • gnn4itkteam/athena
  • phkoenig/athena
  • keli/athena
  • robertma/athena
  • pleier/athena
  • nguseyno/athena
  • gtateno/athena
  • nekumari/athena
  • pavel/athena
  • jiling/athena
  • avasyuko/athena
  • herrmant/athena
  • aburke/athena
  • reznicek/athena
  • xuh/athena
  • jcordeir/athena
  • tnommens/athena
  • lmcelhin/athena
  • shbansal/athena
  • ewallin/athena
  • averbyts/athena
  • yuhui/athena
  • tvazquez/athena
  • lserkin/athena
  • gascott/athena
  • corentin/athena
  • ccaminch/athena
  • cdiez/athena
  • miochoa/athena
  • cpollard/athena
  • berkeleylab/CharmPhysics/athena
  • msykora/athena
  • madurano/athena_gittutorial
  • hfox/athena
  • jakoubek/athena
  • atlas/athena
  • ckirfel/athena
  • kjohns/athena
  • calfayan/athena
  • toshi/athena
  • aundrus/athena
  • akraszna/athena
  • fwinkl/athena
  • dguest/athena
  • rhauser/athena
  • wlampl/athena
  • karolos/athena
  • phwindis/athena
  • gemmeren/athena
  • arnaez/athena
  • jmontejo/athena
  • ssnyder/athena
  • baines/athena
  • damazio/athena
  • mmuskinj/athena
  • wwalko/athena
  • okuprash/athena
  • psommer/athena
  • emoyse/athena
  • smh/athena
  • bwynne/athena
  • tstreble/athena
  • turra/athena
  • pgadow/athena
  • ATLAS-EGamma/athena
  • yuxu/athena
  • solodkov/athena
  • tdado/athena
  • toyamaza/athena
  • tadej/athena
  • rbielski/athena
  • rbianchi/athena
  • dcasper/athena
  • abuckley/athena
  • graemes/athena
  • jmasik/athena
  • sshaw/athena
  • mrybar/athena
  • pjacka/athena
  • shlomit/athena
  • ychiu/athena
  • tamartin/athena
  • hartj/athena
  • tbold/athena
  • christos/athena
  • jcatmore/athena
  • yoyamagu/athena
  • mhodgkin/athena
  • ebuschma/athena
  • gunal/athena
  • nstyles/athena
  • rosati/athena
  • ewelina/athena
  • mark/athena
  • ligang/athena
  • nikiforo/athena
  • sroe/athena
  • fpastore/athena
  • harkusha/athena
  • almaloiz/athena
  • lfiorini/athena
  • mvozak/athena
  • longjon/athena
  • leggett/athena
  • tlari/athena
  • jichen/athena
  • cchan/athena
  • susinha/athena
  • filthaut/athena
  • martindl/athena
  • chays/athena
  • peter/athena
  • cshimmin/athena
  • mihuebne/athena
  • dtovey/athena
  • cvarni/athena
  • jsallen/athena-high-pt-ms-jets
  • sgeorge/athena
  • dkar/athena
  • wleight/athena
  • yafu/athena
  • nwarrack/athena
  • alfroch/athena
  • mgignac/athena
  • wiedenat/athena
  • mstamenk/athena
  • tkohno/athena
  • khoo/athena
  • janovak/athena
  • okepka/athena
  • maklein/athena
  • scheiric/athena
  • cohm/athena
  • tmkrtchy/athena
  • pleskot/athena
  • omajersk/athena
  • gingrich/athena
  • jobalz/athena
  • ebergeas/athena
  • schaarsc/athena
  • dbakshig/athena
  • ekasimi/athena
  • fernando/athena
  • ponyisi/athena
  • afaulkne/athena
  • xai/athena
  • ravinab/athena
  • ekuwertz/athena
  • astruebi/athena
  • achishol/athena
  • merrenst/athena
  • mdanning/athena
  • goetz/athena
  • egramsta/athena
  • dpopov/athena
  • alaurier/athena
  • hye/athena
  • mtoscani/athena
  • krumnack/athena
  • clseitz/athena
  • ppostola/athena
  • bmindur/athena
  • efilmer/athena
  • ncalace/athena
  • jpanduro/athena
  • shanisch/athena
  • rcoelhol/athena
  • aad/athena
  • ssarikay/athena
  • tupham/athena
  • hyamauch/athena
  • gpanizzo/athena
  • rkopelia/athena
  • stelzer/athena
  • nkrengel/athena
  • ssottoco/athena
  • cmcginn/athena
  • turnerm/athena
  • tsulaia/athena
  • sutt/athena
  • bernius/athena
  • vcairo/athena
  • stsuno/athena
  • mbandier/athena
  • yunju/athena
  • ldc/athena
  • jdandoy/athena
  • jmacdona/athena
  • mehlhase/athena
  • jufische/athena
  • nasbah/athena
  • dzanzi/athena
  • amete/athena
  • kzoch/athena
  • kwhalen/athena
  • rcarney/athena
  • bmorgan/athena
  • williams/athena
  • hhibi/athena
  • shhirose/athena
  • cheidegg/athena
  • msaimper/athena
  • ynoguchi/athena
  • kkohler/athena
  • coccaro/athena
  • heng/athena
  • cdeutsch/athena
  • loch/athena
  • campanel/athena
  • wbalunas/athena
  • nova/athena
  • hoide/athena
  • xju/athena
  • todorova/athena
  • yuchou/athena
  • sjiggins/athena
  • hrussell/athena
  • jbiswal/athena
  • lidiaz/athena
  • bgokturk/athena
  • aytul/athena
  • guerrero/athena
  • kegraham/athena
  • dhayden/athena
  • bouhova/athena
  • kpachal/athena
  • mverissi/athena
  • alopezso/athena
  • alwang/athena
  • mvessell/athena
  • mvanadia/athena
  • omeshkov/athena
  • ssantpur/athena
  • kenelson/athena
  • soumya/athena
  • fmeloni/athena
  • upatel/athena
  • igrabows/athena
  • ruyuan/athena
  • tvarol/athena
  • korona/athena
  • dshope/athena
  • dbogavac/athena
  • anperrev/athena
  • mhank/athena
  • tnobe/athena
  • cowagner/athena
  • tursom/athena
  • eramakot/athena
  • fgiuli/athena
  • fsforza/athena
  • derue/athena
  • koffas/athena
  • chinderk/athena
  • angianni/athena
  • myexley/athena
  • ballbroo/athena
  • davidek/athena
  • diehl/athena
  • hansenph/athena
  • tphamleh/athena
  • falonso/athena
  • salvator/athena
  • ekajomov/athena-general
  • hirose/athena
  • mfujimot/athena
  • sarbiolv/athena
  • masato/athena
  • jhaley/athena
  • jmendes/athena
  • stapiaar/athena
  • ffabbri/athena
  • tpelzer/athena
  • nwenke/athena
  • agbet/athena
  • stavrop/athena
  • dbabal/athena
  • gia/athena
  • hmildner/athena
  • juesseiv/athena
  • temoskal/athena
  • kkrizka/athena
  • cdelitzs/athena
  • ckitsaki/athena
  • dwallace/athena
  • asonay/athena
  • lferencz/athena
  • iaizenbe/athena
  • eschanet/athena
  • pmeiring/athena
  • liberato/athena
  • czhou/athena
  • jteoh/athena
  • jiawei/athena
  • mromano/athena
  • wachan/athena
  • rustem/athena
  • jbeirer/athena
  • ranovotn/athena
  • nielsenj/athena
  • sswatman/athena
  • miqueits/athena
  • asquith/athena
  • nicholas/athena
  • elmsheus/athena
  • markowen/athena
  • esoldato/athena
  • fuhe/athena
  • eparrish/athena
  • aranzazu/athena
  • mhance/athena
  • dakoch/athena
  • ndegroot/athena
  • lihan/athena
  • aporeba/athena
  • asoukhar/athena
  • jkempste/athena
  • mswiatlo/athena
  • ginaciog/athena
  • verducci/athena
  • tjunkerm/athena
  • sschramm/athena
  • martis/athena
  • mdelmast/athena
  • pliu/athena
  • bcarlson/athena
  • anmrodri/athena
  • fastcalosim_test/athena
  • ssaha/athena
  • rlongo/athena
  • gabarone/athena
  • scamarda/athena
  • mxia/athena
  • lstocker/athena
  • conde/athena
  • guindon/athena
  • chelling/athena
  • amoussa/athena
  • mdonasci/athena
  • hmaguire/athena
  • gialas/athena
  • mmittal/athena
  • ffollega/athena
  • fcostanz/athena
  • sberlend/athena
  • shion/athena
  • sschmitt/athena
  • acts/athena
  • nifomin/athena
  • cgutscho/athena
  • zsoumaim/athena
  • eriefel/athena
  • jkremer/athena
  • evarnes/athena
  • guescini/athena
  • dwilbern/athena
  • laforge/athena
  • susy-hackers/athena
  • llorente/athena
  • akotsoke/athena
  • rpoggi/athena
  • istin/athena
  • haozturk/athena
  • acanesse/athena
  • kkoeneke/athena
  • fizisist/athena
  • fengyu/athena
  • cmerlass/athena
  • rkarnam/athena
  • navarrjo/athena
  • chenlian/athena
  • akraus/athena
  • ysmirnov/athena_old
  • ivivarel/athena
  • sanchevi/athena
  • amulski/athena
  • bulekov/athena
  • sefernan/athena
  • yanlin/athena
  • pkramer/athena
  • vcavalie/athena
  • smwang/athena
  • bauerpa/athena
  • restevam/athena
  • jgonski/athena
  • thsjurse/athena
  • mmlynars/athena
  • iyeletsk/athena
  • mmazza/athena
  • itrandaf/athena
  • almgadm/athena
  • mwielers/athena
  • csebasti/athena
  • mtchijov/athena
  • wobisch/athena
  • jhinds/athena
  • emmat/athena
  • lucam/athena
  • yuxuanz/athena
  • lmiller/athena
  • tiyang/athena
  • lapereir/athena
  • aleopold/athena
  • zuysal/athena
  • kciesla/athena
  • pekman/athena
  • masaito/athena
  • rbalasub/athena
  • salderwe/athena
  • wmccorma/athena
  • somadutt/athena
  • ycoadou/athena
  • jstupak/athena
  • simmons/athena
  • kkreul/athena
  • ilongari/athena
  • jzeng/athena
  • pinamont/athena
  • adye/athena
  • wtaylor/athena
  • ssahin/athena
  • gcallea/athena
  • kbelobor/athena
  • fbartels/athena
  • aoneill/athena
  • dmaximov/athena
  • kghorban/athena
  • ljeanty/athena
  • cschiavi/athena
  • ecarlson/athena
  • mcfayden/athena
  • scarra/athena
  • kasai/athena
  • jraine/athena
  • brottler/athena
  • aelmouss/athena
  • gotero/athena
  • khanov/athena
  • abandyop/athena
  • rozeny/athena
  • nbelyaev/athena
  • aohatl/athena
  • joheinri/athena
  • rebeca/athena
  • amarzin/athena
  • doglioni/athena
  • rgarg/athena
  • alaperto/athena
  • bhonan/athena
  • bigliett/athena
  • begalli/athena
  • yajun/athena
  • dpudzha/athena
  • pmoskvit/athena
  • mpokidov/athena
  • paulama/athena
  • lbozianu/athena
  • mtesta/athena
  • jajimene/athena
  • demelian/athena
  • atlidali/athena
  • vcroft/athena
  • torrence/athena
  • hacooke/athena
  • barak/athena
  • wprzygod/athena
  • sgalantz/athena
  • atsirigo/athena
  • tofitsch/athena
  • roward/athena
  • amoroso/athena
  • csander/athena
  • salnikov/athena
  • ozaplati/athena
  • mmiralle/athena
  • elrossi/athena
  • pottgen/athena
  • jsabater/athena
  • alory/athena
  • jdevivi/athena
  • ymino/athena
  • pbokan/athena
  • xchen/athena
  • apetukho/athena
  • ruth/athena
  • klin/athena
  • trinn/athena
  • nishu/athena
  • xiaoning/athena
  • cappelt/athena
  • ratkin/athena
  • paramon/athena
  • nelsonc/athena
  • enarayan/athena
  • bleban/athena
  • qhu/athena
  • dpizzi/athena
  • ztarem/athena
  • juhofer/athena
  • exot-27/athena
  • acassim/athena
  • wasu/athena
  • bburghgr/athena
  • sampson/athena
  • ychow/athena
  • mmarjano/athena
  • mkrivos/athena
  • nviauxma/athena
  • pagessin/athena
  • hessey/athena
  • watsona/athena
  • ibordule/athena
  • jreich/athena
  • LichtenbergGroup/athena
  • wfawcett/athena
  • ztao/athena
  • perj/athena
  • othielma/athena
  • sridouan/athena
  • jdegens/athena
  • hasada/athena
  • mleblanc/athena
  • alainb/athena
  • bachacou/athena
  • wgeorge/athena
  • pmendesa/athena
  • xiaohu/athena
  • yake/athena
  • ludovica/athena
  • kristin/athena
  • jlsmith/athena
  • yama/athena
  • ssu/athena
  • ktsuri/athena
  • angerami/athena
  • jezequel/athena
  • rnayak/athena
  • musafdar/athena
  • pebaron/athena-weights
  • hschwart/athena
  • mproffit/athena
  • asalzbur/athena
  • amendesj/athena
  • csamoila/athena
  • gproto/athena
  • rerrabai/athena
  • lhelary/athena
  • tiany/athena
  • malgren/athena
  • mprincip/athena
  • spolacek/athena
  • aczirkos/athena
  • bmondal/athena
  • lbeemste/athena
  • kyamaguc/athena
  • grabanal/athena
  • asantra/athena
  • silvinha/athena
  • holau/athena
  • tboeckh/athena
  • jreidels/athena
  • jroloff/athena
  • mdhlamin/athena
  • slawlor/athena
  • tdiasdov/athena
  • bozek/athena
  • mtian/athena
  • lkrauth/athena
  • carlod/athena
  • emily/athena
  • iramirez/athena
  • bcole/athena
  • bbrueers/athena
  • ecelebi/athena
  • mgrabois/athena
  • idinu/athena
  • hmoyanog/athena-4-mr
  • dhirsch/athena
  • roishi/athena
  • oducu/athena
  • jjwilkin/athena
  • ygo/athena
  • exochell/athena
  • yuanchan/athena
  • sbiryuko/athena
  • ggustavi/athena
  • honguyen/athena
  • diwillia/athena
  • skorn/athena
  • scalvet/athena
  • cgarner/athena
  • jizamora/athena
  • changqia/athena
  • jwspence/athena
  • adimitri/athena
  • calpigia/athena
  • yangx/athena
  • atsiamis/athena
  • dhangal/athena
  • rysawada/athena
  • atlidbs/athena
  • cmarcon/athena
  • kpetukho/athena
  • iene/athena
  • tqiu/athena
  • tbisanz/athena
  • dopasqua/athena
  • jspah/athena
  • athaler/athena
  • tzenis/athena
  • jcardena/athena
  • jkretz/athena
  • hzuchen/athena
  • lveloce/athena
  • ryamaguc/athena
  • agomezde/athena
  • maliev/athena
  • fdelrio/athena
  • oshukrun/athena
  • mbiros/athena
  • tsano/athena
  • mumohdso/athena2
  • okumura/athena
  • iwang/athena
  • koshimiz/athena
  • mumohdso/athena
  • arennie/athena
  • valentem/athena
  • dmunozpe/athena
  • rhayes/athena
  • caforio/athena
  • atate/athena
  • evguillo/athena
  • dossantn/athena
  • bnachman/athena
  • zhijie/athena
  • zearnsha/athena
  • yuzhan/athena
  • maly/athena
  • suyounas/athena
  • mtost/athena
  • hlin/athena
  • lunedic/athena
  • rjoshi/athena
  • machitis/athena
  • lvannoli/athena
  • crougier/athena
  • thompson/athena
  • mimarine/athena
  • dounwuch/athena
  • ndebiase/athena
  • nkakati/athena
  • saclawso/athena
  • omezhens/athena
  • echeu/athena
  • jonierma/athena
  • cprat/athena
  • martinpa/athena
  • jodamp/athena
  • hhanif/athena
  • csauer/athena
  • mischott/athena
  • sahinsoy/athena
  • knikolop/athena
  • inaryshk/athena
  • tiknight/athena
  • fedin/athena
  • wendlanb/athena
  • adik/athena
  • lkeszegh/athena
  • xchu/athena
  • jaoliver/athena
  • angrigor/athena
  • sawyer/athena
  • echeremu/athena
  • pbellos/athena
  • lbaltes/athena
  • ntamir/athena
  • eschopf/athena
  • idrivask/athena
  • aikoulou/athena
  • sadykov/athena
  • ignesi/athena
  • algilber/athena
  • pyanezca/athena
  • haweber/athena
  • hiito/athena
  • sgurdasa/athena
  • tteixeir/athena
  • pbhattar/athena
  • pamachad/athena
  • bsaifudd/athena
  • tavandaa/athena
  • mdrozdov/athena
  • veellajo/athena
  • nheatley/athena
  • wolter/athena
  • hsimpson/athena
  • fdibello/athena
  • dparedes/athena
  • fsili/athena
  • mrenda/athena
  • minaenko/athena
  • mzhai/athena
  • rkusters/athena
  • zyan/athena
  • chchau/athena
  • phkenned/athena
  • zhangr/athena
  • jburzyns/athena
  • edweik/athena
  • emmarsha/athena
  • slai/athena
  • zmarshal/athena
  • awilhahn/athena
  • leevans/athena
  • javanden/athena
  • agaa/athena
  • llaatu/athena
  • zfeng/athena
  • stsigari/athena
  • kkrowpma/athena
  • metsai/athena
  • zifeng/athena
  • srdas/athena
  • adonofri/athena
  • atropina/athena
  • yuanda/athena
  • atlaspmb/athena
  • cleonido/athena
  • arombola/athena
  • seggebre/athena
  • drousso/athena
  • ademaria/athena
  • ijuarezr/athena
  • kchoi/athena
  • dgillber/athena
  • mnoury/athena
  • eyamashi/athena
  • axiong/athena
  • saktas/athena
  • zang/athena
  • amdesai/athena
  • matakagi/athena
  • fbendebb/athena
  • nlopezca/athena
  • qibin/athena
  • tbuanes/athena
  • berkeleylab/lowmutracking/athena
  • acanbay/athena
  • bshresth/athena
  • hpotti/athena
  • klassen/athena
  • egodden/athena
  • otheiner/athena-official
  • jferrand/athena
  • cbuitrag/athena
  • vtudorac/athena
  • hawatson/athena
  • mfarring/athena
  • dzengerj/athena
  • parodi/athena
  • chonghao/athena
  • knakkali/athena
  • bballard/athena
  • dcieri/athena
  • buboehm/athena
  • lmontana/athena
  • zhuyi/athena
  • cimcp/athena
  • asansar/athena
  • adaribay/athena
  • cantel/athena
  • weixi/athena
  • iliadis/athena
  • jburr/athena
  • duperrin/athena
  • kbenkend/athena
  • frenner/athena
  • dkoeck/athena
  • isotarri/athena
  • mfewell/athena
  • bstanisl/athena
  • eegidiop/athena
  • miholzbo/athena
  • czodrows/athena
  • yulei/athena
  • blumen/athena
  • smitani/athena
  • alsala/athena
  • amincer/athena
  • olangrek/athena
  • mleigh/athena
  • gshatri/athena
  • jmharris/athena
  • otheiner/athena
  • clantz/athena
  • hpang/athena
  • gripelli/athena
  • jgargan/athena
  • ewatton/athena
  • preselection-hackathon/athena
  • tizuo/athena
  • rushioda/athena
  • mfernoux/athena
  • sfranche/athena
  • deniso/athena
  • bernardo/athena
  • anghosh/ef-anindya
  • jnitschk/athena
  • pebaron/athena-td
  • ksugizak/athena
  • smeriano/athena
  • chandler/athena
  • viruelas/athena
  • yusano/athena
  • yochi/athena
  • hriani/athena
  • wsherman/athena
  • rtagami/athena
  • llewitt/fwd-el-trk-cluster-matching
  • skaur/athena
  • jgombas/athena
  • vcepaiti/athena
  • sroygara/athena
  • chji/athena
  • yuanj/athena
  • apsallid/athena
  • pakontax/athena
  • agavrily/athena
  • abunka/athena
  • ywng/athena
  • dmclaugh/athena
  • dmahon/athena
  • mcgensvc/athena
  • cjmeyer/athena
  • giagu/athena
  • almay/athena
  • qberthet/athena
  • yuwen/athena
  • mshapiro/athena
  • ekay/athena
  • islazyk/athena
  • mbarel/athena
  • dkobylia/athena
  • glamprin/athena
  • baitbenc/athena
  • rdinardo/athena
  • dakiyama/athena
  • cgrefe/athena
  • mlanzacb/athena
  • minlin/athena
  • cburgard/athena
  • kazhang/athena
  • szambito/athena
  • hwilkens/athena
  • wsfreund/athena
  • pebaron/athena
  • beringer/athena
  • enagy/athena
  • schaffer/athena
  • yyap/athena
  • menke/athena
  • mspalla/athena
  • fcalosim/athena
  • tkharlam/athena
  • smobius/athena
  • mduehrss/athena
  • mavogel/athena
  • rateixei/athena
  • spagan/athena
  • carquin/athena
  • dportill/athena
  • osunnebo/athena
  • okiverny/athena
  • chhayes/athena
  • jelena/athena
  • desilva/athena
  • jwalder/athena
  • satom/athena
  • lmijovic/athena
  • junpei/athena
  • jstark/athena
  • tilebeam/athena
  • sanmay/athena
  • jahreda/athena
  • mcarnesa/athena
  • delsart/athena
  • kiabelin/athena
  • krbjoerk/athena
  • vtskhaya/athena
  • jedebevc/athena
  • cyoung/athena
  • yifany/athena
  • mtogawa/athena
  • silu/athena
  • jtanaka/athena
  • maslawin/athena
  • haoran/athena
  • luxin/athena
  • danning/athena
  • minghui/athena
  • faser/offline/athena
  • dcasperfaser/athena
  • almeidvi/athena
  • beddall/athena
  • vmartin/athena
  • cfan/athena
  • kazheng/athena
  • srettie/athena
  • beltran/athena-fork
  • mmontell/athena
  • kgupta/athena
  • lhenkelm/athena
  • pajones/athena
  • sudha/athena
  • ssinha/athena
  • lgagnon/athena
  • anbaraja/athena
  • serodrig/athena
  • dpanchal/athena
  • joana/athena
  • kkawade/athena
  • amorenos/athena
  • mtanasin/athena
  • vbuxbaum/athena
  • chiodini/athena
  • jshahini/athena
  • apalazzo/athena
  • kburka/athena
  • ehaines/athena
  • gonzalri/athena
  • lfeligio/athena
  • jaofferm/athena
  • rmazini/athena
  • desengup/athena
  • gottino/athena
  • gavrilen/athena
  • mdidenko/athena
  • dwkim/athena
  • sabidi/athena
  • qidong/athena
  • cdimitri/athena
  • bkerridg/athena
  • ktackman/athena
  • hazeng/athena
  • jingjing/athena
  • yche/athena
  • yoyeh/athena
  • ktopolni/athena
  • sgaid/athena
  • dabattul/athena
  • attrtcal/athena
  • thmaurin/athena
  • meiqi/athena
  • asciandr/athena
  • chjiang/athena
  • krdona/athena
  • mischott/athena-22
  • bochen/athena
  • lbazzano/athena
  • rushioda/athena-3
  • pclark/athena
  • kvidalgu/athena
  • nlad/athena
  • dtorresa/athena
  • mojeda/athena
  • aaikot/athena
  • hmoyanog/athena
  • aackerma/athena
  • jcurran/athena
  • yingjun/athena
  • maboelel/athena
  • xinfei/athena
  • mschefer/athena
  • lesplend/athena
  • apfleger/athena
  • zoduan/athena
  • rmakhman/athena
  • aivina/athena
  • xinhui/athena
  • kazheng/athena-physics-val-2023
  • zhiliang/athena
  • sfrances/athena
  • liuk/athena
  • shhan/athena
  • jlue/athena
  • bdixit/athena
  • ragrabar/athena
  • asehrawa/athena
  • xingguo/athena
  • kyjones/topoetcone-removal
  • mhoppesc/athena
  • niabicht/athena
  • yunagai/athena
  • shahzad/athena
  • bschlag/athena
  • greynold/athena
  • keener/athena
  • okurdysh/athena
  • kazheng/athena-workingpoint
  • agentry/athena
  • yinmiao/athena
  • adohnalo/athena
  • drankin/athena
  • bruckman/athena
  • kbhide/athena
  • nkang/athena
  • muschmid/athena
  • asmaga/athena
  • hvanders/athena
  • ladamczy/test
  • losanti/athena
  • losanti/athena-23
  • tbeumker/athenatest
  • tbeumker/athena
  • berkeleylab/acts/athena
  • weitao/athena
  • wsong/athena
  • jiturriz/athena
  • dmankad/athena-idle
  • menu-hackathon/athena
  • dawerner/athena
  • vmaksimo/athena
  • kyjones/trigger-example
  • seggebre/athena-fluencemap-modification
  • toobauma/athena
  • gtarna/athena
  • edreyer/athena
  • fisopkov/athena
  • lprimomo/athena
  • maparo/athena
  • smanzoni/athena
  • shmukher/athena
  • aackerma/atlas-athena
  • SecVtx-Lancaster/Athena
  • adimri/athena
  • pgraveli/athena
  • wstanek/athena
  • jcrosby/athena
  • tovsiann/athena
  • lrambell/athena
  • rsnyder/athena
  • atlas-sa-uct/athena
  • eullmank/athena
  • zgao/athena
  • skita/athena
  • ppotepa/athena
  • lroos/athena
  • achakrav/athena
  • kgoto/athena
  • mhemmett/athena
  • xmapekul/athena
  • thmaurin/athena-sim-flavour
  • evitale/athena
  • rashbypi/athena
  • aleksand/athena
  • ivyas/athena
  • npond/athena
  • arej/athena
  • lkretsch/athena
  • epasqual/athena
  • hluk/athena
  • mbiyabi/athena
  • jebohm/athena
  • mkareem/athena
  • dbiswas/athena
  • aralves/athena
  • cvittori/athena
  • mihe/athena
  • dkoeck/anniathenafork
  • tslee/athena
  • croland/athena
  • rgupta/athena
  • mhaacke/athena
  • feickert/athena
  • pkumari/athena
  • cgarvey/athena
  • kesedlac/athena
  • ctosciri/athena-old
  • bscheuer/athena
  • ctosciri/athena
  • agerwin/athena
  • gfrattar/athena
  • gwilliam/athena
  • asoflau/athena
  • ricunnin/athena
  • ilponoma/athena
  • bdixit/masking-strip-modules
  • gtolkach/athena
  • jfeng2/athena
  • svanstro/athena
  • ksudo/athena
  • gaofeng/athena
  • vaustrup/athena
  • kosuzuki/athena
  • rhiguchi/athena
  • rmizuhik/athena
  • etoyoda/athena
  • mdacunha/athena
  • hart/athena
  • kkanke/athena
  • tnakagaw/athena
  • tpaschoa/athena
  • amakita/athena
  • whopkins/athena
  • maoki/athena
  • dduda/athena
  • miyamada/athena
  • anayaz/athena
  • rishikaw/athena
  • ferusso/athena
  • evalient/athena
  • evalient/athena-dnn-calculator
  • smweber/athena
  • smweber/athena-run-3
  • zyan/athena-muon-calib-stream
  • aagaard/athena
  • shudong/athena
  • zyan/athena-muon-calib
  • dellacqu/athena
  • glagafon/project-nimber-1
  • sbellman/athena
  • strom/athena-dms
  • strom/athena
  • jsallen/athena
  • aowang/athena
  • brosser/athena
  • ooncel/athena
  • jhoya/athena
  • macretar/athena
  • glagafon/handi-project
  • skadir/athena-sadaf
  • tygeorge/athena
  • leguo/athena
  • wuxi/athena
  • osotosan/athena
  • hasun/athena
  • syan/athena-syan
  • glagafon/handi-project-1
  • axgallen/athena-qualification-task
  • will/athena
  • mnorfolk/athena
  • aborbely/athena
  • seinfant/athena
  • schernau/athena
  • karakawa/athena
  • taogawa/athena
  • beyeo/athena
  • dmankad/athena-gen
  • mmaroun/ravina-fork
  • agarabag/athena
  • axgallen/athena
  • tmlinare/athena
  • ktariq/athena
  • romar/athena
  • dhagan/athena
  • vlysenko/athena
  • ibamwidh/athena
  • mahorstm/athena
  • zuzak/athena
  • tizhang/athena
  • huayu/athena
  • atishelm/athena
  • jolamber/athena
  • ykhoulak/myathena
  • yil/athena
  • chuanye/athena
  • ipolishc/athena
  • jlue/athena-latest
  • xilin/athena
  • nkua-atlas/athena
  • tayoshid/athena
  • dntounis/athena
  • kifarman/athena
  • movincen/athena
  • nischmit/athena
  • lderamo/athena
  • steinber/athena-main
  • dongyi/athena
  • tdingley/athena
  • dtruncal/athena
  • kazheng/athena-acts
  • hasegawa/athena
  • malvesca/athena
  • openc/athena
  • mnowak/athena
  • glagafon/dq-optimize
  • ekajomov/athena-fork-fix
  • lcalic/athena
  • ladamczy/athena
  • anfortma/athena
  • mhufnage/athena
  • rqian/athena
  • yonoda/athena
  • fballi/athena
  • lsultana/obsolete_athena
  • lsultana/athena
  • pebaron/athena-leprem
  • kfung/athena
  • alveltma/athena
  • alpleban/athena
  • mmaheshw/athena
  • jdavidso/athena
  • anstein/athena
  • edcritel/athena
  • gbird/athena
  • anhodges/athena
  • midandre/athena
  • mfurukaw/athena
  • bglik/athena
  • rohasan/athena
  • mvivasal/athena
  • asbrooks/athena
  • kyjones/athena
  • sokkerma/athena
  • mveen/athena
  • fcurcio/athena
  • lboccard/athena
  • mmlynars/athena-v-2
  • jmcgowan/athena
  • ctaybi/athena
  • joroemer/athena
  • tayoshid/athena-test
  • jodafons/athena
  • tburatov/athena
  • dmankad/athena
  • ivyoung/athena
  • drasslof/athena
  • tmclachl/athena
  • anburger/athena
  • sanchezj/athena-2022
  • sdahbi/athena
  • jiddon/athena
  • fwinkel/athena
  • izahir/athena
  • goblirsc/athena
  • sidoti/athena
  • mmoors/athena
  • obut/athena
  • jwkraus/athena
  • sanchezj/athena
  • rvinasco/athena
  • klleras/athena
  • esimpson/athena
  • rhaberle/athena
  • dta/athena_old
  • jhowarth/athena
  • janders/athena
  • jchapman/athena
  • mungo/athena
  • jecouthu/athena
  • sutuncay/athena
  • sfuenzal/athena
  • avallier/athena
  • fmontere/athena
  • dtrischu/athena
  • zhaotong/athena
  • fhenry/athena
  • misantan/athena
  • zalegria/athena
  • awharton/Athena
  • acordeir/athena-ed
  • gdigrego/athena
  • shaoguan/athena
  • pdougan/athena
  • nbruscin/athena
  • amelo/athena
  • kchu/athena
  • peiyan/athena
  • caiy/athena
  • backes/athena
  • tayoshid/athena-2024
  • mkholoda/athena
  • fkirfel/athena
  • bcervato/athena
  • esampson/athena-idart
  • gfacini/athena
  • fwinkl2/athena
  • yvolkotr/athena
  • gmascare/athena
  • shpeng/athena-2
  • gmercado/athena
  • rhowen/athena
  • esampson/athena-idart-2
  • djlewis/athena
  • costanzo/athena
  • nharriso/athena
  • pibutti/athena
  • esampson/athena-otp
  • yuematsu/athena
  • alpleban/athena-met
  • yilin/athena
  • astefl/athena
  • wcastigl/athena
  • esampson/athena-june-otp
  • bmoser/athena
  • thitchin/athena
  • bdong/athena
  • sosarkar/athena-again
  • zhanhang/athena
  • ksahan/athena
  • lbarrade/athena
  • msasada/athena
  • seth/athena
  • agheata/athena
  • txu/athena
  • okolay/athena
  • robouque/athena
  • esampson/june-2-otp
  • zhangbo/athena
  • mlyukova/athena
  • nsurijr/athena
  • wema/athena
  • damperia/athena-acts
  • dbaronmo/athena
  • boudreau/athena
  • vsasse/athena
  • martyniu/athena
  • acamplan/athena
  • eballabe/athena
  • bhuth/athena
  • bngair/met-significance-r-22
  • ksakura/athena
  • bngair/me-tsig-athena
  • vkost/athena
  • zhubacek/athena
  • menadeem/athena
  • rhicks/athena
  • atymchys/athena
  • yanqiw/athena
  • linghua/athena
  • domatter/athena
  • juscerri/athena
  • arelycg/athena
  • skadir/athena
  • biliu/athena
  • sgoswami/athena
  • sosarkar/athena
  • beltran/athena
  • mwessels/athena
  • hshaddix/athena
  • ddicroce/athena
  • bdebjani/athena
  • dreikher/athena
  • lwinkler/athena
  • fladias/athena
  • cleong/athena
  • elham/athena
  • mhabedan/athena
  • emoon/athena
  • haren/athena
  • sdiefenb/athena-onnx-tutorial
  • mads/athena
  • dwilson/athena
  • fivone/athena
  • nkrogh/athena
  • lsanfili/athena
  • dahumphr/athena
  • scane/athena
  • thart/athena
  • kenakamu/athena
  • echerepa/athena
  • baer/athena
  • lifoster/athena
  • glagafon/aaaathena
  • alancast/athena
  • dcamarer/athena
  • eskorda/athena
  • glagafon/athena
  • salopez/athena
  • haotianl/athena
  • ukhurshi/athena
  • rshibata/athena
  • lburke/athena
  • glagafon/glagafon-dq
  • rvavrick/athena
  • delitez/athena
  • therwig/athena
  • mwitkows/athena
  • pizhang/athena
  • htsoi/athena
  • ezaya/athena
  • pachabri/athena
  • lcorazzi/athena
  • casadop/athena
  • achamber/athena
  • mmantina/athena
  • jaburles/athena
  • rmole/athena
  • hzhuang/athena
  • lmonaco/athena
  • mamirono/athena
  • jkrupa/athena
  • rpozzi/athena
  • gserenis/athena
  • mfornasi/athena
  • uepstein/athena
  • fdattola/athena
  • belderto/athena
  • semami/athena
  • jinglis/athena
  • lechols/athena
  • ljerala/athena
  • jajohnso/athena
  • cmavungu/athena
  • lopezzot/athena
  • htorre/athena
  • abesir/athena
  • jlittle/athena
  • tneep/athena
  • robouque/athena-20241115
  • lbrown/athena
  • fsiegert/athena
  • wguerin/athena
  • rmole/athena-personal-fork
  • epompapa/athena
  • kfang/athena-fork-kyfang
  • wenjingw/athena
  • jackersc/athena
  • ashirazi/athena
  • kgrimm/athena-kgrimm
  • prmitra/athena
  • toheintz/athena
  • gfazzino/athena
  • nihartma/athena
  • kdipetri/athena
  • amoreira/athena
  • goetz/athena-acts
  • alarnold/athena
  • djuarezg/athena
  • novotnyp/athena
  • falves/athena
  • yazhou/athena
  • wlai/athena
  • adsalvad/athena
  • mnegrini/athena
  • christog/athena
  • ibenaoum/athena
  • tflee/athena
  • ehampshi/athena
  • frcastig/athena
  • tomoya/athena-low-pt-muon-rec
  • jusilva/athena
  • pusharma/athena
  • exochell/my-athena
  • jlieberm/athena
  • chhultqu/athena
1542 results
Show changes
Commits on Source (29)
Showing
with 670 additions and 306 deletions
#!/usr/bin/env python
# art-description: GPU Topological (Topo-Automaton) Clustering test: 4 2 0 thresholds.
# art-type: grid
# art-include: master/Athena
# art-include: main/Athena
# art-architecture: '#&nvidia'
# art-output: expert-monitoring.root
......
#!/usr/bin/env python
# art-description: GPU Topological (Topo-Automaton) Clustering test: 4 2 0 thresholds (in absolute value).
# art-type: grid
# art-include: master/Athena
# art-include: main/Athena
# art-architecture: '#&nvidia'
# art-output: expert-monitoring.root
......
#!/usr/bin/env python
# art-description: GPU Topological (Topo-Automaton) Clustering test: 4 2 2 thresholds.
# art-type: grid
# art-include: master/Athena
# art-include: main/Athena
# art-architecture: '#&nvidia'
# art-output: expert-monitoring.root
......
#!/usr/bin/env python
# art-description: GPU Topological (Topo-Automaton) Clustering test: 6 3 3 thresholds.
# art-type: grid
# art-include: master/Athena
# art-include: main/Athena
# art-architecture: '#&nvidia'
# art-output: expert-monitoring.root
......
# Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
# Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
# Declare the package name.
atlas_subdir( xAODInDetMeasurementAthenaPool )
......@@ -9,9 +9,12 @@ atlas_add_poolcnv_library( xAODInDetMeasurementAthenaPoolPoolCnv
xAODInDetMeasurement/PixelClusterAuxContainer.h
xAODInDetMeasurement/StripClusterContainer.h
xAODInDetMeasurement/StripClusterAuxContainer.h
xAODInDetMeasurement/HGTDClusterContainer.h
xAODInDetMeasurement/HGTDClusterAuxContainer.h
xAODInDetMeasurement/SpacePointContainer.h
xAODInDetMeasurement/SpacePointAuxContainer.h
TYPES_WITH_NAMESPACE xAOD::PixelClusterContainer xAOD::PixelClusterAuxContainer xAOD::StripClusterContainer xAOD::StripClusterAuxContainer
xAOD::HGTDClusterContainer xAOD::HGTDClusterAuxContainer
xAOD::SpacePointContainer xAOD::SpacePointAuxContainer
CNV_PFX xAOD
LINK_LIBRARIES AthContainers AthenaKernel AthenaPoolCnvSvcLib
......
ParticleGun documentation
-------------------------
See https://twiki.cern.ch/twiki/bin/viewauth/AtlasProtected/ParticleGunForAtlas
for some coherent documentation that should be kept up to date.
# ParticleGun documentation
Note on the produced events.
The events produced by the Particle Gun with the HepMC2 backend and
HepMC3 backend have different structure.
## Introduction
For the HepMC2 case, each event contains at least one vertex with at least one
particle of interest attahced to it. The spatial distribution of those vertices of interest is
regulated by the settings of the particle gun. As there are no beams and at least
some particles are orphans, such an event record is not a valid Athena event and
some algorithms might not work correctly on it.
The ParticleGun generator is an event sampler from directly provided
kinematic distributions rather than microscopic physics, usually used
to generate single-particle events for performance testing, but also
capable of multiparticle events with possibly correlated distributions.
Unlike the previous ParticleGenerator package, ParticleGun allows
completely general kinematic and particle ID samplers to be passed to
the generator. The most common samplers, such as flat phi, const pT or
E, etc., are accessible in a much simpler way.
As the package is entirely written in Python, new samplers can be
written and used entirely within a job options script: it is
relatively simple to even do complex things like correlated sampling
of multiple particles this way, without the need to create a new
production tag of the ParticleGun package.
## Using ParticleGun
Here is an example job option steering fragment for constant-energy
particle production, sampled flat in an eta range:
```python
import ParticleGun as PG
pg = PG.ParticleGun()
pg.sampler.pid = 11
pg.sampler.mom = PG.EEtaMPhiSampler(energy=10000, eta=[-2,2])
topSeq += pg
```
Here a ParticleGun algorithm is created (first two lines), and is told
to make electrons on line 3 (default is geantinos, PID = 999). On line
4 the momentum sampler is chosen to be expressed in energy,
pseudorapidity, phi, and mass: the phi and mass are left at the
defaults of flat `0..2pi` and `0` respectively. The number given as
the energy argument is interpreted as a constant, the two-item list
given for eta is interpreted as a uniform sampler in that range.
Syntactic sugar is also provided for continuous sampling in a disjoint
range: `[0,1,2,4]` is interpreted as a flat sampler between 0..1 and
`2..4` (with twice as many events falling in the latter sub-range on
average, since it is twice as large) and with a unsampled gap between
`1..2`.
## Samplers
Explicit sampler objects can also be passed as arguments for full
control, in the same way as the `EEtaMPhiSampler` is passed above. The
set of samplers are defined and documented in
https://gitlab.cern.ch/atlas/athena/-/blob/main/Generators/ParticleGun/python/samplers.py,
but for reference the main ones are listed here:
### Continuous samplers
- `UniformSampler`: flat sampling in a range
- `ModUniformSampler`: flat sampling in a range and its opposite sign
- `DisjointUniformSampler`: flat sampling in a set of disjoint ranges (e.g. eta crack regions)
- `LogSampler`: flat sampling "on a log scale", i.e. equal weight distributed over orders of magnitude
- `GaussianSampler`: sampling from a Gaussian distribution
### Discrete samplers
- `CyclicSeqSampler`: choose in increasing order from a discrete sequence of values, with cyclic repetition on the sequence length
- `RandomSeqSampler`: choose randomly from a discrete sequence of values
- `ConstSampler`: return a constant value
Several of these basic distribution samplers can be obtained via
Python literal forms:
- a Python `list` is treated as a `UniformSampler` if it has two entries, and a `DisjointUniformSampler` if it has more;
- a Python `tuple` is converted to the sequence of a `CyclicSeqSampler`; and
- a Python `set` is treated as a `RandomSeqSampler` sequence.
In Python 2.7 and 3.x these may all be provided as Python literals,
with syntaxes `[a,b,c]`, `(a,b,c)` and `{a,b,c}` respectively. This
conversion is implemented via the `mksampler(seq)` function, which is
automatically called inside the composite samplers now described,
making the configuration syntax in job-option scripts very clean.
### Composite samplers
- `PosSampler`: a position (and time) 4-vector sampler, with each x,y,z component sampled using the distribution samplers above NOTE: to be generalised to provide several coordinate basis representations;
- `MomSampler`: samplers of 4-momentum vectors, with the coordinates sampled via the distribution samplers above. There are versions for several coordinate bases:
- `NullMomSampler`: return `(0,0,0,0)`
- `MXYZSampler`
- `EEtaMPhiSampler`
- `ERapMPhiSampler`
- `EThetaMPhiSample`
- `MEtaMPhiSampler`
- `MRapMPhiSampler`
- `MThetaMPhiSample`
- `ParticleSampler`: a complete particle sampler, which uses a `MomSampler`
for 4-momentum sampling, a discrete sampler for the particle-ID code and
number of particles to sample, and a `PosSampler` for vertex positioning.
This is the main configuration interface, via the sampler property of an
Athena `ParticleGun` algorithm.
Any of these samplers may be subclassed or replaced with any Python
object possessing a no-argument `__call__` method which returns the
correct type. This can be useful for using existing functions, or
setting up complex configurations such as this correlated 2-particle
sampling example:
https://gitlab.cern.ch/atlas/athena/-/blob/main/Generators/ParticleGun/share/examples/jobOption.ParticleGun_correlated.py
## Examples
More example job options may be found at
https://gitlab.cern.ch/atlas/athena/-/tree/main/Generators/ParticleGun/share/examples
including:
- the most common sort of configuration (cf. above): https://gitlab.cern.ch/atlas/athena/-/blob/main/Generators/ParticleGun/share/examples/jobOption.ParticleGun_constenergy_flateta.py
- use of cyclic sequencers and a non-origin vertex positioning: https://gitlab.cern.ch/atlas/athena/-/blob/main/Generators/ParticleGun/share/examples/jobOption.ParticleGun_fwd_sequence.py
- an example of a custom correlated 2-particle sampler: https://gitlab.cern.ch/atlas/athena/-/blob/main/Generators/ParticleGun/share/examples/jobOption.ParticleGun_correlated.py
- a custom sampler using a ROOT histogram distribution: https://gitlab.cern.ch/atlas/athena/-/blob/main/Generators/ParticleGun/share/examples/jobOption.ParticleGun_corrhist.py
- a custom sampler in 1/pt, with momentum / vertex correlation: https://gitlab.cern.ch/atlas/athena/-/blob/main/Generators/ParticleGun/share/examples/jobOption.ParticleGun_flatcurvature_flatip.py
Note that these are raw Athena job options. To convert them for use with the `Gen_tf` wrapper
"transform" script, `topAlg` needs to be replaced with `genSeq`, and the standard-production
`evgenConfig` metadata flags need to be set.
## Note on event structure
The events produced by ParticleGun have different structure with the
HepMC2 and HepMC3 backends.
For the HepMC2 case, each event contains at least one vertex with at
least one particle of interest attached to it. The spatial
distribution of those vertices of interest is regulated by the
ParticleGun settings. As there are no beams and at least some
particles are orphans, such an event record cannot be used with
some Athena algorithms might not work correctly on it. In particular,
the `TestHepMC` filter may need to be disabled in ParticleGun production
jobs.
For the HepMC3 case, the generated event is a valid Athena event.
Namely, it contains beams (by default 7 TeV protons), primary interaction point
(always at (x=0,y=0,z=0) ) and no orphants, i.e. all particles in the event are connected.
Namely, the production vertex of the particle of interest is connected to the
interaction point with a dummy particle with status 11.
As of now this particle should be ignored in the analyses.
The beam information can be potentially used for the analyses and probably should be used for the booking purposes.
Other than that, the kinematics of the particle of innterest and the spatial
distribution of the vertex of interest are exactly the same as for the HePMC2 case.
\ No newline at end of file
Namely, it contains beams (by default 7 TeV protons), a primary
interaction point (always at (x=0,y=0,z=0) ) and no orphans, i.e. all
particles in the event are connected. Namely, the production vertex of
the particle of interest is connected to the interaction point with a
dummy particle with status 11 and the physical-particle PID. This
dummy vertex and particle should be ignored in event analyses. The
beam information can be potentially used for the analyses and probably
should be used for the booking purposes. Other than that, the
kinematics of the particle of innterest and the spatial distribution
of the vertex of interest are exactly the same as for the HepMC2 case.
## To-do
- Revisit event structure in HepMC3: in particular the dummy vertex at (0,0,0,0)
and the connecting dummy-particle PID codes can be misleading and should
perhaps be changed to make the dummy nature clearer.
\ No newline at end of file
......@@ -78,7 +78,22 @@ class Registry(metaclass=Singleton):
self.add_default("charmthr", powheg_atlas_common.mass.c, description="minimum pT in GeV for generating emission off c-quarks. [<0:default to 1.5]")
self.add_default("charmthrpdf", powheg_atlas_common.mass.c, description="threshold in GeV at which c-quark PDF becomes non-zero. [<0:default to 1.5]")
self.add_default("check_bad_st2", -1, description="check stage 2 output and discard bad grids. [1:enabled]")
self.add_default("cHHH", -1, description="")
self.add_default("chhh", 1.0, description="ggF_HH and ggF_HH_SMEFT: Trilinear Higgs self-coupling")
self.add_default("ct", 1.0, description="ggF_HH and ggF_HH_SMEFT: Top-Higgs Yukawa coupling")
self.add_default("ctt", 0., description="ggF_HH and ggF_HH_SMEFT: Two-top-two-Higgs (tthh) coupling")
self.add_default("cggh", 0., description="ggF_HH and ggF_HH_SMEFT: Effective gluon-gluon-Higgs coupling")
self.add_default("cgghh", 0., description="ggF_HH and ggF_HH_SMEFT: Effective two-gluon-two-Higgses coupling")
self.add_default("CHbox", 0., description="ggF_HH_SMEFT: Kinetic term of SU(2)_L singlet (with d'Alembert operator)")
self.add_default("CHD", 0., description="ggF_HH_SMEFT: second Kinetic term")
self.add_default("CH", 0., description="ggF_HH_SMEFT: Additional term to Higgs potential")
self.add_default("CuH", 0., description="ggF_HH_SMEFT: Modified Yukawa term")
self.add_default("CHG", 0., description="ggF_HH_SMEFT: Higgs-Glue-Glue operator")
self.add_default("CtG", 0., description="ggF_HH_SMEFT: Wilson coefficient of chromomagnetic operator")
self.add_default("CQt", 0., description="ggF_HH_SMEFT: Wilson coefficient of 4-top operator C_Qt^(1)")
self.add_default("CQt8", 0., description="ggF_HH_SMEFT: Wilson coefficient of 4-top operator C_Qt^(8)")
self.add_default("CQQtt", 0., description="ggF_HH_SMEFT: sum of Wilson coefficients of 4-top operators C_QQ^(1)+C_tt")
self.add_default("CQQ8", 0., description="ggF_HH_SMEFT: Wilson coefficient of 4-top operator C_QQ^(8)")
self.add_default("GAMMA5BMHV", 0, description="ggF_HH_SMEFT: Choose gamma5 scheme: 0 NDR (default), 1 BMHV")
self.add_default("chklimseed", -1, description="check limit seed")
self.add_default("ckkwscalup", 1, description="scalup scale for subsequent shower. [0:Powheg; 1:CKKW (use the smallest kt in the final state)]")
self.add_default("CKM_diagonal", 0, description="Set CKM matrix diagonal. [0:False; 1:True]")
......@@ -214,6 +229,7 @@ class Registry(metaclass=Singleton):
self.add_default("iftopinloop", -1, description="[-1:use Powheg default]")
self.add_default("ih1", 1, name="beam_1_type", description="hadron content of beam 1. [(-)1:(anti)proton; (-)2:(anti)neutron; (-)3:(-)pion]")
self.add_default("ih2", 1, name="beam_2_type", description="hadron content of beam 2. [(-)1:(anti)proton; (-)2:(anti)neutron; (-)3:(-)pion]")
self.add_default("includesubleading", 0, description="ggF_HH_SMEFT: Subleading operators")
self.add_default("inc_delta_terms", -1, description="0: as^3 NNLO delta terms in MINNLO are not included")
self.add_default("incomingflavors", 5, description="number of incoming flavours")
self.add_default("inv_alpha", 1.0 / float(powheg_atlas_common.EW_parameters.alphaem), description="EM coupling reciprocal")
......@@ -241,6 +257,7 @@ class Registry(metaclass=Singleton):
self.add_default("kappa_ghz", 1.0, description="multiplicative kappa-factor of the Higgs-Z coupling. ONLY USED FOR REWEIGHTING.")
self.add_default("kt2minqed", 0.8, description="kt2_rad_min for photon radiation from leptons. [<0: use 0.8]")
self.add_default("ktmerging", -1, description="[-1:use Powheg default]")
self.add_default("Lambda", 1.0, description="ggF_HH_SMEFT: EFT counting mass Scale (in TeV)")
self.add_default("lambda_g", 0, description="Lambda(gamma)")
self.add_default("Lambda_gam", 0, description="Lambda(gamma)")
self.add_default("lambda_z", 0, description="Lambda(Z)")
......@@ -352,6 +369,7 @@ class Registry(metaclass=Singleton):
self.add_default("MSU", 1e4, description="Mass of the up-type leptoquark in Drell-Yan Scalar LeptoQuark production.")
self.add_default("mu+e-", 0, hidden=True, description="WWj decay mode [1:enabled]")
self.add_default("mu+mu-", 0, hidden=True, description="WWj decay mode [1:enabled]")
self.add_default("multiple-insertion", 1, description="ggF_HH_SMEFT: Truncation options")
self.add_default("Mumass", powheg_atlas_common.mass.mu, name="mass_mu", description="mass of muon in GeV")
self.add_default("ncall1", 100, description="number of calls for initializing the integration grid")
self.add_default("ncall1btl", -1, description="number of calls btilde (itr1)")
......@@ -546,6 +564,7 @@ class Registry(metaclass=Singleton):
self.add_default("use-OLP-interface", -1, name="use_OLP_interface", description="[-1:use Powheg default]")
self.add_default("use-s2effin", -1, description="use s2eff instead of M_W as input to the EW scheme")
self.add_default("user_reshists_sep", -1, description="[-1:use Powheg default]")
self.add_default("usesmeft", 1, description="ggF_HH_SMEFT: Choose EFT parametrization [0: HEFT w/o truncation, 1: SMEFT W/ truncation, 2: HEFT w/ truncation]")
self.add_default("vdecaymode", None, description="vector boson decay mode")
self.add_default("vdecaymodeV1", 0,description="gg4l: decay mode of first vector boson")
self.add_default("vdecaymodeV2", 0, description="gg4l: decay mode of second vector boson")
......
......@@ -17,6 +17,7 @@ from .fourtops import fourtops
from .gg4l import gg4l
from .ggF_H import ggF_H
from .ggF_HH import ggF_HH
from .ggF_HH_SMEFT import ggF_HH_SMEFT
from .ggF_HZ import ggF_HZ
from .Hj import Hj
from .Hj_MiNNLO import Hj_MiNNLO
......
......@@ -23,9 +23,21 @@ class ggF_HH(PowhegV2):
"""
super(ggF_HH, self).__init__(base_directory, "ggHH", **kwargs)
# For some reason, this process calls a python script which looks for .grid files in $PYTHONPATH
# Add grid file creation function
self.validation_functions.append("create_grid_file")
# This process uses a python script which uses .grid files searched for in $PYTHONPATH
# By appending the folder that they live in to PYTHONPATH it is able to find them
os.environ["PYTHONPATH"] += ":" + self.executable.replace("pwhg_main", "Virtual")
# At the moment these files are stored or linked locally, so we use ${PWD}
# but we may use self.executable.replace("pwhg_main", "Virtual") instead at some point
os.environ["PYTHONPATH"] += ":" + os.environ["PWD"]
# need to use libraries compatible with the environment used at compilation (so centos7)
# would need to use ${LHAPDF_INSTAL_PATH}/lib/python3.9/site-packages when/if the process compiles in alma9 eventually
lhapdf_python_path = "/cvmfs/sft.cern.ch/lcg/releases/LCG_101/MCGenerators/lhapdf/6.3.0/x86_64-centos7-gcc8-opt/lib/python3.9/site-packages"
os.environ["PYTHONPATH"] += ":" + lhapdf_python_path
logger.info('PYTHONPATH is now:\n{}'.format(os.environ["PYTHONPATH"]))
# Add all keywords for this process, overriding defaults if required
self.add_keyword("alphas_from_lhapdf")
......@@ -44,7 +56,11 @@ class ggF_HH(PowhegV2):
self.add_keyword("charmthr")
self.add_keyword("charmthrpdf")
self.add_keyword("check_bad_st2")
self.add_keyword("cHHH")
self.add_keyword("chhh", 1.0)
self.add_keyword("ct", 1.0)
self.add_keyword("ctt", 0.)
self.add_keyword("cggh", 0.)
self.add_keyword("cgghh", 0.)
self.add_keyword("clobberlhe")
self.add_keyword("colltest")
self.add_keyword("compress_lhe")
......@@ -65,7 +81,7 @@ class ggF_HH(PowhegV2):
self.add_keyword("hdamp")
self.add_keyword("hdecaymode")
self.add_keyword("hfact")
self.add_keyword("hmass")
self.add_keyword("hmass", 125.)
self.add_keyword("icsimax", 2)
self.add_keyword("ih1")
self.add_keyword("ih2")
......@@ -126,7 +142,7 @@ class ggF_HH(PowhegV2):
self.add_keyword("storemintupb")
self.add_keyword("testplots")
self.add_keyword("testsuda")
self.add_keyword("topmass")
self.add_keyword("topmass", 173.) # this value is hardcoded in the virtual matrix element, and for consistency has not to be changed when running full theory prediction (i.e. mtdep=3)
self.add_keyword("ubexcess_correct")
self.add_keyword("ubsigmadetails")
self.add_keyword("use-old-grid")
......@@ -142,3 +158,50 @@ class ggF_HH(PowhegV2):
self.add_keyword("Zmass")
self.add_keyword("Zwidth")
def create_grid_file(self):
"""! Creates the .grid file needed by this process."""
"""! This function calls a python script provided by the authors, which is linked to the local directory."""
"""! The code of this function is adapted from the script ${POWHEGPATH}/POWHEG-BOX-V2/ggHH/testrun/run.sh"""
self.expose() # convenience call to simplify syntax
logger.info('Now attempting to link locally the files needed by this Powheg process')
try:
os.system("ln -s " + os.environ["POWHEGPATH"] + "/POWHEG-BOX-V2/ggHH/Virtual/events.cdf events.cdf")
os.system("ln -s " + os.environ["POWHEGPATH"] + "/POWHEG-BOX-V2/ggHH/Virtual/creategrid.py creategrid.py")
os.system("for grid in " + os.environ["POWHEGPATH"] + "/POWHEG-BOX-V2/ggHH/Virtual/Virt_full_*E*.grid; do ln -s $grid ${grid##*/}; done")
except RuntimeError:
logger.error('Impossible to link the needed files locally')
raise
# need to override lhapdf python path while the powheg process has been compiled in a different platform
py_path_save = os.environ["PYTHONPATH"]
py_path_temp = os.environ["LHAPDF_INSTAL_PATH"] + "/lib/python3.9/site-packages" + ":" + py_path_save
os.environ["PYTHONPATH"] = py_path_temp
logger.debug(f'Temporarily setting PYTHONPATH to:\n{py_path_temp}')
# handling the parameters of this process
# these parameters need to be parsed in a specific format
chhh_str = f'{list(self.parameters_by_keyword("chhh"))[0].value:+.4E}'
ct_str = f'{list(self.parameters_by_keyword("ct"))[0].value:+.4E}'
ctt_str = f'{list(self.parameters_by_keyword("ctt"))[0].value:+.4E}'
cggh_str = f'{list(self.parameters_by_keyword("cggh"))[0].value:+.4E}'
cgghh_str = f'{list(self.parameters_by_keyword("cgghh"))[0].value:+.4E}'
grid_file_name = f'Virt_full_{chhh_str}_{ct_str}_{ctt_str}_{cggh_str}_{cgghh_str}.grid'
logger.info('Now trying to use creategrid.py to create the Virt_full_*.grid file')
logger.info(f'File name: {grid_file_name}')
logger.info(f'Parameters are: chhh={chhh_str}, ct={ct_str}, ctt={ctt_str}, cggh={cggh_str}, cgghh={cgghh_str}')
try:
#import creategrid as cg
#cg.combinegrids(grid_file_name, chhh_str, ct_str, ctt_str, cggh_str, cgghh_str)
pythoncmd=f"import creategrid as cg; cg.combinegrids('{grid_file_name}', {chhh_str}, {ct_str}, {ctt_str}, {cggh_str}, {cgghh_str})"
os.system("python3 -c \""+pythoncmd+"\"")
except RuntimeError:
logger.error('Impossible to use creategrid.py to create the Virt_full_*.grid file')
raise
# setting PYTHONPATH back to its original value
os.environ["PYTHONPATH"] = py_path_save
logger.debug(f'Setting PYTHONPATH back to:\n{py_path_save}')
logger.info('Although the produced Virt_full_*.grid file now exists in the local directory, Powheg will later try to find it in all directories contained in $PYTHONPATH. This will produce several "not found" info messages which can safely be ignored.')
# Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
import os
from AthenaCommon import Logging
from ..powheg_V2 import PowhegV2
## Get handle to Athena logging
logger = Logging.logging.getLogger("PowhegControl")
class ggF_HH_SMEFT(PowhegV2):
"""! Default Powheg configuration for gluon-fusion Higgs boson production with quark mass and EW effects.
Create a configurable object with all applicable Powheg options.
@author Timothée Theveneaux-Pelzer <tpelzer@cern.ch>
"""
def __init__(self, base_directory, **kwargs):
"""! Constructor: all process options are set here.
@param base_directory: path to PowhegBox code.
@param kwargs dictionary of arguments from Generate_tf.
"""
super(ggF_HH_SMEFT, self).__init__(base_directory, "ggHH_SMEFT", **kwargs)
# Add grid file creation function
self.validation_functions.append("create_grid_file")
# This process uses a python script which uses .grid files searched for in $PYTHONPATH
# By appending the folder that they live in to PYTHONPATH it is able to find them
# At the moment these files are stored or linked locally, so we use ${PWD}
# but we may use self.executable.replace("pwhg_main", "Virtual") instead at some point
os.environ["PYTHONPATH"] += ":" + os.environ["PWD"]
# need to use libraries compatible with the environment used at compilation (so centos7)
# would need to use ${LHAPDF_INSTAL_PATH}/lib/python3.9/site-packages when/if the process compiles in alma9 eventually
lhapdf_python_path = "/cvmfs/sft.cern.ch/lcg/releases/LCG_101/MCGenerators/lhapdf/6.3.0/x86_64-centos7-gcc8-opt/lib/python3.9/site-packages"
os.environ["PYTHONPATH"] += ":" + lhapdf_python_path
logger.info('PYTHONPATH is now:\n{}'.format(os.environ["PYTHONPATH"]))
# Add all keywords for this process, overriding defaults if required
self.add_keyword("alphas_from_lhapdf")
self.add_keyword("bornktmin")
self.add_keyword("bornonly")
self.add_keyword("bornsuppfact")
self.add_keyword("bornzerodamp")
self.add_keyword("bottomthr")
self.add_keyword("bottomthrpdf")
self.add_keyword("btildeborn")
self.add_keyword("btildecoll")
self.add_keyword("btildereal")
self.add_keyword("btildevirt")
self.add_keyword("btlscalect")
self.add_keyword("btlscalereal")
self.add_keyword("charmthr")
self.add_keyword("charmthrpdf")
self.add_keyword("check_bad_st2")
self.add_keyword("chhh", 1.0)
self.add_keyword("ct", 1.0)
self.add_keyword("ctt", 0.)
self.add_keyword("cggh", 0.)
self.add_keyword("cgghh", 0.)
self.add_keyword("CHbox", 0.)
self.add_keyword("CHD", 0.)
self.add_keyword("CH", 0.)
self.add_keyword("CuH", 0.)
self.add_keyword("CHG", 0.)
self.add_keyword("CtG", 0.)
self.add_keyword("CQt", 0.)
self.add_keyword("CQt8", 0.)
self.add_keyword("CQQtt", 0.)
self.add_keyword("CQQ8", 0.)
self.add_keyword("GAMMA5BMHV", 0)
self.add_keyword("clobberlhe")
self.add_keyword("colltest")
self.add_keyword("compress_lhe")
self.add_keyword("compress_upb")
self.add_keyword("compute_rwgt")
self.add_keyword("doublefsr")
self.add_keyword("evenmaxrat")
self.add_keyword("facscfact", self.default_scales[0])
self.add_keyword("fastbtlbound")
self.add_keyword("fixedgrid")
self.add_keyword("fixedscale", description="Set renormalisation and factorisation scales to 2*m_H")
self.add_keyword("flg_debug")
self.add_keyword("foldcsi", 2)
self.add_keyword("foldphi", 2)
self.add_keyword("foldy", 5)
self.add_keyword("fullrwgt")
self.add_keyword("gfermi")
self.add_keyword("hdamp")
self.add_keyword("hdecaymode")
self.add_keyword("hfact")
self.add_keyword("hmass", 125.) # Value is hardcoded to 125 in the virtual matrix element, modification only possible in bornonly mode.
self.add_keyword("icsimax", 2)
self.add_keyword("ih1")
self.add_keyword("ih2")
self.add_keyword("itmx1", 2)
self.add_keyword("itmx1rm")
self.add_keyword("itmx2", 4)
self.add_keyword("itmx2rm")
self.add_keyword("iupperfsr")
self.add_keyword("iupperisr")
self.add_keyword("iymax", 2)
self.add_keyword("includesubleading", 0)
self.add_keyword("Lambda", 1.0)
self.add_keyword("lhans1", self.default_PDFs)
self.add_keyword("lhans2", self.default_PDFs)
self.add_keyword("lhapdf6maxsets")
self.add_keyword("lhrwgt_descr")
self.add_keyword("lhrwgt_group_combine")
self.add_keyword("lhrwgt_group_name")
self.add_keyword("lhrwgt_id")
self.add_keyword("LOevents")
self.add_keyword("manyseeds")
self.add_keyword("max_io_bufsize")
self.add_keyword("maxseeds")
self.add_keyword("minlo", frozen=True)
self.add_keyword("mintupbratlim")
self.add_keyword("mintupbxless")
self.add_keyword("mtdep", 3)
self.add_keyword("multiple-insertion", 1)
self.add_keyword("ncall1", 10000)
self.add_keyword("ncall1rm")
self.add_keyword("ncall2", 15000)
self.add_keyword("ncall2rm")
self.add_keyword("ncallfrominput")
self.add_keyword("noevents")
self.add_keyword("novirtual")
self.add_keyword("nubound", 20000)
self.add_keyword("olddij")
self.add_keyword("par_2gsupp")
self.add_keyword("par_diexp")
self.add_keyword("par_dijexp")
self.add_keyword("parallelstage")
self.add_keyword("pdfreweight")
self.add_keyword("ptHHcut_CT")
self.add_keyword("ptHHcut")
self.add_keyword("ptsqmin")
self.add_keyword("ptsupp")
self.add_keyword("radregion")
self.add_keyword("rand1")
self.add_keyword("rand2")
self.add_keyword("renscfact", self.default_scales[1])
self.add_keyword("rescue_reals")
self.add_keyword("rwl_add")
self.add_keyword("rwl_file")
self.add_keyword("rwl_format_rwgt")
self.add_keyword("rwl_group_events")
self.add_keyword("skipextratests")
self.add_keyword("smartsig")
self.add_keyword("softtest")
self.add_keyword("stage2init")
self.add_keyword("storeinfo_rwgt")
self.add_keyword("storemintupb")
self.add_keyword("testplots")
self.add_keyword("testsuda")
self.add_keyword("topmass", 173.) # Value is hardcoded to 173 in the virtual matrix element, modification only possible in bornonly mode.
self.add_keyword("ubexcess_correct")
self.add_keyword("ubsigmadetails")
self.add_keyword("use-old-grid")
self.add_keyword("use-old-ubound")
self.add_keyword("usesmeft", 1)
self.add_keyword("withdamp")
self.add_keyword("withnegweights")
self.add_keyword("withsubtr")
self.add_keyword("Wmass")
self.add_keyword("Wwidth")
self.add_keyword("xgriditeration")
self.add_keyword("xupbound")
self.add_keyword("zerowidth")
self.add_keyword("Zmass")
self.add_keyword("Zwidth")
def create_grid_file(self):
"""! Creates the .grid file needed by this process."""
"""! This function calls a python script provided by the authors, which is linked to the local directory."""
"""! The code of this function is adapted from the script ${POWHEGPATH}/POWHEG-BOX-V2/ggHH/testrun/run.sh"""
self.expose() # convenience call to simplify syntax
logger.info('Now attempting to link locally the files needed by this Powheg process')
try:
os.system("ln -s " + os.environ["POWHEGPATH"] + "/POWHEG-BOX-V2/ggHH_SMEFT/Virtual/events.cdf events.cdf")
os.system("ln -s " + os.environ["POWHEGPATH"] + "/POWHEG-BOX-V2/ggHH_SMEFT/Virtual/creategrid.py creategrid.py")
os.system("ln -s " + os.environ["POWHEGPATH"] + "/POWHEG-BOX-V2/ggHH_SMEFT/shell/warmup_smeft.py warmup_smeft.py")
os.system("for grid in " + os.environ["POWHEGPATH"] + "/POWHEG-BOX-V2/ggHH_SMEFT/Virtual/Virt_full_*E*.grid; do ln -s $grid ${grid##*/}; done")
except RuntimeError:
logger.error('Impossible to link the needed files locally')
raise
# need to override lhapdf python path while the powheg process has been compiled in a different platform
py_path_save = os.environ["PYTHONPATH"]
py_path_temp = os.environ["LHAPDF_INSTAL_PATH"] + "/lib/python3.9/site-packages" + ":" + py_path_save
os.environ["PYTHONPATH"] = py_path_temp
logger.debug(f'Temporarily setting PYTHONPATH to:\n{py_path_temp}')
# handling the parameters of this process
# these parameters need to be parsed in a specific format
usesmeft_str = str(list(self.parameters_by_keyword("usesmeft"))[0].value)
#EFTcount_str = ""
if usesmeft_str == "0":
EFTcount = 3
else:
EFTcount = list(self.parameters_by_keyword("multiple-insertion"))[0].value
EFTcount_str = f'{EFTcount:+n}'
# need to handle the case where we have different scales or pdfs in the joboption, provided as a list, or just one value
renfact = list(self.parameters_by_keyword("renscfact"))[0].value
renfac_str = f'{renfact[0]:+.2f}' if type(renfact) is list else f'{renfact:+.2f}'
lhapdfid = list(self.parameters_by_keyword("lhans1"))[0].value
lhapdfid_str = str(lhapdfid[0]) if type(lhapdfid) is list else str(lhapdfid)
if usesmeft_str == "1":
GF_str = f'{list(self.parameters_by_keyword("gfermi"))[0].value:+.4E}'
Lambda_str = f'{list(self.parameters_by_keyword("Lambda"))[0].value:+.4E}'
CHbox_str = f'{list(self.parameters_by_keyword("CHbox"))[0].value:+.4E}'
CHD_str = f'{list(self.parameters_by_keyword("CHD"))[0].value:+.4E}'
CH_str = f'{list(self.parameters_by_keyword("CH"))[0].value:+.4E}'
CuH_str = f'{list(self.parameters_by_keyword("CuH"))[0].value:+.4E}'
CHG_str = f'{list(self.parameters_by_keyword("CHG"))[0].value:+.4E}'
logger.info('Now trying to use warmup_smeft.py to create the Virt_full_*.grid file')
logger.info(f'Parameters are: GF={GF_str}, Lambda={Lambda_str}, CHbox={CHbox_str}, CHD={CHD_str}, CH={CH_str}, CuH={CuH_str}, CHG={CHG_str}, EFTcount={EFTcount_str}, usesmeft={usesmeft_str}, lhapdfid={lhapdfid_str}, renfac={renfac_str}')
try:
#import creategrid as cg
#cg.combinegrids(grid_file_name, chhh_str, ct_str, ctt_str, cggh_str, cgghh_str)
pythoncmd=f"import warmup_smeft as ws; ws.combinegrids_smeft({Lambda_str}, {CHbox_str}, {CHD_str}, {CH_str}, {CuH_str}, {CHG_str}, {GF_str}, {EFTcount_str}, {usesmeft_str}, {lhapdfid_str}, {renfac_str})"
os.system("python3 -c \""+pythoncmd+"\"")
except RuntimeError:
logger.error('Impossible to use warmup_smeft.py to create the Virt_full_*.grid file')
raise
else:
chhh_str = f'{list(self.parameters_by_keyword("chhh"))[0].value:+.4E}'
ct_str = f'{list(self.parameters_by_keyword("ct"))[0].value:+.4E}'
ctt_str = f'{list(self.parameters_by_keyword("ctt"))[0].value:+.4E}'
cggh_str = f'{list(self.parameters_by_keyword("cggh"))[0].value:+.4E}'
cgghh_str = f'{list(self.parameters_by_keyword("cgghh"))[0].value:+.4E}'
grid_file_name = f'Virt_full_{chhh_str}_{ct_str}_{ctt_str}_{cggh_str}_{cgghh_str}-HEFT{EFTcount_str}.grid'
logger.info('Now trying to use creategrid.py to create the Virt_full_*.grid file')
logger.info(f'File name: {grid_file_name}')
logger.info(f'Parameters are: chhh={chhh_str}, ct={ct_str}, ctt={ctt_str}, cggh={cggh_str}, cgghh={cgghh_str}, EFTcount={EFTcount_str}, usesmeft={usesmeft_str}, lhapdfid={lhapdfid_str}, renfac={renfac_str}')
try:
#import creategrid as cg
#cg.combinegrids(grid_file_name, chhh_str, ct_str, ctt_str, cggh_str, cgghh_str)
pythoncmd=f"import creategrid as cg; cg.combinegrids('{grid_file_name}', {chhh_str}, {ct_str}, {ctt_str}, {cggh_str}, {cgghh_str}, {EFTcount_str}, {lhapdfid_str}, {renfac_str})"
os.system("python3 -c \""+pythoncmd+"\"")
except RuntimeError:
logger.error('Impossible to use creategrid.py to create the Virt_full_*.grid file')
raise
# setting PYTHONPATH back to its original value
os.environ["PYTHONPATH"] = py_path_save
logger.debug(f'Setting PYTHONPATH back to:\n{py_path_save}')
logger.info('Although the produced Virt_full_*.grid file now exists in the local directory, Powheg will later try to find it in all directories contained in $PYTHONPATH. This will produce several "not found" info messages which can safely be ignored.')
import PowhegControl
transform_runArgs = runArgs if "runArgs" in dir() else None
transform_opts = opts if "opts" in dir() else None
PowhegConfig = PowhegControl.PowhegControl(process_name="ggF_HH_SMEFT", run_args=transform_runArgs, run_opts=transform_opts)
......@@ -14,10 +14,19 @@ evgenConfig.keywords = ["Higgs", "SMHiggs"]
evgenConfig.contact = ["james.robinson@cern.ch"]
# --------------------------------------------------------------
# Load ATLAS defaults for the Powheg ggF_H process
# Load ATLAS defaults for the Powheg ggF_HH process
# --------------------------------------------------------------
include("PowhegControl/PowhegControl_ggF_HH_Common.py")
# --------------------------------------------------------------
# Modify couplings
# --------------------------------------------------------------
#PowhegConfig.chhh = 1.0 # Trilinear Higgs self-coupling [default: 1.0 (SM)]
#PowhegConfig.ct = 1.0 # Top-Higgs Yukawa coupling [default: 1.0 (SM)]
#PowhegConfig.ctt = 0. # Two-top-two-Higgs (tthh) coupling [default: 0. (SM)]
#PowhegConfig.cggh = 0. # Effective gluon-gluon-Higgs coupling [default: 0. (SM)]
#PowhegConfig.cgghh = 0. # Effective two-gluon-two-Higgses coupling [default: 0. (SM)]
# --------------------------------------------------------------
# Generate events
# --------------------------------------------------------------
......
# Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
#--------------------------------------------------------------
# This is an example joboption to generate events with Powheg
# using ATLAS' interface. Users should optimise and carefully
# validate the settings before making an official sample request.
#--------------------------------------------------------------
#--------------------------------------------------------------
# EVGEN configuration
#--------------------------------------------------------------
evgenConfig.description = "POWHEG+Pythia8 gluon-fusion di-Higgs production with A14 NNPDF2.3 tune."
evgenConfig.keywords = ["Higgs", "SMHiggs"]
evgenConfig.contact = ["james.robinson@cern.ch"]
# --------------------------------------------------------------
# Load ATLAS defaults for the Powheg ggF_HH_SMEFT process
# --------------------------------------------------------------
include("PowhegControl/PowhegControl_ggF_HH_SMEFT_Common.py")
# --------------------------------------------------------------
# Modify couplings
# --------------------------------------------------------------
## parameter usesmeft:
## 0: use HEFT parametrization and ignore CHbox, CH, CuH, CHG (no truncation)
## 1: use SMEFT (Warsaw) parametrization and ignore chhh, ct, ctt, cggh, cgghh (with truncation)
## 2: use HEFT parametrization and ignore CHbox, CH, CuH, CHG (with truncation!, testing purpose/SILH-Lag. calculation)
### HEFT parametrization (no truncation):
#PowhegConfig.usesmeft = 0 # [default: 1] Choose EFT parametrization
#PowhegConfig.chhh = 1.0 # [default: 1.0 (SM)] Trilinear Higgs self-coupling
#PowhegConfig.ct = 1.0 # [default: 1.0 (SM)] Top-Higgs Yukawa coupling
#PowhegConfig.ctt = 0. # [default: 0. (SM)] Two-top-two-Higgs (tthh) coupling
#PowhegConfig.cggh = 0. # [default: 0. (SM)] Effective gluon-gluon-Higgs coupling
#PowhegConfig.cgghh = 0. # [default: 0. (SM)] Effective two-gluon-two-Higgses coupling
### SMEFT (Warsaw) parametrization (with truncation):
#PowhegConfig.usesmeft = 1 # [default: 1] Choose EFT parametrization
#PowhegConfig.Lambda = 1.0 # [default: 1.0] EFT counting mass Scale (in TeV)
#PowhegConfig.CHbox = 0. # [default: 0.] Kinetic term of SU(2)_L singlet (with d'Alembert operator)
#PowhegConfig.CHD = 0. # [default: 0.] second Kinetic term
#PowhegConfig.CH = 0. # [default: 0.] Additional term to Higgs potential
#PowhegConfig.CuH = 0. # [default: 0.] Modified Yukawa term
#PowhegConfig.CHG = 0. # [default: 0.] Higgs-Glue-Glue operator
### HEFT parametrization (with truncation!, testing purpose/SILH-Lag. calculation):
#PowhegConfig.usesmeft = 2 # [default: 1] Choose EFT parametrization
#PowhegConfig.chhh = 1.0 # [default: 1.0 (SM)] Trilinear Higgs self-coupling
#PowhegConfig.ct = 1.0 # [default: 1.0 (SM)] Top-Higgs Yukawa coupling
#PowhegConfig.ctt = 0. # [default: 0. (SM)] Two-top-two-Higgs (tthh) coupling
#PowhegConfig.cggh = 0. # [default: 0. (SM)] Effective gluon-gluon-Higgs coupling
#PowhegConfig.cgghh = 0. # [default: 0. (SM)] Effective two-gluon-two-Higgses coupling
# --------------------------------------------------------------
# Modify parameters related to truncation
# --------------------------------------------------------------
### Truncation options (2,3 only available for leading operators defined above)
## parameter multiple-insertion:
## 3: cross section based on |A_SM+A_dim6+A_dbldim6|^2
## 2: cross section based on |A_SM+A_dim6|^2+2*Re(A_SM x conj(A_dbldim6))
## 1: cross section based on |A_SM+A_dim6|^2
## 0: cross section based on |A_SM|^2+2*Re(A_SM*conj(A_dim6))
#PowhegConfig.multiple-insertion = 1 # [default: 1]
### Subleading operators (only available for truncation options 0,1)
## parameter includesubleading:
## 0: exclude subleading operators
## 1: include subleading operators applying loop power counting for C_tG (i.e. C_tG only enters linearly)
## 2: include subleading operators without loop power counting for C_tG (only valid in bornonly mode)
## 3: for testing purposes only (check O_tG implementation against GoSam, print PS point and ME for 4-top)
#PowhegConfig.includesubleading 0 # [default: 0] include subleading operators
#PowhegConfig.CtG = 0. # [default: 0.] Wilson coefficient of chromomagnetic operator
#PowhegConfig.CQt = 0. # [default: 0.] Wilson coefficient of 4-top operator C_Qt^(1)
#PowhegConfig.CQt8 = 0. # [default: 0.] Wilson coefficient of 4-top operator C_Qt^(8)
#PowhegConfig.CQQtt = 0. # [default: 0.] sum of Wilson coefficients of 4-top operators C_QQ^(1)+C_tt
#PowhegConfig.CQQ8 = 0. # [default: 0.] Wilson coefficient of 4-top operator C_QQ^(8)
#PowhegConfig.GAMMA5BMHV = 0 # [default: 0] Choose gamma5 scheme: 0 NDR (default), 1 BMHV
# --------------------------------------------------------------
# Generate events
# --------------------------------------------------------------
PowhegConfig.generate()
#--------------------------------------------------------------
# Pythia8 showering with the A14 NNPDF2.3 tune, main31 routine
#--------------------------------------------------------------
include("Pythia8_i/Pythia8_A14_NNPDF23LO_EvtGen_Common.py")
include("Pythia8_i/Pythia8_Powheg_Main31.py")
[[_TOC_]]
The athena SuperChic interface described here was developed by Patrick McCormack (william.patrick.mc.cormack.iii@cern.ch), who now works for CMS. For interface questions please contact Aleksandra Dimitrievska (aleksandra.dimitrievska@cern.ch) or Simone Pagan Griso (simone.pagan.griso@cern.ch). For generator-specific questions, you might want to contact the SuperChic authors ([Lucian Harland-Lang](lucian.harland-lang@physics.ox.ac.uk)) or [Marek Tasevsky](tasevsky@mail.cern.ch).
The Athena SuperChic interface described here was developed by Patrick McCormack (william.patrick.mc.cormack.iii@cern.ch),
who now works for CMS. For interface questions please contact
- Aleksandra Dimitrievska (aleksandra.dimitrievska@cern.ch)
- Simone Pagan Griso (simone.pagan.griso@cern.ch)
- Andrii Verbytskyi (andrii.verbytskyi@mpp.mpg.de)
For generator-specific questions, you might want to contact
[Lucian Harland-Lang](lucian.harland-lang@physics.ox.ac.uk) or [Marek Tasevsky](tasevsky@mail.cern.ch).
# Introduction
SuperChic 4 ([ref](https://superchic.hepforge.org/) and [manual](https://superchic.hepforge.org/superchic4.pdf)) is a generator for exclusive and photon-induced physics. The current (As of May 2021) version of the athena interface of SuperChic has been strongly reworked from prior releases (those preceeding April 2021), now relying primarily on the standalone executables from LCG, rather than the Fortran code that works behind the scenes for SuperChic. The standalone executables can be found at e.g. /cvmfs/sft.cern.ch/lcg/releases/LCG_88b/MCGenerators/superchic/4.02p2/x86_64-centos7-gcc62-opt/bin/, /cvmfs/atlas.cern.ch/repo/sw/software/21.6/sw/lcg/releases/LCG_88b/MCGenerators/superchic/4.02p2/x86_64-centos7-gcc62-opt/bin/, or /cvmfs/atlas-nightlies.cern.ch/repo/sw/21.6_AthGeneration_x86_64-centos7-gcc62-opt/sw/lcg/releases/LCG_88b/MCGenerators/superchic/4.02p2/x86_64-centos7-gcc62-opt/bin/.
([SuperChic 5 ](https://github.com/LucianHL/SuperChic) is a generator for exclusive and photon-induced physics. The current (as of January 2024) version of the athena interface
of `SuperChic` has been strongly reworked from prior releases (those preceeding April 2021), now relying primarily on
the standalone executables from LCG, rather than the Fortran code that works behind the scenes for SuperChic.
The standalone executables can be found at e.g./cvmfs/sft.cern.ch/lcg/releases/LCG_104d_ATLAS_3/MCGenerators/superchic/5.0/x86_64-el9-gcc13-opt/.
The bugreports, requests and issues concerning the SuperChic should be filled at [github](https://github.com/LucianHL/SuperChic).
The latest `SuperChic` manual is available on [github](https://github.com/LucianHL/SuperChic/blob/v.5.0/doc/superchic.tex))
## Standalone execution of SuperChic
## Intro to standalone SuperChic
The standalone execution of `SuperChic` requires:
1) Folders named outputs/, inputs/, and evrecs/ in the directory that you want to run from.
2) An input configuration file, probably named `input.DAT`. The format must follow that found in the
directories with the standalone executables referenced above.
3) The libraries of the `lhapdf` packages ( and `apfel` for Superchic 5.0) must also be in the `LD_LIBRARY_PATH` of your environment.
This is taken care of if you source a recent 21.6,AthGeneration release (21.6.70 or later).
4) To run the code for semi-exclusive production you will need to have the `SF_MSHT20qed` structure function grid file in LHAPDF format placed in the appropriate (i.e. visible to LHAPDF) directory. Those can be downloaded from [HepForge](https://superchic.hepforge.org/code.html)
For the `SuperChic` version 5.1 the tables are installed into the `${prefix}/share/SF` directory.
When running independently, SuperChic requires:
1) Folders named outputs/, inputs/, and evrecs/ in the directory that you want to run from
2) An input configuration file, probably named input.DAT. The format must follow that found in the directories with the standalone executables referenced above
3) The packages apfel and lhapdf must also be in the ROOT_INCLUDE_PATH and LD_LIBRARY_PATH of your environment. This is taken care of if you source a recent 21.6,AthGeneration release (21.6.70 or later)
Standalone SuperChic is run in two steps:
1) First, you would run "init < input.DAT", which generates files in the inputs/ directory. This step performs some initial integrations that get referenced in the next step.
2) Next, you would run "superchic < input.DAT", using the same input.DAT file. This step generates an LHE/HepMC/HEP-EVT in the evrecs/ folder that contains all of the generated events' information. This LHE file can then be fed into pythia for showering
Standalone `SuperChic` is run in two steps:
1) First, you would run "init < input.DAT", which generates files in the `inputs/` directory. This step performs some
initial integrations that get referenced in the next step.
2) Next, you would run "superchic < input.DAT", using the same `input.DAT` file. This step generates a LHE or HepMC output
in the `evrecs/` directory that contains all of the generated events' information. This LHE file can then be passed to `pythia8`
for showering and/or hadronization.
# SuperChic Interface
The new athena SuperChic interface proceeds primarily as standalone SuperChic would. An example of SuperChic without showering can be found at /athena/Generators/Superchic_i/share/jobOptions.SuperChic_ALP2.py. It proceeds fairly linearly:
The new athena SuperChic interface proceeds primarily as standalone SuperChic would. An example of SuperChic without
showering can be found at /athena/Generators/Superchic_i/share/jobOptions.SuperChic_ALP2.py. It proceeds fairly linearly:
1) The necessary inputs/, outputs/, and evrecs/ folders are created if they don't already exist
2) An input.DAT file is generated using arguments that are given to "Init". The class type for Init is defined here: /athena/Generators/Superchic_i/python/SuperChicUtils.py. You can see all of the various input variables that can be given. The file is written with the writeInputDAT function in that python macro.
3) SuperChicRun also runs the init and superchic executables, creating an LHE file. It is important that the output format be LHE, because the next step, which creates an EVNT file is only compatible with the LHE format.
4) The EVNT file is filled using the /athena/Generators/Superchic_i/python/EventFiller.py macro. To use a format other than LHE, a different version of this macro would have to be written.
2) An input.DAT file is generated using arguments that are given to "Init". The class type for Init is defined here:
/athena/Generators/Superchic_i/python/SuperChicUtils.py. You can see all of the various input variables that can be given.
The file is written with the writeInputDAT function in that python macro.
3) SuperChicRun also runs the init and superchic executables, creating an LHE file. It is important that the output format
be LHE, because the next step, which creates an EVNT file is only compatible with the LHE format.
4) The EVNT file is filled using the /athena/Generators/Superchic_i/python/EventFiller.py macro. To use a format other than LHE,
a different version of this macro would have to be written.
An example jobOptions file with pythia showering can be found at /athena/Generators/Superchic_i/share/jobOptions.SuperChicPy8_yyMuMu_SDA.py. The key difference here is of course that Pythia8 is added to the genSeq, and that we have to be careful about what pythia command options are included. The /athena/Generators/Superchic_i/share/jobOptions.SuperChicPy8_yyMuMu_DD.py, /athena/Generators/Superchic_i/share/jobOptions.SuperChicPy8_yyMuMu_SDA.py, /athena/Generators/Superchic_i/share/jobOptions.SuperChicPy8_yyMuMu_SDB.py, and /athena/Generators/Superchic_i/share/jobOptions.SuperChicPy8_yyMuMu_El.py contain the latest recommended options for the case of photon-induced di-lepton for the cases of double-dissociated production, single dissociative production on one side and the other, and elasic production, respectively.
An example jobOptions file with pythia showering can be found at /athena/Generators/Superchic_i/share/jobOptions.SuperChicPy8_yyMuMu_SDA.py.
The key difference here is of course that Pythia8 is added to the genSeq, and that we have to be careful about what pythia
command options are included. The /athena/Generators/Superchic_i/share/jobOptions.SuperChicPy8_yyMuMu_DD.py,
/athena/Generators/Superchic_i/share/jobOptions.SuperChicPy8_yyMuMu_SDA.py,
/athena/Generators/Superchic_i/share/jobOptions.SuperChicPy8_yyMuMu_SDB.py, and
/athena/Generators/Superchic_i/share/jobOptions.SuperChicPy8_yyMuMu_El.py contain the latest recommended options for the case of
photon-induced di-lepton for the cases of double-dissociated production, single dissociative production on one side and the other,
and elasic production, respectively.
## Some Notes
* The S^2 model can be changed by adjusting the Init.isurv value
* The Init.diff should be either 'el', 'sda', 'sdb', or 'dd'. Be careful to make sure that the "BeamRemnants:unresolvedHadron = 0" component of the pythia commands is adjusted accordingly below (el -> 3, sda -> 2, sdb ->1, and dd -> 0)
* The list of processes for Init.proc can be found in section 7 of the [manual](https://superchic.hepforge.org/superchic4.pdf)
* Output kinematics can of course be changed from what is in the samples. Two body decays use "a" and "b" particles (as in pta and ptb). Four body decays use "a", "b", "c", "d", and so forth.
* The Init.diff should be either 'el', 'sda', 'sdb', or 'dd'. Be careful to make sure that the "BeamRemnants:unresolvedHadron = 0"
component of the pythia commands is adjusted accordingly below (el -> 3, sda -> 2, sdb ->1, and dd -> 0)
* The list of processes for Init.proc can be found in section 7 of the [manual](https://github.com/LucianHL/SuperChic/blob/v.5.0/doc/superchic.tex)
* Output kinematics can of course be changed from what is in the samples. Two body decays use "a" and "b" particles (as in pta and ptb).
Four body decays use "a", "b", "c", "d", and so forth.
* Cuts that have "x" in them refer to the hard process as a whole, so e.g. the di-lepton system in a di-lepton event
* When running without showering with pythia, an important drawback of using LHE files should be noted: they do not use high enough precision. What I mean is the following. In EventFiller.py, you can see that you enter in a four vector that contains every particle's px, py, pz, and E. The mass of the particles is then computed based on those values. Unfortunately, for highly boosted objects (i.e. those where E >> m), such as the final state protons, the calculation of four-vector mass with the precision given in the LHE files is slightly off. So in the output EVNT files, you'll see protons with masses in the range of 900 - 1000 MeV. I have set the "generated_mass" of each particle to the right mass, but if you retrieve "m_m" for a truth-level particle, it will be slightly incorrect.
* When running without showering with pythia, an important drawback of using LHE files should be noted: they do not use high enough precision.
What I mean is the following. In EventFiller.py, you can see that you enter in a four vector that contains every particle's px, py, pz, and E.
The mass of the particles is then computed based on those values. Unfortunately, for highly boosted objects (i.e. those where E >> m), such
as the final state protons, the calculation of four-vector mass with the precision given in the LHE files is slightly off. So in the
output EVNT files, you'll see protons with masses in the range of 900 - 1000 MeV. I have set the "generated_mass" of each particle to the
right mass, but if you retrieve "m_m" for a truth-level particle, it will be slightly incorrect.
# Running locally
......@@ -50,4 +88,6 @@ To run locally:
# Releases
A functional version of the SuperChic interface was first incorporated into the nightly release 21.6,AthGeneration,r2021-04-30T0933. Any full release more recent than 21.6.70 should contain a functional interface. However, a slightly tweak was implemented in EventFiller.py to put the initial state protons into the EVNT files in the unshowered case. This will likely be in release 21.6.72 and onward.
A functional version of the SuperChic interface was first incorporated into the nightly release 21.6,AthGeneration,r2021-04-30T0933.
Any full release more recent than 21.6.70 should contain a functional interface. However, a slightly tweak was implemented in EventFiller.py
to put the initial state protons into the EVNT files in the unshowered case. This will likely be in release 21.6.72 and onward.
/*
Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
*/
#ifndef INDETSERVMATGEOMODEL_ENDPLATEFACTORYFS_H
#define INDETSERVMATGEOMODEL_ENDPLATEFACTORYFS_H
#include "AthenaBaseComps/AthMessaging.h"
#include "GaudiKernel/ServiceHandle.h"
class StoreGateSvc;
class GeoPhysVol;
class IRDBAccessSvc;
// End plate factory for Frozen Showers (FS)
class EndPlateFactoryFS : public AthMessaging {
public:
// Constructor:
EndPlateFactoryFS(StoreGateSvc *pDetStore,
ServiceHandle<IRDBAccessSvc> pRDBAccess);
// Destructor:
~EndPlateFactoryFS();
// Creation of geometry:
void create(GeoPhysVol *motherP, GeoPhysVol *motherM);
private:
// Illegal operations:
const EndPlateFactoryFS & operator=(const EndPlateFactoryFS &right);
EndPlateFactoryFS(const EndPlateFactoryFS &right);
// private data
StoreGateSvc *m_detStore;
ServiceHandle<IRDBAccessSvc> m_rdbAccess;
};
#endif
/*
Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
*/
#ifndef INDETSERVMATGEOMODEL_INDETSERVMATFACTORYDC2_H
#define INDETSERVMATGEOMODEL_INDETSERVMATFACTORYDC2_H
#include "AthenaBaseComps/AthMessaging.h"
#include "GeoModelKernel/GeoVDetectorFactory.h"
//the following needed because the return type of getDetectorManager() is not
//the same as the method return type as specified in the baseclass
#include "InDetServMatGeoModel/InDetServMatManager.h"
#include "GaudiKernel/ServiceHandle.h"
class StoreGateSvc;
class IRDBAccessSvc;
class InDetServMatFactoryDC2 : public GeoVDetectorFactory, public AthMessaging {
public:
// Constructor:
InDetServMatFactoryDC2(StoreGateSvc *pDetStore,
ServiceHandle<IRDBAccessSvc> pRDBAccess);
// Destructor:
~InDetServMatFactoryDC2();
// Creation of geometry:
virtual void create(GeoPhysVol *world);
// manager
virtual const InDetDD::InDetServMatManager* getDetectorManager () const;
private:
// Illegal operations:
const InDetServMatFactoryDC2 & operator=(const InDetServMatFactoryDC2 &right);
InDetServMatFactoryDC2(const InDetServMatFactoryDC2 &right);
// private data
StoreGateSvc *m_detStore;
ServiceHandle<IRDBAccessSvc> m_rdbAccess;
InDetDD::InDetServMatManager *m_manager;
};
#endif // INDETSERVMATGEOMODEL_INDETSERVMATFACTORYDC2_H
/*
Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
*/
#ifndef INDETSERVMATGEOMODEL_INDETSERVMATFACTORYDC3_H
#define INDETSERVMATGEOMODEL_INDETSERVMATFACTORYDC3_H
#include "InDetGeoModelUtils/InDetDetectorFactoryBase.h"
#include "InDetServMatGeoModel/InDetServMatManager.h"
class StoreGateSvc;
class IRDBAccessSvc;
class InDetServMatFactoryDC3: public InDetDD::DetectorFactoryBase {
public:
// Constructor:
InDetServMatFactoryDC3(InDetDD::AthenaComps * athenaComps);
// Destructor:
~InDetServMatFactoryDC3();
// Creation of geometry:
virtual void create(GeoPhysVol *world);
// manager
virtual const InDetDD::InDetServMatManager* getDetectorManager () const;
private:
// Illegal operations:
const InDetServMatFactoryDC3 & operator=(const InDetServMatFactoryDC3 &right);
InDetServMatFactoryDC3(const InDetServMatFactoryDC3 &right);
// private data
InDetDD::InDetServMatManager *m_manager;
};
#endif // INDETSERVMATGEOMODEL_INDETSERVMATFACTORYDC3_H
/*
Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
*/
#ifndef INDETSERVMATGEOMODEL_INDETSERVMATFACTORYFS_H
#define INDETSERVMATGEOMODEL_INDETSERVMATFACTORYFS_H
#include "AthenaBaseComps/AthMessaging.h"
#include "GeoModelKernel/GeoVDetectorFactory.h"
#include "InDetServMatGeoModel/InDetServMatManager.h"
#include "GaudiKernel/ServiceHandle.h"
class StoreGateSvc;
class IRDBAccessSvc;
// InDet service material factory for Frozen Showers (FS)
class InDetServMatFactoryFS : public GeoVDetectorFactory, public AthMessaging {
public:
// Constructor:
InDetServMatFactoryFS(StoreGateSvc *pDetStore,
ServiceHandle<IRDBAccessSvc> pRDBAccess);
// Destructor:
~InDetServMatFactoryFS();
// Creation of geometry:
virtual void create(GeoPhysVol *world);
// manager
virtual const InDetDD::InDetServMatManager* getDetectorManager () const;
private:
// Illegal operations:
const InDetServMatFactoryFS & operator=(const InDetServMatFactoryFS &right);
InDetServMatFactoryFS(const InDetServMatFactoryFS &right);
// private data
StoreGateSvc *m_detStore;
ServiceHandle<IRDBAccessSvc> m_rdbAccess;
InDetDD::InDetServMatManager *m_manager;
};
#endif
/*
Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
*/
#ifndef INDETSERVMATGEOMODEL_PIXELSERVMATFACTORYDC2_H
#define INDETSERVMATGEOMODEL_PIXELSERVMATFACTORYDC2_H
#include "AthenaBaseComps/AthMessaging.h"
#include "GaudiKernel/ServiceHandle.h"
class StoreGateSvc;
class GeoPhysVol;
class IRDBAccessSvc;
class PixelServMatFactoryDC2 : public AthMessaging {
public:
// Constructor:
PixelServMatFactoryDC2(StoreGateSvc *pDetStore,
ServiceHandle<IRDBAccessSvc> pRDBAccess);
// Destructor:
~PixelServMatFactoryDC2();
// Creation of geometry:
void create(GeoPhysVol *mother);
private:
// Illegal operations:
const PixelServMatFactoryDC2 & operator=(const PixelServMatFactoryDC2 &right);
PixelServMatFactoryDC2(const PixelServMatFactoryDC2 &right);
// private data
StoreGateSvc *m_detStore;
ServiceHandle<IRDBAccessSvc> m_rdbAccess;
};
#endif // INDETSERVMATGEOMODEL_PIXELSERVMATFACTORYDC2_H
/*
Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
*/
#ifndef INDETSERVMATGEOMODEL_PIXELSERVMATFACTORYDC3_H
#define INDETSERVMATGEOMODEL_PIXELSERVMATFACTORYDC3_H
#include "InDetGeoModelUtils/InDetSubDetectorFactoryBase.h"
class GeoPhysVol;
class PixelServMatFactoryDC3 : public InDetDD::SubDetectorFactoryBase {
public:
// Constructor:
PixelServMatFactoryDC3(InDetDD::AthenaComps * athenaComps,
InDetMaterialManager * matManager);
// Destructor:
~PixelServMatFactoryDC3();
// Creation of geometry:
void create(GeoPhysVol *mother);
private:
// Illegal operations:
const PixelServMatFactoryDC3 & operator=(const PixelServMatFactoryDC3 &right);
PixelServMatFactoryDC3(const PixelServMatFactoryDC3 &right);
};
#endif // INDETSERVMATGEOMODEL_PIXELSERVMATFACTORYDC3_H